Fix compilation and fix event serialization.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-27  Wim Taymans  <wim@fluendo.com>
2
3         * check/gst-libs/gdp.c: (GST_START_TEST):
4         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
5         Fix compilation and fix event serialization.
6
7 2005-07-27  Wim Taymans  <wim@fluendo.com>
8
9         * CHANGES-0.9:
10         * docs/design/part-TODO.txt:
11         * docs/design/part-events.txt:
12         Some docs updates
13
14         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
15         (gst_base_sink_event), (gst_base_sink_do_sync),
16         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
17         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
18         (gst_base_src_do_seek), (gst_base_src_event_handler),
19         (gst_base_src_loop):
20         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
21         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
22         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
23         (gst_base_transform_event), (gst_base_transform_handle_buffer),
24         (gst_base_transform_set_passthrough),
25         (gst_base_transform_is_passthrough):
26         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
27         * gst/elements/gstfilesink.c: (gst_file_sink_event):
28         Event updates.
29
30         * gst/gstbuffer.h:
31         Use faster casts.
32
33         * gst/gstelement.c: (gst_element_seek):
34         * gst/gstelement.h:
35         Update gst_element_seek.
36
37         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
38         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
39         (gst_event_new_flush_start), (gst_event_new_flush_stop),
40         (gst_event_new_eos), (gst_event_new_newsegment),
41         (gst_event_parse_newsegment), (gst_event_new_tag),
42         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
43         (gst_event_parse_qos), (gst_event_new_seek),
44         (gst_event_parse_seek), (gst_event_new_navigation):
45         * gst/gstevent.h:
46         Make GstEvent use GstStructure. Add parsing code, make sure the
47         API is sufficiently generic.
48         Mark possible directions of events and serialization.
49
50         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
51         (_gst_message_copy), (gst_message_new_segment_start),
52         (gst_message_new_segment_done), (gst_message_new_custom),
53         (gst_message_parse_segment_start),
54         (gst_message_parse_segment_done):
55         Small cleanups.
56
57         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
58         (gst_pad_set_caps), (gst_pad_send_event):
59         Update for new events. 
60         Catch events sent in wrong directions.
61
62         * gst/gstqueue.c: (gst_queue_link_src),
63         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
64         (gst_queue_handle_src_query):
65         Event updates.
66
67         * gst/gsttag.c:
68         * gst/gsttag.h:
69         Remove event code from this file.
70
71         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
72         (gst_dp_event_from_packet):
73         Event updates.
74
75 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
76
77         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
78         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
79         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
80           Make debugging actually useful.
81
82 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
83
84         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
85         (gst_pad_fixate_caps):
86           Implement default fixation once again, so that gst_pad_fixate()
87           actually does anything at all. This probably needs to be some
88           sort of a last resort, and use profile-based fixation first, but
89           since that doesn't exist yet, this is the best we have. Fixes
90           visualization in Totem.
91
92 2005-07-22  Wim Taymans  <wim@fluendo.com>
93
94         * docs/design/part-events.txt:
95         Small update.
96
97         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
98         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
99         (gst_base_sink_activate_pull):
100         Some more comments.
101
102         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
103         (gst_fake_src_create):
104         Fix handoff marshall.
105
106         * gst/elements/gstidentity.c: (gst_identity_class_init),
107         (gst_identity_transform_ip):
108         We're a real inplace element.
109
110         * gst/gstbus.c: (gst_bus_post):
111         Added some comments.
112
113         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
114         * tests/muxing/case1.c: (main):
115         * tests/sched/dynamic-pipeline.c: (main):
116         * tests/sched/interrupt1.c: (main):
117         * tests/sched/interrupt2.c: (main):
118         * tests/sched/interrupt3.c: (main):
119         * tests/sched/runxml.c: (main):
120         * tests/sched/sched-stress.c: (main):
121         * tests/seeking/seeking1.c: (event_received), (main):
122         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
123         (main):
124         * tests/threadstate/threadstate3.c: (main):
125         * tests/threadstate/threadstate4.c: (main):
126         * tests/threadstate/threadstate5.c: (main):
127         Fix the tests.
128
129 2005-07-21  Wim Taymans  <wim@fluendo.com>
130
131         * docs/design/part-seeking.txt:
132         Some small additions.
133
134         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
135         (gst_base_sink_get_times), (gst_base_sink_do_sync),
136         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
137         * gst/base/gstbasesink.h:
138         discont values are gint64, handle the math correctly.
139
140         * gst/base/gstbasesrc.c: (gst_base_src_loop):
141         Make the basesrc report error if the source pad is not linked.
142
143         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
144         (gst_queue_loop), (gst_queue_handle_src_query),
145         (gst_queue_src_activate_push):
146         Make queue collect data even if the srcpad is not linked.
147         Start pushing out data as soon as it is linked.
148
149         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
150         * gst/gstutils.h:
151         Added gst_flow_get_name() to ease error reporting.
152
153 2005-07-20  Wim Taymans  <wim@fluendo.com>
154
155         * gst/gstmessage.c: (gst_message_new_segment_start),
156         (gst_message_new_segment_done), (gst_message_parse_segment_start),
157         (gst_message_parse_segment_done):
158         * gst/gstmessage.h:
159         Added a bunch of messages for advanced seeking.
160
161         * gst/parse/grammar.y:
162         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
163         (gst_dpman_state_changed):
164         Fix some new-pad -> pad-added signals
165
166 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
167
168         * docs/manual/appendix-porting.xml:
169         * docs/pwg/appendix-porting.xml:
170           Document new-pad/state-change signal renames and the FixedList
171           type rename.
172
173 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
174
175         * docs/manual/advanced-autoplugging.xml:
176         * docs/manual/basics-helloworld.xml:
177         * docs/manual/basics-pads.xml:
178         * docs/random/ds/0.9-suggested-changes:
179         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
180         * gst/gstelement.h:
181         * gst/gstevent.h:
182         * gst/gstformat.h:
183         * gst/gstquery.h:
184         * gst/gststructure.c: (gst_structure_value_get_generic_type),
185         (gst_structure_parse_array), (gst_structure_parse_value):
186         * gst/gstvalue.c: (gst_type_is_fixed),
187         (gst_value_list_prepend_value), (gst_value_list_append_value),
188         (gst_value_list_get_size), (gst_value_list_get_value),
189         (gst_value_transform_array_string), (gst_value_serialize_array),
190         (gst_value_deserialize_array), (gst_value_intersect_array),
191         (gst_value_is_fixed), (_gst_value_initialize):
192         * gst/gstvalue.h:
193           GstElement::new-pad -> pad-added, GstElement::state-change ->
194           state-changed, GstValueFixedList -> GstValueArray, add format and
195           flags as their own arguments in gst_element_seek() (should improve
196           "bindeability"), remove function generators since they don't work
197           under a whole bunch of compilers (they were deprecated already
198           anyway).
199
200 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
201
202         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
203         (_gst_debug_register_funcptr):
204         * gst/gstinfo.h:
205           Fix illegal cast on some platforms (#309253).
206
207 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
208
209         * gst/gstmessage.c: (gst_message_new_custom):
210         * gst/gstmessage.h:
211           Add _new_custom, make _new_application a macro to _new_custom.
212
213 2005-07-20  Wim Taymans  <wim@fluendo.com>
214
215         * gst/base/gstbasesrc.c: (gst_base_src_init),
216         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
217         * gst/base/gstbasesrc.h:
218         Add a gboolean to decide when to push out a discont.
219
220         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
221         (gst_queue_loop), (gst_queue_handle_src_query),
222         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
223         (gst_queue_set_property), (gst_queue_get_property):
224         Some cleanups.
225
226         * tests/threadstate/threadstate1.c: (main):
227         Make a thread test compile and run... very silly..
228
229
230 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
231
232         * docs/manual/appendix-porting.xml:
233           Mention removal of libgstgconf-0.9.la and existence of gconf
234           elements.
235
236 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
237
238         * docs/pwg/advanced-clock.xml:
239         * docs/pwg/appendix-porting.xml:
240         * docs/pwg/intro-preface.xml:
241         * docs/pwg/other-base.xml:
242         * docs/pwg/other-manager.xml:
243         * docs/pwg/other-nton.xml:
244         * docs/pwg/other-ntoone.xml:
245         * docs/pwg/other-oneton.xml:
246         * docs/pwg/pwg.xml:
247           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
248           demuxer), remove n-to-n (was never written), fix some code examples
249           and links and update the porting section to include all this.
250
251 2005-07-19  Wim Taymans  <wim@fluendo.com>
252
253         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
254         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
255         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
256         (gst_queue_src_activate_push), (gst_queue_change_state),
257         (gst_queue_get_property):
258         * gst/gstqueue.h:
259         Propagate GstFlowReturn more intelligently upstream and output
260         an ERROR/EOS when streaming stopped due to fatal error.
261
262 2005-07-19  Wim Taymans  <wim@fluendo.com>
263
264         * tools/gst-launch.c: (check_intr), (event_loop), (main):
265         Don't block forever for the state change to complete, the
266         pipeline already did with a sensible timeout.
267
268 2005-07-19  Wim Taymans  <wim@fluendo.com>
269
270         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
271         Make sure we never call the create function is we
272         got deactivated.
273
274 2005-07-19  Andy Wingo  <wingo@pobox.com>
275
276         * gst/parse/parse.l: Attempt to solve bug #172815.
277
278 2005-07-19  Wim Taymans  <wim@fluendo.com>
279
280         * docs/design/part-clocks.txt:
281         * docs/design/part-events.txt:
282         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
283         Small docs updates.
284         Only update the seeking values when we are not
285         busy streaming.
286
287 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
288
289         * gst/base/gstbasesrc.c: (gst_base_src_loop):
290           Oops, ignore the result of gst_pad_push_event here.
291
292 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
293
294         * gst/base/gstbasesrc.c: (gst_base_src_loop),
295         (gst_base_src_activate_push):
296           Send discont event from the loop function, as pads
297           aren't activated yet in the activate_push handler.
298
299         * gst/gstbin.c: (bin_bus_handler):
300           Don't leak element name.
301
302 2005-07-18  Andy Wingo  <wingo@pobox.com>
303
304         * configure.ac: Use AS_LIBTOOL_TAGS.
305
306 2005-07-18  Wim Taymans  <wim@fluendo.com>
307
308         * docs/gst/gstreamer.types:
309         Remove deleted types.
310
311 2005-07-18  Wim Taymans  <wim@fluendo.com>
312
313         * check/elements/gstfakesrc.c: (GST_START_TEST):
314         * configure.ac:
315         * gst/Makefile.am:
316         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
317         (init_popt_callback):
318         * gst/gst.h:
319         * gst/gst_private.h:
320         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
321         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
322         * gst/gstbin.h:
323         * gst/gstbus.h:
324         * gst/gstconfig.h.in:
325         * gst/gstelement.c: (gst_element_class_init),
326         (gst_element_set_base_time), (gst_element_get_base_time),
327         (iterator_fold_with_resync), (gst_element_change_state),
328         (gst_element_dispose), (gst_element_get_bus):
329         * gst/gstelement.h:
330         * gst/gstelementfactory.h:
331         * gst/gsterror.c: (_gst_core_errors_init):
332         * gst/gsterror.h:
333         * gst/gstevent.h:
334         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
335         * gst/gstindex.c:
336         * gst/gstinfo.c: (_gst_debug_init):
337         * gst/gstmessage.c: (_gst_message_copy):
338         * gst/gstmessage.h:
339         * gst/gstminiobject.h:
340         * gst/gstobject.c:
341         * gst/gstobject.h:
342         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
343         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
344         * gst/gstpad.h:
345         * gst/gstparse.h:
346         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
347         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
348         (gst_pipeline_get_last_stream_time):
349         * gst/gstpipeline.h:
350         * gst/gstpluginfeature.h:
351         * gst/gstquery.h:
352         * gst/gstscheduler.c:
353         * gst/gstscheduler.h:
354         * gst/gststructure.h:
355         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
356         (gst_task_finalize), (gst_task_func), (gst_task_create),
357         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
358         (gst_task_stop), (gst_task_pause):
359         * gst/gsttask.h:
360         * gst/gsttypefind.h:
361         * gst/gsttypes.h:
362         * gst/registries/gstlibxmlregistry.c: (load_feature),
363         (gst_xml_registry_load), (gst_xml_registry_save_feature):
364         * gst/registries/gstxmlregistry.c:
365         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
366         * gst/schedulers/threadscheduler.c:
367         * libs/gst/control/dparammanager.h:
368         * tools/gst-inspect.c: (print_element_list),
369         (print_plugin_features), (print_element_features):
370         * tools/gst-xmlinspect.c: (print_element_list),
371         (print_plugin_info), (main):
372         Removed plugable schedulers.
373         Removed Scheduler/Manager from elements.
374         Removed gsttypes.h, rearranged includes.
375         Removed dependency pad<->element, element<>pipeline, and
376         various others,  fix includes.
377         implement gst_pad_get_parent() with gst_object_get_parent()
378         Make GstTask sefcontained.
379         Fix _get_state() on GstBin, it did not return ASYNC with a 0
380         timeout.
381         Fix endless loop in iterator_fold_with_resync.
382
383
384 2005-07-18  Wim Taymans  <wim@fluendo.com>
385
386         * gst/Makefile.am:
387         * gst/gstarch.h:
388         Remove old file.
389
390 2005-07-18  Wim Taymans  <wim@fluendo.com>
391
392         * gst/Makefile.am:
393         No more cothreads.h
394
395 2005-07-18  Wim Taymans  <wim@fluendo.com>
396
397         * gst/cothreads.c:
398         * gst/cothreads.h:
399         Let's remove these.
400
401 2005-07-18  Wim Taymans  <wim@fluendo.com>
402
403         * docs/design/part-dynamic.txt:
404         * docs/design/part-events.txt:
405         * docs/design/part-seeking.txt:
406         Some more docs in the works.
407
408         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
409         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
410         (gst_base_transform_setcaps), (gst_base_transform_get_size),
411         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
412         (gst_base_transform_handle_buffer),
413         (gst_base_transform_sink_activate_push),
414         (gst_base_transform_src_activate_pull),
415         (gst_base_transform_set_passthrough),
416         (gst_base_transform_is_passthrough):
417         Refcounting fixes.
418
419         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
420         Cleanups.
421
422         * gst/gstevent.c: (gst_event_finalize):
423         Set SRC to NULL.
424
425         * gst/gstutils.c: (gst_element_unlink),
426         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
427         (gst_pad_proxy_setcaps):
428         * gst/gstutils.h:
429         Add _get_parent_element() to get a pads parent as an element.
430
431 2005-07-18  Wim Taymans  <wim@fluendo.com>
432
433         * check/gst/gstbin.c: (GST_START_TEST):
434         Remove bogus test.
435
436 2005-07-18  Wim Taymans  <wim@fluendo.com>
437
438         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
439         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
440         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
441         (gst_base_sink_event), (gst_base_sink_do_sync),
442         (gst_base_sink_chain), (gst_base_sink_loop),
443         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
444         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
445         Refcounting fixes.
446         Fix logic for returning ASYNC when not prerolled.
447
448 2005-07-18  Wim Taymans  <wim@fluendo.com>
449
450         * gst/gstqueue.c: (gst_queue_handle_sink_event):
451         Fix nasty refcount bug.
452
453 2005-07-16 Philippe Khalaf <burger@speedy.org>
454         * gst/elements/gstfdsrc.c:
455         * gst/elements/gstfdsrc.h:
456         * gst/elements/gstelements.c:
457         * gst/elements/Makefile.am:
458         Ported fdsrc to 0.9.
459
460 2005-07-16  Wim Taymans  <wim@fluendo.com>
461
462         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
463         (gst_base_sink_do_sync):
464         Fix compile error.
465
466 2005-07-16  Wim Taymans  <wim@fluendo.com>
467
468         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
469         (gst_base_sink_event), (gst_base_sink_get_times),
470         (gst_base_sink_do_sync), (gst_base_sink_change_state):
471         * gst/base/gstbasesink.h:
472         Store and use discont values when syncing buffers as described
473         in design docs.
474         
475         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
476         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
477         (gst_base_src_activate_push):
478         Push discont event when starting.
479
480         * gst/elements/gstidentity.c: (gst_identity_transform):
481         Small cleanups.
482
483         * gst/gstbin.c: (gst_bin_change_state):
484         Small cleanups in base_time  distribution.
485
486         * gst/gstelement.c: (gst_element_set_base_time),
487         (gst_element_get_base_time), (gst_element_change_state):
488         * gst/gstelement.h:
489         Added methods for the base_time of the element.
490         Some MT fixes.
491
492         * gst/gstpipeline.c: (gst_pipeline_send_event),
493         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
494         (gst_pipeline_get_last_stream_time):
495         * gst/gstpipeline.h:
496         MT fixes.
497         Handle seeking as described in design doc, remove stream_time
498         hack.
499         Cleanups clock and stream_time selection code. Added accessors
500         for the stream_time.
501         
502
503 2005-07-16  Andy Wingo  <wingo@pobox.com>
504
505         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
506         (#305291).
507
508 2005-07-16  Wim Taymans  <wim@fluendo.com>
509
510         * check/gst/gstbin.c: (GST_START_TEST):
511         Make elements silent as the deep_notify refs the
512         parent, which might make the test fail.
513
514         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
515         Don't hold the lock for too long.
516
517 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
518
519         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
520           Don't unref the caps we passed to gst_caps_make_writable() after
521           passing them. gst_caps_make_writable() will do that for us.
522
523 2005-07-15  Andy Wingo  <wingo@pobox.com>
524
525         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
526         (#157311).
527
528         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
529         own marshalling function for the handoff signal. Properly type the
530         buffer as a buffer. Fixes some warnings. Should do a more general
531         solution.
532         (gst_identity_class_init): Plug into the right marshaller.
533
534 2005-07-15  Wim Taymans  <wim@fluendo.com>
535
536         * docs/design/part-TODO.txt:
537         * docs/design/part-clocks.txt:
538         * docs/design/part-element-sink.txt:
539         * docs/design/part-events.txt:
540         * docs/design/part-gstpipeline.txt:
541         Updated docs, mostly DISCONT related.
542
543 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
544
545         * docs/pwg/building-pads.xml:
546           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
547
548 2005-07-15  Andy Wingo  <wingo@pobox.com>
549
550         * tools/gst-typefind.c: Update, add copyright block.
551
552         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
553         Normalize and truncate caps before fixation.
554
555         * gst/gstcaps.h:
556         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
557         discards all but the first structure from its argument.
558
559 2005-07-15  Wim Taymans  <wim@fluendo.com>
560
561         * gst/base/gstbasetransform.c: (gst_base_transform_init),
562         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
563         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
564         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
565         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
566         (gst_base_transform_chain), (gst_base_transform_change_state),
567         (gst_base_transform_set_passthrough),
568         (gst_base_transform_is_passthrough):
569         * gst/base/gstbasetransform.h:
570         Make passthrough work using the bufferpools.
571         Changed API a bit, subclasses have to write into a buffer
572         provided by the base class.
573         More debug info in nego functions.
574         
575         * gst/elements/gstidentity.c: (gst_identity_init),
576         (gst_identity_transform):
577         Port to new base class.
578
579 2005-07-15  Wim Taymans  <wim@fluendo.com>
580
581         * gst/gstmessage.c: (gst_message_new_state_changed):
582         * tools/gst-launch.c: (event_loop), (main):
583         Totally dump messages in -launch with the -m option.
584         Fix message name for State messages,
585
586 2005-07-14  Wim Taymans  <wim@fluendo.com>
587
588         * gst/base/gstbasesrc.c: (gst_base_src_loop):
589         Post error messages on errors.
590
591 2005-07-14  Wim Taymans  <wim@fluendo.com>
592
593         * gst/gstcaps.c: (gst_caps_do_simplify):
594         Remove debug info.
595
596         * gst/gsterror.h:
597         Define error for stream stopped.
598
599         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
600         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
601         Do proper return values.
602
603         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
604         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
605         (gst_pad_get_range):
606         Better return values.
607
608         * gst/gstpad.h:
609         Reorganise return values, add macro to check for fatal errors.
610
611         * gst/gstqueue.c: (gst_queue_chain):
612         Return proper GstFlowReturn values,
613
614 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
615
616         * docs/gst/gstreamer-sections.txt:
617         * docs/gst/gstreamer.types:
618         * docs/gst/tmpl/gst.sgml:
619         * docs/gst/tmpl/gstbasesink.sgml:
620         * docs/gst/tmpl/gstbasesrc.sgml:
621         * docs/gst/tmpl/gstbasetransform.sgml:
622         * docs/gst/tmpl/gstbin.sgml:
623         * docs/gst/tmpl/gstbuffer.sgml:
624         * docs/gst/tmpl/gstcaps.sgml:
625         * docs/gst/tmpl/gstclock.sgml:
626         * docs/gst/tmpl/gstcompat.sgml:
627         * docs/gst/tmpl/gstconfig.sgml:
628         * docs/gst/tmpl/gstelement.sgml:
629         * docs/gst/tmpl/gstelementdetails.sgml:
630         * docs/gst/tmpl/gstelementfactory.sgml:
631         * docs/gst/tmpl/gstenumtypes.sgml:
632         * docs/gst/tmpl/gsterror.sgml:
633         * docs/gst/tmpl/gstevent.sgml:
634         * docs/gst/tmpl/gstfakesink.sgml:
635         * docs/gst/tmpl/gstfakesrc.sgml:
636         * docs/gst/tmpl/gstfilesink.sgml:
637         * docs/gst/tmpl/gstfilesrc.sgml:
638         * docs/gst/tmpl/gstfilter.sgml:
639         * docs/gst/tmpl/gstformat.sgml:
640         * docs/gst/tmpl/gstghostpad.sgml:
641         * docs/gst/tmpl/gstimplementsinterface.sgml:
642         * docs/gst/tmpl/gstindex.sgml:
643         * docs/gst/tmpl/gstindexfactory.sgml:
644         * docs/gst/tmpl/gstinfo.sgml:
645         * docs/gst/tmpl/gstiterator.sgml:
646         * docs/gst/tmpl/gstmacros.sgml:
647         * docs/gst/tmpl/gstmemchunk.sgml:
648         * docs/gst/tmpl/gstminiobject.sgml:
649         * docs/gst/tmpl/gstobject.sgml:
650         * docs/gst/tmpl/gstpad.sgml:
651         * docs/gst/tmpl/gstpadtemplate.sgml:
652         * docs/gst/tmpl/gstparse.sgml:
653         * docs/gst/tmpl/gstpipeline.sgml:
654         * docs/gst/tmpl/gstplugin.sgml:
655         * docs/gst/tmpl/gstpluginfeature.sgml:
656         * docs/gst/tmpl/gstquery.sgml:
657         * docs/gst/tmpl/gstqueue.sgml:
658         * docs/gst/tmpl/gstregistry.sgml:
659         * docs/gst/tmpl/gstregistrypool.sgml:
660         * docs/gst/tmpl/gstscheduler.sgml:
661         * docs/gst/tmpl/gstschedulerfactory.sgml:
662         * docs/gst/tmpl/gststructure.sgml:
663         * docs/gst/tmpl/gstsystemclock.sgml:
664         * docs/gst/tmpl/gsttaglist.sgml:
665         * docs/gst/tmpl/gsttagsetter.sgml:
666         * docs/gst/tmpl/gsttrace.sgml:
667         * docs/gst/tmpl/gsttrashstack.sgml:
668         * docs/gst/tmpl/gsttypefind.sgml:
669         * docs/gst/tmpl/gsttypefindfactory.sgml:
670         * docs/gst/tmpl/gsttypes.sgml:
671         * docs/gst/tmpl/gsturihandler.sgml:
672         * docs/gst/tmpl/gsturitype.sgml:
673         * docs/gst/tmpl/gstutils.sgml:
674         * docs/gst/tmpl/gstvalue.sgml:
675         * docs/gst/tmpl/gstversion.sgml:
676         * docs/gst/tmpl/gstxml.sgml:
677         * docs/libs/tmpl/gstcontrol.sgml:
678         * docs/libs/tmpl/gstdataprotocol.sgml:
679         * docs/libs/tmpl/gstdparam.sgml:
680         * docs/libs/tmpl/gstdplinint.sgml:
681         * docs/libs/tmpl/gstdpman.sgml:
682         * docs/libs/tmpl/gstdpsmooth.sgml:
683         * docs/libs/tmpl/gstgetbits.sgml:
684         * docs/libs/tmpl/gstunitconvert.sgml:
685         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
686         (gst_push_src_base_init), (gst_push_src_class_init),
687         (gst_push_src_init), (gst_push_src_create):
688         * gst/base/gstpushsrc.h:
689         * gst/elements/gstelements.c:
690         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
691         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
692         (gst_fake_sink_init), (gst_fake_sink_set_property),
693         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
694         (gst_fake_sink_event), (gst_fake_sink_preroll),
695         (gst_fake_sink_render), (gst_fake_sink_change_state):
696         * gst/elements/gstfakesink.h:
697         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
698         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
699         (gst_fake_src_base_init), (gst_fake_src_class_init),
700         (gst_fake_src_init), (gst_fake_src_event_handler),
701         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
702         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
703         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
704         (gst_fake_src_create_buffer), (gst_fake_src_create),
705         (gst_fake_src_start), (gst_fake_src_stop):
706         * gst/elements/gstfakesrc.h:
707         * gst/elements/gstfilesink.c: (_do_init),
708         (gst_file_sink_base_init), (gst_file_sink_class_init),
709         (gst_file_sink_init), (gst_file_sink_dispose),
710         (gst_file_sink_set_location), (gst_file_sink_set_property),
711         (gst_file_sink_get_property), (gst_file_sink_open_file),
712         (gst_file_sink_close_file), (gst_file_sink_query),
713         (gst_file_sink_event), (gst_file_sink_render),
714         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
715         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
716         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
717         * gst/elements/gstfilesink.h:
718         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
719         (gst_file_src_class_init), (gst_file_src_init),
720         (gst_file_src_finalize), (gst_file_src_set_location),
721         (gst_file_src_set_property), (gst_file_src_get_property),
722         (gst_file_src_map_region), (gst_file_src_map_small_region),
723         (gst_file_src_create_mmap), (gst_file_src_create_read),
724         (gst_file_src_create), (gst_file_src_is_seekable),
725         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
726         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
727         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
728         (gst_file_src_uri_handler_init):
729         * gst/elements/gstfilesrc.h:
730           more autistic cleanliness in functions/names/defines
731
732 2005-07-13  Andy Wingo  <wingo@pobox.com>
733
734         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
735         source couldn't negotiate.
736
737         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
738         connections again.
739
740         * gst/gstutils.h:
741         * gst/gstutils.c (gst_element_link_pads_filtered): New old
742         function. I am channeling Hades. Put your boots on suckers!!!
743
744 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
745
746         * testsuite/caps/Makefile.am:
747         * testsuite/caps/value_compare.c:
748         * testsuite/caps/value_intersect.c:
749         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
750           move two testsuite apps over to the check dir
751
752 2005-07-12  Wim Taymans  <wim@fluendo.com>
753
754         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
755         Added more debug info in the negotiate process.
756
757         * gst/gstmessage.h:
758         Prepare for segment playback.
759
760         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
761         Better debugging.
762
763         * gst/gstutils.c:
764         Some more docs.
765
766         * tools/gst-launch.c: (main):
767         NULL pipeline on errors.
768
769 2005-07-12  Andy Wingo  <wingo@pobox.com>
770
771         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
772         not it comes from a malloc region. Make sure our copy gets freed.
773
774 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
775
776         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
777         * check/gst/gstmessage.c: (GST_START_TEST):
778         * check/gst/gststructure.c: (GST_START_TEST),
779         (gst_structure_suite), (main):
780           more testing
781         * gst/gstelement.c: (gst_element_message_full):
782           clean up GError and debug string now that they get copied
783         * gst/gstmessage.c: (gst_message_new_error),
784         (gst_message_new_warning), (gst_message_parse_error),
785         (gst_message_parse_warning):
786           use GST_TYPE_G_ERROR for structure_new, and take copies of
787           arguments, so that we don't mess up refcounting
788
789 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
790
791         * check/Makefile.am:
792           add per-test valgrind targets
793         * check/gst-libs/gdp.c: (GST_START_TEST),
794         (gst_data_protocol_suite), (main):
795           clean up
796
797 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
798
799         * check/Makefile.am:
800           instate more valgrindable tests
801         * check/elements/gstfakesrc.c: (chain_func), (event_func),
802         (GST_START_TEST), (fakesrc_suite):
803         * check/gst/gstpad.c: (GST_START_TEST):
804         * check/gst/gststructure.c: (GST_START_TEST):
805           fix test leaks
806         * docs/gst/tmpl/gstminiobject.sgml:
807         * gst/gstpad.c: (gst_pad_finalize):
808           fix the static mutex leak
809
810 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
811
812         * check/Makefile.am:
813           add two more tests for valgrinding
814         * check/gst/gstvalue.c: (GST_START_TEST):
815           test refcount of deserialized buffer, found a leak
816         * docs/gst/gstreamer-docs.sgml:
817         * docs/gst/gstreamer-sections.txt:
818         * docs/gst/gstreamer.types:
819         * docs/gst/tmpl/gstminiobject.sgml:
820           add miniobject to docs
821         * gst/gstminiobject.c:
822           add some docs
823         * gst/gstvalue.c: (gst_value_deserialize_buffer),
824         (gst_string_unwrap):
825           fix a hard-to-find invalid write for one of the tests
826           fix a leak for deserialized buffers
827
828 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
829
830         * docs/pwg/advanced-events.xml:
831         * docs/pwg/advanced-request.xml:
832         * docs/pwg/advanced-scheduling.xml:
833         * docs/pwg/appendix-porting.xml:
834         * docs/pwg/building-boiler.xml:
835         * docs/pwg/intro-preface.xml:
836         * docs/pwg/other-ntoone.xml:
837           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
838           of example code and explanation for pad activation, loop() and
839           getrange() functions and a bit more. Remove old comments pointing
840           to loop-functions.
841         * examples/pwg/Makefile.am:
842           Add loop/getrange examples.
843
844 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
845
846         * configure.ac:
847           check for valgrind binary + some fixes
848         * check/gst.supp:
849           valgrind suppressions for the tests
850         * check/Makefile.am:
851           add a valgrind: target that valgrinds the unit tests
852         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
853         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
854         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
855         * check/gst/gstghostpad.c:
856           added some cleanup
857         * check/gst/gstdata.c:
858           removed
859         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
860         (thread_unref), (gst_mini_object_suite), (main):
861           added
862         * gst/gst.c: (gst_deinit):
863         * gst/gst.h:
864           add a method to clean up.
865         * gst/gstsystemclock.c: (gst_system_clock_dispose),
866         (gst_system_clock_obtain):
867           allow for disposing the system clock.
868         * tools/gst-launch.c: (main):
869           deinit
870
871 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
872
873         * docs/gst/tmpl/gstbasesrc.sgml:
874         * docs/gst/tmpl/gstfakesrc.sgml:
875         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
876         (gst_base_src_init), (gst_base_src_set_property),
877         (gst_base_src_get_property), (gst_base_src_get_range),
878         (gst_base_src_start):
879         * gst/base/gstbasesrc.h:
880           add num-buffers property
881         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
882         (gst_fakesrc_init), (gst_fakesrc_set_property),
883         (gst_fakesrc_get_property), (gst_fakesrc_create),
884         (gst_fakesrc_start):
885           remove num-buffers property
886
887 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
888
889         * docs/gst/gstreamer-sections.txt:
890         * docs/gst/tmpl/gstbasesink.sgml:
891         * docs/gst/tmpl/gstbasesrc.sgml:
892         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
893         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
894         (gst_base_sink_finalize), (gst_base_sink_set_clock),
895         (gst_base_sink_set_property), (gst_base_sink_get_property),
896         (gst_base_sink_handle_object), (gst_base_sink_event),
897         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
898         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
899         (gst_base_sink_loop), (gst_base_sink_deactivate),
900         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
901         (gst_base_sink_change_state):
902         * gst/base/gstbasesink.h:
903         * gst/base/gstbasesrc.h:
904         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
905         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
906         (gst_filesink_init):
907           more macro splitting
908
909 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
910
911         * gst/gstelement.c: (gst_element_get_bus):
912           add debug
913         * tools/gst-launch.c: (check_intr), (event_loop):
914           fix bus leaks
915
916 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
917
918         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
919           fix a caps leak
920
921 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
922
923         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
924         (gst_base_src_finalize):
925           add finalize method and clean up properly
926         * gst/gstpipeline.c: (gst_pipeline_dispose):
927           add debug
928
929 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
930
931         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
932         (gst_bin_suite):
933           add more things to check
934         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
935         * gst/gstelement.c:
936           more debug
937
938 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
939
940         * check/elements/gstfakesrc.c: (chain_func), (event_func),
941         (GST_START_TEST), (fakesrc_suite):
942         * check/gst-libs/gdp.c: (GST_START_TEST):
943         * check/gst/gst.c: (GST_START_TEST):
944         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
945         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
946         * check/gst/gstbus.c: (GST_START_TEST):
947         * check/gst/gstcaps.c: (GST_START_TEST):
948         * check/gst/gstdata.c: (GST_START_TEST):
949         * check/gst/gstelement.c: (GST_START_TEST):
950         * check/gst/gstghostpad.c: (GST_START_TEST):
951         * check/gst/gstiterator.c: (GST_START_TEST):
952         * check/gst/gstmessage.c: (GST_START_TEST):
953         * check/gst/gstobject.c: (GST_START_TEST):
954         * check/gst/gstpad.c: (GST_START_TEST):
955         * check/gst/gststructure.c: (GST_START_TEST):
956         * check/gst/gstsystemclock.c: (GST_START_TEST),
957         (gst_systemclock_suite):
958         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
959         * check/gst/gstvalue.c: (GST_START_TEST):
960         * check/pipelines/cleanup.c: (GST_START_TEST):
961         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
962         * check/states/sinks.c: (GST_START_TEST):
963         * check/gstcheck.c: (gst_check_init):
964         * check/gstcheck.h:
965           add debugging category
966           use GST_START_TEST now, so we add a debug line
967
968 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
969
970         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
971           add test for state change message on a bin
972         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
973           add another test
974         * gst/gstbin.c: (gst_bin_init):
975         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
976         * gst/gstelement.c: (gst_element_post_message),
977         (gst_element_set_state):
978         * gst/gstelementfactory.c: (gst_element_factory_create):
979         * gst/gstmessage.c: (gst_message_new):
980         * gst/gstscheduler.c:
981           various debugging additions and cleanups
982
983 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
984
985         * check/Makefile.am:
986         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
987         (main):
988           adding tests for elements
989         * gst/gstelement.c: (gst_element_dispose):
990
991 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
992
993         * gst/registries/gstlibxmlregistry.c: (load_feature):
994           plug more leaks.  A simple gst_init() now is leakfree, yay.
995
996 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
997
998         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
999         (gst_xml_registry_load):
1000           plug another memleak
1001
1002 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1003
1004         * configure.ac:
1005           use GST_SET_ERROR_CFLAGS
1006         * docs/faq/cvs.xml:
1007           change to ERROR_CFLAGS
1008
1009 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1010
1011         * configure.ac:
1012           make GST_ERROR_CFLAGS overridable and re-enable Werror
1013         * docs/faq/cvs.xml:
1014           add a note about error CFLAGS
1015         * docs/gst/tmpl/gstfakesrc.sgml:
1016         * gst/elements/gstfakesrc.c:
1017           comment out some unused code
1018         * gst/gst.c: (split_and_iterate):
1019         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1020         (load_feature):
1021           plug some memleaks
1022
1023 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1024
1025         * common/Makefile.am:
1026         * common/gtk-doc.mak:
1027         * docs/gst/Makefile.am:
1028           factor out gtk-doc.mak
1029
1030 2005-07-07  Wim Taymans  <wim@fluendo.com>
1031
1032         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1033         (gst_thread_scheduler_dispose):
1034         Unlock the STREAM_LOCK completely.
1035
1036 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1037
1038         * check/Makefile.am:
1039         * check/elements/.cvsignore:
1040         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1041         (START_TEST), (fakesrc_suite), (main):
1042         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1043         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1044         (gst_fakesrc_create), (gst_fakesrc_start):
1045         * gst/elements/gstfakesrc.h:
1046           adding a first element test
1047
1048 2005-07-07  Andy Wingo  <wingo@pobox.com>
1049
1050         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1051         debug message.
1052
1053 2005-07-07  Wim Taymans  <wim@fluendo.com>
1054
1055         * gst/gstquery.c:
1056         * gst/gstquery.h:
1057         Remove old types
1058
1059 2005-07-07  Wim Taymans  <wim@fluendo.com>
1060
1061         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1062         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1063         Allow subclasses to implement their own negotiation.
1064
1065 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1066
1067         * docs/design/part-gstbin.txt:
1068         * docs/design/part-gstpipeline.txt:
1069           Update design notes to reflect the movement of
1070           responsibility for bus handling from GstPipeline to
1071           GstBin
1072
1073 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1074
1075         * configure.ac:
1076           Remove unnecessary queue2/3/4 examples.
1077
1078 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1079
1080         * examples/Makefile.am:
1081         * examples/helloworld/helloworld.c: (event_loop), (main):
1082         * examples/queue/queue.c: (event_loop), (main):
1083         * examples/queue2/queue2.c: (main):
1084           Update a couple of the examples to work again.
1085
1086         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1087         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1088          Spelling corrections and extra debug.
1089         
1090         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1091         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1092         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1093         * gst/gstbin.h:
1094         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1095         (gst_pipeline_change_state):
1096         * gst/gstpipeline.h:
1097           Move the bus handler for children to the GstBin, and create a
1098           separate bus for receiving messages from children to the one the
1099           bus sends 'upwards' on.
1100
1101 2005-07-06  Wim Taymans  <wim@fluendo.com>
1102
1103         * gst/base/README:
1104         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1105         (gst_base_sink_handle_object), (gst_base_sink_loop),
1106         (gst_base_sink_change_state):
1107         * gst/base/gstbasesink.h:
1108         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1109         (gst_base_src_init), (gst_base_src_setcaps),
1110         (gst_base_src_getcaps), (gst_base_src_loop),
1111         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1112         (gst_base_src_start), (gst_base_src_change_state):
1113         * gst/base/gstbasesrc.h:
1114         Make basesrc negotiate.
1115         Handle the case where preroll fails in basesink.
1116         Update README.
1117
1118 2005-07-06  Wim Taymans  <wim@fluendo.com>
1119
1120         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1121         Implement the fixate function.
1122         Clean up acceptcaps.
1123
1124 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1125
1126         * docs/pwg/building-filterfactory.xml:
1127         * docs/pwg/pwg.xml:
1128           Remove never-written filter-factory chapter; I'll add the various
1129           base classes to part 4 ("other element types") later on.
1130
1131 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1132
1133         * docs/pwg/advanced-negotiation.xml:
1134         * docs/pwg/building-boiler.xml:
1135         * docs/pwg/building-pads.xml:
1136         * docs/pwg/pwg.xml:
1137         * examples/pwg/Makefile.am:
1138           Add a chapter on caps negotiation, simplify the original code
1139           samples a bit w.r.t. caps negotiation, add link to the advanced
1140           section. Add a bunch of examples showing different use cases of
1141           different types of caps negotiation. Upstream renegotiation isn't
1142           fully documented yet since nobody knows how that works.
1143
1144 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1145
1146         * check/gst/gstpad.c:
1147         * check/gstcheck.c:
1148         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1149           if pad has no parent, return NULL as list of internal links
1150
1151 2005-07-05  Andy Wingo  <wingo@pobox.com>
1152
1153         * gst/elements/gstfilesrc.c:
1154         * gst/elements/gstfakesrc.c: 
1155         * gst/base/gstpushsrc.c:
1156         * gst/base/gstbasesrc.h: 
1157         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1158         
1159 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1160
1161         * Makefile.am:
1162           better report generation target (lcov needs a patch)
1163
1164 2005-07-05  Andy Wingo  <wingo@pobox.com>
1165
1166         * gst/elements, testsuite: Null if we got it...
1167
1168 2005-07-05  Wim Taymans  <wim@fluendo.com>
1169
1170         * configure.ac:
1171         * libs/gst/dataprotocol/Makefile.am:
1172         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1173         * libs/gst/dataprotocol/dataprotocol.h:
1174         * pkgconfig/Makefile.am:
1175         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1176         * pkgconfig/gstreamer-dataprotocol.pc.in:
1177         Ported dataprotol to 0.9. 
1178         Added pkgconfig files.
1179
1180 2005-07-05  Andy Wingo  <wingo@pobox.com>
1181
1182         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1183         Default to returning TRUE for the case when tranform_caps returns
1184         a fixed caps, like for identity or volume.
1185
1186         * check/gst/gstbus.c (pound_bus_with_messages): 
1187         * check/gst/gstmessage.c (START_TEST): 
1188         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1189         message API change.
1190
1191         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1192         logic weaks here: always run transform_caps, trying passthrough
1193         operation only if the original caps intersects with the transform.
1194
1195         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1196         source and sink caps.
1197
1198         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1199         Intersect the peer caps with the pad template before going into
1200         transform_caps.
1201         (gst_base_transform_transform_caps): More debugging.
1202
1203         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1204         src argument.
1205
1206 2005-07-04  Edward Hervey  <edward@fluendo.com>
1207
1208         * gst/gstutils.c:
1209         * gst/gstutils.h:
1210         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1211         in bindings.
1212
1213 2005-07-04  Andy Wingo  <wingo@pobox.com>
1214
1215         * check/gst/gstpad.c: Only set explicit caps on pads.
1216
1217 2005-07-01  Andy Wingo  <wingo@pobox.com>
1218
1219         * tests/network-clock.scm: Commentary update.
1220
1221         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1222         Didn't really make sense, not implementable with basetransform,
1223         etc.
1224         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1225         attempt at implementing the sync property, needs an unlock method.
1226
1227         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1228         New func, by default returns the same caps (the identity
1229         transformation).
1230         (gst_base_transform_getcaps): Uses transform_caps to return
1231         something sensible.
1232         (gst_base_transform_setcaps): Complicated logic to get caps on
1233         both pads, even if they are different, and to call set_caps once
1234         for every time both pads get their caps set.
1235         (gst_base_transform_handle_buffer): Give the ref to the transform
1236         function. Allows in-place modification of the buffer.
1237
1238         * gst/base/gstbasetransform.h (transform_caps): New class method.
1239         Given caps on one side, what can I do on the other.
1240         (set_caps): Take two caps, one for each side of the element.
1241
1242         * gst/gstpad.h:
1243         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1244         caps in place. This is safe because we can check the mutability of
1245         the caps, and a good idea because fixate functions are just called
1246         as a matter of last resort. (Not actually implemented.)
1247         (gst_pad_set_caps): If the caps we're setting is actually the same
1248         as the existing pad caps, just update the pointer without calling
1249         setcaps. Assert that caps is either NULL or fixed, as per the
1250         docs.
1251
1252         * gst/gstghostpad.c: Update for fixate changes.
1253
1254 2005-07-02  Andy Wingo  <wingo@pobox.com>
1255
1256         * gst/gstcaps.c:
1257         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1258         two refcounts makes it immutable, which is enough. Doc more.
1259
1260 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1261
1262         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1263           Put the mini_object into GValue as a mini_object,
1264           not a gpointer, since that's how we declared
1265           the signal.
1266
1267 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1268
1269         * examples/pwg/Makefile.am:
1270           Fix buildbot again.
1271
1272 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1273
1274         * docs/pwg/building-testapp.xml:
1275           Add extra check.
1276         * examples/pwg/Makefile.am:
1277           Fix buildbot.
1278
1279 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1280
1281         * configure.ac:
1282         * examples/Makefile.am:
1283         * examples/pwg/Makefile.am:
1284         * examples/pwg/extract.pl:
1285           Enable building the PWG examples.
1286         * docs/pwg/advanced-interfaces.xml:
1287           Add URI interface stub.
1288         * docs/pwg/advanced-types.xml:
1289         * docs/pwg/other-autoplugger.xml:
1290         * docs/pwg/appendix-porting.xml:
1291         * docs/pwg/pwg.xml:
1292           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1293         * docs/pwg/building-boiler.xml:
1294         * docs/pwg/building-chainfn.xml:
1295         * docs/pwg/building-pads.xml:
1296         * docs/pwg/building-props.xml:
1297         * docs/pwg/building-state.xml:
1298         * docs/pwg/building-testapp.xml:
1299           Update the building-*.xml parts for 0.9 changes. All examples
1300           code blocks compile in examples/pwg/*.
1301
1302 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1303
1304         * docs/manual/advanced-autoplugging.xml:
1305         * docs/manual/appendix-checklist.xml:
1306         * docs/manual/appendix-integration.xml:
1307         * docs/manual/highlevel-components.xml:
1308           Fix playbin/decodebin examples, update docs a bit, mention bus
1309           instead of signals in various places, mention kmplayer and
1310           kaffeine since they have a working GStreamer backend in the KDE
1311           section.
1312
1313 2005-06-30  Wim Taymans  <wim@fluendo.com>
1314
1315         * CHANGES-0.9:
1316         * docs/design/draft-ghostpads.txt:
1317         * docs/design/draft-push-pull.txt:
1318         * docs/design/draft-query.txt:
1319         * docs/design/part-TODO.txt:
1320         * docs/design/part-query.txt:
1321         Added CHANGES-0.9 doc, updated status of other docs.
1322         
1323         * gst/gstquery.h:
1324         Remove "hmm" macro
1325
1326 2005-06-30  Wim Taymans  <wim@fluendo.com>
1327
1328         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1329         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1330         (gst_base_sink_change_state):
1331         * gst/base/gstbasesink.h:
1332         Some tweaks, only EOS and a buffer complete a preroll.
1333
1334 2005-06-30  Andy Wingo  <wingo@pobox.com>
1335
1336         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1337         activate_push down to the internal pad as well.
1338
1339 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1340
1341         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1342
1343         * gst/gsttaginterface.c:
1344           Some documentation fixes (#307394 and #307397).
1345
1346 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1347
1348         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1349
1350         * gst/gstvalue.c: (gst_value_intersect_list):
1351           Fix memleak (#309125).
1352
1353 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1354
1355         * docs/manual/advanced-dataaccess.xml:
1356           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1357         * docs/manual/basics-pads.xml:
1358           Add reference for filtered caps to above chapter.
1359
1360 2005-06-30  Wim Taymans  <wim@fluendo.com>
1361
1362         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1363         (gst_bin_change_state):
1364         Probes are gone.
1365         Lame attempt at making the state change function a bit
1366         more readable.
1367
1368 2005-06-30  Wim Taymans  <wim@fluendo.com>
1369
1370         * docs/design/part-clocks.txt:
1371         * docs/design/part-element-sink.txt:
1372         * docs/design/part-events.txt:
1373         * docs/design/part-preroll.txt:
1374         * docs/design/part-states.txt:
1375         Some more tweeks and additions to the docs.
1376
1377 2005-06-30  Wim Taymans  <wim@fluendo.com>
1378
1379         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1380         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1381         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1382         (gst_pad_check_pull_range), (gst_pad_get_range),
1383         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1384         * gst/gstpad.h:
1385         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1386         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1387         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1388         (gst_pad_remove_buffer_probe):
1389         Removed atomic operations, use existing LOCK.
1390         Move exception handling out of main code path.
1391
1392 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1393
1394         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1395         (silly_return_true_function), (gst_pad_class_init),
1396         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1397         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1398         (gst_pad_send_event):
1399           Fix accumulator, add default value by using _emitv() instead
1400           of _emit() for signal emission.
1401
1402 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1403
1404         * docs/manual/advanced-dataaccess.xml:
1405         * examples/manual/Makefile.am:
1406           Add probe example.
1407         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1408           Make work (??).
1409
1410 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1411
1412         * gst/elements/gstfilesink.c: (gst_filesink_render):
1413           Simplify code so that we don't have to handle short
1414           writes and return GST_FLOW_ERROR if an error occured.
1415
1416 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1417
1418         * docs/gst/gstreamer-docs.sgml:
1419           Remove probes more.
1420
1421 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1422
1423         * docs/gst/gstreamer-sections.txt:
1424         * docs/gst/tmpl/gstpad.sgml:
1425         * docs/gst/tmpl/gstprobe.sgml:
1426         * gst/Makefile.am:
1427         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1428         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1429         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1430         (gst_pad_push_event), (gst_pad_send_event):
1431         * gst/gstpad.h:
1432         * gst/gstutils.c: (gst_pad_add_data_probe),
1433         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1434         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1435         (gst_pad_remove_buffer_probe):
1436         * gst/gstutils.h:
1437           Remove old probes, add new g-signal-based probes and some utility
1438           functions.
1439
1440 2005-06-29  Edward Hervey  <edward@fluendo.com>
1441
1442         * gst/gstelementfactory.c:
1443         * gst/gstutils.h:
1444         * gst/gstutils.c:
1445         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1446         the definition to the header file.
1447
1448 2005-06-29  Andy Wingo  <wingo@pobox.com>
1449
1450         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1451         plugins from the source directory.
1452
1453 2005-06-29  Wim Taymans  <wim@fluendo.com>
1454
1455         * docs/gst/tmpl/gstbuffer.sgml:
1456         * docs/gst/tmpl/gstclock.sgml:
1457         Some fixings for blantently wrong text.
1458
1459 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1460
1461         * check/Makefile.am:
1462         * gst/gst.c: (add_path_func), (init_pre):
1463         * gst/gstregistry.c: (gst_registry_add_path):
1464           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1465           only scan the GST_PLUGIN_PATH locations, and not add
1466           system locations
1467
1468 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1469
1470         * docs/gst/gstreamer-sections.txt:
1471         * docs/gst/tmpl/gstbasesrc.sgml:
1472         * gst/gstelement.c:
1473         * gst/gstelement.h:
1474         * gst/gstevent.c:
1475         * gst/gstutils.c:
1476           doc fixes
1477
1478 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1479
1480         * docs/manual/advanced-autoplugging.xml:
1481           Fix autoplugging example.
1482
1483 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1484
1485         * docs/manual/advanced-autoplugging.xml:
1486         * docs/manual/mime-world.fig:
1487           Try to get autoplugging working, fix type detection. Fix text
1488           in hello-world image.
1489
1490 2005-06-29  Wim Taymans  <wim@fluendo.com>
1491
1492         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1493         (gst_base_sink_change_state):
1494         Small debug line.
1495
1496         * gst/gstclock.h:
1497         map SIGNAL and BROADCAST to the right function.
1498
1499         * gst/gstobject.h:
1500         Remove redundant braces.
1501
1502         * gst/gstpad.c: (gst_pad_set_caps):
1503         Don't call setcaps function when reseting caps to NULL.
1504
1505         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1506         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1507         (gst_system_clock_id_unschedule):
1508         Use BROADCAST as this is what we do.
1509
1510 2005-06-29  Wim Taymans  <wim@fluendo.com>
1511
1512         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1513         We are actually prerolling before commiting the state
1514         change. 
1515
1516 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1517
1518         * docs/manual/advanced-clocks.xml:
1519         * docs/manual/advanced-interfaces.xml:
1520         * docs/manual/advanced-metadata.xml:
1521         * docs/manual/advanced-position.xml:
1522         * docs/manual/advanced-schedulers.xml:
1523         * docs/manual/advanced-threads.xml:
1524         * docs/manual/appendix-porting.xml:
1525         * docs/manual/basics-bins.xml:
1526         * docs/manual/basics-bus.xml:
1527         * docs/manual/basics-elements.xml:
1528         * docs/manual/basics-helloworld.xml:
1529         * docs/manual/basics-pads.xml:
1530         * docs/manual/highlevel-components.xml:
1531         * docs/manual/manual.xml:
1532         * docs/manual/thread.fig:
1533           Update (until threads/scheduling) Application Development Manual;
1534           remove GstThread, add GstBus, add simple porting checklist, add
1535           documentation for tag writing, clocks, make all examples until this
1536           part compile and run.
1537         * examples/manual/Makefile.am:
1538           Update from changes to Application Development Manual; add bus
1539           example, remove thread example.
1540
1541 2005-06-28  Wim Taymans  <wim@fluendo.com>
1542
1543         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1544         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1545         (gst_bus_source_dispatch):
1546         Add debugging messages.
1547         Make internal methods static.
1548         Handle the case where the bus is flushed in the handler.
1549         
1550         * gst/gstelement.c: (gst_element_get_bus):
1551         Fix refcount in _get_bus();
1552
1553         * gst/gstpipeline.c: (gst_pipeline_change_state),
1554         (gst_pipeline_get_clock_func):
1555         Clock refcounting fixes.
1556         Handle the case where preroll timed out more gracefully.
1557         
1558         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1559         Clean up the internal thread in dispose. This is needed
1560         for subclasses that actually get disposed.
1561         
1562         * gst/schedulers/threadscheduler.c:
1563         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1564         (gst_thread_scheduler_dispose):
1565         Free thread pool in dispose.
1566
1567 2005-06-28  Andy Wingo  <wingo@pobox.com>
1568
1569         * tests/network-clock-utils.scm (debug, print-event): New utils.
1570
1571         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1572         (*packet-loss*): Unified loss probability.
1573         (network-time): Report out-of-band events.
1574
1575         * tests/plot-data: Add support for out-of-band events. Hack it
1576         into this script instead of passing it down the pipe; should fix
1577         this later.
1578
1579 2005-06-28  Wim Taymans  <wim@fluendo.com>
1580
1581         * docs/gst/gstreamer.types:
1582         * docs/gst/tmpl/gstbasesrc.sgml:
1583         * docs/gst/tmpl/gstpad.sgml:
1584         Docs fixes.
1585
1586 2005-06-28  Wim Taymans  <wim@fluendo.com>
1587
1588         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1589         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1590         (gst_proxy_pad_do_fixatecaps):
1591         Correctly proxy the check_pull_range function.
1592
1593 2005-06-28  Andy Wingo  <wingo@pobox.com>
1594
1595         * tests/network-clock.scm: Removed need for slib.
1596         
1597 2005-06-28  Wim Taymans  <wim@fluendo.com>
1598
1599         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1600         (gst_basesink_preroll_queue_flush):
1601         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1602         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1603         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1604         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1605         (gst_proxy_pad_set_property):
1606         * gst/gstpad.c:
1607         * gst/gstpad.h:
1608         * gst/gstqueue.c: (gst_queue_init):
1609         The deprecated pad loop function is removed now.
1610
1611 2005-06-28  Andy Wingo  <wingo@pobox.com>
1612
1613         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1614         New parameters, simulate network packet loss.
1615
1616         * tests/network-clock-utils.scm: Initialize the RNG.
1617
1618 2005-06-28  Wim Taymans  <wim@fluendo.com>
1619
1620         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1621         (gst_basesink_event), (gst_basesink_deactivate):
1622         Flushing the preroll queue always needs to unlock the waiters.
1623
1624 2005-06-28  Edward Hervey  <edward@fluendo.com>
1625
1626         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1627         Wheen a seek was successful on a pipeline, set the stream_time to the
1628         seek offset in order to have a synchronized stream_time.
1629
1630 2005-06-28  Wim Taymans  <wim@fluendo.com>
1631
1632         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1633         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1634         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1635         (gst_proxy_pad_do_fixatecaps):
1636         Call wrapper function instead of just calling the function
1637         pointers. This takes care of any locking and whatmore.
1638
1639 2005-06-28  Wim Taymans  <wim@fluendo.com>
1640
1641         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1642         (gst_pad_pull_range):
1643         * gst/gstpad.h:
1644         CONNECTED -> LINKED.
1645
1646 2005-06-28  Andy Wingo  <wingo@pobox.com>
1647
1648         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1649         source-munging commit!!!
1650
1651         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1652         (gst_object_sink): Take gpointer arguments, not GstObject --
1653         avoids casts. Like GLib.
1654
1655         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1656         activate.
1657
1658 2005-06-27  Andy Wingo  <wingo@pobox.com>
1659
1660         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1661         remaining buffer.
1662
1663         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1664         returns a sorted copy of the trace list.
1665         (gst_alloc_trace_print_live): New API, only prints traces with
1666         live objects. Sort the list.
1667         (gst_alloc_trace_print_all): Sort the list.
1668         (gst_alloc_trace_print): Align columns.
1669
1670         * gst/elements/gstttypefindelement.c:
1671         * gst/elements/gsttee.c:
1672         * gst/base/gstbasesrc.c:
1673         * gst/base/gstbasesink.c:
1674         * gst/base/gstbasetransform.c:
1675         * gst/gstqueue.c: Adapt for pad activation changes.
1676
1677         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1678         sched.
1679         (gst_pipeline_dispose): Drop ref on sched.
1680
1681         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1682         (gst_pad_activate_default): Push mode by default.
1683         (pre_activate_switch, post_activate_switch): New stubs, things to
1684         do before and after switching activation modes on pads.
1685         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1686         the pad's activate function to choose which mode to activate.
1687         Shortcut on deactivation and call the right function directly.
1688         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1689         mode.
1690         (gst_pad_activate_push): New API, same for push mode.
1691         (gst_pad_set_activate_function) 
1692         (gst_pad_set_activatepull_function) 
1693         (gst_pad_set_activatepush_function): Setters for new API.
1694
1695         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1696         Trace all miniobjects.
1697         (gst_mini_object_make_writable): Unref the arg if we copy, like
1698         gst_caps_make_writable.
1699
1700         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1701
1702         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1703         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1704         Adapt for new pad API.
1705
1706         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1707
1708         * gst/gstelement.h:
1709         * gst/gstelement.c (gst_element_iterate_src_pads) 
1710         (gst_element_iterate_sink_pads): New API functions.
1711         
1712         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1713         should fold into gstiterator.c in some form.
1714         (gst_element_pads_activate): Simplified via use of fold and
1715         delegation of decisions to gstpad->activate.
1716
1717         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1718         help in debugging.
1719
1720         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1721         class once in init, like gstmessage. Didn't run into this issue
1722         but it seems correct. Don't initialize a trace, gstminiobject does
1723         that.
1724
1725         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1726         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1727         to the bus.
1728         (assert_live_count): New util function, uses alloc traces to check
1729         cleanup.
1730
1731         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1732         To be modified when unlink drops the internal pad.
1733
1734 2005-06-27  Wim Taymans  <wim@fluendo.com>
1735
1736         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1737         (gst_bin_change_state):
1738         Cleanup the get_state() function a little, make sure it
1739         iterates the same set of elements.
1740         Added stub iterate_state_order().
1741
1742 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1743
1744         * docs/gst/gstreamer-docs.sgml:
1745         * docs/gst/gstreamer-sections.txt:
1746         * docs/gst/gstreamer.types:
1747         * docs/gst/tmpl/gstbasesink.sgml:
1748         * docs/gst/tmpl/gstbasesrc.sgml:
1749         * docs/gst/tmpl/gstbasetransform.sgml:
1750         * docs/gst/tmpl/gstelement.sgml:
1751         * docs/gst/tmpl/gstiterator.sgml:
1752         * gst/base/gstbasesrc.c:
1753         * gst/base/gstbasesrc.h:
1754         * gst/base/gstbasetransform.h:
1755         * gst/gstelement.c:
1756         * gst/gstiterator.h:
1757           adding basetransform and iterator docs
1758
1759 2005-06-27  Andy Wingo  <wingo@pobox.com>
1760
1761         * docs/design/part-activation.txt: Notes on how activation should
1762         work -- not quite implemented yet.
1763
1764 2005-06-25  Wim Taymans  <wim@fluendo.com>
1765
1766         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1767         At least get the chain function correct, needs more
1768         fixing.
1769
1770 2005-06-25  Wim Taymans  <wim@fluendo.com>
1771
1772         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1773         (gst_basesink_handle_object), (gst_basesink_event),
1774         (gst_basesink_do_sync), (gst_basesink_handle_event),
1775         (gst_basesink_change_state):
1776         * gst/gsttask.h:
1777         Right, two problems here: ghostpads don't take locks and
1778         glib _rec_mutex_lock_full() with depth==0 still locks.
1779         Catch illegal locking and g_warn them.
1780
1781 2005-06-25  Wim Taymans  <wim@fluendo.com>
1782
1783         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1784         Have to check for completion now...
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/gstpad.h:
1793         Unlock STREAM_LOCK whatever the recursion was.
1794
1795 2005-06-25  Wim Taymans  <wim@fluendo.com>
1796
1797         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1798         (gst_basesink_preroll_queue_empty),
1799         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1800         (gst_basesink_event), (gst_basesink_do_sync),
1801         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1802         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1803         (gst_basesink_change_state):
1804         Reworked the base sink, handle event and buffer serialisation
1805         correctly and removed possible deadlock.
1806         Handle EOS correctly.
1807
1808 2005-06-25  Wim Taymans  <wim@fluendo.com>
1809
1810         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1811         (gst_pipeline_change_state):
1812         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1813         Allow elements to post EOS in the state change function.
1814         Fix up -launch, make it exit the poll loop when the
1815         pipeline actually changed state.
1816         Fix up warning parsing in -launch.
1817
1818 2005-06-25  Wim Taymans  <wim@fluendo.com>
1819
1820         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1821         (gst_tee_sink_activate):
1822         Core takes STREAM_LOCK for us now.
1823
1824 2005-06-25  Wim Taymans  <wim@fluendo.com>
1825
1826         * gst/gstelement.c: (gst_element_get_state_func),
1827         (gst_element_set_state):
1828         * gst/gstelement.h:
1829         * gst/gstmessage.c: (gst_message_parse_error),
1830         (gst_message_parse_warning):
1831         Keep track of current target state while performing a state
1832         change so that subclasses can do something interesting.
1833         Fix parsing of warning/error messages when GError is NULL.
1834
1835 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1836
1837         * docs/gst/Makefile.am:
1838         * docs/gst/gstreamer-docs.sgml:
1839         * docs/gst/gstreamer-sections.txt:
1840         * docs/gst/gstreamer.types:
1841         * docs/gst/tmpl/gstbasesink.sgml:
1842         * docs/gst/tmpl/gstbasesrc.sgml:
1843         * docs/gst/tmpl/gstbin.sgml:
1844         * docs/gst/tmpl/gstcompat.sgml:
1845         * docs/gst/tmpl/gstfakesink.sgml:
1846         * docs/gst/tmpl/gstfakesrc.sgml:
1847         * docs/gst/tmpl/gstfilesink.sgml:
1848         * docs/gst/tmpl/gstfilesrc.sgml:
1849         * docs/gst/tmpl/gstindex.sgml:
1850         * docs/manual/appendix-quotes.xml:
1851         * gst/base/gstbasesrc.h:
1852         * gst/elements/gstfakesrc.h:
1853         * gst/gstmessage.h:
1854           start pulling in base classes and elements in our docs
1855
1856 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1857
1858         * docs/gst/Makefile.am:
1859         * docs/libs/Makefile.am:
1860           fixed make distcheck with gtk-doc 1.3
1861
1862 2005-06-23  Wim Taymans  <wim@fluendo.com>
1863
1864         * gst/gstelement.c: (gst_element_get_state_func),
1865         (gst_element_set_state), (gst_element_change_state):
1866         When the state did not change, also report NO_PREROLL
1867         when it matters.
1868
1869 2005-06-23  Wim Taymans  <wim@fluendo.com>
1870
1871         * gst/gstpad.c: (gst_pad_event_default):
1872         * gst/gstqueue.c: (gst_queue_loop):
1873         No unsafe task pausing please.
1874
1875 2005-06-23  Wim Taymans  <wim@fluendo.com>
1876
1877         * gst/schedulers/threadscheduler.c:
1878         (gst_thread_scheduler_task_start),
1879         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1880         Ref the task before pushing it on the threadpool. This
1881         makes sure that we have a ref when the threadfunction is
1882         actually called.
1883
1884 2005-06-23  Andy Wingo  <wingo@pobox.com>
1885
1886         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1887         offset is greater than the file's size.
1888
1889         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1890         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1891         * gst/gstobject.c (gst_object_class_init): Make the class lock
1892         recursive. Wim won't let me drop deep_notify. Decodebin works
1893         again, whoopdy doo.
1894
1895         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1896         internal pad, and hacks accordingly. Doesn't do it on the target
1897         pad because we change its caps. Probably catches all cases of
1898         interest tho.
1899         (gst_ghost_pad_set_property): Connect to notify::caps as
1900         appropritate.
1901
1902         * tests/network-clock.scm (plot-simulation): Pipe data to the
1903         elite python skript.
1904
1905         * tests/network-clock-utils.scm (define-parameter): New macro,
1906         defines a parameter that can be set via the command line.
1907         (set-parameter!, parse-parameter-arguments): Command line args
1908         parser.
1909
1910         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1911         stdin.
1912
1913 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1914
1915         * gst/elements/gsttypefindelement.c:
1916         (gst_type_find_element_handle_event):
1917           Don't restart typefinding on a discont.
1918         * gst/gstelement.c: (gst_element_set_state):
1919           Debug spelling fix.
1920         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1921           Allow changing mode of an active pad.
1922           Debug output fixes.
1923         * gst/registries/gstlibxmlregistry.c: (load_feature):
1924           Don't cast a static pad template to a normal pad template.
1925
1926 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1927
1928         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1929         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1930           remove gst_strtoll completely, since it didn't actually do
1931           anything more than what g_ascii_strtoull already does.
1932           check for range errors when deserializing
1933           do a cast for the unsigned cases; but further fixing needs
1934           a decision on what the interpretation of "(int)" and
1935           deserialization should be for values that fall outside the
1936           type's boundaries (ie, refuse, or interpret as casting)
1937
1938 2005-06-23  Wim Taymans  <wim@fluendo.com>
1939
1940         * check/Makefile.am:
1941         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1942         * docs/design/part-live-source.txt:
1943         * docs/design/part-states.txt:
1944         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1945         (gst_basesrc_set_live), (gst_basesrc_is_live),
1946         (gst_basesrc_get_range), (gst_basesrc_activate),
1947         (gst_basesrc_change_state):
1948         * gst/base/gstbasesrc.h:
1949         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1950         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1951         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1952         * gst/gstelement.c: (gst_element_get_state_func),
1953         (gst_element_set_state):
1954         * gst/gstelement.h:
1955         * gst/gsttypes.h:
1956         * tools/gst-launch.c: (event_loop), (main):
1957         Added support for live sources and other elements that
1958         cannot do preroll.
1959         Updated design docs, added live-source design doc.
1960         Implemented live source functionality in basesrc
1961         Fix error condition in _bin_get_state()
1962         Implement live source handling in -launch.
1963         Added check for live sources.
1964         Fixed case in GstBin where elements were changed state
1965         multiple times.
1966
1967
1968 2005-06-23  Andy Wingo  <wingo@pobox.com>
1969
1970         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1971         borken refcounting.
1972
1973         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1974         gst_caps_replace takes care of this for us.
1975
1976         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1977         gst_pad_set_caps on the target, not just its setcaps() function.
1978
1979         * tests/network-clock.scm: 
1980         * tests/network-clock-utils.scm: A network clock simulator.
1981         Something of an algorithmic testbed before doing something in C.
1982
1983 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1984
1985         * check/Makefile.am:
1986         * check/gst/capslist.h:
1987           copy over from 0.8, and add two with bitmasks specified with
1988           (int) 0xFF...
1989         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1990           add test to parse everything from capslist.h
1991         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
1992         (main):
1993           add test for structure deserialization
1994         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1995           add tests for deserialization of strings to int types
1996         * gst/gststructure.c: (gst_structure_nth_field_name):
1997         * gst/gststructure.h:
1998           add a way to get the name of a field referenced by index
1999         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2000           instead of checking if the resulting long long lies between
2001           min and max, we check if the long long would fit into
2002           a number of bytes for the final type.
2003           This fixes cases where a string represents 2^32 - 1, which
2004           when cast to int would be the (valid) -1, but is bigger than
2005           G_MAXINT
2006
2007 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2008
2009         * gst/parse/grammar.y:
2010           add a log line for type deserialization
2011
2012 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2013
2014         * check/gst/gstvalue.c: (START_TEST):
2015         * gst/gstvalue.c: (gst_value_deserialize):
2016           return long long, not int, so gint64 deserialization actually
2017           works.  Is there any flag that makes the compiler check this ?
2018           Fixes #308559
2019
2020 2005-06-22  Wim Taymans  <wim@fluendo.com>
2021
2022         * gst/gstbuffer.h:
2023         Added convenience macros for setting buffers in GValue.
2024
2025 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2026
2027         * check/gst/.cvsignore:
2028         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2029           add a test deserializing int64, and comment part out because
2030           it fails, yay !
2031
2032 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2033
2034         * check/Makefile.am:
2035         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2036         * testsuite/Makefile.am:
2037         * testsuite/caps/Makefile.am:
2038         * testsuite/caps/value_serialize.c:
2039         * testsuite/test_gst_init.c:
2040           move a value_serialize test over
2041
2042 2005-06-20  Wim Taymans  <wim@fluendo.com>
2043
2044         * gst/gstpad.c:
2045         Small doc updates.
2046         
2047         * gst/gstvalue.c: (gst_value_compare_buffer),
2048         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2049         (gst_value_compare_flags), (gst_value_serialize_flags),
2050         (gst_value_deserialize_flags), (_gst_value_initialize):
2051         Fix serialisation of buffers, they are not boxed types anymore
2052
2053 2005-06-20  Wim Taymans  <wim@fluendo.com>
2054
2055         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2056         Testcase to show error in buffer-on-caps serialisation.
2057
2058 2005-06-20  Andy Wingo  <wingo@pobox.com>
2059
2060         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2061         will be adding to later.
2062
2063         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2064         if its socks fill with rocks.
2065         (gst_system_clock_obtain): Set the name on object construction.
2066         Avoid double-checked locking.
2067
2068 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2069
2070         * gst/gsturi.c: (gst_element_make_from_uri):
2071           Fix potential endless loop.
2072
2073 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2074
2075         * check/Makefile.am:
2076           add gsttag
2077         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2078         (main):
2079           move over from testsuite dir and clean up
2080         * configure.ac:
2081         * gst/gsttag.c:
2082         * testsuite/Makefile.am:
2083         * testsuite/tags/.cvsignore:
2084         * testsuite/tags/Makefile.am:
2085         * testsuite/tags/merge.c:
2086           remove testsuite/tags
2087
2088 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2089
2090         * docs/gst/gstreamer-sections.txt:
2091         * docs/gst/tmpl/gstenumtypes.sgml:
2092         * win32/gstenumtypes.c:
2093           clean up documentation build a little
2094
2095 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2096
2097         * check/gstcheck.h:
2098           add macros for checking refcounts on objects and caps
2099         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2100           add some more unit tests
2101         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2102         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2103           fix leaked refcounts (I hope :)) so unittest works
2104         * gst/gstpad.h:
2105           whitespace removal
2106
2107 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2108
2109         * configure.ac: back to HEAD
2110
2111 === release 0.9.1 ===
2112
2113 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2114
2115         * NEWS:
2116         * RELEASE:
2117           updated
2118
2119 2005-06-17  Andy Wingo  <wingo@pobox.com>
2120
2121         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2122         assert; it's always possible that the pad gets deactivated in
2123         between the checks in gstpad.c and the implementation. Rely on
2124         finish_preroll() to return a FLUSHING or similar instead of on the
2125         assert.
2126         
2127         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2128         clock and post an EOS message if we come out of finish_preroll in
2129         the playing state.
2130
2131 2005-06-16  David Schleef  <ds@schleef.org>
2132
2133         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2134         (gst_capsfilter_set_property): Allow NULL as possible value
2135         for filter_caps property, indicating GST_CAPS_ANY.
2136
2137 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2138
2139         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2140           fix debug output
2141         * gst/schedulers/Makefile.am:
2142           use libgst prefix
2143         * gstreamer.spec.in:
2144           fix spec for it
2145
2146 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2147
2148         * gstreamer.spec.in:
2149           clean up
2150
2151 2005-06-08  Andy Wingo  <wingo@pobox.com>
2152
2153         * gst/gstutils.c: RPAD fixes all around.
2154         (gst_element_link_pads): Refcounting fixes.
2155
2156         * tools/gst-inspect.c:
2157         * tools/gst-xmlinspect.c:
2158         * parse/grammar.y:
2159         * gst/base/gsttypefindhelper.c:
2160         * gst/base/gstbasesink.c:
2161         * gst/gstqueue.c: RPAD fixes.
2162
2163         * gst/gstghostpad.h:
2164         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2165         pads. The tricky thing is they provide both source and sink
2166         interfaces, since they proxy the internal pad for the external
2167         pad, and vice versa. Implement with lower-level ProxyPad objects,
2168         with the interior proxy pad as a child of the exterior ghost pad.
2169         Should write a doc on this.
2170         
2171         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2172         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2173         gst_object API.
2174         
2175         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2176         pads are real pads. No ghost pads in this file. Not documenting
2177         the myriad s/RPAD/PAD/ and REALIZE fixes.
2178         (gst_pad_class_init): Add properties for "direction" and
2179         "template". Both are construct-only, so they can't change during
2180         the life of the pad. Fixes properly deriving from GstPad.
2181         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2182         derived objects, just set properties when creating the objects via
2183         g_object_new.
2184         (gst_pad_get_parent): Implement as a function, return NULL if the
2185         parent is not an element.
2186         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2187         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2188         
2189         * gst/gstobject.c (gst_object_class_init): Make name a construct
2190         property. Don't set it in the object init.
2191
2192         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2193         with UNKNOWN direction.
2194         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2195         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2196         (gst_element_remove_pad): Remove ghost-pad special cases.
2197         (gst_element_pads_activate): Remove rpad cruft.
2198
2199         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2200         catch the pad's-parent-not-an-element case.
2201
2202         * gst/gst.h: Include gstghostpad.h.
2203
2204         * gst/gst.c (init_post): No more real, ghost pads.
2205
2206         * gst/Makefile.am: Add gstghostpad.[ch].
2207
2208         * check/Makefile.am:
2209         * check/gst/gstbin.c:
2210         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2211         into a bin creates ghost pads, and that the refcounts are right.
2212         Partly moved from gstbin.c.
2213
2214 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2215
2216         * check/gst-libs/.cvsignore:
2217         * check/gst/.cvsignore:
2218         * check/pipelines/.cvsignore:
2219           ignore more
2220         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2221         (START_TEST), (cleanup_suite), (main):
2222           add some tests related to cleanup after running pipelines
2223
2224 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2225
2226         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2227           add a testsuite for GstBuffer
2228
2229 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2230
2231         * gst/gstminiobject.h:
2232           add defines for accessing the refcount
2233
2234 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2235
2236         * Makefile.am: added support for html unit test coverage reports
2237
2238 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2239
2240         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2241           Free existing caps if the capsfilter changes. Add a FIXME about
2242           setting those caps on the pads.
2243
2244         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2245           Before adding a ghost pad to a parent bin, check that there isn't
2246           already one for the element on the bin. Prevents infinite recursion
2247           when using decodebin in parse pipelines. Andy says he'll rewrite the
2248           way this works anyway, so ignore the hack.
2249
2250 2005-06-02  Andy Wingo  <wingo@pobox.com>
2251
2252         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2253         file size, pass it on to the type find helper.
2254
2255         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2256         segment_start and segment_end properly according to the seek
2257         method. Segment_end is still a bit flaky because offset can be
2258         negative for CUR and END cases, but it takes -1 as an "unset"
2259         value.
2260
2261 2005-06-02  Wim Taymans  <wim@fluendo.com>
2262
2263         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2264         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2265         (gst_basesink_activate):
2266         * gst/base/gstbasesink.h:
2267         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2268         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2269         (gst_pad_query), (gst_pad_start_task):
2270         * gst/gstpad.h:
2271         * gst/gstqueue.c: (gst_queue_bufferalloc),
2272         (gst_queue_handle_sink_event), (gst_queue_chain):
2273         Bufferalloc: return GstFlowReturn to more accuratly report
2274         why allocation failed.
2275
2276 2005-06-02  Wim Taymans  <wim@fluendo.com>
2277
2278         * gst/gstpipeline.c: (gst_pipeline_send_event):
2279         Take snapshot of state without blocking.
2280
2281 2005-06-02  Wim Taymans  <wim@fluendo.com>
2282
2283         * docs/design/part-TODO.txt:
2284         * docs/design/part-caps.txt:
2285         * docs/design/part-clocks.txt:
2286         * docs/design/part-negotiation.txt:
2287         * docs/design/part-preroll.txt:
2288         Small doc updates 
2289
2290 2005-05-30  Wim Taymans  <wim@fluendo.com>
2291
2292         * gst/elements/gstidentity.c: (gst_identity_event),
2293         (gst_identity_transform), (gst_identity_get_property):
2294         Protect last_message property as it is accessed from
2295         multiple threads.
2296
2297 2005-05-30  Wim Taymans  <wim@fluendo.com>
2298
2299         * gst/gstelement.c: (gst_element_init),
2300         (gst_element_pads_activate), (gst_element_change_state):
2301         Slicker pad activation code.
2302
2303 2005-05-30  Wim Taymans  <wim@fluendo.com>
2304
2305         * gst/Makefile.am:
2306         * gst/gstelement.h:
2307         * gst/gstelementfactory.h:
2308         * gst/gsttypes.h:
2309         Move elementfactory methods to separate .h file.
2310
2311 2005-05-30  Wim Taymans  <wim@fluendo.com>
2312
2313         * docs/design/part-overview.txt:
2314         * gst/gstsystemclock.h:
2315         Small typo fixes, doc updates.
2316
2317 2005-05-30  Wim Taymans  <wim@fluendo.com>
2318
2319         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2320         (init_popt_callback):
2321         Remove cpu-opt flag.
2322
2323 2005-05-30  Wim Taymans  <wim@fluendo.com>
2324
2325         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2326         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2327         * gst/gstbuffer.h:
2328         Avoid typechecking in places where not needed.
2329         Added accessor for malloc_data.
2330
2331 2005-05-30  Wim Taymans  <wim@fluendo.com>
2332
2333         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2334         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2335         (gst_pad_configure_sink), (gst_pad_configure_src),
2336         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2337         (gst_pad_start_task):
2338         Propagate errors from _set_caps() in configure_src/sink
2339         functions instead of returning TRUE.
2340         FLUSH events can travel up and downstream
2341
2342
2343 2005-05-30  Wim Taymans  <wim@fluendo.com>
2344
2345         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2346         (gst_basesink_activate):
2347         Handle EOS in preroll.
2348
2349 2005-05-30  Wim Taymans  <wim@fluendo.com>
2350
2351         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2352         (gst_queue_loop), (gst_queue_handle_src_event):
2353         Remove old pieces of code
2354         Flushing the queue in an upstream event is a very bad idea.
2355
2356 2005-05-26  Andy Wingo  <wingo@pobox.com>
2357
2358         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2359         gst_value_set_mini_object so as to add a ref on the object (which
2360         will be removed when the value is unset).
2361
2362         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2363         arg type in ::handoff.
2364
2365         * gst/gstelement.c (gst_element_change_state): Also deactivate
2366         pads in READY->NULL, just in case the element didn't make it to
2367         PAUSED. Wingo tested, Wim approved.
2368
2369 2005-05-26  Wim Taymans  <wim@fluendo.com>
2370
2371         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2372         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2373         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2374         A flushing pad cannot be used to alloc_buffer from.
2375
2376 2005-05-26  Wim Taymans  <wim@fluendo.com>
2377
2378         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2379         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2380         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2381         (gst_bus_create_watch), (gst_bus_add_watch_full):
2382         * gst/gstbus.h:
2383         Implement a real GSource and use g_main_context_wakeup() to
2384         signal new messages instead of the socketpair.
2385
2386 2005-05-25  Wim Taymans  <wim@fluendo.com>
2387
2388         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2389         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2390         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2391         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2392         (gst_pad_send_event), (gst_pad_start_task):
2393         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2394         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2395         (gst_queue_sink_activate), (gst_queue_src_activate),
2396         (gst_queue_change_state):
2397         * gst/gstqueue.h:
2398         Fix state changes for non sinks. We now change sinks, then elements
2399         with unconnected srcpads, then the rest.
2400         More efficient queue unlocking in flush and state changes.
2401         Set the pad activate mode even if it does not have an activate
2402         function.
2403
2404 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2405
2406         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2407           Don't go in pull mode for non-seekable sources.
2408         * gst/elements/gsttypefindelement.h:
2409         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2410         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2411         (free_entry), (stop_typefinding),
2412         (gst_type_find_element_handle_event), (find_peek),
2413         (gst_type_find_element_chain), (do_pull_typefind),
2414         (gst_type_find_element_change_state):
2415           Allow typefinding (w/o seeking) in push-mode, simplified version
2416           of what was in 0.8.
2417         * gst/gstutils.c: (gst_buffer_join):
2418         * gst/gstutils.h:
2419           gst_buffer_join() from 0.8.
2420
2421 2005-05-25  Wim Taymans  <wim@fluendo.com>
2422
2423         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2424         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2425         (gst_pad_send_event), (gst_pad_start_task):
2426         Disable attempt at mode switching until it is figured out.
2427
2428 2005-05-25  Wim Taymans  <wim@fluendo.com>
2429
2430         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2431         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2432         (gst_basesink_finish_preroll), (gst_basesink_chain),
2433         (gst_basesink_loop), (gst_basesink_activate),
2434         (gst_basesink_change_state):
2435         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2436         (gst_basesrc_get_range), (gst_basesrc_loop),
2437         (gst_basesrc_activate):
2438         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2439         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2440         (gst_real_pad_init), (gst_real_pad_set_property),
2441         (gst_real_pad_get_property), (gst_pad_set_active),
2442         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2443         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2444         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2445         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2446         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2447         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2448         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2449         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2450         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2451         (gst_pad_stop_task):
2452         * gst/gstpad.h:
2453         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2454         (gst_queue_loop), (gst_queue_src_activate):
2455         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2456         (gst_task_get_state):
2457         * gst/gsttask.h:
2458         * gst/schedulers/threadscheduler.c:
2459         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2460         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2461         in task function.
2462         Remove ACTIVE pad flag, use FLUSHING everywhere
2463         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2464         functions.
2465         Add locks around IS_FLUSHING when reading.
2466         Take STREAM lock in chain(), get_range() functions so plugins
2467         don't need to take it anymore.
2468         
2469
2470
2471 2005-05-25  Wim Taymans  <wim@fluendo.com>
2472
2473         * tools/gst-launch.c: (event_loop):
2474         Unref message after using its contents instead of
2475         before.
2476
2477 2005-05-24  Wim Taymans  <wim@fluendo.com>
2478
2479         * docs/design/draft-ghostpads.txt:
2480         * docs/design/draft-push-pull.txt:
2481         * docs/design/draft-query.txt:
2482         * docs/design/part-overview.txt:
2483         Docs updates, added general overview doc.
2484
2485 2005-05-21  David Schleef  <ds@schleef.org>
2486
2487         * docs/gst/tmpl/old/GstBin.sgml:
2488         * docs/gst/tmpl/old/GstBuffer.sgml:
2489         * docs/gst/tmpl/old/GstCaps.sgml:
2490         * docs/gst/tmpl/old/GstClock.sgml:
2491         * docs/gst/tmpl/old/GstCompat.sgml:
2492         * docs/gst/tmpl/old/GstData.sgml:
2493         * docs/gst/tmpl/old/GstElement.sgml:
2494         * docs/gst/tmpl/old/GstEvent.sgml:
2495         * docs/gst/tmpl/old/GstIndex.sgml:
2496         * docs/gst/tmpl/old/GstStructure.sgml:
2497         * docs/gst/tmpl/old/GstTag.sgml:
2498         * docs/gst/tmpl/old/cothreads.sgml:
2499         * docs/gst/tmpl/old/cothreads_compat.sgml:
2500         * docs/gst/tmpl/old/gettext.sgml:
2501         * docs/gst/tmpl/old/gobject2gtk.sgml:
2502         * docs/gst/tmpl/old/grammar.tab.sgml:
2503         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2504         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2505         * docs/gst/tmpl/old/gst_private.sgml:
2506         * docs/gst/tmpl/old/gstaggregator.sgml:
2507         * docs/gst/tmpl/old/gstarch.sgml:
2508         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2509         * docs/gst/tmpl/old/gstbufferstore.sgml:
2510         * docs/gst/tmpl/old/gstdata_private.sgml:
2511         * docs/gst/tmpl/old/gstdisksink.sgml:
2512         * docs/gst/tmpl/old/gstdisksrc.sgml:
2513         * docs/gst/tmpl/old/gstelementfactory.sgml:
2514         * docs/gst/tmpl/old/gstextratypes.sgml:
2515         * docs/gst/tmpl/old/gstfakesink.sgml:
2516         * docs/gst/tmpl/old/gstfakesrc.sgml:
2517         * docs/gst/tmpl/old/gstfdsink.sgml:
2518         * docs/gst/tmpl/old/gstfdsrc.sgml:
2519         * docs/gst/tmpl/old/gstfilesink.sgml:
2520         * docs/gst/tmpl/old/gstfilesrc.sgml:
2521         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2522         * docs/gst/tmpl/old/gstidentity.sgml:
2523         * docs/gst/tmpl/old/gstindexfactory.sgml:
2524         * docs/gst/tmpl/old/gstmarshal.sgml:
2525         * docs/gst/tmpl/old/gstmd5sink.sgml:
2526         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2527         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2528         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2529         * docs/gst/tmpl/old/gstpipefilter.sgml:
2530         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2531         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2532         * docs/gst/tmpl/old/gstshaper.sgml:
2533         * docs/gst/tmpl/old/gstspider.sgml:
2534         * docs/gst/tmpl/old/gstspideridentity.sgml:
2535         * docs/gst/tmpl/old/gststatistics.sgml:
2536         * docs/gst/tmpl/old/gsttee.sgml:
2537         * docs/gst/tmpl/old/gsttimecache.sgml:
2538         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2539         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2540         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2541         * docs/gst/tmpl/old/types.sgml:
2542           I didn't intend to add these or check them in.
2543
2544 2005-05-19  David Schleef  <ds@schleef.org>
2545
2546         * configure.ac: Use -no-common everywhere.  In a sane world, it
2547           would be the default in libtool, because without it, you can't
2548           build DLLs on Windows.
2549         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2550         * docs/gst/gstreamer-sections.txt:
2551         * docs/gst/tmpl/gstcpu.sgml:
2552         * docs/gst/tmpl/gstdata.sgml:
2553         * docs/gst/tmpl/gstthread.sgml:
2554
2555 2005-05-19  David Schleef  <ds@schleef.org>
2556
2557         * gst/gstminiobject.c: (gst_value_set_mini_object),
2558         (gst_value_take_mini_object), (gst_value_get_mini_object):
2559         * gst/gstminiobject.h: Add GValue set/get functions.
2560
2561 2005-05-19  Wim Taymans  <wim@fluendo.com>
2562
2563         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2564         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2565         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2566         * gst/gstbuffer.h:
2567         * gst/gstbus.c: (gst_bus_post):
2568         * gst/gstelement.c: (gst_element_get_random_pad):
2569         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2570         Make subbufer unref the parent in finalize.
2571         some more debugging info.
2572
2573
2574 2005-05-19  Wim Taymans  <wim@fluendo.com>
2575
2576         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2577         (gst_basesink_init), (gst_basesink_finalize),
2578         (gst_basesink_activate), (gst_basesink_change_state):
2579         Don't free preroll queue too early.
2580
2581 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2582
2583         * gst/Makefile.am:
2584         * gst/ROADMAP:
2585           Hi, I'm outdated. Please shoot me.
2586
2587 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2588
2589         * gst/gstpipeline.c: (gst_pipeline_send_event):
2590           Do not access variables after they have been deleted.
2591
2592 2005-05-19  Wim Taymans  <wim@fluendo.com>
2593
2594         * tools/gst-inspect.c: (print_plugin_features):
2595         A plugin feature does unfortunatly not use the
2596         object name yet...
2597
2598 2005-05-18  Wim Taymans  <wim@fluendo.com>
2599
2600         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2601         Port _span() functions to new subbuffers.
2602
2603 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2604
2605         * gst/gstbin.c: (gst_bin_add_func):
2606           Fix clock settery in bins when adding kids after the clock has
2607           been selected.
2608
2609 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2610
2611         * gst/elements/gstidentity.c: (gst_identity_class_init):
2612           Workaround until signals support GstMiniObject.
2613
2614 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2615
2616         * gst/gstbuffer.c:
2617         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2618
2619 2005-05-18  Wim Taymans  <wim@fluendo.com>
2620
2621         * gst/base/Makefile.am:
2622         * gst/base/gstadapter.c: (gst_adapter_base_init),
2623         (gst_adapter_class_init), (gst_adapter_init),
2624         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2625         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2626         (gst_adapter_flush), (gst_adapter_available),
2627         (gst_adapter_available_fast):
2628         * gst/base/gstadapter.h:
2629         Ported and added adapter to the base classes.
2630
2631 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2632
2633         * gst/gst.c:
2634         * gst/gstmessage.c:
2635           Make sure the class is reffed/unreffed once before threads can be
2636           used.  Fixes #304551.
2637
2638 2005-05-17  Wim Taymans  <wim@fluendo.com>
2639
2640         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2641         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2642         * gst/gstminiobject.c: (gst_mini_object_get_type),
2643         (gst_mini_object_free):
2644         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2645         (gst_pad_push), (gst_pad_push_event):
2646         * gst/gstqueue.c: (gst_queue_change_state):
2647         Don't queue buffers in basesink when we are flushing.
2648         Unref buffer when flushing in basesink.
2649         Flush queue when going to READY
2650         Unref buffer when _push() returns an error.
2651         Don't free MiniObject instance when refcount is incremented
2652         in _finalize() so that we can recover objects.
2653
2654 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2655
2656         * docs/manual/advanced-schedulers.xml:
2657         * docs/manual/appendix-checklist.xml:
2658         * docs/pwg/advanced-clock.xml:
2659         * docs/pwg/advanced-interfaces.xml:
2660         * docs/pwg/advanced-request.xml:
2661         * docs/pwg/advanced-types.xml:
2662         * docs/pwg/intro-preface.xml:
2663         * examples/plugins/example.c: (gst_example_get_type),
2664         (gst_example_class_init), (gst_example_chain),
2665         (gst_example_set_property), (gst_example_get_property),
2666         (gst_example_change_state), (plugin_init):
2667         * examples/plugins/example.h:
2668           small doc fixes
2669
2670 2005-05-17  Wim Taymans  <wim@fluendo.com>
2671
2672         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2673         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2674         * gst/gstqueue.c: (gst_queue_change_state):
2675         Clear queue when going to READY.
2676         Remove IN_SETCAPS flag too.
2677
2678 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2679
2680         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2681           Remove implicit cast from gboolean to GstElementStateReturn;
2682           make sure we still return failure in paused => ready case if
2683           the parent class fails to change state and our own stop 
2684           vfunc succeeds.
2685
2686 2005-05-17  Wim Taymans  <wim@fluendo.com>
2687
2688         * tools/gst-launch.c: (event_loop):
2689         Message was unreffed too soon.
2690
2691 2005-05-16  Andy Wingo  <wingo@pobox.com>
2692
2693         * gst/gstbin.c (sink_iterator_filter): Err... um...
2694
2695         * check/gst/gstbin.c (test_ghost_pads): New test for the
2696         ghosting-if-elements-not-in-same-bin behavior.
2697
2698 2005-05-16  David Schleef  <ds@schleef.org>
2699
2700         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2701         accessing refcount directly.
2702
2703 2005-05-15  David Schleef  <ds@schleef.org>
2704
2705         * check/Makefile.am: remove GstData checks
2706         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2707         * gst/Makefile.am: add miniobject, remove data
2708         * gst/gst.h: add miniobject, remove data
2709         * gst/gstdata.c: remove
2710         * gst/gstdata.h: remove
2711         * gst/gstdata_private.h: remove
2712         * gst/gsttypes.h: remove GstEvent and GstMessage
2713         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2714         * gst/gstmarshal.list: change BOXED -> OBJECT
2715
2716         Implement GstMiniObject.
2717         * gst/gstminiobject.c:
2718         * gst/gstminiobject.h:
2719
2720         Modify to be subclasses of GstMiniObject.
2721         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2722         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2723         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2724         (gst_subbuffer_get_type), (gst_subbuffer_init),
2725         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2726         (gst_buffer_span):
2727         * gst/gstbuffer.h:
2728         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2729         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2730         (_gst_event_copy), (gst_event_new):
2731         * gst/gstevent.h:
2732         * gst/gstmessage.c: (_gst_message_initialize),
2733         (gst_message_get_type), (gst_message_class_init),
2734         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2735         (gst_message_new), (gst_message_new_error),
2736         (gst_message_new_warning), (gst_message_new_tag),
2737         (gst_message_new_state_changed), (gst_message_new_application):
2738         * gst/gstmessage.h:
2739         * gst/gstprobe.c: (gst_probe_perform),
2740         (gst_probe_dispatcher_dispatch):
2741         * gst/gstprobe.h:
2742         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2743         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2744         (_gst_query_copy), (gst_query_new):
2745
2746         Update elements for GstData -> GstMiniObject changes
2747         * gst/gstquery.h:
2748         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2749         (gst_queue_chain), (gst_queue_loop):
2750         * gst/elements/gstbufferstore.c:
2751         (gst_buffer_store_add_buffer_func),
2752         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2753         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2754         (gst_fakesink_render):
2755         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2756         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2757         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2758         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2759         (gst_filesrc_create_read):
2760         * gst/elements/gstidentity.c: (gst_identity_class_init):
2761         * gst/elements/gsttypefindelement.c:
2762         (gst_type_find_element_src_event), (free_entry_buffers),
2763         (gst_type_find_element_handle_event):
2764         * libs/gst/dataprotocol/dataprotocol.c:
2765         (gst_dp_header_from_buffer):
2766         * libs/gst/dataprotocol/dataprotocol.h:
2767         * libs/gst/dataprotocol/dp-private.h:
2768
2769 2005-05-15  David Schleef  <ds@schleef.org>
2770
2771         * gst/elements/gstelements.c: Don't include headers that were
2772         just removed.
2773
2774 2005-05-15  David Schleef  <ds@schleef.org>
2775
2776         * gst/elements/Makefile.am: Remove some elements that don't
2777         need to be in the core (or even exist at all).
2778         * gst/elements/gstaggregator.c:
2779         * gst/elements/gstaggregator.h:
2780         * gst/elements/gstmd5sink.c:
2781         * gst/elements/gstmd5sink.h:
2782         * gst/elements/gstmultifilesrc.c:
2783         * gst/elements/gstmultifilesrc.h:
2784         * gst/elements/gstpipefilter.c:
2785         * gst/elements/gstpipefilter.h:
2786         * gst/elements/gstshaper.c:
2787         * gst/elements/gstshaper.h:
2788         * gst/elements/gststatistics.c:
2789         * gst/elements/gststatistics.h:
2790         * po/POTFILES.in: Remove above files.
2791
2792 2005-05-14  Andy Wingo  <wingo@pobox.com>
2793
2794         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2795         so as to get the refs right.
2796         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2797         unreffing objects that don't pass the filter.
2798
2799         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2800         gst_element_set_bus.
2801         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2802         normal cases, this will destroy the bus.
2803
2804         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2805         object.
2806
2807         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2808         has no sinks.
2809
2810 2005-05-13  Andy Wingo  <wingo@pobox.com>
2811
2812         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2813         gst_pad_link, call pad_link_maybe_ghosting,
2814         (pad_link_maybe_ghosting): Links pads, making sure that the
2815         elements being linked are in the same bin.
2816         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2817         Helpers for pad_link_maybe_ghosting.
2818
2819 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2820
2821         * configure.ac:
2822           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2823
2824 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2825
2826         * docs/design/part-element-source.txt:
2827           Mention GstPushSrc
2828
2829 2005-05-12  Wim Taymans  <wim@fluendo.com>
2830
2831         * gst/base/gstbasesink.c: (gst_basesink_init),
2832         (gst_basesink_activate):
2833         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2834         (gst_basesrc_is_seekable):
2835         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2836         (bin_element_is_sink), (gst_bin_change_state):
2837         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2838         * gst/gstelement.h:
2839         Identify sinks by their flag to avoid overly complicated
2840         checks (fow now).
2841         Do state changes even for elements not reachable from the
2842         sinks.
2843         BaseSink is a sink now :)
2844         Some more debugging info in the basesrc.
2845
2846
2847 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2848
2849         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2850           Implement _query on a bin, similar to _send_event.
2851
2852 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2853
2854         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2855           Discont event offset format should be GST_FORMAT_BYTES,
2856           not GST_FORMAT_TIME.
2857
2858 2005-05-12  Wim Taymans  <wim@fluendo.com>
2859
2860         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2861         Same fix as Ronald's but without the signal. 
2862
2863 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2864
2865         * gst/gstutils.c: (gst_element_query_position):
2866           No, an element is not a pad.
2867
2868 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2869
2870         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2871         (gst_bin_get_state):
2872           If a child is removed from a bin while we remove the child from
2873           the bin and while we're retrieving its state, signal this to the
2874           get_state function so we abort the wait (instead of waiting for
2875           a timeout) and can immediately re-iterate over all other elements.
2876
2877 2005-05-12  Wim Taymans  <wim@fluendo.com>
2878
2879         * gst/base/Makefile.am:
2880         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2881         (gst_basesrc_start):
2882         * gst/base/gstbasesrc.h:
2883         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2884         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2885         (gst_pushsrc_init), (gst_pushsrc_create):
2886         * gst/base/gstpushsrc.h:
2887         Added is_seekable to BaseSrc
2888         Added simple PushSrc.
2889
2890 2005-05-11  Wim Taymans  <wim@fluendo.com>
2891
2892         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2893         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2894         (gst_element_link_pads), (gst_element_query_position),
2895         (gst_element_query_convert), (intersect_caps_func),
2896         (gst_pad_query_position), (gst_pad_query_convert):
2897         Fix refcounting in utils function.
2898         No point in trying to activate a pad when it's added, it could
2899         be added from the state change function and then we deadlock, the
2900         element has to decide what to do.
2901
2902 2005-05-10  Andy Wingo  <wingo@pobox.com>
2903
2904         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2905         *all* the arguments.
2906
2907         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2908         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2909         lock (according to the docs -- if this is wrong change the docs).
2910
2911         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2912         flush messages in the NULL state.
2913
2914         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2915         message immediately and return.
2916         (gst_bus_set_flushing): New function. If a bus is flushing, it
2917         flushes out any queued messages and immediately unrefs new
2918         messages. This is so when an element goes to NULL, all of the
2919         unhandled messages coming from it can be freed, and their
2920         references to the element dropped. In other words: message source
2921         ref considered harmful :P
2922
2923         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2924         we're finished with it.
2925
2926         * gst/gstmessage.c (gst_message_new_state_changed): 
2927
2928 2005-05-10  Wim Taymans  <wim@fluendo.com>
2929
2930         * gst/gstvalue.c: (gst_value_compare_flags),
2931         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2932         (_gst_value_initialize):
2933         Added flags serialize/deserialize/compare code.
2934
2935 2005-05-09  Andy Wingo  <wingo@pobox.com>
2936
2937         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2938         Intersect the peer's caps with our caps.
2939
2940 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2941
2942         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2943         * gst/elements/gsttypefindelement.c: (find_peek):
2944           Handle negative offsets better. Fixes decodebin.
2945
2946 2005-05-09  Wim Taymans  <wim@fluendo.com>
2947
2948         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2949         (gst_base_transform_event):
2950         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2951         Implement accept_caps.
2952         Fix silly lock/unlock mismatch in base class.
2953
2954 2005-05-09  Wim Taymans  <wim@fluendo.com>
2955
2956         * docs/design/draft-push-pull.txt:
2957         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2958         * gst/elements/gstfilesink.c: (gst_filesink_init),
2959         (gst_filesink_query):
2960         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2961         (gst_type_find_handle_src_query), (find_element_get_length):
2962         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2963         * gst/gstelement.h:
2964         * gst/gstmessage.c:
2965         * gst/gstmessage.h:
2966         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2967         (gst_real_pad_get_caps_unlocked),
2968         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2969         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2970         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2971         (gst_real_pad_dispose), (gst_real_pad_finalize),
2972         (gst_pad_load_and_link), (gst_pad_save_thyself),
2973         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2974         (gst_pad_check_pull_range), (gst_pad_pull_range),
2975         (gst_pad_template_get_type), (gst_pad_template_class_init),
2976         (gst_pad_template_init), (gst_pad_template_dispose),
2977         (name_is_valid), (gst_static_pad_template_get),
2978         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2979         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2980         (gst_pad_get_element_private), (gst_pad_start_task),
2981         (gst_pad_pause_task), (gst_pad_stop_task),
2982         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2983         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2984         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
2985         (gst_ghost_pad_new):
2986         * gst/gstpad.h:
2987         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
2988         (gst_query_new_position), (gst_query_set_position),
2989         (gst_query_parse_position), (gst_query_new_convert),
2990         (gst_query_set_convert), (gst_query_parse_convert):
2991         * gst/gstquery.h:
2992         * gst/gstqueryutils.c:
2993         * gst/gstqueryutils.h:
2994         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2995         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2996         (gst_queue_handle_src_query):
2997         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2998         (gst_element_query_position), (gst_element_query_convert),
2999         (intersect_caps_func), (gst_pad_query_position),
3000         (gst_pad_query_convert):
3001         * gst/gstutils.h:
3002         * tools/gst-inspect.c: (print_pad_info):
3003         * tools/gst-xmlinspect.c: (print_element_info):
3004         Remove old query functions. Ported old code.
3005         Added position/convert helper functions to gstutils.
3006         Reordered gstpad.c code, grouping relevant things.
3007         Remove gst_message_new(), always need to speficy a specific
3008         message.
3009
3010
3011 2005-05-09  Andy Wingo  <wingo@pobox.com>
3012
3013         * gst/gstiterator.h: Add some includes.
3014
3015         * gst/gstqueryutils.h: Include more headers.
3016
3017         * gst/gstpad.h:
3018         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3019         some uses of gst_pad_query.
3020
3021         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3022         NULL out parameters.
3023         (gst_query_new_position): New proc, allocates a new position
3024         query.
3025
3026         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3027         gstqueryutils.c to the build.
3028
3029         * gst/gststructure.c (gst_structure_set_valist): Implement with
3030         the generic G_VALUE_COLLECT.
3031         
3032 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3033
3034         * gst/Makefile.am: (gst_headers):
3035         Added gstqueryutils.h to the list of headers to install, that was
3036         a 'nachty' move wingo :)
3037
3038 2005-05-06  Andy Wingo  <wingo@pobox.com>
3039
3040         * gst/gstquery.h
3041         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3042         GstData, init a memchunk.
3043         (standard_definitions): Add a few query types, deprecate a few.
3044         (gst_query_get_type): New proc.
3045         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3046         implementation.
3047         (gst_query_new_application, gst_query_get_structure): New public
3048         procs.
3049
3050         * docs/design/draft-query.txt: Removed LINKS from the query types,
3051         because all the rest can be dispatched to other pads -- seemed
3052         ugly to have a query that couldn't be dispatched. internal_links
3053         is fine as a pad method.
3054
3055         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3056         in gstpad.c, but maintain binary compatibility for the moment.
3057         Will fix before 0.9 is out.
3058
3059         * gst/gstqueryutils.c: 
3060         * gst/gstqueryutils.h: New files, implement 3 methods for each
3061         query type: parse_query, parse_response, and set. Probably need an
3062         allocator as well.
3063
3064         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3065
3066         * gst/elements/gstfilesink.c (gst_filesink_query2):
3067         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3068         query_types, and formats methods.
3069
3070         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3071         (gst_pad_set_query2_function): New functions.
3072         (gst_real_pad_init): Set query2_default as the default query2
3073         function. Basically just dispatches to internally linked pads.
3074
3075         Needs review!
3076         
3077         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3078         without using the atomic operations. Only one thread can possibly
3079         be accessing the data at this point. Changed so as to avoid
3080         gst_atomic operations.
3081
3082 2005-05-06  Wim Taymans  <wim@fluendo.com>
3083
3084         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3085         Also set caps if we use the fallback buffer alloc.
3086
3087 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3088
3089         * docs/gst/Makefile.am:
3090         * docs/gst/gstreamer-docs.sgml:
3091         * docs/gst/gstreamer-sections.txt:
3092         * docs/gst/tmpl/gstatomic.sgml:
3093         * docs/gst/tmpl/gstmemchunk.sgml:
3094         * testsuite/elements/struct_i386.h:
3095         * win32/GStreamer.vcproj:
3096         * win32/Makefile:
3097           Purge GstAtomic stuff from docs and win32 makefiles as well
3098
3099 2005-05-06  Wim Taymans  <wim@fluendo.com>
3100
3101         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3102         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3103         * gst/gstpad.c: (gst_pad_peer_get_caps):
3104         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3105         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3106         (gst_queue_src_activate), (gst_queue_change_state):
3107         * gst/gstqueue.h:
3108         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3109         (intersect_caps_func):
3110         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3111         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3112         Some fixes for the peer_get_caps() change.
3113
3114 2005-05-06  Wim Taymans  <wim@fluendo.com>
3115
3116         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3117         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3118         (gst_basesink_activate):
3119         Actually do something with error codes returned from the push
3120         functions.
3121
3122 2005-05-06  Wim Taymans  <wim@fluendo.com>
3123
3124         * docs/design/part-element-sink.txt:
3125         * docs/design/part-element-source.txt:
3126         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3127         (gst_basesink_event), (gst_basesink_activate):
3128         * gst/base/gstbasesink.h:
3129         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3130         (gst_basesrc_activate):
3131         * gst/base/gstbasesrc.h:
3132         * gst/gstelement.c: (gst_element_pads_activate):
3133         Some more documentation.
3134         Fixed scheduling decision in _pads_activate().
3135
3136 2005-05-05  Andy Wingo  <wingo@pobox.com>
3137
3138         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3139         the test suite.
3140
3141 2005-05-05  Wim Taymans  <wim@fluendo.com>
3142
3143         * gst/base/Makefile.am:
3144         * gst/base/gstbasesink.h:
3145         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3146         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3147         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3148         (gst_collectpads_class_init), (gst_collectpads_init),
3149         (gst_collectpads_finalize), (gst_collectpads_new),
3150         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3151         (find_pad), (gst_collectpads_remove_pad),
3152         (gst_collectpads_is_active), (gst_collectpads_collect),
3153         (gst_collectpads_collect_range), (gst_collectpads_start),
3154         (gst_collectpads_stop), (gst_collectpads_peek),
3155         (gst_collectpads_pop), (gst_collectpads_available),
3156         (gst_collectpads_read), (gst_collectpads_flush),
3157         (gst_collectpads_chain):
3158         * gst/base/gstcollectpads.h:
3159         * gst/elements/Makefile.am:
3160         * gst/elements/gstelements.c:
3161         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3162         (gst_fakesink_get_times), (gst_fakesink_event),
3163         (gst_fakesink_preroll), (gst_fakesink_render):
3164         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3165         (gst_filesink_init), (gst_filesink_set_location),
3166         (gst_filesink_open_file), (gst_filesink_close_file),
3167         (gst_filesink_pad_query), (gst_filesink_event),
3168         (gst_filesink_render), (gst_filesink_change_state):
3169         * gst/elements/gstfilesink.h:
3170         Added object to help in making collect pad based elements.
3171         Ported filesink.
3172         Make event function in sink baseclass return gboolean.
3173
3174 2005-05-05  Wim Taymans  <wim@fluendo.com>
3175
3176         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3177         (gst_bin_get_by_name):
3178         * gst/gstbuffer.h:
3179         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3180         (gst_clock_finalize):
3181         * gst/gstdata.c: (gst_data_replace):
3182         * gst/gstdata.h:
3183         * gst/gstelement.c: (gst_element_request_pad),
3184         (gst_element_pads_activate):
3185         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3186         (gst_object_unref):
3187         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3188         (gst_pad_set_checkgetrange_function),
3189         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3190         (gst_pad_check_pull_range), (gst_pad_pull_range),
3191         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3192         (gst_pad_pause_task), (gst_pad_stop_task):
3193         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3194         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3195         Fix name lookup in GstBin.
3196         Added _data_replace() function and _buffer_replace()
3197         Use finalize method to clean up clock.
3198         Fix refcounting on request pads.
3199         Fix pad schedule mode error.
3200         Some more object refcounting debug info,
3201
3202
3203 2005-05-04  Andy Wingo <wingo@pobox.com>
3204
3205         * check/Makefile.am:
3206         * docs/gst/tmpl/gstatomic.sgml:
3207         * docs/gst/tmpl/gstplugin.sgml:
3208         * gst/base/gstbasesink.c: (gst_basesink_activate):
3209         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3210         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3211         (gst_basesrc_query), (gst_basesrc_set_property),
3212         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3213         (gst_basesrc_activate):
3214         * gst/base/gstbasesrc.h:
3215         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3216         (gst_base_transform_src_activate):
3217         * gst/elements/gstelements.c:
3218         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3219         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3220         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3221         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3222         (gst_type_find_element_checkgetrange),
3223         (gst_type_find_element_activate):
3224         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3225         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3226         (gst_caps_load_thyself):
3227         * gst/gstelement.c: (gst_element_pads_activate),
3228         (gst_element_save_thyself), (gst_element_restore_thyself):
3229         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3230         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3231         * gst/gstpad.h:
3232         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3233         (gst_xml_parse_file), (gst_xml_parse_memory),
3234         (gst_xml_get_element), (gst_xml_make_element):
3235         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3236         (_file_index_id_save_xml), (gst_file_index_commit):
3237         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3238         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3239         (load_paths):
3240         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3241         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3242         * tools/gst-complete.c: (main):
3243         * tools/gst-compprep.c: (main):
3244         * tools/gst-inspect.c: (print_element_properties_info):
3245         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3246         * tools/gst-xmlinspect.c: (print_element_properties):
3247         GCC 4 fixen.
3248         
3249 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3250
3251         * gst/gstplugin.c: (gst_plugin_check_module),
3252         (gst_plugin_check_file), (gst_plugin_load_file):
3253             apply patch from #172526 to make register work on MacOSX
3254
3255 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3256
3257         * docs/gst/tmpl/gstconfig.sgml:
3258         * gst/gstconfig.h.in:
3259           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3260         * testsuite/debug/printf_extension.c: (main):
3261           Do not use GST_PTR_FORMAT on pointers to types with
3262           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3263         * testsuite/elements/property.h:
3264           use correct printf format
3265
3266 2005-05-02  Wim Taymans  <wim@fluendo.com>
3267
3268         * docs/design/draft-push-pull.txt:
3269         * docs/design/draft-query.txt:
3270         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3271         (gst_basesrc_start):
3272         Added draft for new query API.
3273         Added draft for better selecting scheduling methods.
3274         Make basesrc ignore length if the subclass does not support
3275         it.
3276
3277 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3278
3279         * gst/Makefile.am:
3280           possible fixes for automake-1.5 - _LIBADD is reserved
3281
3282 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3283
3284         * docs/faq/Makefile.am:
3285         * docs/manual/Makefile.am:
3286         * docs/manuals.mak:
3287         * docs/pwg/Makefile.am:
3288         * gst/Makefile.am:
3289           possible fixes for automake-1.5
3290
3291 2005-04-28  Wim Taymans  <wim@fluendo.com>
3292
3293         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3294         (gst_basesink_pad_getcaps), (gst_basesink_init),
3295         (gst_basesink_do_sync):
3296         * gst/gstclock.c: (gst_clock_entry_new):
3297         * gst/gstevent.c: (gst_event_discont_get_value):
3298         * gst/gstpipeline.c: (pipeline_bus_handler),
3299         (gst_pipeline_change_state):
3300         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3301         Better debugging of clocking info.
3302         Allow NULL values when getting discont values.
3303
3304 2005-04-27  Wim Taymans  <wim@fluendo.com>
3305
3306         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3307         * check/gst/gstpad.c: (gst_pad_suite):
3308         Increase timeout for checks.
3309
3310 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3311
3312         * check/Makefile.am:
3313           fix the broken rule for cleanup.  Apparently this rule is
3314           only needed on FC2, so maybe this warrants further autotool
3315           inspection.
3316
3317 2005-04-26  Wim Taymans  <wim@fluendo.com>
3318
3319         * gst/gsttrashstack.h:
3320         Ooohh. a nasty one! After having a failed pop() from the stack,
3321         it's possible that the stack is empty. In that case, don't
3322         follow the NULL pointer.
3323
3324 2005-04-25  Wim Taymans  <wim@fluendo.com>
3325
3326         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3327         (gst_pad_set_checkgetrange_function),
3328         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3329         (gst_pad_check_pull_range), (gst_pad_pull_range),
3330         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3331         (gst_pad_pause_task), (gst_pad_stop_task):
3332         * gst/gstplugin.c: (gst_plugin_load):
3333         * gst/gstplugin.h:
3334         Remove gst_library_load as it does more harm than good with
3335         the new g_module flags.
3336         Revert bogus caps template check in pad linking, pad caps
3337         are important when linking not the template, which is more
3338         general than the current caps.
3339
3340 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3341
3342         * gst/autoplug/.cvsignore:
3343         * gst/autoplug/Makefile.am:
3344         * gst/autoplug/gstsearchfuncs.c:
3345         * gst/autoplug/gstsearchfuncs.h:
3346         * gst/autoplug/gstspider.c:
3347         * gst/autoplug/gstspider.h:
3348         * gst/autoplug/gstspideridentity.c:
3349         * gst/autoplug/gstspideridentity.h:
3350         * gst/autoplug/spidertest.c:
3351           Die, spider, die.
3352
3353 2005-04-25  Wim Taymans  <wim@fluendo.com>
3354
3355         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3356         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3357         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3358         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3359         * gst/gstpad.h:
3360         Added stubs for unimplemented functions. 
3361
3362 2005-04-24  David Schleef  <ds@schleef.org>
3363
3364         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3365         please fix.
3366
3367 2005-04-24  David Schleef  <ds@schleef.org>
3368
3369         Convert everything from GstAtomicInt to g_atomic_int_*, and
3370         remove gstatomic.
3371         * gst/Makefile.am:
3372         * gst/gstatomic.c:
3373         * gst/gstatomic.h:
3374         * gst/gstatomic_impl.h:
3375         * gst/gstbuffer.c:
3376         * gst/gstcaps.c:
3377         * gst/gstcaps.h:
3378         * gst/gstclock.c:
3379         * gst/gstclock.h:
3380         * gst/gstdata.c:
3381         * gst/gstdata.h:
3382         * gst/gstdata_private.h:
3383         * gst/gstevent.c:
3384         * gst/gstinfo.c:
3385         * gst/gstinfo.h:
3386         * gst/gstmessage.c:
3387         * gst/gstobject.c:
3388         * gst/gstobject.h:
3389         * gst/gststructure.c:
3390         * gst/gststructure.h:
3391         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3392         * gst/gstutils.h:
3393
3394 2005-04-24  David Schleef  <ds@schleef.org>
3395
3396         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3397         make the regressions tests work.  Remove some code that is no
3398         longer true.
3399         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3400         Disable warning for pads without templates.
3401
3402 2005-04-24  David Schleef  <ds@schleef.org>
3403
3404         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3405         functions that handle filtered links.
3406         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3407         removed functions.
3408         * gst/gstutils.c: Fix/remove utility functions that handle
3409         filtered caps.
3410         * gst/gstutils.h:
3411         * gst/gstvalue.c: Add serialization/deserialization of caps
3412         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3413         requires fixing so that the filter caps notation creates
3414         a capsfilter element and sets the filter_caps property.  I
3415         think everyone probably wants to keep the shorthand notation.
3416         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3417         * docs/gst/tmpl/gstpad.sgml:
3418
3419         * gst/elements/gstelements.c: Register capsfilter element.
3420         * gst/Makefile.am: fix spacing
3421         * docs/random/ds/0.9-suggested-changes: random
3422
3423 2005-04-23  David Schleef  <ds@schleef.org>
3424
3425         * gst/elements/Makefile.am:
3426         * gst/elements/gstcapsfilter.c: New element that acts like an
3427         identity, but filters caps.  Will eventually replace filtered
3428         caps in pad linking.
3429         * gst/gstutils.c: (gst_element_create_all_pads): New function
3430         to create all the ALWAYS pads that are registered with an
3431         element class.  This functionality should eventually be
3432         merged in with GstElement initialization.
3433         * gst/gstutils.h:
3434         * testsuite/trigger/README: part of trigger test code that should
3435         have been checked in a long time ago.
3436
3437 2005-04-23  David Schleef  <ds@schleef.org>
3438
3439         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3440         needed with new versions of libtool (nobody will confirm this),
3441         and hard to carry around.
3442         * gst/autoplug/Makefile.am:
3443         * gst/base/Makefile.am:
3444         * gst/elements/Makefile.am:
3445         * gst/indexers/Makefile.am:
3446         * gst/schedulers/Makefile.am:
3447         * libs/gst/bytestream/Makefile.am:
3448         * libs/gst/control/Makefile.am:
3449         * libs/gst/dataprotocol/Makefile.am:
3450         * libs/gst/getbits/Makefile.am:
3451
3452 2005-04-21  Wim Taymans  <wim@fluendo.com>
3453
3454         * docs/design/draft-push-pull.txt:
3455         * docs/design/part-MT-refcounting.txt:
3456         * docs/design/part-TODO.txt:
3457         * docs/design/part-caps.txt:
3458         * docs/design/part-events.txt:
3459         * docs/design/part-gstbus.txt:
3460         * docs/design/part-gstpipeline.txt:
3461         * docs/design/part-messages.txt:
3462         * docs/design/part-push-pull.txt:
3463         * docs/design/part-query.txt:
3464         Some more docs.
3465
3466 2005-04-21  Wim Taymans  <wim@fluendo.com>
3467
3468         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3469         (gst_message_new), (gst_message_new_error),
3470         (gst_message_new_warning), (gst_message_new_tag),
3471         (gst_message_new_state_changed), (gst_message_new_application),
3472         (gst_message_get_structure):
3473         * gst/gstmessage.h:
3474         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3475         (gst_structure_copy_conditional):
3476         Use parent refcount in GstMessage to ensure GstStructure
3477         consistency.
3478         Cleaned up headers a bit.
3479         
3480
3481 2005-04-20  Wim Taymans  <wim@fluendo.com>
3482
3483         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3484         (gst_basesink_pad_getcaps), (gst_basesink_init),
3485         (gst_basesink_chain_unlocked):
3486         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3487         (gst_type_find_helper):
3488         * gst/elements/gsttypefindelement.c:
3489         (gst_type_find_element_have_type), (gst_type_find_element_init),
3490         (stop_typefinding), (gst_type_find_element_handle_event),
3491         (find_suggest), (gst_type_find_element_chain),
3492         (gst_type_find_element_checkgetrange),
3493         (gst_type_find_element_getrange), (do_typefind),
3494         (gst_type_find_element_activate):
3495         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3496         (gst_buffer_default_free), (gst_buffer_default_copy),
3497         (gst_buffer_set_caps):
3498         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3499         (gst_caps_replace):
3500         * gst/gstmessage.c: (gst_message_new),
3501         (gst_message_new_state_changed):
3502         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3503         (gst_pad_set_checkgetrange_function),
3504         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3505         (gst_pad_set_caps), (gst_pad_check_pull_range),
3506         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3507         * gst/gstpad.h:
3508         * gst/gsttypefind.c: (gst_type_find_register):
3509         Make gst_caps_replace() work like other _replace() functions.
3510         Use _caps_replace() where possible.
3511         Make sure _message_new() initialises its field.
3512         Add gst_static_pad_template_get_caps()
3513
3514
3515 2005-04-18  Andy Wingo  <wingo@pobox.com>
3516
3517         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3518         on the peer, not the pad. I think that was a typo. Pass an extra
3519         arg to see if random access is possible. Activate the pads as
3520         PULL_RANGE if possible.
3521
3522         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3523
3524         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3525         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3526         to PROP_....
3527
3528 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3529
3530         * docs/faq/using.xml:
3531           Add note on gstreamer-properties (#154996).
3532
3533 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3534
3535         * docs/random/bbb/optional-properties:
3536           Some analysis on optional properties.
3537
3538 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3539
3540         * docs/gst/tmpl/gstelementfactory.sgml:
3541         * gst/gstelement.h:
3542         * gst/gstelementfactory.c: (gst_element_factory_init),
3543         (gst_element_factory_cleanup), (gst_element_register),
3544         (__gst_element_factory_add_static_pad_template),
3545         (gst_element_factory_get_static_pad_templates),
3546         (gst_element_factory_can_src_caps),
3547         (gst_element_factory_can_sink_caps):
3548         * gst/registries/Makefile.am:
3549         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3550         (gst_xml_registry_class_init), (gst_xml_registry_init),
3551         (gst_xml_registry_new), (gst_xml_registry_set_property),
3552         (gst_xml_registry_get_property), (get_time), (make_dir),
3553         (gst_xml_registry_get_perms_func),
3554         (plugin_times_older_than_recurse), (plugin_times_older_than),
3555         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3556         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3557         (add_to_char_array), (read_string), (read_uint), (read_enum),
3558         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3559         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3560         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3561         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3562         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3563         (gst_xml_registry_rebuild):
3564         * gst/registries/gstlibxmlregistry.h:
3565         * tools/gst-compprep.c: (main):
3566         * tools/gst-inspect.c: (print_pad_templates_info):
3567         * tools/gst-xmlinspect.c: (print_element_info):
3568           Use libxml2 for registry parsing, use staticpadtemplates in
3569           elementfactories. Makes gst_init() +/- 10x faster.
3570
3571 2005-04-12  Wim Taymans  <wim@fluendo.com>
3572
3573         * gst/base/Makefile.am:
3574         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3575         (gst_basesink_pad_getcaps), (gst_basesink_init),
3576         (gst_basesink_event), (gst_basesink_change_state):
3577         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3578         (gst_basesrc_init), (gst_basesrc_query),
3579         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3580         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3581         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3582         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3583         (gst_basesrc_stop), (gst_basesrc_activate),
3584         (gst_basesrc_change_state):
3585         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3586         (helper_find_suggest), (gst_type_find_helper):
3587         * gst/base/gsttypefindhelper.h:
3588         * gst/elements/Makefile.am:
3589         * gst/elements/gstelements.c:
3590         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3591         (gst_fakesink_get_times), (gst_fakesink_event),
3592         (gst_fakesink_preroll), (gst_fakesink_render):
3593         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3594         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3595         (gst_fakesrc_get_property), (gst_fakesrc_create),
3596         (gst_fakesrc_start), (gst_fakesrc_stop):
3597         * gst/elements/gstfakesrc.h:
3598         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3599         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3600         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3601         (gst_filesrc_create_read), (gst_filesrc_create),
3602         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3603         (gst_filesrc_start):
3604         * gst/elements/gsttypefindelement.c:
3605         (gst_type_find_element_have_type), (gst_type_find_element_init),
3606         (start_typefinding), (stop_typefinding), (push_buffer_store),
3607         (gst_type_find_element_handle_event),
3608         (gst_type_find_element_chain),
3609         (gst_type_find_element_checkgetrange),
3610         (gst_type_find_element_getrange), (do_typefind),
3611         (gst_type_find_element_activate),
3612         (gst_type_find_element_change_state):
3613         * gst/elements/gsttypefindelement.h:
3614         * gst/gstpipeline.c: (pipeline_bus_handler):
3615         Added typefind helper.
3616         Small preroll fix in the base sink.
3617         Disable typefind code in basesrc.
3618         Crude port of typefindelement.
3619         Fakesrc cleanups.
3620
3621
3622 2005-04-11  Wim Taymans  <wim@fluendo.com>
3623
3624         * check/gst/gstbus.c: (gstbus_suite):
3625         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3626         * check/gstcheck.h:
3627           Fix up the timeout so that the test does not fail.
3628
3629 2005-04-06  Wim Taymans  <wim@fluendo.com>
3630
3631         * gst/base/README:
3632         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3633         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3634         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3635         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3636         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3637         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3638         (gst_basesrc_stop), (gst_basesrc_activate),
3639         (gst_basesrc_change_state), (basesrc_find_peek),
3640         (basesrc_find_suggest), (gst_basesrc_type_find):
3641         * gst/base/gstbasesrc.h:
3642         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3643         (gst_filesrc_class_init), (gst_filesrc_init),
3644         (gst_filesrc_finalize), (gst_filesrc_set_location),
3645         (gst_filesrc_set_property), (gst_filesrc_get_property),
3646         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3647         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3648         (gst_filesrc_create_read), (gst_filesrc_create),
3649         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3650         * gst/elements/gstfilesrc.h:
3651         * gst/gstelement.c: (gst_element_get_state_func),
3652         (gst_element_lost_state), (gst_element_pads_activate):
3653         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3654         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3655         (gst_pad_pull_range):
3656         * gst/gstpad.h:
3657         More work on the generic source base class, implement seeking,
3658         query.
3659         Make filesrc extend the base source class.
3660         Added gst_pad_set_checkgetrange_function to GstPad.
3661
3662 2005-04-06  Andy Wingo  <wingo@pobox.com>
3663
3664         * pkgconfig/gstreamer-base.pc.in:
3665         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3666
3667         * pkgconfig/Makefile.am:
3668         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3669
3670 2005-04-04  Wim Taymans  <wim@fluendo.com>
3671
3672         * gst/base/Makefile.am:
3673         * gst/base/README:
3674         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3675         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3676         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3677         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3678         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3679         (gst_basesrc_base_init), (gst_basesrc_class_init),
3680         (gst_basesrc_init), (gst_basesrc_get_formats),
3681         (gst_basesrc_get_query_types), (gst_basesrc_query),
3682         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3683         (gst_basesrc_set_property), (gst_basesrc_get_property),
3684         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3685         (gst_basesrc_loop), (gst_basesrc_activate),
3686         (gst_basesrc_change_state):
3687         * gst/base/gstbasesrc.h:
3688         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3689         (gst_fakesrc_class_init), (gst_fakesrc_init),
3690         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3691         (gst_fakesrc_get_property), (gst_fakesrc_create):
3692         * gst/elements/gstfakesrc.h:
3693         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3694         (gst_filesrc_open_file), (gst_filesrc_loop),
3695         (gst_filesrc_activate), (filesrc_find_peek),
3696         (gst_filesrc_type_find):
3697         Made base source class, make fakesrc extend it.
3698         Add comments to basesink class.
3699         Some filesrc cleanup.
3700
3701 2005-03-31  David Schleef  <ds@schleef.org>
3702
3703         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3704         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3705         expected to link against libgstreamer.
3706         * gst/base/Makefile.am: link against libgstreamer
3707         * gst/elements/Makefile.am: same
3708
3709 2005-03-31  Andy Wingo  <wingo@pobox.com>
3710
3711         * tests/instantiate/Makefile.am:
3712         * tests/instantiate/caps.c: Add test to test speed of caps copy
3713         and free.
3714
3715         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3716         GMemChunk to be fair.
3717
3718         * gst/gsttrashstack.h: Remove warning about using the fallback
3719         trash stack implementation, it's still faster than malloc.
3720
3721 2005-03-30  Andy Wingo  <wingo@pobox.com>
3722
3723         * tests/complexity.c: Add a copyright.
3724
3725 2005-03-31  Wim Taymans  <wim@fluendo.com>
3726
3727         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3728         (gst_base_transform_class_init), (gst_base_transform_init),
3729         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3730         (gst_base_transform_get_property),
3731         (gst_base_transform_sink_activate),
3732         (gst_base_transform_src_activate),
3733         (gst_base_transform_change_state):
3734         * gst/base/gstbasetransform.h:
3735         * gst/elements/gstidentity.c: (gst_identity_class_init),
3736         (gst_identity_event), (gst_identity_check_perfect),
3737         (gst_identity_transform), (gst_identity_start),
3738         (gst_identity_stop):
3739         Added start/stop methods to transform base class so subclasses 
3740         don't need to deal with state changes even.
3741
3742 2005-03-31  Wim Taymans  <wim@fluendo.com>
3743
3744         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3745         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3746         * gst/gstevent.h:
3747         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3748         (gst_pad_pull_range):
3749         Added rate to the discont event to prepare for variable speed
3750         and reverse playback.
3751
3752 2005-03-29  David Schleef  <ds@schleef.org>
3753
3754         * configure.ac:
3755         * testsuite/trigger/Makefile.am:
3756         * testsuite/trigger/trigger.c: A little example program to show
3757         how trigger-based elements can work.
3758
3759 2005-03-29  Wim Taymans  <wim@fluendo.com>
3760
3761         * gst/base/Makefile.am:
3762         * gst/base/README:
3763         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3764         (gst_basesink_base_init), (gst_basesink_class_init),
3765         (gst_basesink_pad_getcaps), (gst_basesink_init),
3766         (gst_basesink_activate), (gst_basesink_change_state):
3767         * gst/base/gstbasesink.h:
3768         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3769         (gst_base_transform_base_init), (gst_base_transform_finalize),
3770         (gst_base_transform_class_init), (gst_base_transform_init),
3771         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3772         (gst_base_transform_event), (gst_base_transform_getrange),
3773         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3774         (gst_base_transform_set_property),
3775         (gst_base_transform_get_property),
3776         (gst_base_transform_sink_activate),
3777         (gst_base_transform_src_activate),
3778         (gst_base_transform_change_state):
3779         * gst/base/gstbasetransform.h:
3780         * gst/elements/gstidentity.c: (gst_identity_finalize),
3781         (gst_identity_class_init), (gst_identity_init),
3782         (gst_identity_event), (gst_identity_check_perfect),
3783         (gst_identity_transform), (gst_identity_set_property),
3784         (gst_identity_get_property), (gst_identity_change_state):
3785         * gst/elements/gstidentity.h:
3786         * gst/gstelement.c: (gst_element_get_state_func),
3787         (gst_element_lost_state), (gst_element_pads_activate):
3788         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3789         (gst_pad_check_pull_range), (gst_pad_pull_range):
3790         * gst/gstpad.h:
3791         Simplify pad activation.
3792         Added function to check if pull_range can be performed.
3793         Error out when pulling inactive or flushing pads.
3794         Removed const from refcounted types as it does not make sense.
3795         Simplify pad templates in basesink
3796         Added base class for simple 1-to-1 transforms.
3797         Make identity subclass the base transform.
3798
3799 2005-03-29  Andy Wingo  <wingo@pobox.com>
3800
3801         * docs/libs/gstreamer-libs-overrides.txt: 
3802         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3803         really don't understand what's going on, but like whatever. I want
3804         green buildbot!
3805
3806         * docs/gst/Makefile.am:
3807         * docs/libs/Makefile.am: Dist the overrides files.
3808
3809         * check/Makefile.am (clean-local): Remove .libs directories.
3810
3811         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3812         elements to EXTRA_DIST, so po/ files are happy.
3813
3814         * po/POTFILES.in: Er, remove it here.
3815
3816         * po/POTFILES: Remove gstspider.c.
3817
3818         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3819
3820         * docs/libs/gstreamer-libs-docs.sgml: 
3821         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3822         bytestream.
3823
3824         * tests/complexity.c (main): Set the length of the preroll queue
3825         on the sinks to prevent a lockup.
3826
3827         * libs/gst/dataprotocol/Makefile.am: 
3828         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3829         the same as the one in check/gst-libs/gdp.c.
3830
3831         * po/, docs/gst/: Commit automatic changes to docs and po files.
3832
3833         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3834         the versioned libgstbase.
3835
3836         * check/Makefile.am: Depend on an unversioned gst-register, seems
3837         to make autoconf happier.
3838
3839         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3840
3841 2005-03-28  Wim Taymans  <wim@fluendo.com>
3842
3843         * configure.ac:
3844         * docs/design/part-gstelement.txt:
3845         * docs/design/part-negotiation.txt:
3846         * docs/design/part-preroll.txt:
3847         * docs/design/part-scheduling.txt:
3848         * docs/design/part-states.txt:
3849         * gst/Makefile.am:
3850         * gst/base/Makefile.am:
3851         * gst/base/README:
3852         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3853         (gst_basesink_base_init), (gst_basesink_class_init),
3854         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3855         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3856         (gst_basesink_set_pad_functions),
3857         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3858         (gst_basesink_set_property), (gst_basesink_get_property),
3859         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3860         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3861         (gst_basesink_preroll_queue_push),
3862         (gst_basesink_preroll_queue_empty),
3863         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3864         (gst_basesink_event), (gst_basesink_get_times),
3865         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3866         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3867         (gst_basesink_loop), (gst_basesink_activate),
3868         (gst_basesink_change_state):
3869         * gst/base/gstbasesink.h:
3870         * gst/elements/Makefile.am:
3871         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3872         (gst_fakesink_class_init), (gst_fakesink_init),
3873         (gst_fakesink_set_property), (gst_fakesink_get_property),
3874         (gst_fakesink_get_times), (gst_fakesink_event),
3875         (gst_fakesink_preroll), (gst_fakesink_render),
3876         (gst_fakesink_change_state):
3877         * gst/elements/gstfakesink.h:
3878         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3879         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3880         * gst/gstelement.c: (gst_element_add_pad),
3881         (gst_element_get_state_func), (gst_element_abort_state),
3882         (gst_element_commit_state), (gst_element_lost_state),
3883         (gst_element_set_state), (gst_element_pads_activate):
3884         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3885         * gst/gstpipeline.c: (gst_pipeline_send_event),
3886         (gst_pipeline_change_state):
3887         Added state change code.
3888         Added/updated docs.
3889         Added sink base class, make fakesink extend the base class.
3890         Small cleanups in GstPipeline.
3891
3892 2005-03-26  David Schleef  <ds@schleef.org>
3893
3894         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3895         is broken and should be implemented in a different library.
3896         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3897         * gst/gst.h: remove gstcpu.h
3898         * gst/gstcpu.c: remove
3899         * gst/gstcpu.h: remove
3900         * gst/Makefile.am.future: Remove this file.  It's ancient.
3901
3902 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3903
3904         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3905         (gst_bin_send_event):
3906           Add default event/set_manager handlers. The set_manager handler
3907           takes care that the manager is distributed over kids that were
3908           already in the bin before the manager was set. The event handler
3909           is a utility virtual function that sends the event over all sinks,
3910           so that gst_element_send_event (bin, event); has the expected
3911           behaviour.
3912         * gst/gstpad.c: (gst_pad_event_default):
3913           Re-install default event handling for discontinuities, so that
3914           seeking works without requiring hacks in applications or extra
3915           code in sinks.
3916         * gst/gstpipeline.c: (gst_pipeline_class_init),
3917         (gst_pipeline_send_event):
3918           Half hack, half utility: set a pipeline to PAUSED for seek events,
3919           since that is the only way we can guarantee a/v sync. Means that
3920           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3921           and it "just works".
3922
3923 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3924
3925         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3926           Lock/unlock mismatch.
3927
3928 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3929
3930         * docs/faq/gst-uninstalled:
3931           add gst-plugins-base
3932         * docs/gst/Makefile.am:
3933           don't error out until docs are fixed
3934         * docs/gst/gstreamer.types:
3935           remove thread
3936
3937 2005-03-22  Wim Taymans  <wim@fluendo.com>
3938
3939         * check/Makefile.am:
3940         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3941         * gst/gststructure.c: (gst_structure_set_valist),
3942         (gst_structure_copy_conditional):
3943         Activated more tests.
3944         Added message test.
3945         Added G_TYPE_POINTER to GstStructure.
3946         
3947
3948 2005-03-22  Wim Taymans  <wim@fluendo.com>
3949
3950         * docs/design/part-TODO.txt:
3951         * docs/design/part-events.txt:
3952         * docs/design/part-gstbin.txt:
3953         * docs/design/part-gstbus.txt:
3954         * docs/design/part-gstpipeline.txt:
3955         * docs/design/part-messages.txt:
3956         * gst/gstbus.c:
3957         * gst/gstmessage.c:
3958         Docs updates
3959
3960 2005-03-21  Wim Taymans  <wim@fluendo.com>
3961
3962         * gst/gstbus.c: (gst_bus_post):
3963         Fix copy-and-paste error.
3964
3965 2005-03-21  Wim Taymans  <wim@fluendo.com>
3966
3967         * check/Makefile.am:
3968         * gst/Makefile.am:
3969         * gst/elements/Makefile.am:
3970         * gst/elements/gstelements.c:
3971         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3972         (gst_fakesink_event), (gst_fakesink_chain):
3973         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3974         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3975         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3976         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3977         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3978         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3979         (gst_fakesrc_loop), (gst_fakesrc_activate),
3980         (gst_fakesrc_change_state):
3981         * gst/elements/gstfakesrc.h:
3982         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3983         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
3984         (gst_filesrc_open_file), (gst_filesrc_loop),
3985         (gst_filesrc_activate), (gst_filesrc_change_state),
3986         (filesrc_find_peek), (filesrc_find_suggest),
3987         (gst_filesrc_type_find):
3988         * gst/elements/gstidentity.c: (gst_identity_finalize),
3989         (gst_identity_class_init), (gst_identity_init),
3990         (gst_identity_proxy_getcaps), (identity_queue_push),
3991         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
3992         (gst_identity_getrange), (gst_identity_chain),
3993         (gst_identity_sink_loop), (gst_identity_src_loop),
3994         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
3995         (gst_identity_set_property), (gst_identity_get_property),
3996         (gst_identity_change_state):
3997         * gst/elements/gstidentity.h:
3998         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
3999         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4000         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4001         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4002         (gst_tee_sink_activate):
4003         * gst/elements/gsttee.h:
4004         * gst/gst.c: (gst_register_core_elements), (init_post):
4005         * gst/gst.h:
4006         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4007         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4008         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4009         (gst_bin_change_state):
4010         * gst/gstbin.h:
4011         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4012         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4013         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4014         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4015         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4016         (bus_watch_callback), (bus_watch_destroy),
4017         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4018         (poll_timeout), (gst_bus_poll):
4019         * gst/gstbus.h:
4020         * gst/gstcaps.h:
4021         * gst/gstdata.h:
4022         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4023         (gst_element_post_message), (gst_element_message_full),
4024         (gst_element_get_state_func), (gst_element_get_state),
4025         (gst_element_abort_state), (gst_element_commit_state),
4026         (gst_element_lost_state), (gst_element_set_state),
4027         (gst_element_pads_activate), (gst_element_change_state),
4028         (gst_element_dispose), (gst_element_set_manager_func),
4029         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4030         (gst_element_set_manager), (gst_element_get_manager),
4031         (gst_element_set_bus), (gst_element_get_bus),
4032         (gst_element_set_scheduler), (gst_element_get_scheduler):
4033         * gst/gstelement.h:
4034         * gst/gstevent.c: (gst_event_new_segment_seek),
4035         (gst_event_new_flush):
4036         * gst/gstevent.h:
4037         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4038         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4039         (gst_message_new_eos), (gst_message_new_error),
4040         (gst_message_new_warning), (gst_message_new_tag),
4041         (gst_message_new_state_changed), (gst_message_new_application),
4042         (gst_message_get_structure), (gst_message_parse_tag),
4043         (gst_message_parse_state_changed), (gst_message_parse_error),
4044         (gst_message_parse_warning):
4045         * gst/gstmessage.h:
4046         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4047         (gst_real_pad_set_property), (gst_pad_set_active),
4048         (gst_pad_is_active), (gst_pad_set_blocked_async),
4049         (gst_pad_set_blocked), (gst_pad_is_blocked),
4050         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4051         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4052         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4053         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4054         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4055         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4056         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4057         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4058         (gst_pad_set_caps), (gst_pad_configure_sink),
4059         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4060         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4061         (gst_real_pad_dispose), (gst_real_pad_finalize),
4062         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4063         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4064         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4065         * gst/gstpad.h:
4066         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4067         (pipeline_bus_handler), (gst_pipeline_change_state),
4068         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4069         * gst/gstpipeline.h:
4070         * gst/gstprobe.h:
4071         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4072         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4073         (gst_queue_link_src), (gst_queue_bufferalloc),
4074         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4075         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4076         (gst_queue_loop), (gst_queue_handle_src_event),
4077         (gst_queue_handle_src_query), (gst_queue_src_activate),
4078         (gst_queue_change_state):
4079         * gst/gstqueue.h:
4080         * gst/gstscheduler.c: (gst_scheduler_init),
4081         (gst_scheduler_dispose), (gst_scheduler_create_task),
4082         (gst_scheduler_factory_create):
4083         * gst/gstscheduler.h:
4084         * gst/gststructure.c: (gst_structure_get_type),
4085         (gst_structure_copy_conditional):
4086         * gst/gststructure.h:
4087         * gst/gsttaginterface.h:
4088         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4089         (gst_task_init), (gst_task_dispose), (gst_task_create),
4090         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4091         (gst_task_pause):
4092         * gst/gsttask.h:
4093         * gst/gstthread.c:
4094         * gst/gstthread.h:
4095         * gst/gsttypes.h:
4096         * gst/schedulers/Makefile.am:
4097         * gst/schedulers/cothreads_compat.h:
4098         * gst/schedulers/entryscheduler.c:
4099         * gst/schedulers/faircothreads.c:
4100         * gst/schedulers/faircothreads.h:
4101         * gst/schedulers/fairscheduler.c:
4102         * gst/schedulers/gstbasicscheduler.c:
4103         * gst/schedulers/gstoptimalscheduler.c:
4104         * gst/schedulers/gthread-cothreads.h:
4105         * gst/schedulers/threadscheduler.c:
4106         (gst_thread_scheduler_task_get_type),
4107         (gst_thread_scheduler_task_class_init),
4108         (gst_thread_scheduler_task_init),
4109         (gst_thread_scheduler_task_start),
4110         (gst_thread_scheduler_task_stop),
4111         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4112         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4113         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4114         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4115         (plugin_init):
4116         * libs/gst/Makefile.am:
4117         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4118         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4119         (gst_file_pad_parent_set):
4120         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4121         (gst_dp_event_from_packet):
4122         * tests/complexity.c: (main):
4123         * tests/mass_elements.c: (main):
4124         * testsuite/states/locked.c: (message_received), (main):
4125         * testsuite/states/parent.c: (main):
4126         * tools/gst-inspect.c: (print_element_flag_info),
4127         (print_implementation_info), (print_pad_info):
4128         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4129         (main):
4130         * tools/gst-md5sum.c: (event_loop), (main):
4131         * tools/gst-typefind.c: (main):
4132         * tools/gst-xmlinspect.c: (print_element_info):
4133         Next big merge.
4134         Added GstBus for mainloop integration.
4135         Added GstMessage for sending notifications on the bus.
4136         Added GstTask as an abstraction for pipeline entry points.
4137         Removed GstThread.
4138         Removed Schedulers.
4139         Simplified GstQueue for multithreaded core.
4140         Made _link threadsafe, removed old capsnego.
4141         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4142         Added pad blocking functions.
4143         Reworked scheduling functions in GstPad to prepare for
4144         scheduling updates soon.
4145         Moved events out of data stream.
4146         Simplified GstEvent types.
4147         Added return values to push/pull.
4148         Removed clocking from GstElement.
4149         Added prototypes for state change function for next merge.
4150         Removed iterate from bins and state change management.
4151         Fixed some elements, disabled others for now.
4152         Fixed -inspect and -launch.
4153         Added check for GstBus.
4154
4155 2005-03-10  Wim Taymans  <wim@fluendo.com>
4156
4157         * docs/design/part-MT-refcounting.txt:
4158         * docs/design/part-clocks.txt:
4159         * docs/design/part-gstelement.txt:
4160         * docs/design/part-gstobject.txt:
4161         * docs/design/part-standards.txt:
4162         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4163         (gst_bin_remove_func), (gst_bin_remove):
4164         * gst/gstbin.h:
4165         * gst/gstbuffer.c:
4166         * gst/gstcaps.h:
4167         * testsuite/clock/clock1.c: (main):
4168         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4169         (main):
4170         * testsuite/dlopen/loadgst.c: (do_test):
4171         * testsuite/refcounting/bin.c: (add_remove_test1),
4172         (add_remove_test2), (main):
4173         * testsuite/refcounting/element.c: (main):
4174         * testsuite/refcounting/element_pad.c: (main):
4175         * testsuite/refcounting/pad.c: (main):
4176         * tools/gst-launch.c: (sigint_handler_sighandler):
4177         * tools/gst-typefind.c: (main):
4178         Doc updates.
4179         Added doc about clock.
4180         removed gst_bin_iterate_recurse_up(), marked methods
4181         for removal.
4182         Fix more testsuites.
4183
4184 2005-03-09  Wim Taymans  <wim@fluendo.com>
4185
4186         * gst/gstpad.c: (gst_pad_get_direction),
4187         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4188         (gst_pad_collect_valist):
4189         * testsuite/bins/interface.c: (main):
4190         * testsuite/caps/audioscale.c: (test_caps):
4191         * testsuite/caps/caps.c: (test1), (test2), (test3):
4192         * testsuite/caps/deserialize.c: (main):
4193         * testsuite/caps/enumcaps.c: (main):
4194         * testsuite/caps/filtercaps.c: (main):
4195         * testsuite/caps/intersect2.c: (main):
4196         * testsuite/caps/random.c: (main):
4197         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4198         * testsuite/caps/sets.c: (check_caps):
4199         * testsuite/caps/simplify.c: (check_caps), (main):
4200         * testsuite/caps/subtract.c: (check_caps):
4201         Fix _pad_get_direction wrt ghostpads.
4202         Fix caps testsuite.
4203
4204 2005-03-09  Wim Taymans  <wim@fluendo.com>
4205
4206         * check/Makefile.am:
4207         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4208         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4209         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4210         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4211         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4212         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4213         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4214         (bin_element_is_sink), (gst_bin_iterate_sinks),
4215         (gst_bin_iterate_all_by_interface):
4216         * gst/gstbin.h:
4217         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4218         (gst_element_change_state), (gst_element_dispose),
4219         (gst_element_finalize), (gst_element_set_loop_function):
4220         * gst/gstelement.h:
4221         * gst/gstiterator.c: (find_custom_fold_func):
4222         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4223         (gst_pad_collectv), (gst_pad_collect_valist),
4224         (gst_pad_template_new):
4225         * gst/gstpipeline.c: (gst_pipeline_class_init),
4226         (gst_pipeline_dispose), (gst_pipeline_set_property),
4227         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4228         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4229         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4230         * gst/gstutils.h:
4231         * gst/schedulers/entryscheduler.c:
4232         * gst/schedulers/gstbasicscheduler.c:
4233         (gst_basic_scheduler_cothreaded_chain),
4234         (gst_basic_scheduler_chain_add_element):
4235         * testsuite/bins/interface.c: (main):
4236         Added GstBin test.
4237         Added GstSystemClock test.
4238         Implemented clock distribution code in GstBin.
4239         Implemented iterate sinks method for future use.
4240         Rearranged gstelement.h
4241         Fix GstIterator comparison bug.
4242         Moved some code to GstPipeline, mostly clocking related.
4243
4244 2005-03-09  Wim Taymans  <wim@fluendo.com>
4245
4246         * configure.ac:
4247         * gst/gst_private.h:
4248         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4249         (gst_bin_remove_func), (gst_bin_remove),
4250         (gst_bin_get_by_name_recurse_up):
4251         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4252         (gst_clock_id_compare_func), (gst_clock_id_wait),
4253         (gst_clock_id_wait_async), (gst_clock_init),
4254         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4255         * gst/gstelement.h:
4256         * gst/gstinfo.c: (_gst_debug_init):
4257         * gst/gstobject.h:
4258         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4259         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4260         * gst/gstpad.h:
4261         Bump version number, we're now 0.9.0
4262         Add future debugging category.
4263         Fix NULL _unref() in _get_by_name_recurse_up
4264         Rearrange gstpad.h.
4265         Update some docs.
4266
4267 2005-03-08  Wim Taymans  <wim@fluendo.com>
4268
4269         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4270         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4271         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4272         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4273         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4274         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4275         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4276         * gst/elements/gstidentity.c: (gst_identity_class_init):
4277         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4278         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4279         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4280         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4281         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4282         (gst_tee_link):
4283         * gst/gstelement.c: (gst_element_class_init),
4284         (gst_element_base_class_init), (gst_element_init),
4285         (gst_element_get_random_pad), (gst_element_wait_state_change),
4286         (gst_element_change_state), (gst_element_dispose),
4287         (gst_element_finalize), (gst_element_set_loop_function):
4288         * gst/gstelement.h:
4289         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4290         * gst/gstthread.c: (gst_thread_class_init),
4291         (gst_thread_release_children_locks), (gst_thread_change_state):
4292         * gst/schedulers/gstbasicscheduler.c:
4293         (gst_basic_scheduler_loopfunc_wrapper),
4294         (gst_basic_scheduler_chain_wrapper),
4295         (gst_basic_scheduler_src_wrapper),
4296         (gst_basic_scheduler_remove_element):
4297         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4298         Remove threadsafe properties. Fix elements because GObject
4299         complains when installing a property before declaring a
4300         set/get_property handler.
4301         Rearrange gstelement.h file, use STATE macros for state locks.
4302         Free mutexes in the finalize method instead of dispose.
4303
4304 2005-03-08  Wim Taymans  <wim@fluendo.com>
4305
4306         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4307         * gst/gstthread.c: (gst_thread_release_children_locks):
4308         Added parentage check.
4309         Fix build og GstThread again.
4310
4311 2005-03-08  Wim Taymans  <wim@fluendo.com>
4312
4313         * docs/design/part-MT-refcounting.txt:
4314         * docs/design/part-conventions.txt:
4315         * docs/design/part-gstobject.txt:
4316         * docs/design/part-relations.txt:
4317         * docs/design/part-standards.txt:
4318         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4319         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4320         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4321         (gst_bin_iterate_all_by_interface):
4322         * gst/gstbuffer.h:
4323         * gst/gstclock.h:
4324         * gst/gstelement.c: (gst_element_class_init),
4325         (gst_element_change_state), (gst_element_set_loop_function):
4326         * gst/gstelement.h:
4327         * gst/gstiterator.c:
4328         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4329         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4330         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4331         (gst_object_set_parent), (gst_object_unparent),
4332         (gst_object_check_uniqueness):
4333         * gst/gstobject.h:
4334         Docs updates, clean up some headers.
4335
4336 2005-03-07  Wim Taymans  <wim@fluendo.com>
4337
4338         * check/.cvsignore:
4339         * check/Makefile.am:
4340         * check/gst-libs/.cvsignore:
4341         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4342         * check/gst/.cvsignore:
4343         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4344         (START_TEST), (gstbus_suite), (main):
4345         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4346         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4347         (gst_data_suite), (main):
4348         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4349         (add_fold_func), (gstiterator_suite), (main):
4350         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4351         (thread_name_object), (thread_name_object_default),
4352         (gst_object_name_compare), (gst_object_suite), (main):
4353         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4354         (gst_pad_suite), (main):
4355         * check/gstcheck.c: (gst_check_log_message_func),
4356         (gst_check_log_critical_func), (gst_check_init):
4357         * check/gstcheck.h:
4358         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4359         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4360         Added checks.
4361
4362 2005-03-07  Wim Taymans  <wim@fluendo.com>
4363
4364         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4365         (gst_list_iterator_next), (gst_list_iterator_resync),
4366         (gst_list_iterator_free), (gst_iterator_new_list),
4367         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4368         (gst_iterator_free), (gst_iterator_push), (filter_next),
4369         (filter_resync), (filter_uninit), (filter_free),
4370         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4371         (gst_iterator_foreach), (find_custom_fold_func),
4372         (gst_iterator_find_custom):
4373         * gst/gstiterator.h:
4374         Added missing files.
4375
4376 2005-03-07  Wim Taymans  <wim@fluendo.com>
4377
4378         * Makefile.am:
4379         * configure.ac:
4380         * docs/design/part-MT-refcounting.txt:
4381         * docs/design/part-conventions.txt:
4382         * docs/design/part-gstobject.txt:
4383         * docs/design/part-relations.txt:
4384         * examples/mixer/mixer.c: (main):
4385         * examples/thread/thread.c: (eos), (main):
4386         * gst/Makefile.am:
4387         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4388         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4389         (gst_spider_plug_from_srcpad):
4390         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4391         (gst_spider_identity_change_state),
4392         (gst_spider_identity_sink_loop_type_finding):
4393         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4394         * gst/elements/gstidentity.c: (gst_identity_init):
4395         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4396         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4397         * gst/elements/gsttypefindelement.c: (free_entry):
4398         * gst/gst.c:
4399         * gst/gst.h:
4400         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4401         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4402         (gst_bin_set_index), (gst_bin_set_element_sched),
4403         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4404         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4405         (gst_bin_iterate_elements), (iterate_child_recurse),
4406         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4407         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4408         (compare_interface), (gst_bin_get_by_interface),
4409         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4410         * gst/gstbin.h:
4411         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4412         (gst_buffer_default_free), (gst_buffer_default_copy),
4413         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4414         (gst_buffer_create_sub):
4415         * gst/gstbuffer.h:
4416         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4417         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4418         (gst_caps_unref), (gst_static_caps_get),
4419         (gst_caps_remove_and_get_structure), (gst_caps_append),
4420         (gst_caps_append_structure), (gst_caps_remove_structure),
4421         (gst_caps_copy_nth), (gst_caps_set_simple),
4422         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4423         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4424         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4425         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4426         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4427         (gst_caps_structure_figure_out_union),
4428         (gst_caps_switch_structures), (gst_caps_do_simplify),
4429         (gst_caps_replace), (gst_caps_from_string),
4430         (gst_caps_copy_conditional):
4431         * gst/gstcaps.h:
4432         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4433         (_gst_clock_id_free), (gst_clock_id_unref),
4434         (gst_clock_id_compare_func), (gst_clock_id_wait),
4435         (gst_clock_id_wait_async), (gst_clock_class_init),
4436         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4437         (gst_clock_get_time), (gst_clock_set_time_adjust),
4438         (gst_clock_set_property), (gst_clock_get_property):
4439         * gst/gstclock.h:
4440         * gst/gstcompat.h:
4441         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4442         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4443         * gst/gstdata.h:
4444         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4445         (gst_element_requires_clock), (gst_element_provides_clock),
4446         (gst_element_set_clock), (gst_element_clock_wait),
4447         (gst_element_wait), (gst_element_set_time_delay),
4448         (gst_element_is_indexable), (gst_element_add_pad),
4449         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4450         (pad_compare_name), (gst_element_get_static_pad),
4451         (gst_element_request_pad), (gst_element_get_request_pad),
4452         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4453         (gst_element_class_get_pad_template_list),
4454         (gst_element_class_get_pad_template), (gst_element_error_func),
4455         (gst_element_get_random_pad), (gst_element_get_event_masks),
4456         (gst_element_send_event), (gst_element_seek),
4457         (gst_element_get_query_types), (gst_element_query),
4458         (gst_element_get_formats), (gst_element_convert),
4459         (gst_element_is_locked_state), (gst_element_set_locked_state),
4460         (gst_element_sync_state_with_parent), (gst_element_change_state),
4461         (gst_element_finalize), (gst_element_yield),
4462         (gst_element_interrupt), (gst_element_set_scheduler),
4463         (gst_element_get_scheduler), (gst_element_set_loop_function):
4464         * gst/gstelement.h:
4465         * gst/gstevent.h:
4466         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4467         (gst_format_get_by_nick), (gst_format_get_details),
4468         (gst_format_iterate_definitions):
4469         * gst/gstformat.h:
4470         * gst/gstindex.c: (gst_index_gtype_resolver):
4471         * gst/gstinfo.c:
4472         * gst/gstinfo.h:
4473         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4474         (gst_mem_chunk_free):
4475         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4476         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4477         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4478         (gst_object_dispatch_properties_changed),
4479         (gst_object_set_name_default), (gst_object_set_name),
4480         (gst_object_get_name), (gst_object_set_name_prefix),
4481         (gst_object_get_name_prefix), (gst_object_set_parent),
4482         (gst_object_get_parent), (gst_object_unparent),
4483         (gst_object_check_uniqueness), (gst_object_save_thyself),
4484         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4485         (gst_object_set_property), (gst_object_get_property),
4486         (gst_object_get_path_string):
4487         * gst/gstobject.h:
4488         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4489         (gst_real_pad_init), (gst_real_pad_get_property),
4490         (gst_pad_custom_new), (gst_pad_get_direction),
4491         (gst_pad_set_active), (gst_pad_is_active),
4492         (gst_pad_set_event_function), (gst_pad_is_linked),
4493         (gst_pad_link_free), (gst_pad_link_intersect),
4494         (gst_pad_link_fixate), (gst_pad_set_caps),
4495         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4496         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4497         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4498         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4499         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4500         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4501         (gst_pad_realize), (gst_pad_get_allowed_caps),
4502         (gst_real_pad_dispose), (gst_real_pad_finalize),
4503         (gst_pad_collectv), (gst_pad_collect_valist),
4504         (gst_pad_template_dispose), (gst_pad_template_new),
4505         (gst_pad_get_internal_links):
4506         * gst/gstpad.h:
4507         * gst/gstpipeline.c: (gst_pipeline_dispose),
4508         (gst_pipeline_change_state):
4509         * gst/gstpipeline.h:
4510         * gst/gstplugin.c:
4511         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4512         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4513         * gst/gstpluginfeature.h:
4514         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4515         * gst/gstquery.c: (_gst_query_type_initialize),
4516         (gst_query_type_register), (gst_query_type_get_by_nick),
4517         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4518         * gst/gstquery.h:
4519         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4520         * gst/gstscheduler.c: (gst_scheduler_add_element),
4521         (gst_scheduler_factory_create):
4522         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4523         (gst_structure_free), (gst_structure_set_name),
4524         (gst_structure_id_set_value), (gst_structure_set_value),
4525         (gst_structure_set_valist), (gst_structure_remove_field),
4526         (gst_structure_remove_fields),
4527         (gst_structure_remove_fields_valist),
4528         (gst_structure_remove_all_fields), (gst_structure_foreach),
4529         (gst_structure_map_in_place),
4530         (gst_caps_structure_fixate_field_nearest_int),
4531         (gst_caps_structure_fixate_field_nearest_double):
4532         * gst/gststructure.h:
4533         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4534         (gst_system_clock_init), (gst_system_clock_dispose),
4535         (gst_system_clock_async_thread),
4536         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4537         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4538         * gst/gstsystemclock.h:
4539         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4540         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4541         * gst/gsttaginterface.c:
4542         * gst/gstthread.c: (gst_thread_dispose),
4543         (gst_thread_release_children_locks), (gst_thread_change_state),
4544         (gst_thread_main_loop):
4545         * gst/gsttrashstack.h:
4546         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4547         * gst/gsttypes.h:
4548         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4549         (gst_element_request_pad), (gst_element_get_pad_from_template),
4550         (gst_element_request_compatible_pad),
4551         (gst_element_get_compatible_pad_filtered),
4552         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4553         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4554         (gst_element_link_many), (gst_element_link),
4555         (gst_element_link_pads), (gst_element_unlink_pads),
4556         (gst_element_unlink_many), (gst_element_unlink),
4557         (gst_pad_can_link_filtered), (gst_pad_can_link),
4558         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4559         (gst_object_default_error), (gst_bin_add_many),
4560         (gst_bin_remove_many), (gst_element_populate_std_props),
4561         (gst_element_class_install_std_props), (gst_buffer_merge),
4562         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4563         (link_fold_func), (gst_pad_proxy_setcaps):
4564         * gst/gstutils.h:
4565         * gst/gstvalue.c: (gst_value_deserialize_string):
4566         * gst/parse/grammar.y:
4567         * gst/schedulers/gstbasicscheduler.c:
4568         (gst_basic_scheduler_cothreaded_chain),
4569         (gst_basic_scheduler_chain_recursive_add),
4570         (gst_basic_scheduler_pad_link):
4571         * gst/schedulers/gstoptimalscheduler.c:
4572         (get_group_schedule_function),
4573         (gst_opt_scheduler_state_transition),
4574         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4575         * libs/gst/bytestream/bytestream.c:
4576         * libs/gst/dataprotocol/dataprotocol.c:
4577         (gst_dp_header_from_buffer):
4578         * po/nb.po:
4579         * po/ru.po:
4580         * tests/threadstate/threadstate2.c: (eos):
4581         * tools/gst-compprep.c: (main):
4582         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4583         (print_pad_info), (print_children_info):
4584         * tools/gst-launch.c: (idle_func), (main):
4585         * tools/gst-md5sum.c: (idle_func), (main):
4586         * tools/gst-xmlinspect.c: (print_element_info):
4587         First THREADED backport attempt, focusing on adding locks and
4588         making sure the API is threadsafe. Needs more work. More docs
4589         follow this week.
4590
4591 2005-02-24  Andy Wingo  <wingo@pobox.com>
4592
4593         * tests/bench-complexity.scm:
4594         * tests/complexity.gnuplot: New files, good for running complexity
4595         benchmarks.
4596
4597         * tests/Makefile.am:
4598         * tests/complexity.c: New test, sets up N elements, at each level
4599         teeing into M streams per element. Eeeenteresting.
4600
4601         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4602         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4603         running bench-mass_elements.scm.
4604
4605         * tests/bench-mass_elements.scm: New script, runs mass_elements
4606         for various numbers of identities, outputting the results to a
4607         file. Requires guile 1.6. Just for testing.
4608
4609 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4610
4611         * gst/schedulers/fairscheduler.c:
4612           compile with debug disabled
4613
4614 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4615
4616         * configure.ac:
4617           hunting season on 0.9 is now OPEN
4618
4619 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4620
4621         * docs/libs/tmpl/gstcontrol.sgml:
4622         * docs/libs/tmpl/gstdparam.sgml:
4623         * docs/libs/tmpl/gstdplinint.sgml:
4624         * docs/libs/tmpl/gstdpman.sgml:
4625         * docs/libs/tmpl/gstdpsmooth.sgml:
4626         * docs/libs/tmpl/gstunitconvert.sgml:
4627           more docs for the state of dparams
4628
4629 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4630
4631         * gst/gstelementfactory.c: (gst_element_factory_create):
4632         * gst/gstobject.c: (gst_object_init),
4633         (gst_object_set_name_default), (gst_object_set_name):
4634           name objects by default, not in gst_element_factory_create. Allows
4635           using elements created with g_object_new. (fixes #167283)
4636
4637 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4638
4639         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4640           make the time that debugging functions print relative to when
4641           gst_init was called
4642
4643 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4644
4645         * gst/gsttaginterface.c:
4646           Fix inline docs: tag setter vararg functions are NULL-terminated,
4647           GST_TAG_INVALID doesn't exist any more.
4648
4649 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4650
4651         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4652         Allocate the 1 byte more memory that was forgotten!!!!!
4653         fixes memory corruption on 64bit platforms
4654
4655 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4656
4657         * docs/pwg/building-pads.xml:
4658         * docs/pwg/intro-basics.xml:
4659           fixed a few typos, relabeled introductionary list of types
4660         * docs/random/ensonic/dparams.txt:
4661           more notes abut dparam changes
4662         * libs/gst/control/dparam.c: (gst_dparam_attach):
4663         * libs/gst/control/dparammanager.c:
4664         * libs/gst/control/dparammanager.h:
4665           - many comments and notes on dparam implementation
4666           - new dparams are were not initialized to the default value
4667             from param spec
4668
4669 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4670
4671         submitted by: Peter Astakhov
4672
4673         * po/LINGUAS:
4674         * po/ru.po:
4675           adding Russian translation
4676
4677 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4678
4679         * configure.ac:
4680         * docs/gst/Makefile.am:
4681         * docs/libs/Makefile.am:
4682           make sure popt is added to gtk-doc flags.  Fixes #147782.
4683
4684 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4685
4686         * docs/faq/using.xml:
4687           Fix typo in FAQ (artssink => artsdsink)
4688
4689 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4690
4691         * tools/gst-launch.1.in:
4692           Fix typo (#166699).
4693
4694 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4695
4696         * docs/faq/using.xml:
4697           Add -v argument to fakesrc/fakesink gst-launch line,
4698           so that the promised output will actually show up.
4699
4700 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4701
4702         * gst/gstthread.c: (gst_thread_change_state):
4703           Implement state-change error handling (#166073).
4704
4705 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4706
4707         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4708           Release interrupt after handling (#166250).
4709
4710 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4711
4712         * configure.ac:
4713           back to HEAD
4714
4715 === release 0.8.9 ===
4716
4717 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4718
4719         * NEWS:
4720         * RELEASE:
4721         * configure.ac:
4722           releasing 0.8.9, "Like Eating Glass"
4723
4724 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4725
4726         submitted by: Clytie Siddall
4727
4728         * po/vi.po: Added Vietnamese translation
4729
4730 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4731
4732         patch by: Tim Philipp-Müller
4733
4734         * configure.ac:
4735         * gst/gstpad.c:
4736           unref data when probe function returns FALSE.  Fixes #166362
4737
4738 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4739
4740         * gst/gst.c: (gst_init_get_popt_table):
4741           Fix typo (#166269).
4742
4743 2005-02-04  Andy Wingo  <wingo@pobox.com>
4744
4745         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4746         the debugging on whether the caps are compatible.
4747
4748 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4749
4750         * docs/manual/basics-elements.xml:
4751           Fix two typos.
4752
4753 2005-02-02  Wim Taymans  <wim@fluendo.com>
4754
4755         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4756         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4757         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4758         Remove some FIXMEs after analysing and commenting why they
4759         are not issues.
4760
4761 2005-02-02  Wim Taymans  <wim@fluendo.com>
4762
4763         * gst/schedulers/gstoptimalscheduler.c:
4764         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4765         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4766         (get_invalid_call), (chain_invalid_call),
4767         (get_group_schedule_function), (loop_group_schedule_function),
4768         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4769         (gst_opt_scheduler_state_transition),
4770         (gst_opt_scheduler_add_element),
4771         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4772         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4773         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4774         (gst_opt_scheduler_show):
4775         Added lock to protect scheduler data structures.
4776
4777 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4778
4779         * testsuite/threads/threadi.c: (cb_data):
4780           Fix buglet in test.
4781
4782 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4783
4784         * testsuite/threads/Makefile.am:
4785         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4786           On Wim's request, split the test in three separately-compiled
4787           tests that each test a very specific bug. Two of them still fail,
4788           will create bugs for those. threadi.c indicates why they fail.
4789
4790 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4791
4792         * gst/schedulers/gstoptimalscheduler.c:
4793         (get_group_schedule_function):
4794           Try to work with the threading mess that queue_link is.
4795
4796 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4797
4798         * gst/gstbin.c: (gst_bin_remove_func):
4799           Explicitely make an element release locks in a group when being
4800           remove from a bin.
4801         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4802           If there's no scheduler, always return immediately (similar to
4803           gst_element_interrupt).
4804
4805 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4806
4807         * gst/gstbin.c: (gst_bin_child_state_change_func):
4808           Remove a piece of code that could never be reached.
4809         * docs/gst/gstreamer-sections.txt:
4810         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4811         (gst_pad_call_get_function):
4812         * gst/gstpad.h:
4813         * testsuite/pad/Makefile.am:
4814           Fix #150546, enable tests.
4815
4816 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4817
4818         * docs/pwg/advanced-types.xml:
4819           Fix description for buffer-frames=0.
4820         * docs/gst/tmpl/gstbin.sgml:
4821         * gst/gstbin.c: (gst_bin_child_state_change_func),
4822         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4823         * gst/gstbin.h:
4824         * testsuite/threads/Makefile.am:
4825         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4826         (cb_state), (cb_play), (main):
4827           Fix non-recursive state changes to *really* change the state
4828           of the object, and not just call parent_class->state_change.
4829           Fix a lot of lockups caused by this. Fixes #132775. Add test
4830           for the problem. Also enable test to show #142588 (fixed).
4831         * gst/gstthread.c: (gst_thread_change_state),
4832         (gst_thread_child_state_change):
4833           Don't exit the thread if we go to NULL and are inside thread
4834           context. Instead, return control to the main thread context
4835           and exit from there.
4836         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4837           Don't unset virtual functions, since those may still be used.
4838           That's not necessarily correct, but suffices for now.
4839         * configure.ac:
4840         * testsuite/Makefile.am:
4841         * testsuite/pad/Makefile.am:
4842         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4843         (gst_test_sink_base_init), (gst_test_sink_chain),
4844         (gst_test_sink_init), (main):
4845         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4846         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4847         (main):
4848         * testsuite/pad/link.c: (gst_test_element_class_init),
4849         (gst_test_element_base_init), (gst_test_src_get),
4850         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4851         (gst_test_filter_loop), (gst_test_filter_init),
4852         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4853         (cb_error), (main):
4854           Add tests to show #150546. Pass, but should fail (currently
4855           disabled from the testsuite).
4856         * gst/gstscheduler.c: (gst_scheduler_dispose):
4857           Dereference child schedulers on dispose (#94464).
4858         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4859           Fix typo.
4860         * testsuite/threads/thread.c: (main):
4861           Add more debug.
4862
4863 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4864
4865         * gst/gstpad.c: (gst_pad_push):
4866           Oops, revert previous commit, broke testsuite...
4867
4868 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4869
4870         * gst/gstpad.c: (gst_pad_push):
4871           Add check that the pad on which the push is performed is not a
4872           get-based pad (#150546).
4873
4874 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4875
4876         * gst/elements/gsttypefindelement.c:
4877         (gst_type_find_element_handle_event):
4878           Fix buffer pushing if stream EOSes during typefinding.
4879
4880 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4881
4882         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4883
4884         * gst/gstvalue.c: (gst_string_wrap):
4885           Allow NULL-strings as argument (#165365).
4886
4887 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4888
4889         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4890
4891         * gst/schedulers/faircothreads.c:
4892         (gst_fair_scheduler_cothread_queue_show):
4893           Fix build without debug enabled.
4894
4895 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4896
4897         * docs/gst/gstreamer-sections.txt:
4898         * docs/libs/gstreamer-libs-docs.sgml:
4899         * docs/libs/gstreamer-libs-sections.txt:
4900         * docs/libs/tmpl/gstcontrol.sgml:
4901         * docs/libs/tmpl/gstdparam.sgml:
4902         * docs/libs/tmpl/gstdplinint.sgml:
4903         * docs/libs/tmpl/gstdpman.sgml:
4904         * docs/libs/tmpl/gstdpsmooth.sgml:
4905         * docs/libs/tmpl/gstputbits.sgml:
4906         * docs/libs/tmpl/gstunitconvert.sgml:
4907         * libs/gst/control/dparam.c:
4908         * libs/gst/control/dparam.h:
4909         * libs/gst/control/dparammanager.c:
4910         (gst_dpman_add_required_dparam_callback),
4911         (gst_dpman_add_required_dparam_direct),
4912         (gst_dpman_add_required_dparam_array),
4913         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4914         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4915         (gst_dpman_get_manager)
4916           restructured DParam docs
4917
4918 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4919
4920         * gst-element-check.m4:
4921           Only check for gst-inspect if we haven't already
4922           found it in previous element check runs
4923
4924 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4925
4926         * docs/gst/Makefile.am:
4927         * docs/libs/Makefile.am:
4928           fixed install rules to treat style.css as optional
4929
4930 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4931
4932         * docs/gst/Makefile.am:
4933         * docs/libs/Makefile.am:
4934           install style.css along with docs
4935         * docs/gst/tmpl/gstbin.sgml:
4936         * docs/gst/tmpl/gstclock.sgml:
4937         * docs/gst/tmpl/gstdata.sgml:
4938         * docs/gst/tmpl/gstelement.sgml:
4939         * gst/gstbin.h:
4940         * gst/gstelement.c: (gst_element_class_init):
4941         * gst/gstelement.h:
4942           fixing incomplete docs
4943
4944 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4945
4946         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4947           Don't unref seek event twice when fflush() fails
4948           
4949 2005-01-22  David Schleef  <ds@schleef.org>
4950
4951         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4952
4953 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4954
4955         * docs/gst/Makefile.am:
4956         * docs/libs/Makefile.am:
4957           added params for deprecation guards
4958         * gst/gst.c:
4959         * gst/gst.h:
4960         * gst/gsterror.c: (_gst_resource_errors_init),
4961         (_gst_stream_errors_init):
4962         * gst/gsterror.h:
4963           documented some more enums
4964
4965 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4966         * gst/autoplug/gstspideridentity.c:
4967         Cosmetic fix - spider_find_peek should be static
4968         * gst/parse/parse.l:
4969         Applying fix for #164261
4970
4971 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4972
4973         * docs/gst/gstreamer-sections.txt:
4974         * docs/gst/tmpl/gstplugin.sgml:
4975         * docs/libs/gstreamer-libs-sections.txt:
4976         * docs/libs/tmpl/gstcontrol.sgml:
4977         * gst/gstbuffer.h:
4978         * gst/gsttag.h:
4979         * gst/gstvalue.c:
4980           added docs for the TAG defines
4981
4982 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4983
4984         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4985           Only unref entry if there is an entry.
4986
4987 2005-01-17  Wim Taymans  <wim@fluendo.com>
4988
4989         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4990         (remove_from_group), (schedule_group), (normalize_group),
4991         (gst_opt_scheduler_iterate):
4992         Also ref/unref decoupled elements before iterating the
4993         group since they are not added to the list of elements.
4994
4995 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4996
4997         * docs/manual/highlevel-components.xml:
4998           Add subtitle/streamselection as new features to playbin.
4999
5000 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5001
5002         * docs/manual/manual.xml:
5003           Re-enable dataaccess docs (oops).
5004
5005 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5006
5007         * docs/pwg/advanced-types.xml:
5008         * docs/random/mimetypes:
5009           Add documentation on libsndfile types (#163309), by Steve Baker
5010           <steve@stevebaker.org>.
5011         * gst/gstelement.c: (gst_element_release_request_pad):
5012           If an element has no explicit function, just remove the pad.
5013
5014 2005-01-17  Luca Ognibene  <luogni@tin.it>
5015
5016         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5017
5018         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5019           Fix memleak (#163801).
5020
5021 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5022
5023         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5024           I think this is actually more correct...
5025
5026 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5027
5028         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5029           Another workaround for memory access while destroyed in callback.
5030           Please, someone with refcount knowledge, have a look at this.
5031
5032 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5033
5034         * docs/faq/faq.xml:
5035         * docs/faq/legal.xml:
5036           move the legal Q&A here
5037
5038 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5039
5040         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5041         (gst_tee_request_new_pad):
5042           Fix negotiation.
5043
5044 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5045
5046         * docs/random/omega/caps2:
5047         * testsuite/caps/caps_strings:
5048           replace framerate aproximations by their real value
5049           (24000/1001, 30000/1001, 60000/1001)
5050           Partially fixes bug #164049
5051
5052 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5053
5054         * docs/gst/Makefile.am:
5055           don't fail on the stupid GstPoptOption
5056
5057 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5058
5059         * gst/gstpad.h:
5060         * gst/gstprobe.c:
5061           allow probes to work on ghost pads by realizing the pad
5062           probe debugging
5063
5064 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5065
5066         * docs/gst/gstreamer-sections.txt:
5067         * docs/gst/tmpl/gstpad.sgml:
5068         * gst/gstpad.c: (gst_pad_set_active_recursive):
5069         * gst/gstpad.h:
5070           Add gst_pad_set_active_recursive().
5071
5072 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5073
5074         * docs/random/release:
5075           updates
5076         * gst/gst_private.h:
5077         * gst/gstinfo.c:
5078         * gst/gstobject.c:
5079           move deep_notify logging to a new category
5080         * gst/gstprobe.c:
5081         * gst/gstprobe.h:
5082           add stuff so bindings can wrap probes
5083
5084 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5085
5086         * gst/gstplugin.c: (gst_plugin_load):
5087           Fix plugin loading if plugin/lib was already loaded. Fixes
5088           #163383
5089
5090 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5091
5092         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5093
5094         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5095           Protect plugin loading by a mutex so it's threadsafe. Fixes
5096           #163234.
5097
5098 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5099
5100         * gst/gstevent.c: (_gst_event_copy):
5101           Reference source object when copying events, since it'll be
5102           dereferenced on event dereferencing as well.
5103
5104 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5105
5106         * docs/gst/gstreamer-sections.txt:
5107         * docs/gst/tmpl/gstevent.sgml:
5108         * gst/gstevent.c: (gst_event_new_filler_stamped),
5109         (gst_event_filler_get_duration):
5110         * gst/gstevent.h:
5111           Add two new functions for filler events (which are used to
5112           synchronize streams if one of them is not having any data
5113           for a while) without interrupting the actual data-stream.
5114           Basically a no-op.
5115         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5116         (gst_queue_link_sink), (gst_queue_link_src),
5117         (gst_queue_change_state):
5118           Allow for renegotiation while filled. Required for stream
5119           switching while playing.
5120
5121 2005-01-08  Benjamin Otte  <otte@gnome.org>
5122
5123         * gst/gstelement.c: (gst_element_link_many):
5124           fix up g_return_if_fail's
5125         * po/LINGUAS:
5126         * po/de.po:
5127           add German translation, that was somehow not included
5128
5129 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5130
5131         * docs/random/mimetypes:
5132           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5133           do not add them to riff-lib as they are not common
5134
5135 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5136
5137         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5138           Check for existence of probe after performing the probe before
5139           re-accessing it to prevent segfaults caused by removal of the
5140           probe in the callback.
5141
5142 2005-01-05  David Schleef  <ds@schleef.org>
5143
5144         * testsuite/registry/Makefile.am:
5145         * testsuite/registry/gst-print-formats.c:
5146         (print_pad_templates_info), (print_element_list),
5147         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5148         (g_list_uniqify), (get_pad_templates_info),
5149         (get_element_mime_list), (print_mime_list), (main): A little
5150         program that looks through the registry to find elements of
5151         a given type.  Not particularly interesting as a test, except
5152         that there's no other test covering the same area.
5153
5154 2005-01-05  David Schleef  <ds@schleef.org>
5155
5156         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5157         (fault_handler_sigaction), (fault_spin),
5158         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5159         in signal.h-type signal handlers by not calling forbidden functions,
5160         including gst_element_set_state().
5161
5162 2005-01-05  David Schleef  <ds@schleef.org>
5163
5164         * gst/gstvalue.h: Mark _gst_reserved[] as private
5165
5166 2005-01-05  David Schleef  <ds@schleef.org>
5167
5168         * gst/gstvalue.c: Fix doc build problem.
5169
5170 2005-01-05  David Schleef  <ds@schleef.org>
5171
5172         * gst/gstvalue.c: Add some documentation
5173
5174 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5175
5176         * docs/README:
5177           another shell oneliner for empty return value docs
5178         * gst/gstcaps.c:
5179         * gst/gstvalue.c:
5180         * libs/gst/control/dparam.c:
5181           more doc fixes (parameters and return values)
5182
5183 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5184
5185         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5186
5187         * gst/gstregistry.h:
5188         * gst/registries/gstxmlregistry.c:
5189           Fix macro's for Mingw (fixes #162276).
5190
5191 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5192
5193         * docs/README:
5194           quick shell oneliner to find undocumented members
5195         * docs/gst/tmpl/gstplugin.sgml:
5196         * docs/gst/tmpl/gstscheduler.sgml:
5197         * docs/gst/tmpl/gstthread.sgml:
5198           more enumtypes cleanup
5199         * gst/gsterror.h:
5200           activated documentation comments, now someone needs to document
5201           the enums :(
5202
5203 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5204
5205         * docs/manual/manual.xml:
5206           Add dataaccess part (doh!).
5207
5208 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5209
5210         * docs/manual/advanced-autoplugging.xml:
5211           Fix typo (intiate -> initiate).
5212
5213 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5214
5215         * docs/random/bbb/streamselection:
5216           Add some notes on how to handle multi-subtitle/-audio streams.
5217
5218 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5219
5220         * docs/gst/gstreamer-docs.sgml:
5221         * docs/gst/gstreamer-sections.txt:
5222         * docs/gst/tmpl/gstenumtypes.sgml:
5223         * docs/gst/tmpl/gsterror.sgml:
5224         * docs/gst/tmpl/gstevent.sgml:
5225         * docs/gst/tmpl/gstpad.sgml:
5226         * docs/gst/tmpl/gstpadtemplate.sgml:
5227         * docs/gst/tmpl/gstthread.sgml:
5228           removed gstenumtypes section from docs and put all the enums into
5229           their sections
5230
5231 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5232
5233         * gst/gstplugin.c:
5234           document gst_library_load a bit more (riff special case + return
5235           value if already loaded)
5236         * testsuite/bytestream/filepadsink.c:
5237           plugin name is 'gstbytestream', not 'bytestream'
5238
5239 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5240
5241         * docs/random/bbb/subtitles:
5242           Add some first mind rumblings on proper subtitle support.
5243
5244 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5245
5246         * po/ca.po:
5247         * po/sv.po:
5248           updated translations
5249
5250 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5251
5252         * docs/manual/advanced-dataaccess.xml:
5253           Add section on how to use fakesrc/fakesink/identity in your
5254           application, plus section on how to embed plugins. Also mention
5255           probes.
5256         * docs/manual/appendix-checklist.xml:
5257         * docs/manual/appendix-debugging.xml:
5258         * docs/manual/appendix-gnome.xml:
5259         * docs/manual/appendix-integration.xml:
5260           Debug -> checklist, GNOME -> integration, add sections on Linux,
5261           KDE integration and add other things useful for application
5262           development.
5263         * docs/manual/manual.xml:
5264           Remove some fixmes, update some file pointers.
5265         * docs/pwg/appendix-checklist.xml:
5266           Fix typo.
5267         * docs/pwg/building-boiler.xml:
5268           Remove ugly header and add commented fixme.
5269         * docs/pwg/pwg.xml:
5270           Add fixme.
5271         * examples/manual/Makefile.am:
5272           Add example for added docs.
5273
5274 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5275
5276         * configure.ac:
5277           back to HEAD
5278
5279 === release 0.8.8 ===
5280
5281 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5282
5283         * NEWS:
5284         * RELEASE:
5285         * configure.ac:
5286           Releasing 0.8.8, "I'll Take Care Of You"
5287
5288 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5289
5290         * configure.ac:
5291           second prerelease
5292
5293 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5294
5295         patch by: Wim Taymans
5296
5297         * gst/gstbin.c:
5298           Fix for #159852 - make iterate emission threadsafe
5299
5300 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5301
5302         * docs/faq/cvs.xml:
5303           notes about new fdo account request
5304
5305 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5306
5307         * docs/gst/gstreamer-docs.sgml:
5308         * docs/gst/tmpl/gstenumtypes.sgml:
5309         * docs/gst/tmpl/gstplugin.sgml:
5310         * docs/libs/gstreamer-libs-docs.sgml:
5311           Added missing short docs. Added ids for navigation.
5312
5313 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5314
5315         * docs/manual/advanced-autoplugging.xml:
5316         * docs/manual/advanced-schedulers.xml:
5317         * docs/manual/advanced-threads.xml:
5318           Rewrites. Remove cothreads, go a bit into opt specifically,
5319           document threads and their gotchas, and do some technical stuff
5320           on autoplugging plus add some working examples. Fixes #157395.
5321         * examples/manual/Makefile.am:
5322           Add typefind/autoplugger example (one that actually works).
5323           Remove queue example since it's a duplicate of the thread one.
5324
5325 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5326
5327         * gst/gstvalue.c: (gst_value_deserialize_string):
5328           use deprecated g_value_set_string_take_ownership to keep compatible
5329           with glib 2.2
5330
5331 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5332
5333         * gst/gstvalue.c: (gst_value_deserialize_string):
5334           revert last patch, only dom a g_utf8_validate now before accepting
5335           the string - caps parsing strips " from strings so we can't rely on
5336           them
5337         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5338           disable a test that tested the above and comment it
5339
5340 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5341
5342         Patch reviewed by David Schleef  <ds@schleef.org>
5343
5344         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5345         bug #153882)
5346         * win32/gstenumtypes.h: same
5347
5348 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5349
5350         * gst/gstpad.c: (gst_pad_query):
5351           Do query on realized pad, similar to how convert/send_event handle
5352           this. Also makes sense, since this pad belongs to the function to
5353           which this query will be sent. Fixes #158163.
5354
5355 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5356
5357         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5358
5359 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5360
5361         * docs/faq/general.xml: fix pipeline to actually work
5362
5363 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5364
5365         * gst/gstvalue.c: (gst_value_deserialize_string):
5366           check that a simple string that gets deserialized does not contain
5367           invalid characters
5368         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5369           remove a test that tested a wring behaviour
5370
5371 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5372
5373         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5374
5375         * docs/manual/intro-motivation.xml:
5376           Fix typos.
5377
5378 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5379
5380         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5381
5382         * docs/gst/tmpl/gstprobe.sgml:
5383           Fix documentation of probe callback - it is supposed to return
5384           FALSE, not TRUE, to remove data from the stream (#159087).
5385
5386 2004-12-16  Daniel Gazard  <dany42@free.fr>
5387
5388         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5389
5390         * gst/gstelementfactory.c: (gst_element_factory_create):
5391           Fix compile failure if compiling without libxml2 support (#149936).
5392
5393 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5394
5395         * docs/manual/advanced-autoplugging.xml:
5396         * docs/manual/highlevel-components.xml:
5397           Move spider from autoplugging to components. Autoplugging is for
5398           internals, not for solutions. ;-).
5399
5400 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5401
5402         * docs/random/ds/0.9-suggested-changes:
5403           Make note on device/location/uri property names.
5404
5405 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5406
5407         * docs/manual/advanced-autoplugging.xml:
5408         * docs/manual/advanced-clocks.xml:
5409         * docs/manual/advanced-interfaces.xml:
5410         * docs/manual/advanced-metadata.xml:
5411         * docs/manual/advanced-position.xml:
5412         * docs/manual/advanced-schedulers.xml:
5413         * docs/manual/advanced-threads.xml:
5414         * docs/manual/appendix-gnome.xml:
5415         * docs/manual/appendix-programs.xml:
5416         * docs/manual/appendix-quotes.xml:
5417         * docs/manual/autoplugging.xml:
5418         * docs/manual/basics-bins.xml:
5419         * docs/manual/basics-data.xml:
5420         * docs/manual/basics-elements.xml:
5421         * docs/manual/basics-helloworld.xml:
5422         * docs/manual/basics-init.xml:
5423         * docs/manual/basics-pads.xml:
5424         * docs/manual/basics-plugins.xml:
5425         * docs/manual/bins-api.xml:
5426         * docs/manual/bins.xml:
5427         * docs/manual/buffers-api.xml:
5428         * docs/manual/buffers.xml:
5429         * docs/manual/clocks.xml:
5430         * docs/manual/components.xml:
5431         * docs/manual/cothreads.xml:
5432         * docs/manual/debugging.xml:
5433         * docs/manual/dparams-app.xml:
5434         * docs/manual/dynamic.xml:
5435         * docs/manual/elements-api.xml:
5436         * docs/manual/elements.xml:
5437         * docs/manual/factories.xml:
5438         * docs/manual/gnome.xml:
5439         * docs/manual/goals.xml:
5440         * docs/manual/helloworld.xml:
5441         * docs/manual/helloworld2.xml:
5442         * docs/manual/highlevel-components.xml:
5443         * docs/manual/highlevel-xml.xml:
5444         * docs/manual/init-api.xml:
5445         * docs/manual/intro-basics.xml:
5446         * docs/manual/intro-motivation.xml:
5447         * docs/manual/intro-preface.xml:
5448         * docs/manual/intro.xml:
5449         * docs/manual/links-api.xml:
5450         * docs/manual/links.xml:
5451         * docs/manual/manual.xml:
5452         * docs/manual/motivation.xml:
5453         * docs/manual/pads-api.xml:
5454         * docs/manual/pads.xml:
5455         * docs/manual/plugins-api.xml:
5456         * docs/manual/plugins.xml:
5457         * docs/manual/programs.xml:
5458         * docs/manual/queues.xml:
5459         * docs/manual/quotes.xml:
5460         * docs/manual/schedulers.xml:
5461         * docs/manual/states-api.xml:
5462         * docs/manual/states.xml:
5463         * docs/manual/threads.xml:
5464         * docs/manual/typedetection.xml:
5465         * docs/manual/win32.xml:
5466         * docs/manual/xml.xml:
5467           Try 2. This time, include a short preface as a "general
5468           introduction", also add code blocks around all code samples
5469           so they get compiled. We still need a way to tell readers
5470           the filename of the code sample. In some cases, don't show
5471           all code in the documentation, but do include it in the generated
5472           code. This allows for focussing on specific bits in the docs,
5473           while still having a full test application available.
5474         * examples/manual/Makefile.am:
5475           Fix up examples for new ADM. Add several of the new examples that
5476           were either added or were missing from the build system.
5477         * examples/manual/extract.pl:
5478           Allow nameless blocks.
5479
5480 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5481
5482         * docs/manual/elements-api.xml:
5483         * docs/manual/helloworld.xml:
5484         * examples/manual/extract.pl:
5485           fix last example.  Add example of adding code blocks that are not
5486           shown in docbook output.
5487
5488 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5489
5490         * docs/manual/dynamic.xml:
5491         * docs/manual/elements-api.xml:
5492         * docs/manual/gnome.xml:
5493         * docs/manual/helloworld2.xml:
5494         * docs/manual/init-api.xml:
5495         * docs/manual/queues.xml:
5496         * docs/manual/threads.xml:
5497         * docs/manual/xml.xml:
5498         * examples/manual/extract.pl:
5499           Make it possible to extract example code from separate blocks.
5500           Should make Ronald happy.
5501
5502 2004-12-15  Wim Taymans  <wim@fluendo.com>
5503
5504         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5505         (remove_from_group), (group_elements_set_visited),
5506         (normalize_group), (gst_opt_scheduler_iterate):
5507         Fix bug where a flag was not updated on a decoupled entry point 
5508         because we were just checking the group element list and decoupled
5509         elements are not in that list..
5510
5511 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5512
5513         * docs/manual/advanced-autoplugging.xml:
5514         * docs/manual/advanced-clocks.xml:
5515         * docs/manual/advanced-dparams.xml:
5516         * docs/manual/advanced-interfaces.xml:
5517         * docs/manual/advanced-metadata.xml:
5518         * docs/manual/advanced-position.xml:
5519         * docs/manual/advanced-schedulers.xml:
5520         * docs/manual/advanced-threads.xml:
5521         * docs/manual/appendix-debugging.xml:
5522         * docs/manual/appendix-gnome.xml:
5523         * docs/manual/appendix-programs.xml:
5524         * docs/manual/appendix-quotes.xml:
5525         * docs/manual/appendix-win32.xml:
5526         * docs/manual/autoplugging.xml:
5527         * docs/manual/basics-bins.xml:
5528         * docs/manual/basics-data.xml:
5529         * docs/manual/basics-elements.xml:
5530         * docs/manual/basics-helloworld.xml:
5531         * docs/manual/basics-init.xml:
5532         * docs/manual/basics-pads.xml:
5533         * docs/manual/basics-plugins.xml:
5534         * docs/manual/bins-api.xml:
5535         * docs/manual/bins.xml:
5536         * docs/manual/buffers-api.xml:
5537         * docs/manual/buffers.xml:
5538         * docs/manual/clocks.xml:
5539         * docs/manual/components.xml:
5540         * docs/manual/cothreads.xml:
5541         * docs/manual/debugging.xml:
5542         * docs/manual/dparams-app.xml:
5543         * docs/manual/dynamic.xml:
5544         * docs/manual/elements-api.xml:
5545         * docs/manual/elements.xml:
5546         * docs/manual/factories.xml:
5547         * docs/manual/gnome.xml:
5548         * docs/manual/goals.xml:
5549         * docs/manual/helloworld.xml:
5550         * docs/manual/helloworld2.xml:
5551         * docs/manual/highlevel-components.xml:
5552         * docs/manual/highlevel-xml.xml:
5553         * docs/manual/init-api.xml:
5554         * docs/manual/intro-motivation.xml:
5555         * docs/manual/intro-preface.xml:
5556         * docs/manual/intro.xml:
5557         * docs/manual/links-api.xml:
5558         * docs/manual/links.xml:
5559         * docs/manual/manual.xml:
5560         * docs/manual/motivation.xml:
5561         * docs/manual/pads-api.xml:
5562         * docs/manual/pads.xml:
5563         * docs/manual/plugins-api.xml:
5564         * docs/manual/plugins.xml:
5565         * docs/manual/programs.xml:
5566         * docs/manual/queues.xml:
5567         * docs/manual/quotes.xml:
5568         * docs/manual/schedulers.xml:
5569         * docs/manual/states-api.xml:
5570         * docs/manual/states.xml:
5571         * docs/manual/threads.xml:
5572         * docs/manual/typedetection.xml:
5573         * docs/manual/win32.xml:
5574         * docs/manual/xml.xml:
5575           First try at rewriting the ADM. Needs lotsamore work, but some
5576           parts might already be somewhat useful.
5577         * docs/pwg/advanced-interfaces.xml:
5578           Remove properties interface, it never actually existed (except for
5579           on my HD...).
5580
5581 2004-12-13  David Schleef  <ds@schleef.org>
5582
5583         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5584         be NULL (bug #160220).
5585
5586 2004-12-13  David Schleef  <ds@schleef.org>
5587
5588         * configure.ac: remove all mmx stuff, because it's not used.
5589         * docs/random/ds/0.9-suggested-changes: additional notes
5590         * include/Makefile.am: we don't use these anymore
5591         * include/mmx.h: remove
5592         * include/sse.h: remove
5593
5594 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5595
5596         * docs/random/mimetypes:
5597           Add FOURCC code for h264 codec (VSSH)
5598           Add alternate FOURCC codes for h263 related codecs
5599
5600 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5601
5602         * docs/manual/programs.xml:
5603           Added more gst-launch examples.
5604
5605 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5606
5607         * gst/gstqueue.c: (gst_queue_handle_src_query):
5608           Check for availability again.
5609
5610 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5611
5612         * gst/gstcaps.c: (gst_caps_compare_structures):
5613           Simple caps go first. This has the nice side-effect of fixing an
5614           obscure warning.
5615
5616 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5617
5618         * gst/gstversion.h.in:
5619           Protect header.
5620
5621 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5622
5623         * gst/schedulers/gstoptimalscheduler.c:
5624         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5625         (gst_opt_scheduler_get_wrapper):
5626           When we're recursing into a chain run, only run the directly
5627           related group, not all queued ones. This will fix a possible
5628           deadlock in chains with more than two groups.
5629
5630 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5631
5632         * autogen.sh:
5633           remove patch if autopoint fails
5634
5635 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5636
5637         * docs/gst/gstreamer-sections.txt:
5638           Document Thomas' addition, fix build, make Luis the sheriff happy.
5639
5640 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5641
5642         * gst/gstplugin.c:
5643         * gst/gstplugin.h:
5644           add accessor for version field
5645
5646 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5647
5648         submitted by: Luca Ferretti <elle.uca@infinito.it>
5649
5650         * po/LINGUAS:
5651         * po/it.po:
5652           New tranlation added: Italian
5653
5654 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5655
5656         * gst/gstpad.c: (gst_pad_is_negotiated),
5657         (gst_pad_get_negotiated_caps):
5658           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5659           it doesn't actually check the contents), so be sure to hand it
5660           a RealPad else we'll crash.
5661
5662 2004-12-03  Wim Taymans  <wim@fluendo.com>
5663
5664         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5665         (gst_queue_link), (gst_queue_handle_src_query):
5666         Reverted to 1.110 until this makes the testsuite and various
5667         apps work.
5668
5669 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5670
5671         * docs/upload.mak: fix included CVS conflict strings
5672
5673 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5674
5675         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5676
5677         * gst/gstelement.c: (gst_element_error_full):
5678           Use g_error_new_literal because error text may have
5679           percentage signs in it. Fixes #160019.
5680
5681 2004-12-01  Benjamin Otte  <otte@gnome.org>
5682
5683         * gst/elements/gstbufferstore.c:
5684         (gst_buffer_store_add_buffer_func):
5685           don't try to make subbuffers bigger than they can be. (fixes
5686           #159970)
5687
5688 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5689
5690         * docs/gst/gstreamer-sections.txt:
5691         * docs/gst/tmpl/gstvalue.sgml:
5692           Add new function to docs to fix build.
5693
5694 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5695
5696         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5697         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5698         (_gst_pad_default_fixate_foreach):
5699         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5700         * gst/gstvalue.h:
5701           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5702           in some cases (arrays), the fixedness depends on the content.
5703         * gst/gstqueue.c: (gst_queue_handle_src_query):
5704           Check for availability before doing something.
5705
5706 2004-11-29  Wim Taymans  <wim@fluendo.com>
5707
5708         * testsuite/threads/Makefile.am:
5709         * testsuite/threads/signals.c: (gst_test_get_type),
5710         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5711         (gst_test_set_property), (gst_test_get_property),
5712         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5713         (gst_test_do_prop), (run_thread), (main):
5714         Added a bunch of testcases that show threadsafety bugs in glib.
5715
5716 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5717
5718         * docs/manual/programs.xml:
5719           Added a first batch of gst-launch examples, as provided by Ronald
5720           and others from the devel-mlist
5721
5722 2004-11-28  Benjamin Otte  <otte@gnome.org>
5723
5724         * gst/gstelement.c: (gst_element_negotiate_pads):
5725           simplify
5726         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5727         (gst_value_serialize_string), (gst_value_deserialize_string):
5728           add unwrapping of previously wrapped strings. Fix bug in wrapping
5729           while at it.
5730         * testsuite/caps/value_serialize.c: (test1),
5731         (test_string_serialization), (test_string_deserialization), (main):
5732           add tests for string (de)serialization
5733
5734 2004-11-26  Wim Taymans  <wim@fluendo.com>
5735
5736         * testsuite/threads/159566.c: (object_deep_notify), (main):
5737         * testsuite/threads/Makefile.am:
5738         Added testsuite to show bug #159566
5739
5740 2004-11-25  Wim Taymans  <wim@fluendo.com>
5741
5742         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5743         (gst_thread_child_state_change), (gst_thread_main_loop):
5744         Ref the thread object in the GThread mainloop. Break out of the
5745         thread mainloop if it holds the last ref. This properly exits
5746         the threads when disposing the thread from its own context. It
5747         also avoids possible deadlocks in the dispose function.
5748
5749 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5750
5751         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5752         it is necessary to wait.
5753
5754 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5755
5756         * docs/pwg/building-boiler.xml:
5757           Make description somewhat clearer.
5758
5759 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5760
5761         * docs/upload.mak:
5762           Apparently docs changed location on FDO's server.
5763
5764 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5765
5766         * docs/pwg/appendix-checklist.xml:
5767           Add some random notes on things to check when writing an element.
5768           This list can be extended as people see fit.
5769
5770 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5771
5772         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5773         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5774         pad. The queue will now wait until it is empty and forward the new
5775         caps to the source.
5776         * gst/gstbin.c (gst_bin_set_element_sched)
5777         (gst_bin_unset_element_sched): Make sure that all elements and
5778         links are registered and unregistered with the scheduler exactly
5779         once. This elaborates on a fix by Benjamin Otte, but
5780         guarantees that decoupled elements are also registered.
5781
5782 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5783
5784         * docs/manual/quotes.xml:
5785           add a quote
5786         * configure.ac:
5787         * gst/gst.c:
5788         * gst/gstinfo.c:
5789           add LIBDIR and move init message higher up so it's at the start
5790
5791 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5792
5793         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5794         * gstreamer.spec.in: add fair
5795
5796 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5797
5798         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5799         * gst/elements/gstidentity.c: (gst_identity_class_init):
5800           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5801           <teuf@gnome.org> (#157263).
5802         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5803         (gst_type_find_handle_src_query):
5804           Subtract size of internally stored data from position queries.
5805
5806 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5807
5808         * gst/schedulers/fairscheduler.c:
5809         * gst/schedulers/faircothreads.c:
5810         * gst/schedulers/faircothreads.h:
5811         New cothread based scheduler: Fair scheduler.
5812         * gst/schedulers/gthread-cothreads.h: 
5813         Add the standard #if around the whole file.
5814         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5815         compilation of the functions defined in this file. This is
5816         necessary to be able to use this file as a normal header.
5817         * gst/schedulers/Makefile.am: Add compiling support for fair
5818         scheduler.
5819         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5820         scheduler cothreads layer from documentation generation.
5821
5822 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5823
5824         * gst/autoplug/gstspideridentity.c:
5825         (gst_spider_identity_sink_loop_type_finding):
5826           Don't crash if that function is not implemented.
5827
5828 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5829
5830         * docs/pwg/advanced-types.xml:
5831           Another typo.
5832
5833 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5834
5835         * docs/pwg/intro-preface.xml:
5836           Hm, ok, so the brackets weren't really useful...
5837         * docs/pwg/other-ntoone.xml:
5838           Fix embarassing typo.
5839
5840 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5841
5842         * docs/pwg/intro-preface.xml:
5843           Rewrite preface.
5844
5845 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5846
5847         * docs/pwg/advanced-scheduling.xml:
5848         * docs/pwg/advanced-tagging.xml:
5849         * docs/pwg/advanced-types.xml:
5850         * docs/pwg/building-boiler.xml:
5851         * docs/pwg/building-chainfn.xml:
5852         * docs/pwg/building-signals.xml:
5853         * docs/pwg/building-state.xml:
5854         * docs/pwg/building-testapp.xml:
5855         * docs/pwg/intro-basics.xml:
5856         * docs/pwg/other-manager.xml:
5857         * docs/pwg/other-source.xml:
5858           Typo fixes.
5859         * docs/pwg/other-manager.xml:
5860           Add some first content. No example code yet.
5861         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5862           Remove double newlines.
5863
5864 2004-11-04  Wim Taymans  <wim@fluendo.com>
5865
5866         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5867         (remove_from_group), (normalize_group), (group_migrate_connected),
5868         (gst_opt_scheduler_iterate):
5869         * testsuite/schedulers/.cvsignore:
5870         * testsuite/schedulers/Makefile.am:
5871         * testsuite/schedulers/queue_link.c: (main):
5872         Added testcase for scheduler segfault.
5873         Fix scheduler segfault when removing a decoupled
5874         entry point as the last element from a group.
5875
5876 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5877
5878         * gst/gstmarshal.list: add missing marshaller, fixes build
5879
5880 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5881
5882         * docs/random/signal: added notes about using BOXED for GstBuffer
5883         signal marshallers, not POINTER
5884
5885 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5886
5887         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5888         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5889         POINTER=>BOXED changes to marshal GstBuffers
5890
5891 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5892
5893         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5894         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5895
5896 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5897
5898         * docs/gst/gstreamer-sections.txt:
5899         * docs/gst/tmpl/gstcaps.sgml:
5900         * docs/gst/tmpl/gsterror.sgml:
5901         * docs/gst/tmpl/gstinfo.sgml:
5902         * docs/gst/tmpl/gstmacros.sgml:
5903         * docs/gst/tmpl/gstutils.sgml:
5904         * docs/random/ensonic/interfaces.txt:
5905         * gst/gstinfo.h:
5906           added some more docs, removed two obsolete defines
5907
5908 2004-11-02  Kjartan Maraas <as at gnome.org>
5909
5910         reviewed by: Wim Taymans, Ronald Bultje.
5911
5912         * gst/cothreads.c: (cothread_create):
5913         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5914         (gst_bin_child_state_change_func):
5915         * gst/gstbuffer.c: (gst_buffer_span):
5916         * gst/gstelement.c: (gst_element_get_index),
5917         (gst_element_get_event_masks), (gst_element_get_query_types),
5918         (gst_element_get_formats):
5919         * gst/gsterror.c: (_gst_core_errors_init),
5920         (_gst_library_errors_init), (_gst_resource_errors_init),
5921         (_gst_stream_errors_init):
5922         * gst/gstobject.c: (gst_object_default_deep_notify):
5923         * gst/gstpad.c: (gst_pad_get_event_masks),
5924         (gst_pad_get_internal_links_default):
5925         * gst/gstplugin.c: (gst_plugin_register_func),
5926         (gst_plugin_get_module):
5927         * gst/gststructure.c: (gst_structure_get_string),
5928         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5929         (gst_structure_to_abbr):
5930         * gst/gstutils.c: (gst_print_element_args):
5931         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5932         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5933         Aplied part of patch #157127: Cleanup of issues reported by 
5934         sparse.
5935         Also do not try to use cothreads when there is no cothread
5936         context yet.
5937
5938 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5939
5940         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5941         (gst_opt_scheduler_iterate):
5942         Applied patch #154061. Running a pipeline in which an element 
5943         calls GST_ELEMENT_ERROR in the chain function, the opt 
5944         scheduler doesn't unref the chain so it never gets freed.
5945
5946 2004-11-02  Wim Taymans  <wim@fluendo.com>
5947
5948         * gst/gststructure.c: (gst_structure_get_abbrs),
5949         (gst_structure_from_abbr), (gst_structure_to_abbr):
5950         Remove that ugly if-then thing in the code that converts
5951         between strings and types.
5952
5953 2004-11-02  Wim Taymans  <wim@fluendo.com>
5954
5955         * gst/gstscheduler.c: (gst_scheduler_add_element),
5956         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5957         Aplied clock distribution patch, this should fix bug
5958         #148787.
5959
5960 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5961
5962         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5963
5964         * po/LINGUAS:
5965         * po/nb.po:
5966           Added Norwegian Bokmaal translation
5967
5968 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5969
5970         * tools/gst-inspect.c: (print_signal_info):
5971           print signal arguments as pointers if they are
5972
5973 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5974
5975         * docs/pwg/building-boiler.xml:
5976           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5977
5978 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5979
5980         * gst/parse/parse.l:
5981         * testsuite/parse/parse1.c: (main):
5982         Since parse can do 'element name=a:b' make 'a:b.' work as
5983         well. 
5984         Added testcase to verify fix.
5985
5986 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5987
5988         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
5989         Use the realpad when printing the direction.
5990         Add extra \n when printing extensions of typefind factories.
5991
5992 2004-10-13  David Schleef  <ds@schleef.org>
5993
5994         * examples/manual/Makefile.am: $< isn't portable in Makefile
5995         rules.
5996
5997 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
5998
5999         * docs/gst/tmpl/gstobject.sgml:
6000         * docs/gst/tmpl/gstplugin.sgml:
6001         * docs/gst/tmpl/gstpluginfeature.sgml:
6002         * docs/gst/tmpl/gstregistry.sgml:
6003         * docs/gst/tmpl/gstversion.sgml:
6004         * gst/gstbin.c:
6005           more api documentation
6006         * gst/gstplugin.c: (gst_plugin_register_func),
6007         (gst_plugin_check_file), (gst_plugin_load_file):
6008           better error signaling and logging
6009
6010 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6011
6012         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6013           Subtract current queue contents from position queries.
6014
6015 2004-10-11  Johan Dahlin  <johan@gnome.org>
6016
6017         * gst/gsturi.c (gst_uri_get_location): unescape string
6018         (gst_uri_construct): escape string.
6019
6020 2004-10-11  Benjamin Otte  <otte@gnome.org>
6021
6022         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6023         (gst_pad_try_set_caps_nonfixed):
6024           allow renegotiation of unconnected pads (as inside spider). Simply
6025           return OK if unconnected - mimic try_set_caps there.
6026
6027 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6028
6029         * gst/gstbin.c: (gst_bin_sync_children_state):
6030           Add missing break.
6031
6032 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6033
6034         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6035         Set element to EOS before sending EOS event
6036
6037 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6038
6039         * gst/elements/gsttypefindelement.c:
6040         (gst_type_find_element_handle_event):
6041         Handle EOS events when doing the transition from
6042         typefind to data passing. This should fix the
6043         infinite loops in short files.
6044
6045 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6046
6047         * gst/gstthread.c: (gst_thread_change_state),
6048         (gst_thread_child_state_change):
6049         Make sure no iteration happens while performing
6050         the state change as it could mess up the internal
6051         consistency of the thread state.
6052
6053 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6054
6055         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6056         (gst_thread_change_state), (gst_thread_child_state_change):
6057         Do not try to grab the iterate lock in the state change method
6058         when we are in the same thread as the iterate or else we
6059         could deadlock. Some other cleanups.
6060
6061 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6062
6063         * configure.ac:
6064           bump nano to cvs
6065
6066 === release 0.8.7 ===
6067
6068 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6069
6070         * configure.ac:
6071         * NEWS:
6072         * RELEASE:
6073         * configure.ac:
6074           releasing 0.8.7, "A Cruise"
6075
6076 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6077
6078         * docs/random/mimetypes:
6079         Add an entry for Sony ATRAC3 audio format with mime-type
6080         used by rmdemux et riff-read
6081
6082 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6083
6084         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6085         Push the buffer store instead of clearing it in case that
6086         the stream is not seekable.
6087
6088 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6089
6090         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6091         (gst_thread_main_loop):
6092         Lock the iteration and the state change so that automatic
6093         negotiation and fixation does not happen at the same time
6094         as the in stream negotiation.
6095
6096 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6097
6098         * configure.ac:
6099           bump nano to cvs
6100
6101 === release 0.8.6 ===
6102
6103 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6104
6105         * configure.ac:
6106         * NEWS:
6107         * RELEASE:
6108         * configure.ac:
6109           releasing 0.8.6, "Narc"
6110
6111 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6112
6113         * configure.ac:
6114           prerel bump
6115
6116 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6117
6118         patch by: Steve Lhomme
6119
6120         * gst/elements/gstfakesrc.c:
6121         * gst/elements/gstidentity.c:
6122         * gst/gstthread.c:
6123           Fix for #153881
6124
6125 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6126
6127         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6128         Fix threadsafety of the crc checking function.
6129
6130 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6131
6132         patch by: Ronald Bultje
6133
6134         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6135         (gst_type_find_element_handle_event),
6136         (gst_type_find_element_chain):
6137         * gst/elements/gsttypefindelement.h:
6138          #153657.
6139          Filter out discont event from seekable sources when typefind
6140          asks them to seek.  Fixes typefind with demuxers for
6141          avi, asf and matroska.
6142
6143 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6144
6145         * docs/gst/gstreamer-sections.txt:
6146         * gst/gstcaps.c:
6147         * gst/gstcaps.h:
6148         * gst/gstpad.c:
6149           Revert preferred caps: (#147789)
6150
6151 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6152
6153         * win32/dirent.c:
6154           fix a memory leak
6155
6156 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6157
6158         * configure.ac:
6159           bump for prerelease
6160
6161 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6162
6163         * docs/Makefile.am:
6164         * docs/manual/elements-api.xml:
6165           restructure so that common stuff is shown first
6166         * docs/manual/init-api.xml:
6167           convert to examples
6168         * docs/manual/manual.xml:
6169         * docs/manuals.mak:
6170         * docs/url.entities:
6171           link to API on the website, possibly override later in build
6172         * examples/manual/.cvsignore:
6173           ignore more
6174         * examples/manual/Makefile.am:
6175           add more examples
6176         * examples/manual/extract.pl:
6177           error out on failure
6178
6179 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6180
6181         * docs/gst/tmpl/gstthread.sgml:
6182         * docs/manual/init-api.xml:
6183         * examples/manual/Makefile.am:
6184           convert two code bits to examples
6185
6186 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6187
6188         * gst/gstelement.c: (gst_element_change_state):
6189           Well, actually, I was about to remove this insane assert when
6190           I noticed Wim already did that. A warning is nice so we can
6191           fix actual ugs (using --g-fatal-warnings and backtraces), so
6192           I added that instead.
6193
6194 2004-09-06  Wim Taymans  <wim@fluendo.com>
6195
6196         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6197         (gst_element_threadsafe_properties_post_run),
6198         (gst_element_set_state), (gst_element_change_state):
6199         Added extra refcounting around various places. 
6200
6201 2004-09-06  Wim Taymans  <wim@fluendo.com>
6202
6203         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6204         Fix debug info.
6205
6206 2004-09-06  Wim Taymans  <wim@fluendo.com>
6207
6208         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6209         (remove_from_group):
6210         Some more debug info.
6211
6212 2004-09-03  Wim Taymans  <wim@fluendo.com>
6213
6214         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6215         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6216         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6217         (gst_fakesrc_get), (gst_fakesrc_change_state):
6218         * gst/elements/gstfakesrc.h:
6219         * gst/elements/gstidentity.c: (gst_identity_class_init),
6220         (gst_identity_init), (gst_identity_chain),
6221         (gst_identity_set_property), (gst_identity_get_property),
6222         (gst_identity_change_state):
6223         * gst/elements/gstidentity.h:
6224         Added datarate properties to limit the datarate.
6225
6226 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6227
6228         * gst/autoplug/gstspider.c: (plugin_init):
6229           don't set a rank. We don't want to autoplug by inserting spiders.
6230
6231 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6232
6233         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6234         (gst_spider_identity_plug):
6235           add a template for spider's sink
6236         * gst/gst.c: (gst_register_core_elements):
6237           queue's rank should be NULL, we don't want spider to add it.
6238
6239 2004-08-18  David Schleef  <ds@schleef.org>
6240
6241         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6242         * docs/libs/Makefile.am: same
6243         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6244         * docs/random/ds/0.9-planning: random additions
6245         * docs/random/ds/0.9-suggested-changes: same
6246         * gst/gstxml.h: remove vestigal GstXMLNs definition
6247
6248         Preferred caps: (#147789)
6249         * docs/gst/gstreamer-sections.txt: Add symbols
6250         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6251         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6252         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6253         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6254         (gst_caps_get_preferred), (gst_caps_set_preferred),
6255         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6256         (gst_caps_use_preferred): Handle caps preferences
6257         * gst/gstcaps.h: Add caps preferences
6258         * gst/gstpad.c: (gst_pad_link_get_preferred),
6259         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6260         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6261         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6262         negotiation.
6263
6264 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6265
6266         * gst/autoplug/gstspideridentity.c:
6267         (gst_spider_identity_request_new_pad):
6268         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6269         (gst_aggregator_init):
6270         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6271         (gst_fakesink_init):
6272         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6273         (gst_fakesrc_init):
6274         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6275         (gst_fdsink_init):
6276         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6277         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6278         (gst_filesink_init):
6279         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6280         (gst_filesrc_init):
6281         * gst/elements/gstidentity.c: (gst_identity_base_init),
6282         (gst_identity_init):
6283         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6284         (gst_multifilesrc_init):
6285         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6286         (gst_pipefilter_init):
6287         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6288         (gst_statistics_init):
6289         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6290         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6291           s/gst_pad_new/&_from_template/
6292           register pad templates in the base_init function
6293           add static pad template definitions
6294
6295 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6296
6297         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6298         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6299         * testsuite/refcounting/pad.c: (main):
6300         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6301           s/gst_pad_new/&_from_template/
6302           prepare deprecation of gst_pad_new
6303
6304 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6305
6306         patch by: Luca Ognibene <skaboy81@virgilio.it>
6307
6308         * gst/gstcaps.c:
6309         * gst/gstelement.c:
6310         * gst/gstpad.c:
6311         * gst/gstxml.c:
6312           fix memleaks.  Fixes #150001
6313
6314 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6315
6316         * docs/random/ds/0.9-suggested-changes:
6317           add notes - mostly about pad templates
6318
6319 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6320
6321         * win32/GStreamer.vcproj:
6322           temporary locale files are .gmo not .mo
6323
6324 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6325
6326         * configure.ac: bump nano to cvs
6327
6328 === release 0.8.5 ===
6329
6330 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6331
6332         * configure.ac:
6333           releasing 0.8.5, "Stuttgart"
6334         * NEWS:
6335         * RELEASE:
6336         * configure.ac:
6337         * docs/random/release:
6338           updates for release
6339
6340 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6341
6342         patch by: Wim Taymans (wim@fluendo.com)
6343
6344         * gst/gstbuffer.c:
6345         * gst/gstindex.h:
6346         * libs/gst/dataprotocol/dataprotocol.c:
6347           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6348
6349 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6350
6351         * Makefile.am:
6352         * win32/MANIFEST:
6353           add win32 dir to the build.  Fixes #149981.
6354
6355 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6356
6357         * configure.ac:
6358           bump libtool versioning
6359         * gst/gststructure.c:
6360           mark function as static
6361         * po/af.po:
6362         * po/az.po:
6363         * po/ca.po:
6364         * po/cs.po:
6365         * po/en_GB.po:
6366         * po/fr.po:
6367         * po/nl.po:
6368         * po/sq.po:
6369         * po/sr.po:
6370         * po/sv.po:
6371         * po/tr.po:
6372         * po/uk.po:
6373           translations update
6374         * win32/README.txt:
6375           trademark protection
6376
6377 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6378
6379         * configure.ac:
6380           fix GST_ORIGIN
6381           set GST_PACKAGE to source, and distinguish between release and other
6382         * tools/gst-inspect.c:
6383           print out plugin an element factory is part of so we see this info
6384
6385 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6386
6387         * docs/gst/gstreamer-sections.txt:
6388         * docs/gst/tmpl/gstbuffer.sgml:
6389         * docs/gst/tmpl/gstschedulerfactory.sgml:
6390           reorder docs a little, make GstBuffer's more sensible.
6391         * gst/gstbuffer.h:
6392           API: added GST_BUFFER_FLAG_DELTA_UNIT
6393         * gst/gstscheduler.c:
6394           comment API addition
6395
6396 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6397
6398         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6399           work with non-regular files that can be mmapped (like /dev/zero)
6400         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6401           get rid of typefinds that require a seek when we can't seek instead
6402           of trying them over and over again
6403         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6404           return non-zero failure value when the pipeline was interrupted or
6405           an error occurred
6406
6407 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6408
6409         * win32/config.h:
6410         * win32/GStreamer.vcproj:
6411           compile and install the locales
6412
6413 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6414
6415         * gst/gstvalue.c:
6416           fix a possible memory leak under Windows
6417
6418 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6419
6420         * win32/GStreamer.vcproj:
6421           fix a memory leak that occured under Windows
6422         * win32/gstreamer.def:
6423           add gst_scheduler_register
6424
6425 2004-08-11  Benjamin Otte  <otte@gnome.org>
6426
6427         * docs/gst/gstreamer-sections.txt:
6428         * gst/gstscheduler.c: (gst_scheduler_register):
6429         * gst/gstscheduler.h:
6430           API:
6431           add gst_scheduler_register shortcut similar to gst_element_register
6432         * gst/schedulers/entryscheduler.c: (plugin_init):
6433         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6434         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6435           use it
6436
6437 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6438
6439         * gst/gstvalue.h:
6440           fix a memory leak that occured under Windows
6441
6442 2004-08-10  Colin Walters  <walters@redhat.com>
6443
6444         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6445         Don't use O_EXCL to open temporary registry.  It will prevent
6446         registry creation if a temporary one already exists, which
6447         is unnecessary.
6448
6449 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6450
6451         * docs/gst/gstreamer-sections.txt:
6452         * docs/gst/tmpl/gstvalue.sgml:
6453           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6454
6455 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6456
6457         * win32/gstbytestream.vcproj:
6458         * win32/gstelements.vcproj:
6459         * win32/gstgetbits.vcproj:
6460         * win32/gst-inspect.vcproj:
6461         * win32/gst-launch.vcproj:
6462         * win32/gstoptimalscheduler.vcproj:
6463         * win32/GStreamer.vcproj:
6464         * win32/gst-register.vcproj:
6465         * win32/gstspider.vcproj:
6466           update the include and lib dirs to fit standard libraries as
6467           described in the Win32 manual
6468
6469 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6470
6471         * win32/config.h:
6472         * win32/gstversion.h:
6473           enable NLS again, push the version number for the coming 0.8.5 release
6474
6475 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6476
6477         * gst/gstvalue.h:
6478           export gst_type_XXX for windows DLLs
6479
6480 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6481
6482         * docs/faq/gst-uninstalled:
6483           fix PKG_CONFIG_PATH and PYTHONPATH
6484         * gst/schedulers/Makefile.am:
6485           cleanup
6486         * libs/gst/bytestream/bytestream.c:
6487           remove newline
6488         * po/LINGUAS:
6489         * po/sq.po:
6490           adding Albanian translation (Laurent Dhima)
6491         * po/cs.po:
6492           updated
6493
6494 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6495
6496         * po/ca.po:
6497         * po/sv.po:
6498           updated translations
6499
6500 2004-08-04  Benjamin Otte  <otte@gnome.org>
6501
6502         * tests/mass_elements.c: (main):
6503           allow specifying src and sink element explicitly, so I can test
6504           videotestsrc instead of fakesrc
6505
6506 2004-08-04  Benjamin Otte  <otte@gnome.org>
6507
6508         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6509         (gst_structure_id_empty_new), (gst_structure_empty_new),
6510         (gst_structure_copy):
6511           add gst_structure_id_empty_new_with_size to allow preallocating
6512           value array sizes. Use this in gst_structure_copy to get rid of
6513           reallocs.
6514           don't do quark=>string=>quark when copying structures
6515
6516 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6517
6518         * docs/manual/win32.xml:
6519         * win32/README.txt:
6520           update documentation with the clean version of dependencies
6521
6522 2004-08-03  Benjamin Otte  <otte@gnome.org>
6523
6524         * gst/schedulers/entryscheduler.c:
6525         (gst_entry_scheduler_remove_element):
6526           fix for GST_DISABLE_DEBUG
6527         * tools/gst-launch.c: (print_tag):
6528           fixes for G_DISABLE_ASSERT
6529
6530 2004-08-03  Benjamin Otte  <otte@gnome.org>
6531
6532         * gst/gst.c: (gst_register_core_elements):
6533           fix for G_DISABLE_ASSERT
6534         * gst/gstinfo.c: (__gst_in_valgrind):
6535           add for GST_DISABLE_DEBUG
6536
6537 2004-08-03  Benjamin Otte  <otte@gnome.org>
6538
6539         * gst/parse/parse.l:
6540           fix for G_DISABLE_ASSERT
6541
6542 2004-08-03  Wim Taymans  <wim@fluendo.com>
6543
6544         * gst/gstbin.c: (gst_bin_get_type),
6545         (gst_bin_child_state_change_func):
6546         * gst/gstthread.c: (gst_thread_change_state):
6547         Backported some debug logging from a reverted patch
6548         Don't try to destroy the thread twice. Added some more
6549         debugging in GstThread. Unlock and signal even if we
6550         are in the thread context.
6551
6552 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6553
6554         * po/uk.po:
6555           updated translation
6556
6557 2004-07-30  David Schleef  <ds@schleef.org>
6558
6559         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6560
6561 2004-07-29  David Schleef  <ds@schleef.org>
6562
6563         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6564         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6565
6566 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6567
6568         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6569         (gst_bin_add_func), (gst_bin_remove_func),
6570         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6571         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6572         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6573         (gst_bin_sync_children_state):
6574         * gst/gstbin.h:
6575         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6576         (gst_thread_change_state):
6577         * testsuite/states/Makefile.am:
6578           revert state change patches as agreed so we can rework them
6579           gradually
6580
6581 2004-07-29  Benjamin Otte  <otte@gnome.org>
6582
6583         * libs/gst/control/Makefile.am:
6584           link to libgstreamer (fixes Debian bug 262019, see
6585           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6586
6587 2004-07-29  Wim Taymans  <wim@fluendo.com>
6588
6589         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6590         (check_from_fraction_convert), (transform_test), (main):
6591         Make the test less pedantic about float roundoff errors.
6592
6593 2004-07-29  Benjamin Otte  <otte@gnome.org>
6594
6595         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6596         (gst_filesrc_srcpad_event):
6597           make seek events to before start/after end of file not fail, but
6598           seek to start/end instead
6599         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6600           add more output
6601
6602 2004-07-29  Benjamin Otte  <otte@gnome.org>
6603
6604         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6605           check that caps are fixed
6606         * gst/gstpad.c: (gst_pad_template_new):
6607           don't try to simplify caps, costs too much time on gst_init
6608         * gst/gstplugin.c: (gst_plugin_add_feature):
6609           G_ERROR if features are added twice
6610         * gst/gsttypefind.c: (gst_type_find_register):
6611         * gst/gstelementfactory.c: (gst_element_register):
6612           don't add features twice
6613         * docs/random/ds/0.9-suggested-changes:
6614           add note about possible gst_init optimization
6615
6616 2004-07-28  David Schleef  <ds@schleef.org>
6617
6618         * testsuite/elements/Makefile.am:
6619         * testsuite/elements/struct_i386.h:
6620         * testsuite/elements/struct_size.c: (main):  A little test
6621         to keep distcheck from working if someone changes a structure
6622         size accidentally.
6623
6624 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6625
6626         * docs/libs/Makefile.am:
6627         * docs/libs/gstreamer-libs-docs.sgml:
6628         * docs/libs/gstreamer-libs-sections.txt:
6629         * docs/libs/tmpl/gstbytestream.sgml:
6630         * docs/libs/tmpl/gstcontrol.sgml:
6631         * docs/libs/tmpl/gstdataprotocol.sgml:
6632         * docs/libs/tmpl/gstgetbits.sgml:
6633         * libs/gst/bytestream/Makefile.am:
6634         * libs/gst/bytestream/bytestream.c:
6635         * libs/gst/bytestream/bytestream.h:
6636         * libs/gst/control/Makefile.am:
6637         * libs/gst/dataprotocol/Makefile.am:
6638         * libs/gst/getbits/Makefile.am:
6639         * libs/gst/getbits/getbits.h:
6640           various doc and style fixes, adding bytestream to libs docs.
6641
6642 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6643
6644         * docs/gst/gstreamer-docs.sgml:
6645         * docs/libs/Makefile.am:
6646         * docs/libs/gstreamer-libs-docs.sgml:
6647         * docs/libs/gstreamer-libs-sections.txt:
6648         * libs/gst/control/dparam.c:
6649           more doc fixes.  gst-libs docs now build the same way as gst.
6650
6651 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6652
6653         * configure.ac:
6654         * testsuite/Makefile.am:
6655         * testsuite/bins/Makefile.am:
6656         * testsuite/caps/Makefile.am:
6657         * testsuite/cleanup/Makefile.am:
6658         * testsuite/clock/Makefile.am:
6659         * testsuite/debug/Makefile.am:
6660         * testsuite/dlopen/Makefile.am:
6661         * testsuite/dynparams/Makefile.am:
6662         * testsuite/elements/.cvsignore:
6663         * testsuite/elements/Makefile.am:
6664         * testsuite/enumcaps/Makefile.am:
6665         * testsuite/enumcaps/enumcaps.c:
6666         * testsuite/ghostpads/Makefile.am:
6667         * testsuite/indexers/Makefile.am:
6668         * testsuite/negotiation/Makefile.am:
6669         * testsuite/parse/Makefile.am:
6670         * testsuite/plugin/Makefile.am:
6671         * testsuite/refcounting/Makefile.am:
6672         * testsuite/schedulers/.cvsignore:
6673         * testsuite/states/Makefile.am:
6674         * testsuite/tags/Makefile.am:
6675         * testsuite/threads/Makefile.am:
6676           fold enumcaps into caps dir
6677           clean up Makefile.am's for testsuite
6678
6679 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6680
6681         * docs/gst/Makefile.am:
6682         * docs/libs/Makefile.am:
6683           clean up docs build.  Fixes needless rebuilding of template files.
6684
6685 2004-07-28  Wim Taymans  <wim@fluendo.com>
6686
6687         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6688         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6689         Make sure that a bin state change tries to keep the children
6690         in sync. 
6691         Added debug logging to the thread.
6692
6693 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6694
6695         * win32/GStreamer.vcproj:
6696         * win32/gstreamer.def:
6697           more exports for the plugins
6698
6699 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6700
6701         * win32/gstgetbits.vcproj:
6702         * win32/gstgetbits.def:
6703         * win32/msvc71.sln:
6704           add support for the getbits plugin
6705
6706 2004-07-27  Wim Taymans  <wim@fluendo.com>
6707
6708         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6709         (gst_value_transform_fraction_double), (_gst_value_initialize):
6710         * testsuite/caps/Makefile.am:
6711         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6712         (check_from_fraction_convert), (transform_test), (main):
6713         Added transform functions between double and fraction.
6714         Added testcase to verify transforms
6715
6716 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6717
6718         * win32/GStreamer.vcproj:
6719           rename GStreamer-0.8.lib to libgstreamer.lib
6720
6721 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6722
6723         * win32/gstelements.vcproj:
6724         * win32/gstoptimalscheduler.vcproj:
6725           fixes for the Release build
6726
6727 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6728
6729         * win32/config.h:
6730           update the version number
6731
6732 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6733
6734         * win32/GStreamer.vcproj:
6735           add gstinterface to the build
6736
6737 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6738
6739         * win32/gstreamer.def:
6740           add many definitions needed by plugins,
6741           GST_CAT_DEFAULT only available in the Debug build ?
6742
6743 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6744
6745         * gst/gstelement.c: (gst_element_set_eos_recursive):
6746           various whitespace fixes.
6747           doc fix, fixes #148497
6748
6749 2004-07-25  Benjamin Otte  <otte@gnome.org>
6750
6751         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6752           don't delay links on the sink elements, it causes unnegotiated
6753           links.
6754         * gst/elements/gsttypefindelement.c:
6755         (gst_type_find_element_base_init):
6756           add our padtemplates, we indeed do have some.
6757         * gst/elements/gsttypefindelement.c:
6758         (gst_type_find_element_handle_event),
6759         (gst_type_find_element_chain):
6760           don't push data when typefinding failed.
6761         * gst/gstpad.c: (gst_pad_link_fixate):
6762           check that no fixate function returns empty caps.
6763         * gst/gstpad.c: (gst_pad_push):
6764           check that the link is negotiated before data gets pushed.
6765         * tools/gst-register.c: (main):
6766           don't assert (fixes #148283)
6767
6768 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6769
6770         * docs/gst/gstreamer-sections.txt:
6771         * docs/gst/tmpl/gstconfig.sgml:
6772           add GST_PLUGIN_EXPORT definition
6773
6774 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6775
6776         * gst/gstplugin.h:
6777         * gst/gstconfig.h.in:
6778         * win32/gstconfig.h:
6779         * win32/gstelements.def:
6780         * win32/gstelements.vcproj:
6781         * win32/gstoptimalscheduler.def:
6782         * win32/gstoptimalscheduler.vcproj:
6783         * win32/gstspider.def:
6784         * win32/gstspider.vcproj:
6785           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6786
6787 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6788
6789         * docs/gst/gstreamer-sections.txt:
6790           remove GST_CAT_DEFAULT because the type has changed
6791
6792 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6793
6794         * win32/gstbytestream.vcproj:
6795         * win32/gstelements.vcproj:
6796         * win32/gst-inspect.vcproj:
6797         * win32/gst-launch.vcproj:
6798         * win32/gstoptimalscheduler.vcproj:
6799         * win32/GStreamer.vcproj:
6800         * win32/gst-register.vcproj:
6801         * win32/gstspider.vcproj:
6802         * win32/msvc71.sln:
6803           Copy the files where needed after building, The testsuite will be
6804           built separately
6805
6806 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6807
6808         * win32/config.h:
6809         * win32/README.txt:
6810         * docs/manual/win32.xml:
6811         Fixed the plugin and GStreamer location
6812
6813 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6814
6815         * win32/gstreamer.def:
6816         More exports for the plugins
6817
6818 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6819
6820         * gst/gstinfo.h:
6821         Marc was right, we need to export literally GST_CAT_DEFAULT
6822
6823 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6824
6825         * win32/config.h:
6826         NLS crashes in gettext, disabled until this is solved
6827
6828 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6829
6830         * win32/gst-inspect.vcproj:
6831         * win32/gst-launch.vcproj:
6832         Should use NLS when available
6833
6834 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6835
6836         * gst/registries/gstxmlregistry.c:
6837         removing the file doesn't seem to be a good idea on Linux
6838
6839 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6840
6841         * gst/registries/gstxmlregistry.c:
6842         Remove the registry before renaming the tempfile (needed for Windows)
6843
6844 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6845
6846         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6847         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6848         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6849         * gst/elements/gstmultifilesrc.h:
6850         Added newmedia property so it generates newmedia events between each
6851         file when property is set, as well as fixed eos handling
6852
6853 2004-07-22  David Schleef  <ds@schleef.org>
6854
6855         * gst/gststructure.c: (gst_structure_id_empty_new),
6856         (gst_structure_empty_new):  Set type field correctly.
6857         * gst/gststructure.h: Check type field correctly.
6858         * testsuite/caps/Makefile.am:
6859         * testsuite/caps/structure.c: (test1), (main): Add a very small
6860         test for structures.
6861
6862 2004-07-22  David Schleef  <ds@schleef.org>
6863
6864         * docs/random/ds/0.9-suggested-changes: more comments
6865         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6866
6867 2004-07-22  Benjamin Otte  <otte@gnome.org>
6868
6869         * gst/gstelementfactory.c: (gst_element_register):
6870           set the factory in the class struct, so gst_element_get_factory
6871           actually works
6872         * gst/parse/grammar.y:
6873           set element to playing when it gets unlocked as we can't rely on the
6874           bin state - all elements in the bin state might still be locked in
6875           NULL)
6876
6877 2004-07-22  Benjamin Otte  <otte@gnome.org>
6878
6879         * gst/gstelement.c: (gst_element_set_state_func):
6880           make this a static function
6881
6882 2004-07-22  Wim Taymans  <wim@fluendo.com>
6883
6884         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6885         (gst_opt_scheduler_pad_link):
6886         fix 147894-2 and the group_link problem.
6887
6888 2004-07-22  Wim Taymans  <wim@fluendo.com>
6889
6890         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6891         (handoff_identity), (main):
6892         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6893         (handoff_identity), (main):
6894         * testsuite/schedulers/Makefile.am:
6895         * testsuite/schedulers/group_link.c: (main):
6896         Show bug in scheduler when linking chain and loop based element 
6897         where the chain based element was not yet in a group.
6898
6899 2004-07-21  Benjamin Otte  <otte@gnome.org>
6900
6901         * gst/.cvsignore:
6902         * gst/autoplug/.cvsignore:
6903         * gst/elements/.cvsignore:
6904         * gst/indexers/.cvsignore:
6905         * libs/gst/bytestream/.cvsignore:
6906         * libs/gst/control/.cvsignore:
6907         * libs/gst/getbits/.cvsignore:
6908         * testsuite/states/.cvsignore:
6909         * testsuite/threads/.cvsignore:
6910           keep this up to date, since I seem to be the only one who cares
6911           about not missing files on commits (editor's note: no you don't,
6912           but feel free to change them at the time you add stuff instead
6913           of later on)
6914
6915 2004-07-21  Benjamin Otte  <otte@gnome.org>
6916
6917         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6918         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6919         (gst_bin_child_state_change_func), (set_kid_state_func),
6920         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6921           make state changes work correctly and reentrant (so removing
6922           elements from bins during state changes of bins doesn't cause
6923           segfaults or even wrong states)
6924           add debugging category and debugging output to print children states
6925         * gst/gstbin.c: (gst_bin_dispose): 
6926           add some assertion checks
6927         * gst/gstbin.h:
6928         * gst/gstbin.c: (gst_bin_sync_children_state):
6929           deprecate this function - it just does gst_bin_set_state (bin,
6930           GST_STATE (bin)) 
6931         * testsuite/threads/queue.c: (main):
6932           don't use gst_bin_sync_children_state anymore
6933         * testsuite/states/Makefile.am:
6934         * testsuite/states/bin.c:
6935           test that the state changes of bins work as expected
6936         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6937           some adjustments to change states correctly, too
6938         * gst/gstthread.c: (gst_thread_change_state):
6939           don't enable/disable "threadsafe" properties, they're unused and
6940           cause random segfaults
6941         * testsuite/threads/Makefile.am:
6942           the queue check randomly passes now, ignore it
6943
6944 2004-07-21  Benjamin Otte  <otte@gnome.org>
6945
6946         * gst/gstpad.c:
6947           check if data is NULL before outputting debug info. (fixes #145100)
6948
6949 2004-07-21  Benjamin Otte  <otte@gnome.org>
6950
6951         * gst/schedulers/entryscheduler.c:
6952         (gst_entry_scheduler_loop_wrapper),
6953         (gst_entry_scheduler_chain_wrapper),
6954         (gst_entry_scheduler_get_wrapper):
6955           reset the state when the cothread starts, so we don't get assertion
6956           failures on restarting of cothreads
6957
6958 2004-07-20  Benjamin Otte  <otte@gnome.org>
6959
6960         * gst/gstelement.c: (gst_element_link_pads_filtered):
6961           use correct sinkpad, if only sinkpad is specified, but not srcpad
6962           (fixes #147889)
6963         * gst/gstelement.c: (gst_element_set_state_func),
6964         (gst_element_change_state): ref/unref the element, signal handlers
6965         could get rid of the element otherwise
6966
6967 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6968
6969         * docs/random/ds/0.9-suggested-changes:
6970           Make note about renaming fixed-list to array.
6971         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6972         (_gst_value_initialize):
6973           Add array intersections.
6974         * testsuite/caps/intersect2.c: (main):
6975           Add test for array intersections.
6976
6977 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6978
6979         * configure.ac: back to cvs
6980
6981 === release 0.8.4 ===
6982
6983 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6984
6985         * configure.ac:
6986           releasing 0.8.4, "Paella"
6987           bump libtool versioning
6988
6989 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6990
6991         * po/LINGUAS:
6992         * po/ca.po:
6993           adding Catalan translation (Jordi Mallach)
6994
6995 2004-07-20  Wim Taymans  <wim@fluendo.com>
6996
6997         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6998         (handoff_identity), (main):
6999         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7000         (handoff_identity), (main):
7001         * testsuite/schedulers/Makefile.am:
7002         Added failing testcase for variant of #147894
7003
7004 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7005
7006         patch by: David Moore
7007
7008         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7009         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7010         (group_migrate_connected):
7011         * testsuite/schedulers/Makefile.am:
7012           fix for #142813 (Deadlock in optimal scheduler)
7013
7014 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7015
7016         patch by: Wim Taymans
7017
7018         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7019         (gst_opt_scheduler_schedule_run_queue),
7020         (gst_opt_scheduler_get_wrapper), (get_group),
7021         (group_migrate_connected):
7022         * testsuite/schedulers/Makefile.am:
7023           fix for #147819 (Add some checks in the opt scheduler)
7024
7025 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7026
7027         patch by: Benjamin Otte
7028
7029         * gst/gstelementfactory.c: (__gst_element_details_set):
7030           fix for #147929: running gst-register in non-utf8 locale can cause
7031           invalid registry
7032
7033 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7034
7035         patch by: Wim Taymans
7036
7037         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7038         (group_has_element), (element_get_reachables_func),
7039         (group_migrate_connected):
7040           fix for #147894 (opt scheduler decoupled elements mismanagement)
7041         * testsuite/schedulers/Makefile.am:
7042           testsuite app now passes
7043
7044 2004-07-19  Wim Taymans  <wim@fluendo.com>
7045
7046         * testsuite/schedulers/147819.c: (handoff_identity1),
7047         (handoff_identity2), (main):
7048         * testsuite/schedulers/Makefile.am:
7049         Added testcase for bug 147819
7050
7051 2004-07-19  Wim Taymans  <wim@fluendo.com>
7052
7053         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7054         (handoff_identity), (main):
7055         * testsuite/schedulers/Makefile.am:
7056         Added testcase for bug 147894
7057
7058 2004-07-16  Wim Taymans  <wim@fluendo.com>
7059
7060         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7061         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7062         * testsuite/schedulers/Makefile.am:
7063         Added testsuite for bug 142183 in its two incarnations. Refcount
7064         is not increased for scheduled elements and threadsafe properties
7065         mutexes are not properly unlocked.
7066
7067 2004-07-16  Wim Taymans  <wim@fluendo.com>
7068
7069         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7070         (create_chain), (destroy_chain), (create_group), (destroy_group),
7071         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7072         (group_dec_link), (gst_opt_scheduler_pad_link),
7073         (group_inc_links_for_element), (group_migrate_connected):
7074         Call group_inc_link with the proper src->sink ordering -- 
7075         break this, and we break sort_chain. patch from wingo for bug
7076         147713.
7077         Partially revert patch 1.89. When adding a loop based element to 
7078         the scheduler, the links to other groups are automatically followed
7079         and incremented. This should not happen because the bin will call
7080         pad_link explicitly for those connection, resulting in them counted 
7081         twice. Results in assertion failure on pipeline cleanup.
7082
7083 2004-07-16  Wim Taymans  <wim@fluendo.com>
7084
7085         * testsuite/schedulers/143777-2.c: (main):
7086         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7087         (main):
7088         * testsuite/schedulers/Makefile.am:
7089         Added cleanup code to testcase 143777-2.
7090         Added testcase to show bug 147713, does not really show the
7091         deadlock as I can't figure out how to trigger it, but it does
7092         demonstrate bad ordering in the scheduler.
7093
7094 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7095
7096         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7097           change strndup to g_strndup.  Fixes #147707
7098
7099 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7100
7101         * po/af.po:
7102         * po/az.po:
7103         * po/cs.po:
7104         * po/en_GB.po:
7105         * po/fr.po:
7106         * po/nl.po:
7107         * po/sr.po:
7108         * po/sv.po:
7109         * po/tr.po:
7110         * po/uk.po:
7111           updated translations
7112
7113 2004-07-16  Benjamin Otte  <otte@gnome.org>
7114
7115         * gst/gstvalue.c: (gst_greatest_common_divisor):
7116           use ints and return ints, fractions only use ints, too, so this
7117           avoids accidently casting multiplications to unsigned
7118         (gst_value_lcopy_fraction): it's ints, not uint32
7119         (gst_value_set_fraction): disallow minint, multiplying and negation
7120           are broken with it
7121         (gst_value_fraction_multiply): fix to make large numbers work and get
7122         rid of the assumption that the multiplication of two ints fits an
7123         int64 - dunno if that's true for all systems
7124         * testsuite/caps/Makefile.am:
7125         * testsuite/caps/fraction-multiply-and-zero.c:
7126         (check_multiplication), (check_equal), (zero_test), (main):
7127           add tests for all the stuff above
7128         * testsuite/caps/value_compare.c: (test1):
7129           fix comment
7130         * tests/.cvsignore:
7131         * testsuite/caps/.cvsignore:
7132         * testsuite/debug/.cvsignore:
7133         * testsuite/dlopen/.cvsignore:
7134         * testsuite/states/.cvsignore:
7135           get up to date
7136
7137 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7138
7139         * docs/manual/bins-api.xml:
7140         * docs/manual/factories.xml:
7141         * docs/manual/helloworld.xml:
7142         * docs/manual/links-api.xml: 
7143           fixes for out of date info, incorrect info and grammar
7144
7145 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7146
7147         * docs/manual/pads.xml:
7148         * docs/manual/pads-api.xml: grammar fix
7149
7150 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7151
7152         * docs/manual/pads-api.xml: typo + grammar fix
7153
7154 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7155
7156         * docs/gst/gstreamer-sections.txt:
7157           add new symbols
7158         * docs/gst/tmpl/gstelement.sgml:
7159         * docs/gst/tmpl/gstpad.sgml:
7160         * docs/gst/tmpl/gsttypes.sgml:
7161         * docs/gst/tmpl/gstvalue.sgml:
7162           update docs
7163         * gst/gststructure.c: (gst_structure_set_valist),
7164         (gst_structure_from_abbr), (gst_structure_to_abbr):
7165         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7166         (gst_greatest_common_divisor), (gst_value_init_fraction),
7167         (gst_value_copy_fraction), (gst_value_collect_fraction),
7168         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7169         (gst_value_get_fraction_numerator),
7170         (gst_value_get_fraction_denominator),
7171         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7172         (gst_value_deserialize_fraction),
7173         (gst_value_transform_fraction_string),
7174         (gst_value_transform_string_fraction),
7175         (gst_value_compare_fraction), (_gst_value_initialize):
7176         * gst/gstvalue.h:
7177           adding GstFraction GValue type, get/set, and multiply
7178         * testsuite/caps/Makefile.am:
7179         * testsuite/caps/fraction.c: (test), (main):
7180         * testsuite/caps/string-conversions.c: (main):
7181         * testsuite/caps/value_compare.c: (test1), (main):
7182           add regression tests for GstFraction
7183
7184 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7185         
7186         * docs/manual/init-api.xml: Grammar fix
7187
7188 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7189
7190         * docs/manual/states.xml: Fix inconsistent information
7191
7192 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7193
7194         * gst/gstelement.c: (gst_element_set_state):
7195         * gst/gstpad.c: (gst_pad_try_set_caps):
7196         * gst/gststructure.c:
7197         * gst/gstthread.c: (gst_thread_child_state_change):
7198         * gst/gstvalue.c: (gst_value_compare_double):
7199         * gst/gstvalue.h:
7200         * testsuite/parse/parse1.c: (main):
7201           debugging additions and style cleanups
7202
7203 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7204
7205         * docs/manual/states.xml: Grammar fix
7206
7207 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7208
7209         * docs/manual/pads.xml: Grammar fix
7210
7211 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7212
7213         * docs/manual/elements.xml: Fixed image reference
7214
7215 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7216
7217         * docs/manual/goals.xml: Grammar fix
7218
7219 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7220
7221         * docs/manual/motivation.xml:
7222         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7223
7224 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7225
7226         * docs/manual/motivation.xml: Fix spelling
7227
7228 2004-07-15  Benjamin Otte  <otte@gnome.org>
7229
7230         * gst/gstelement.h: 
7231           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7232           strings.
7233         * gst/gstelement.c (gst_element_class_init):
7234           GError's are boxed, not objects
7235         * gst/gstmarshal.list:
7236           update list for the fixed error signal
7237
7238 2004-07-14  Andy Wingo  <wingo@pobox.com>
7239
7240         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7241         there all along, but the function wasn't. (guile-gstreamer's build
7242         system uses the address of the function -- I wasn't actually
7243         trying to use this.)
7244
7245 2004-07-14  Andy Wingo  <wingo@pobox.com>
7246
7247         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7248         as gst_pad_proxy_pad_link) just link to every other pad when they
7249         are called. In the case where the graph has cycles, this will mean
7250         that a call to try_set_caps will recurse. Allow this recursion
7251         and return OK, while we wait for the first try_set_caps to give a
7252         proper return value.
7253         (gst_pad_link_call_link_functions): Since this function is the
7254         only one to set the NEGOTIATING flag on a pad, if the flag is set
7255         it means that the link functions have indirectly recursed. If this
7256         happens, error out to avoid infinite recursion and an eventual
7257         SEGV.
7258         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7259         (gst_pad_proxy_getcaps): Intersect the result with the template
7260         caps to ensure that the return value is valid.
7261
7262 2004-07-14  Andy Wingo  <wingo@pobox.com>
7263
7264         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7265         one refcount, the calling function is the owner of the buffer.
7266
7267 2004-07-14  Wim Taymans  <wim@fluendo.com>
7268
7269         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7270         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7271         Fix stupid warning when an element is to be migrated but
7272         is already migrated.
7273
7274 2004-07-14  Wim Taymans  <wim@fluendo.com>
7275
7276         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7277         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7278         Make sure that a single non-loop-based element does not 
7279         end up in a group. This fixes the testsuite again.
7280
7281 2004-07-14  Wim Taymans  <wim@fluendo.com>
7282
7283         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7284         (add_to_group), (merge_groups), (schedule_group),
7285         (gst_opt_scheduler_get_wrapper), (group_elements),
7286         (group_dec_link), (gst_opt_scheduler_pad_link),
7287         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7288         (gst_opt_scheduler_iterate):
7289         move isolated groups to a new chain.
7290         Emit a warning instead of segfaulting in some error cases.
7291         Fix a bug where the link count between groups was not calculated 
7292         correctly. Fixes #144510.
7293
7294 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7295         * gst/elements/gstfilesrc.c:
7296           Binary files support under Windows now OK
7297       
7298 2004-07-13  Benjamin Otte  <otte@gnome.org>
7299
7300           compatibility fixes for Solaris 8/gcc 2.95
7301         * configure.ac:
7302           include libintl libs in LDFLAGS
7303         * gstvalue.c (gst_value_deserialize_buffer):
7304           cast isxdigit stuff to int to silence compiler warning
7305
7306 2004-07-12  Benjamin Otte  <otte@gnome.org>
7307
7308         * gst/gsttypes.h:
7309           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7310           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7311           just causes support madness
7312         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7313           make it work without this
7314         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7315         (gst_file_index_commit):
7316           glib IO channels don't want binary mode
7317         * testsuite/bytestream/filepadsink.c: (main):
7318         * testsuite/bytestream/test1.c: (read_param_file):
7319           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7320
7321 2004-07-12  Benjamin Otte  <otte@gnome.org>
7322
7323         * gst/gstelement.c: (gst_element_class_init),
7324         (gst_element_set_state), (gst_element_set_state_func):
7325           virutalize gst_element_set_state, use set_state member in class
7326           struct that was already added in 0.7 for this.
7327         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7328         (gst_bin_change_state):
7329           make gst_bin_foreach works similar to other foreach functions, plug
7330           memleaks in it. Make functions using it work with the new approach.
7331           Document gst_bin_foreach, so it can be exported if we want to
7332         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7333           use virtualized set_state to make set_state on bins set the state of
7334           all its children.
7335
7336 2004-07-12  Benjamin Otte  <otte@gnome.org>
7337
7338         * configure.ac:
7339           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7340           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7341         * gst/gstpad.c: (gst_pad_alloc_buffer):
7342           allow buffer_alloc functions to return NULL and allocate a normal
7343           buffer in that case
7344
7345 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7346         * gst/elements/gstfilesink.c:
7347         * gst/elements/gstfilesrc.c:
7348         * gst/indexers/gstfileindex.c:
7349         * gst/gsttypes.h:
7350         * testsuite/bytestream/filepadsink.c:
7351         * testsuite/bytestream/test1.c:
7352           Handle binary files under Windows
7353
7354 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7355         * docs/manual/win32.xml:
7356         * win32/config.h:
7357         * win32/gst-register.vcproj:
7358         * win32/gstreamer.def:
7359           Update to another gettext public build
7360
7361 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7362         * gst/gstplugin.c:
7363           Fix an impossible C syntax
7364         * win32/config.h:
7365           Disable i18n under Windows for the moment
7366         * win32/gst-register.vcproj:
7367           Use this configuration
7368
7369 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7370         * docs/manual/quotes.xml:
7371           Keep the quotes file alive
7372         * docs/random/ds/0.9-suggested-changes:
7373           Add the suggestion of including a 'rowstride' as part of video
7374           format caps
7375
7376 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7377
7378         * gst/gstelement.c: (gst_element_set_state),
7379         (gst_element_change_state):
7380           d'oh.  Set PENDING state correctly before forcing bin to change.
7381         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7382         (gst_structure_parse_fixed_list):
7383         * gst/schedulers/gstoptimalscheduler.c:
7384         (gst_opt_scheduler_state_transition):
7385         * testsuite/states/parent.c: (main):
7386           remove comment now that it's fixed.
7387
7388 2004-07-11  Benjamin Otte  <otte@gnome.org>
7389
7390         * gst/gstclock.h:
7391           GST_SECOND shouldn't cause a conversion to unsigned.
7392         * testsuite/clock/.cvsignore:
7393         * testsuite/clock/Makefile.am:
7394         * testsuite/clock/signedness.c: (main):
7395           make sure it never will again
7396
7397 2004-07-11  Andy Wingo  <wingo@pobox.com>
7398
7399         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7400         whose state is higher than the bin state, raise the bin state to
7401         ensure that bin state := highest child state.
7402         
7403 2004-07-11  Andy Wingo  <wingo@pobox.com>
7404
7405         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7406         procedure on the children of a bin. Assumes that the procedure can
7407         change the set of children.
7408         (set_kid_state_func): New static function.
7409         (gst_bin_change_state): Use gst_bin_foreach to call
7410         set_kid_state_func. Fixes a bug: if a child had a state-change
7411         handler that removes it from the bin, there would be a segfault.
7412         Hopefully it should also work in the case where the state-change
7413         handler on one child adds or removes other children. In any case,
7414         fixes should go to gst_bin_foreach.
7415
7416 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7417
7418         * gst/gstelement.c: (gst_element_set_state):
7419           compatibility fix for latest plugins release.  Change loop back
7420           to while {}
7421
7422 2004-07-09  Wim Taymans  <wim@fluendo.com>
7423
7424         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7425         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7426         (gst_thread_main_loop):
7427         Since remove is virtual in GstBin we must not assume the 
7428         elements GList to have anothing useful.
7429         Add some more logging to GstThread and be a bit more paranoid
7430         when resetting the scheduler.
7431         Set the state of the bin to NULL before removing the children.
7432
7433 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7434
7435         * testsuite/threads/Makefile.am:
7436         * testsuite/threads/threadg.c:
7437           added test to check if problem when removing all elements from a
7438           GstThread before setting GstThread state to NULL
7439
7440 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7441
7442         * docs/gst/tmpl/gstelement.sgml:
7443         * docs/gst/tmpl/gsttypes.sgml:
7444         * gst/gstbin.c: (gst_bin_change_state):
7445         * gst/gstelement.c: (gst_element_set_state),
7446         (gst_element_change_state):
7447           rework so that for bins we try to set the state on all children
7448           as well even if the bin is in the correct state already.
7449           change while to do so at least one iteration is done.
7450           For regular elements, we fall back to the previous behaviour for
7451           now since we first need a new plugins release.
7452         * testsuite/states/parent.c: (main):
7453           test for this case
7454           Fixes #123774
7455
7456 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7457
7458         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7459         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7460         (gst_queue_release_locks), (gst_queue_change_state),
7461         (gst_queue_set_property):
7462           add proper lock debugging.  Change dispose to finalize, since
7463           we're freeing mutexes and other stuff which should happen only once.
7464
7465 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7466
7467         * docs/gst/tmpl/gstelement.sgml:
7468         * docs/gst/tmpl/gstplugin.sgml:
7469         * docs/gst/tmpl/gsttypes.sgml:
7470         * docs/pwg/building-state.xml:
7471         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7472         * gst/gstelement.c: (gst_element_change_state):
7473         * gst/gstthread.c: (gst_thread_change_state):
7474           catch wrong state changes in element base class.
7475
7476 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7477
7478         * gst/gstinfo.h:
7479           clean up layout a little.
7480
7481 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7482
7483         * configure.ac:
7484         * testsuite/Makefile.am:
7485         * testsuite/states/Makefile.am:
7486         * testsuite/states/parent.c: (main):
7487           re-enable states testsuite dir.  Add test for state changes and
7488           parent behaviour
7489
7490 2004-07-09  Wim Taymans  <wim@fluendo.com>
7491
7492         * gst/schedulers/gstoptimalscheduler.c:
7493         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7494         (element_get_reachables_func), (element_get_reachables),
7495         (debug_element), (rechain_group), (group_migrate_connected),
7496         (gst_opt_scheduler_pad_unlink):
7497         Do not try to migrate decoupled elements to a new group since
7498         they are not added to groups.
7499
7500 2004-07-08  Benjamin Otte  <otte@gnome.org>
7501
7502         * gst/gstelement.c: (gst_element_error_func):
7503           make reentrant (= allow removing elements in error handler)
7504
7505 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7506
7507         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7508         (gst_pad_send_event), (gst_pad_call_chain_function):
7509           events sent to elements below PAUSED cannot be handled, so
7510           don't try to
7511
7512 2004-07-08  Wim Taymans  <wim@fluendo.com>
7513
7514         * gst/schedulers/gstoptimalscheduler.c:
7515         (chain_recursively_migrate_group), (create_group),
7516         (schedule_group), (gst_opt_scheduler_pad_link),
7517         (group_elements_set_visited), (element_get_reachables_func),
7518         (element_get_reachables), (group_can_reach_group), (debug_element),
7519         (rechain_group), (group_migrate_connected),
7520         (gst_opt_scheduler_pad_unlink):
7521         * testsuite/schedulers/Makefile.am:
7522         Implemented group splitting and rechaining.
7523         Fixes 143777 and 143777-2 in the testsuite.
7524
7525 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7526
7527         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7528           extra debugging
7529         * gst/gstevent.h:
7530         * gst/gstinfo.c: (gst_debug_log_default):
7531           print time nicely.  add thread pointer until someone figures out
7532           a completely portable way of getting at thread id's.
7533         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7534         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7535         (gst_pad_call_chain_function):
7536           extra debugging
7537         * gst/schedulers/gstoptimalscheduler.c:
7538         (get_group_schedule_function), (loop_group_schedule_function),
7539         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7540         (pad_clear_queued), (gst_opt_scheduler_iterate):
7541           rename BUFPEN and friends to DATAPEN since that's what they are.
7542
7543 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7544
7545         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7546         * gst/gstbuffer.h:
7547         * gst/gstpad.c:
7548           cleanups and debugging
7549
7550 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7551
7552         * configure.ac:
7553         * gst/gstvalue.c: (gst_value_compare_enum),
7554         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7555         (gst_value_can_compare), (gst_value_compare):
7556         * testsuite/Makefile.am:
7557         * testsuite/enumcaps/Makefile.am:
7558         * testsuite/enumcaps/enumcaps.c:
7559           Fix enum serialization, deserialization, comparison in caps, add
7560           a test to ensure that this continues working in the future.
7561
7562 2004-07-06  David Schleef  <ds@schleef.org>
7563
7564         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7565         Fix memleak.
7566
7567 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7568
7569         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7570         * gst/gstplugin.h:
7571         * gst/registries/gstxmlregistry.c:
7572         (plugin_times_older_than_recurse), (plugin_times_older_than),
7573         (gst_xml_registry_parse_padtemplate):
7574           only rebuild registry when actual plugins have a newer time than
7575           the registry.  Fixes #145520
7576
7577 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7578
7579         * docs/manual/manual.xml:
7580         * docs/manual/win32.xml:
7581           add chapter on win32 building.  fixes #142422
7582
7583 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7584
7585         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7586
7587         * gst/autoplug/gstspider.c: (gst_spider_init),
7588         (gst_spider_dispose):
7589           fix spider memleaks.  fixes #137863
7590
7591 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7592
7593         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7594
7595         * gst/schedulers/gstoptimalscheduler.c:
7596         (gst_opt_scheduler_pad_unlink):
7597           fix SIGBUS error, fixes #145338
7598
7599 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7600
7601         * gst/gstobject.c: (gst_object_replace):
7602         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7603         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7604           clean up clock lifecycle.  Fixes #109831
7605
7606 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7607
7608         * po/LINGUAS:
7609         * po/cs.po:
7610           added Czech translation (Miloslav Trmac)
7611
7612 2004-07-04  David Schleef  <ds@schleef.org>
7613
7614         * tools/Makefile.am:
7615         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7616
7617 2004-07-04  David Schleef  <ds@schleef.org>
7618
7619         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7620
7621 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7622
7623         * gst/gstbin.c: (gst_bin_restore_thyself):
7624           chain to parent restore so the bins get restored correctly
7625           in the editor
7626
7627 2004-07-03  David Schleef  <ds@schleef.org>
7628
7629         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7630         Actually do something in these functions, like before the big
7631         caps change.  (bug #145137)
7632
7633 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7634
7635         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7636         (gst_element_get_compatible_pad_filtered):
7637         * gst/gstthread.c: (gst_thread_main_loop):
7638           more debugging
7639
7640 2004-07-02  David Schleef  <ds@schleef.org>
7641
7642         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7643         * gst/gstobject.h:
7644         * gst/gstparse.h:
7645         * gst/gsttrace.h:
7646         * gst/gstxml.h:
7647
7648 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7649
7650         * gst/gstpad.c: (gst_pad_check_schedulers),
7651         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7652         (gst_pad_link_prepare):
7653           revert until testsuite is fixed
7654
7655 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7656
7657         * testsuite/Makefile.am:
7658         * testsuite/caps/filtercaps.c: (main):
7659         * testsuite/clock/clock1.c: (main):
7660         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7661           fix some more tests
7662
7663 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7664
7665         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7666         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7667         * testsuite/cleanup/cleanup4.c: (main):
7668           fix testsuite
7669
7670 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7671
7672         * libs/gst/control/control.c:
7673         * libs/gst/control/dparam.c:
7674         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7675         * libs/gst/control/dparammanager.c:
7676         * libs/gst/control/dparammanager.h:
7677         * testsuite/dynparams/Makefile.am:
7678         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7679         (gst_dptest_change_state), (gst_dptest_chain), (main):
7680           fix testcase for dparams
7681           add debugging category
7682
7683 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7684
7685         * testsuite/Rules:
7686           change path
7687
7688 2004-07-02  Benjamin Otte  <otte@gnome.org>
7689
7690         * tests/.cvsignore:
7691         * tests/Makefile.am:
7692         * tests/mass_elements.c: (gst_get_current_time), (main):
7693           add simple benchmark to test various speeds of fakesrc ! identity !
7694           identity ! ... ! fakesink.
7695           Usage: mass_elements [num_identities] [num_buffers]
7696           If not specified they default to 1000.
7697
7698 2004-07-02  Benjamin Otte  <otte@gnome.org>
7699
7700         * gst/gstpad.c: (gst_pad_check_schedulers),
7701         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7702         (gst_pad_link_prepare):
7703           check that pads that get linked belong to the same manager. The old
7704           code allowed linking elements before putting them into bins, so it
7705           worked to link them and then put them in different threads, which
7706           lead to weird behaviour.
7707           Since this effectively disallows linking elements before putting
7708           them in a bin, some applications might not work after this and error
7709           out. If these applications are too critical, we might need to revert
7710           that patch. Please test this before the next release...
7711
7712 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7713
7714         * gst/gstpad.c: (gst_pad_get_caps):
7715           throw an error if the getcaps function does not return a subset of
7716           the template caps.
7717         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7718           make disconts without position info an error in debugging
7719         * tests/spidey_bench.c: (handoff), (main):
7720           don't count first try when averaging
7721
7722 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7723
7724         * gst/gstplugin.c: (gst_plugin_load_file):
7725           figure out problem with dynamic test
7726
7727 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7728
7729         * docs/gst/Makefile.am:
7730           fix docs build
7731
7732 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7733
7734         * po/POTFILES.in:
7735         * po/af.po:
7736         * po/az.po:
7737         * po/en_GB.po:
7738         * po/fr.po:
7739         * po/nl.po:
7740         * po/sr.po:
7741         * po/sv.po:
7742         * po/tr.po:
7743         * po/uk.po:
7744         * tools/gst-register.c: (plugin_added_func), (main):
7745           i18n-ize -register, fix plural
7746
7747 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7748
7749         * gst/elements/gstidentity.c: (gst_identity_class_init),
7750         (gst_identity_init), (gst_identity_chain),
7751         (gst_identity_set_property), (gst_identity_get_property):
7752         * gst/elements/gstidentity.h:
7753           check for perfect stream
7754
7755 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7756
7757         * gst/elements/gstidentity.c: (gst_identity_chain):
7758           print offset_end
7759
7760 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7761
7762         * docs/gst/Makefile.am:
7763         * docs/gst/gstreamer-docs.sgml:
7764           doc fixes
7765
7766 2004-06-24  David Schleef  <ds@schleef.org>
7767
7768         * autogen.sh:  Remove call to env, since the buildbot isn't
7769         broken anymore.
7770
7771 2004-06-24  Wim Taymans  <wim@fluendo.com>
7772
7773         * gst/elements/Makefile.am:
7774         * gst/elements/gstelements.c:
7775         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7776         (gst_multifdsink_class_init), (gst_multifdsink_init),
7777         (gst_multifdsink_add), (gst_multifdsink_remove),
7778         (gst_multifdsink_clear), (gst_multifdsink_chain),
7779         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7780         * gst/elements/gstmultifdsink.h:
7781         Added an element that writes to multiple filedescriptors at once.
7782
7783 2004-06-24  Benjamin Otte  <otte@gnome.org>
7784
7785         * gst/parse/grammar.y:
7786           don't try to link elements before they have been added to bins
7787
7788 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7789
7790         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7791         (gst_file_pad_get_length):
7792         * libs/gst/bytestream/filepad.h:
7793           add 2 new functions
7794
7795 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7796
7797         * docs/gst/gstreamer-sections.txt:
7798         remove from docs, the define that Benjamin removed from gstelement.h
7799
7800 2004-06-22  Benjamin Otte  <otte@gnome.org>
7801
7802         * gst/gstelement.h:
7803           remove define that referenced a nonexisting GstElement struct member
7804
7805 2004-06-20  Benjamin Otte  <otte@gnome.org>
7806
7807         * gst/gstdata.c: (gst_data_is_writable):
7808           whoops, return values were wrong, so writable data was marked as
7809           non-writable and vice versa. (fixes #143953, spotted by Francis
7810           Labonte)
7811           Shows how rarely we need to copy data ;)
7812
7813 2004-06-20  Benjamin Otte  <otte@gnome.org>
7814
7815         * testsuite/schedulers/.cvsignore:
7816         * testsuite/schedulers/Makefile.am:
7817         * testsuite/schedulers/143777-2.c: (main):
7818           add test for opt breakage in bug #143777
7819
7820 2004-06-20  Benjamin Otte  <otte@gnome.org>
7821
7822         * gst/gstpad.c: (gst_pad_call_chain_function):
7823           check for if we were unlinked while inside the chainfunction (fixes
7824           entrygthread having issues with #143777)
7825         * testsuite/schedulers/143777.c: (main):
7826         * testsuite/schedulers/Makefile.am:
7827           add a test for that fix
7828
7829 2004-06-20  Benjamin Otte  <otte@gnome.org>
7830
7831         * gst/gstvalue.c: (gst_value_set_int_range):
7832           test that start is smaller then end
7833         * libs/gst/bytestream/Makefile.am:
7834         * libs/gst/bytestream/filepad.c: 
7835         * libs/gst/bytestream/filepad.h:
7836           add GstFilePad - a pad that behaves like a FILE*
7837         * testsuite/bytestream/.cvsignore:
7838         * testsuite/bytestream/Makefile.am:
7839         * testsuite/bytestream/filepadsink.c: 
7840           test for the GstFilePad
7841
7842 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7843
7844         * gst/elements/gstidentity.c: (gst_identity_class_init),
7845         (gst_identity_init), (gst_identity_set_clock),
7846         (gst_identity_chain), (gst_identity_set_property),
7847         (gst_identity_get_property):
7848         * gst/elements/gstidentity.h:
7849         * gst/gstclock.c: (gst_clock_id_wait):
7850           add a "sync" property to sync to the clock
7851
7852 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7853
7854         * gst/gstelementfactory.c: (gst_element_factory_create):
7855           make the freakin "elementfactory bla has no type" message more
7856           useful. So we actually can do something when someone shows up
7857           complaining about it.
7858
7859 2004-06-15  Johan Dahlin  <johan@gnome.org>
7860
7861         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7862         found. This matches the old behavior better. Thanks to Thomas for
7863         pointing out.
7864
7865 2004-06-14  David Schleef  <ds@schleef.org>
7866
7867         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7868         -fomit-frame-pointer.  Appears to generate correct code in
7869         other cases as well.
7870
7871 2004-06-14  Johan Dahlin  <johan@gnome.org>
7872
7873         * tools/gst-inspect.c (main): Add two new command line options: -a
7874         to print all elements and -n to print the name on each line. Also
7875         fix some error reporting.
7876         (main): Simplify, remove -n and always print names if -a is specified
7877
7878 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7879
7880         * win32/gstconfig.h:
7881         * win32/GSTreamer.vcproj:
7882         * win32/Makefile:
7883         * gst/gstconfig.h.in:
7884         * gst/gst.h:
7885         * gst/gstbin.h:
7886         * gst/gstelement.h:
7887         * gst/gstevent.h:
7888         * gst/gstobject.h:
7889         * gst/gstpad.h:
7890         * docs/gst/gstreamer-sections.txt:
7891         * docs/gst/tmpl/gstconfig.sgml:
7892           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7893
7894 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7895         * docs/gst/gstreamer-sections.txt:
7896         * docs/gst/tmpl/gstconfig.sgml:
7897         Add the GSTREAMER_EXPORT macro to the docs
7898
7899 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7900
7901         * tools/gst-compprep.c: (handle_xmlerror), (main):
7902         Add a check for the version that introduced SetStructuredError to fix
7903         the build on FC1
7904
7905 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7906
7907         * win32/msvc71.sln:
7908         * win32/testsuite/:
7909           prepare to compile the testsuite with MSVC
7910
7911 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7912
7913         * docs/manual/win32.xml:
7914           attempt to transform the Win32 README into an XML doc
7915
7916 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7917
7918         * gst/gst.c:
7919         * gst/gstbin.*:
7920         * gst/config.h.in:
7921         * gst/gstelement.*:
7922         * gst/gstevent.h:
7923         * gst/gstobject.*:
7924         * gst/gstpad.h:
7925         * tools/gst-register.c:
7926         * win32/gstreamer.def:
7927           extern symbols are now exported for the Windows DLL
7928
7929 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7930
7931         * gst/gstinfo.h:
7932           fix a problem to enable/disable DEBUG under MSVC
7933
7934 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7935
7936         * win32/:
7937           enable more debug code in DEBUG build
7938
7939 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7940
7941         * win32/config.h:
7942         * gst/gst-i18n-app.h:
7943           enable NLS under Windows
7944
7945 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7946         * tools/gst-compprep.c: (handle_xmlerror), (main):
7947           Make an error that baffled me a bit clearer
7948
7949 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7950
7951         * gst/gstqueue.c:
7952           don't use g_queue_get_length () because it's 2.4, use ->length
7953
7954 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7955
7956         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7957
7958         * tools/gst-inspect.c: (print_signal_info):
7959           don't free random data twice. (fixes #144185)
7960
7961 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7962
7963         * gst/gstqueue.c:
7964         * gst/gstqueue.h:
7965           fix removing from the wrong queue on event timeout
7966           fix disposing of the event queue by casting correctly
7967           add mutexes for handling the event queue
7968           someone was sleeping when fixing queue last time around :)
7969
7970 2004-06-10  Johan Dahlin  <johan@gnome.org>
7971
7972         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7973         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7974
7975 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7976
7977         * docs/random/gdp:
7978         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7979         * libs/gst/dataprotocol/dataprotocol.c:
7980         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7981         (gst_dp_buffer_from_header):
7982         * libs/gst/dataprotocol/dataprotocol.h:
7983         * libs/gst/dataprotocol/dp-private.h:
7984           rev version to 0.1, add buffer flags and copy them
7985
7986 2004-06-09  Johan Dahlin  <johan@gnome.org>
7987
7988         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
7989         the flags from the buffer we're copying.
7990
7991 2004-06-09  Wim Taymans  <wim@fluendo.com>
7992
7993         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
7994         * gst/elements/gstidentity.c: (gst_identity_init),
7995         (gst_identity_chain):
7996         Print more buffer info in fakesink.
7997         Make identity output similar to fakesink.
7998
7999 2004-06-07  Daniel Gazard  <dany42@free.fr>
8000
8001         reviewed by Benjamin Otte  <otte@gnome.org>
8002
8003         * configure.ac:
8004           fix cross compiling not working. (fixes #143741)
8005
8006 2004-06-07  Benjamin Otte  <otte@gnome.org>
8007
8008         * gst/gstelement.c: (gst_element_set_time_delay):
8009           add failure check
8010         * gst/gstinfo.h:
8011           put brackets around macro arguments of GST_TIME_ARGS, add note to
8012           move it to correct header in 0.9
8013
8014 2004-06-07  Benjamin Otte  <otte@gnome.org>
8015
8016         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8017         (gst_file_index_load), (_file_index_id_save_entries),
8018         (gst_file_index_commit), (gst_file_index_add_association),
8019         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8020         (gst_file_index_plugin_init):
8021           make debugging use a default category
8022
8023 2004-06-06  David Moore  <dcm@acm.org>
8024
8025         reviewed by Benjamin Otte  <otte@gnome.org>
8026
8027         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8028         (gst_fdsrc_change_state):
8029           reset offset counter when going READY => PAUSED. (fixes #142903)
8030
8031 2004-06-06  ed@catmur.co.uk
8032
8033         reviewed by Benjamin Otte  <otte@gnome.org>
8034
8035         * gst/registries/gstxmlregistry.c:
8036         (gst_xml_registry_rebuild_recurse):
8037           don't rely on g_dir_open to figure out if a file is a directory, use
8038           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8039           directories. (fixes #142850)
8040
8041 2004-06-06  Benjamin Otte  <otte@gnome.org>
8042
8043         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8044           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8045         * libs/gst/bytestream/adapter.c:
8046         * libs/gst/bytestream/adapter.h:
8047           fix copyright in header and typo in debugging category name
8048
8049 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8050
8051         * configure.ac:
8052           bump nano to cvs
8053
8054 === release 0.8.3 ===
8055
8056 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8057
8058         * configure.ac:
8059           update libtool versioning
8060           do a new release
8061         * docs/gst/tmpl/gstelement.sgml:
8062         * docs/gst/tmpl/gsttypes.sgml:
8063         * gst/gstinfo.c: (_gst_debug_init):
8064           put back GST_CAT_DATAFLOW to fix API breakage
8065
8066 2004-06-04  David Schleef  <ds@schleef.org>
8067
8068         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8069
8070 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8071
8072         * configure.ac:
8073           bump nano to cvs
8074
8075 === release 0.8.2 ===
8076
8077 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8078
8079         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8080           check GST_DEBUG environment variable which is parsed the same way
8081           as --gst-debug=
8082
8083 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8084
8085         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8086                             gstmd5sink.c gstshaper.c gsttee.c
8087                             gsttypefindelement.c
8088         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8089
8090           - removing trailing commas at end of enums
8091             it is correct C99 code but C90 compilers would complain
8092             (AIX, Forte, ...)
8093             ('should' fix #143290, at least partially)
8094
8095 2004-05-27  Wim Taymans  <wim@fluendo.com>
8096
8097         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8098         (chain_group_set_enabled), (create_group), (add_to_group),
8099         (merge_groups), (setup_group_scheduler), (group_elements),
8100         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8101         Don't try to follow the pad connections with other groups
8102         when a loop based element is added to the scheduler because
8103         the bin will inform the scheduler about the pad links a little
8104         later.
8105
8106 2004-05-27  Wim Taymans  <wim@fluendo.com>
8107
8108         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8109         (remove_from_chain), (chain_group_set_enabled),
8110         (setup_group_scheduler), (group_element_set_enabled),
8111         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8112         (gst_opt_scheduler_show):
8113         Elements without a group can do a state change as well, just wait
8114         with the setup of the scheduling function when it is added to a
8115         chain.
8116
8117 2004-05-27  Wim Taymans  <wim@fluendo.com>
8118
8119         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8120         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8121         (merge_groups), (setup_group_scheduler),
8122         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8123         (gst_opt_scheduler_show):
8124         Fixes to maintain internal consistency of the scheduler data
8125         structures. 
8126          - adding an enabled group to a chain should increment the
8127            number of enabled elements in that chain.
8128          - removing an enabled group from a chain could disable the
8129            chain.
8130          - removing a disabled group from a chain could enable the
8131            chain.
8132          - add g_assert when internal inconsistency is detected.
8133          - adding an element to a group could increase the number of
8134            links this group has with other groups.
8135          - merging two groups also merges the chains.
8136          - also show group links in the _show method.
8137            
8138
8139 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8140
8141         * gst/gstcaps.c: (gst_caps_structure_simplify):
8142           don't print error messages when there is no error
8143         * gst/gstvalue.c: (gst_value_compare_int_range):
8144           compare the second value, too
8145         * testsuite/caps/Makefile.am:
8146         * testsuite/caps/random.c: (assert_on_error), (main):
8147           add tests to make sure the two things above are checked for
8148
8149 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8150
8151         * configure.ac:
8152         * libs/gst/dataprotocol/Makefile.am:
8153         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8154         * libs/gst/dataprotocol/dataprotocol.h:
8155           wrap header in GST_ENABLE_NEW.  make code use it
8156
8157 2004-05-23  Johan Dahlin  <johan@gnome.org>
8158
8159         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8160         so verbose and print GstElement signal names all the time.
8161
8162 2004-05-22  David Schleef  <ds@schleef.org>
8163
8164         * gst/registries/gstxmlregistry.c:
8165         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8166         (bug #142957)
8167
8168 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8169
8170         * configure.ac:
8171           scrub cflags for glib2 so gcc doesn't complain when glib is in
8172           /usr/local
8173
8174 2004-05-21  Johan Dahlin  <johan@gnome.org>
8175
8176         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8177         __GNUC__, patch from Brian Cameron, fixes bug #142804
8178
8179 2004-05-20  David Schleef  <ds@schleef.org>
8180
8181         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8182         comparison code.  (bug #142819)
8183
8184 2004-05-20  Wim Taymans  <wim@fluendo.com>
8185
8186         * gst/gstbuffer.c: (gst_buffer_default_copy):
8187         * gst/gstbuffer.h:
8188         Added Comment to a flag.
8189         copy relevant flags in _buffer_copy.
8190
8191 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8192
8193         reviewed by: Wim Taymans <wim at fluendo dot com>
8194
8195         * gst/gstbuffer.h:
8196           add GST_BUFFER_IN_CAPS buffer flag
8197         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8198         (gst_structure_parse_any_list), (gst_structure_parse_list),
8199         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8200         * gst/gstvalue.c: (gst_value_serialize_any_list),
8201         (gst_value_transform_any_list_string),
8202         (gst_value_list_prepend_value), (gst_value_list_append_value),
8203         (gst_value_list_get_size), (gst_value_list_get_value),
8204         (gst_value_transform_list_string),
8205         (gst_value_transform_fixed_list_string),
8206         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8207         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8208         (_gst_value_initialize):
8209         * gst/gstvalue.h:
8210           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8211           < , > as a format.
8212         * testsuite/caps/string-conversions.c: (main):
8213           add regression tests for < >
8214
8215 2004-05-20  Johan Dahlin  <johan@gnome.org>
8216
8217         * docs/gst/Makefile.am (all-local): Re-add
8218
8219 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8220
8221         * docs/gst/Makefile.am:
8222         * docs/gst/gstreamer-docs.sgml:
8223         * docs/libs/Makefile.am:
8224         * docs/libs/gstreamer-libs-docs.sgml:
8225           fix distcheck issues
8226
8227 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8228
8229         * libs/gst/dataprotocol/Makefile.am:
8230           add to autotest
8231
8232 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8233
8234         * libs/gst/dataprotocol/Makefile.am:
8235         * libs/gst/dataprotocol/dataprotocol.c:
8236         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8237         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8238         * libs/gst/dataprotocol/dp-private.h:
8239           use GST macros to read/write fixed length ints
8240           add some more asserts
8241
8242 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8243
8244         * docs/libs/gstreamer-libs-docs.sgml:
8245         * docs/libs/gstreamer-libs-sections.txt:
8246           remove idct and putbits
8247         * configure.ac:
8248         * docs/libs/tmpl/gstdataprotocol.sgml:
8249         * libs/gst/Makefile.am:
8250         * libs/gst/dataprotocol/Makefile.am:
8251         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8252         (buffer_test), (caps_test), (event_test), (main):
8253         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8254         (gst_dp_dump_byte_array), (gst_dp_init),
8255         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8256         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8257         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8258         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8259         (gst_dp_validate_header), (gst_dp_validate_payload),
8260         (gst_dp_validate_packet), (plugin_init):
8261         * libs/gst/dataprotocol/dataprotocol.h:
8262         * libs/gst/dataprotocol/dp-private.h:
8263           add dataprotocol
8264
8265 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8266
8267         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8268           fix int variable deserialization and add a helper so we can actually
8269           debug this.
8270
8271 2004-05-18  David Schleef  <ds@schleef.org>
8272
8273         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8274           argv[0].  Calling yourself is probably not the best way to
8275           construct a test like this, btw.
8276
8277 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8278
8279         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8280           don't claim to be more intelligent than a scheduler when the
8281           scheduler claims the pipeline is stopped
8282         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8283         (safe_cothread_destroy),
8284         (gst_entry_scheduler_remove_all_cothreads),
8285         (gst_entry_scheduler_reset), (_remove_cothread),
8286         (gst_entry_scheduler_state_transition):
8287           hold off cothread destruction if we're not in main cothread
8288         * configure.ac:
8289         * testsuite/Makefile.am:
8290           add new test dir
8291         * testsuite/schedulers/.cvsignore:
8292         * testsuite/schedulers/Makefile.am:
8293           add tests
8294         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8295           check relinking and adding/removing elements from a running pipeline
8296         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8297           check unlinking in a running pipeline
8298         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8299           check unreffing a running pipeline
8300         * testsuite/schedulers/useless_iteration.c: (main):
8301           check iterating a pipeline that contains running threads works
8302
8303 2004-05-18  David Schleef  <ds@schleef.org>
8304
8305         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8306           is false.
8307
8308 2004-05-18  Wim Taymans  <wim@fluendo.com>
8309
8310         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8311         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8312         Fixed an error introduced with patch for 1.63. When setting
8313         a get based element as the entry point in a group, make sure
8314         to mark the group as GET based.
8315
8316 2004-05-18  Wim Taymans  <wim@fluendo.com>
8317
8318         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8319         (setup_group_scheduler), (loop_group_schedule_function),
8320         (gst_opt_scheduler_pad_link):
8321         Added some more debug info and fixed a bug where the group
8322         type was set to LOOP but it was in fact unknown.
8323
8324 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8325
8326         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8327           make resetting scheduler work twice in a row
8328
8329 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8330
8331         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8332         (CREATE_USERIALIZATION), (_gst_value_initialize),
8333         (gst_value_compare_float), (gst_value_serialize_float),
8334         (gst_value_deserialize_float), (gst_value_compare_enum),
8335         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8336           add serialization and comparison functions for long, int64, enum and
8337           float values
8338         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8339           use best serialization function in type hierarchy instead of only a
8340           matching one. This is required for enums to work.
8341         * gst/parse/grammar.y:
8342           use gst_caps_deserialize
8343         * testsuite/parse/Makefile.am:
8344           parse1 now works
8345         * testsuite/parse/parse1.c: (main):
8346           remove aggregator check, aggregator is broken, this test works now
8347           but fails because of bug #138012
8348         * testsuite/parse/parse2.c: (main):
8349           s/xvideosink/xvimagesink - this test looks a lot like we should
8350           disable it
8351
8352 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8353
8354         * gst/gstelement.c: (gst_element_class_init):
8355           whoops, store the signal id correctly
8356         * gst/schedulers/gstbasicscheduler.c:
8357         (gst_basic_scheduler_chain_wrapper):
8358           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8359           chain function isn't linked
8360
8361 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8362         * configure.ac:
8363         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8364         support until we decide where the flags should be used
8365         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8366         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8367         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8368         Output refused caps in the debug info
8369
8370 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8371
8372         * gst/elements/gstidentity.c: (gst_identity_chain):
8373           add duration debug
8374         * gst/gstinfo.c: (gst_debug_log_default):
8375           add timestamp
8376
8377 2004-05-13  Benjamin Otte  <otte@gnome.org>
8378
8379         * gst/gstpipeline.c: (gst_pipeline_dispose),
8380         (gst_pipeline_change_state):
8381           call gst_scheduler_reset on dispose (fixes #141416)
8382
8383 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8384
8385         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8386           compute mapsize correctly
8387         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8388           use correct datatypes when calling a varargs function
8389         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8390           push a DISCONT event as first thing
8391         * gst/gst_private.h:
8392         * gst/gstinfo.c: (_gst_debug_init):
8393           remove GST_DATAFLOW debugging category
8394         * gst/gstbin.c: (gst_bin_iterate):
8395           use GST_SCHEDULING category
8396         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8397         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8398         (gst_pad_call_get_function):
8399           add GST_DATAFLOW to easily track flow of buffers or events.
8400         * gst/gstqueue.c: (gst_queue_get_type),
8401         (gst_queue_handle_pending_events), (gst_queue_chain),
8402         (gst_queue_get), (gst_queue_handle_src_event):
8403           use own static debugging category GST_DATAFLOW for dataflow,
8404           use DEBUG category for showing which path events go, use LOG
8405           category for buffers.
8406
8407 2004-05-10  David Schleef  <ds@schleef.org>
8408
8409         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8410
8411 2004-05-10  David Schleef  <ds@schleef.org>
8412
8413         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8414         symbols, because otherwise we don't know what they are.  Thanks,
8415         the GStreamer team.
8416         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8417
8418 2004-05-10  David Schleef  <ds@schleef.org>
8419
8420         (from Steve Lhomme)
8421         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8422         are deleted.  Fix.
8423         * win32/Makefile.inspect:
8424         * win32/Makefile.launch:
8425         * win32/Makefile.register:
8426
8427 2004-05-10  David Schleef  <ds@schleef.org>
8428
8429         * gst/gstinfo.h: Add missing inline function.
8430         * gst/gsttrace.c: add include
8431         * gst/parse/grammar.y: remove unused code
8432         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8433         more portable.
8434         * tools/gst-register.c: wrap unistd.h
8435         
8436         More additions/fixes from Steve for the MSVC build.
8437         * win32/GStreamer.vcproj:
8438         * win32/Makefile:
8439         * win32/Makefile.inspect:
8440         * win32/Makefile.launch:
8441         * win32/Makefile.register:
8442         * win32/README.txt:
8443         * win32/gst-inspect.vcproj:
8444         * win32/gst-launch.vcproj:
8445         * win32/gst-register.vcproj:
8446         * win32/gstbytestream.def:
8447         * win32/gstbytestream.vcproj:
8448         * win32/gstconfig.h:
8449         * win32/gstelements.def:
8450         * win32/gstelements.vcproj:
8451         * win32/gstenumtypes.c:
8452         * win32/gstenumtypes.h:
8453         * win32/gstoptimalscheduler.def:
8454         * win32/gstoptimalscheduler.vcproj:
8455         * win32/gstreamer.def:
8456         * win32/gstspider.def:
8457         * win32/gstspider.vcproj:
8458         * win32/gstversion.h:
8459         * win32/msvc71.sln:
8460
8461 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8462
8463         * gst/gstelement.c: (gst_element_class_init),
8464         (gst_element_no_more_pads):
8465         * gst/gstelement.h:
8466           add gst_element_no_more_pads and the "no-more-pads" signal
8467
8468 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8469
8470         * gst/gstregistry.c: (gst_registry_add_plugin):
8471           refuse to add plugins when a plugin with same name is already
8472           registered. Fixes a bunch of "How to remove plugins?" issues.
8473           May lead to other problems though, let's test
8474
8475 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8476
8477         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8478         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8479         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8480
8481 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8482
8483         * tests/Makefile.am: fix am16 issue
8484
8485 2004-05-09  Benjamin Otte  <otte@gnome.org>
8486
8487         * libs/gst/bytestream/Makefile.am:
8488           we should indeed add .c files to makefiles or they won't be built
8489           (d'oh)
8490
8491 2004-05-08  Benjamin Otte  <otte@gnome.org>
8492
8493         * gst/gstpad.c: (gst_pad_proxy_fixate):
8494           really reduce the set of caps
8495
8496 2004-05-08  Benjamin Otte  <otte@gnome.org>
8497
8498         * tests/Makefile.am:
8499         * tests/spidey_bench.c: (handoff), (main):
8500           add benchmark to test how long spider needs to create a pipeline
8501
8502 2004-05-08  Benjamin Otte  <otte@gnome.org>
8503
8504         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8505           mark links as unengaged when unnegotiating instead of deactivating.
8506           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8507
8508 2004-05-08  Benjamin Otte  <otte@gnome.org>
8509
8510         * docs/manual/helloworld.xml:
8511           s/audiosink/osssink (patch by Patrick Guimond)
8512
8513 2004-05-07  David Schleef  <ds@schleef.org>
8514
8515         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8516         since it contains important stuff.
8517
8518 2004-05-07  David Schleef  <ds@schleef.org>
8519
8520         * testsuite/caps/caps.c: (test3), (main): A check for appending
8521         ANY caps.
8522
8523 2004-05-07  David Schleef  <ds@schleef.org>
8524
8525         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8526         which may contain commas.  Fixes detection of -Wa,-mregnames
8527
8528 2004-05-06  David Schleef  <ds@schleef.org>
8529
8530         Changes to handle compilers that don't have variadic macro
8531         support.  In particular, glib headers define some inlines
8532         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8533         builds.
8534         * gst/Makefile.am:
8535         * gst/cothreads.c:
8536         * gst/elements/gstfdsink.c:
8537         * gst/elements/gstfdsrc.c:
8538         * gst/elements/gstfilesink.c:
8539         * gst/elements/gstfilesrc.c:
8540         * gst/gst_private.h:
8541         * gst/gstatomic.c:
8542         * gst/gstcaps.c: (gst_caps_append):
8543         * gst/gstcpu.c: (gst_cpuid_i386):
8544         * gst/gstelement.c:
8545         * gst/gsterror.c:
8546         * gst/gstfilter.c:
8547         * gst/gstinfo.h:
8548         * gst/gstprobe.c:
8549         * gst/gstquery.c:
8550         * gst/gstregistry.c:
8551         * gst/gststructure.c:
8552         * gst/gsttaginterface.c:
8553         * gst/gsttrace.c: (gst_trace_new):
8554         * gst/gsttrashstack.c:
8555         * gst/gsturi.c:
8556         * gst/gstvalue.c:
8557         * gst/parse/grammar.y:
8558         * gst/parse/parse.l:
8559         * tools/gst-inspect.c: (main):
8560         * tools/gst-launch.c: (main):
8561         * tools/gst-xmlinspect.c: (PUT_STRING):
8562
8563 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8564
8565         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8566         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8567         * gst/elements/gstfilesrc.h:
8568           send NEW_MEDIA events correctly
8569         * gst/elements/gsttypefindelement.c: (start_typefinding),
8570         (gst_type_find_element_handle_event):
8571           restart typefinding when we get a NEW_MEDIA event
8572         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8573         (gst_bin_dispose):
8574           don't die when someone removes elements in callbacks
8575         * gst/gstelement.c: (gst_element_change_state):
8576           improve debugging
8577         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8578           we need a NEW_MEDIA event to engage a link
8579         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8580           don't g_print debugging stuff
8581         * testsuite/caps/simplify.c: (check_caps):
8582
8583 2004-05-04  Benjamin Otte  <otte@gnome.org>
8584
8585         * gst/parse/grammar.y:
8586           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8587
8588 2004-05-04  Benjamin Otte  <otte@gnome.org>
8589
8590         * testsuite/caps/renegotiate.c: (main):
8591           improve output in error case
8592
8593 2004-05-04  Benjamin Otte  <otte@gnome.org>
8594
8595         * gst/parse/grammar.y:
8596           fix assert to not trigger when there's no error argument
8597         * gst/parse/parse.l:
8598           fix definition of caps to allow more than two structures
8599         * testsuite/caps/Makefile.am:
8600         * testsuite/caps/renegotiate.c: (main):
8601           it's sinesrc and works in that case
8602
8603 2004-05-04  Wim Taymans  <wim@fluendo.com>
8604
8605         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8606         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8607         when removing an element from a group, we always need to
8608         decrement the link count that this group had with other 
8609         groups through the element.
8610         added an extra assert to catch inconsistencies when decrementing
8611         the link count.
8612
8613 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8614
8615         * configure.ac:
8616         * docs/gst/Makefile.am:
8617         * docs/gst/gstreamer-sections.txt:
8618         * docs/gst/tmpl/gstcompat.sgml:
8619         * examples/appreader/Makefile.am:
8620         * examples/cutter/Makefile.am:
8621         * examples/events/Makefile.am:
8622         * examples/helloworld/Makefile.am:
8623         * examples/helloworld2/Makefile.am:
8624         * examples/launch/Makefile.am:
8625         * examples/manual/Makefile.am:
8626         * examples/mixer/Makefile.am:
8627         * examples/pingpong/Makefile.am:
8628         * examples/plugins/Makefile.am:
8629         * examples/queue/Makefile.am:
8630         * examples/queue2/Makefile.am:
8631         * examples/queue3/Makefile.am:
8632         * examples/queue4/Makefile.am:
8633         * examples/retag/Makefile.am:
8634         * examples/thread/Makefile.am:
8635         * examples/typefind/Makefile.am:
8636         * examples/xml/Makefile.am:
8637         * gst/Makefile.am:
8638         * gst/autoplug/Makefile.am:
8639         * gst/elements/Makefile.am:
8640         * gst/gstcompat.h:
8641         * gst/indexers/Makefile.am:
8642         * gst/parse/Makefile.am:
8643         * gst/registries/Makefile.am:
8644         * gst/schedulers/Makefile.am:
8645         * libs/gst/bytestream/Makefile.am:
8646         * libs/gst/control/Makefile.am:
8647         * libs/gst/getbits/Makefile.am:
8648         * po/af.po:
8649         * po/az.po:
8650         * po/en_GB.po:
8651         * po/fr.po:
8652         * po/nl.po:
8653         * po/sr.po:
8654         * po/sv.po:
8655         * po/tr.po:
8656         * po/uk.po:
8657         * tests/Makefile.am:
8658         * tests/bufspeed/Makefile.am:
8659         * tests/instantiate/Makefile.am:
8660         * tests/memchunk/Makefile.am:
8661         * tests/muxing/Makefile.am:
8662         * tests/negotiation/Makefile.am:
8663         * tests/probes/Makefile.am:
8664         * tests/sched/Makefile.am:
8665         * tests/seeking/Makefile.am:
8666         * tests/threadstate/Makefile.am:
8667         * testsuite/caps/Makefile.am:
8668         * testsuite/cleanup/Makefile.am:
8669         * testsuite/dlopen/Makefile.am:
8670         * testsuite/dynparams/Makefile.am:
8671         * testsuite/plugin/Makefile.am:
8672         * testsuite/states/Makefile.am:
8673         * tools/Makefile.am:
8674           reorganize compile/link flags to be consistent
8675           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8676
8677 2004-05-04  David Schleef  <ds@schleef.org>
8678
8679         The "once more, with feeling" check-in.
8680         * testsuite/caps/Makefile.am: dist caps_strings
8681         * testsuite/caps/renegotiate.c: (main): This test triggers a
8682           segfault in the core.  Marking as failing.
8683
8684 2004-05-03  David Schleef  <ds@schleef.org>
8685
8686         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8687           by the build bots.
8688         * testsuite/caps/renegotiate.c: (main): Same.
8689
8690 2004-05-03  David Schleef  <ds@schleef.org>
8691
8692         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8693
8694 2004-05-03  David Schleef  <ds@schleef.org>
8695
8696         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8697           variable to find our source file.
8698
8699 2004-05-03  David Schleef  <ds@schleef.org>
8700
8701         * configure.ac:  Link plugins with libgstreamer and dependent
8702           libraries
8703         * testsuite/caps/Makefile.am:
8704         * testsuite/caps/caps_strings:
8705         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8706           through a file of caps strings and test each one
8707
8708 2004-05-04  Benjamin Otte  <otte@gnome.org>
8709
8710         * libs/gst/bytestream/Makefile.am:
8711         * libs/gst/bytestream/adapter.c: 
8712         * libs/gst/bytestream/adapter.h:
8713           add GstAdapter, similar to bytestream, but doesn't require ugly event
8714           handling or uglier loopbased elements
8715
8716 2004-05-03  David Schleef  <ds@schleef.org>
8717
8718         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8719         * testsuite/caps/erathostenes.c:
8720         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8721
8722 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8723
8724         * docs/pwg/pwg.xml:
8725           remove hardcoded stylesheet path (duh)
8726         * docs/random/release:
8727         * docs/gst/gstreamer-sections.txt:
8728         * gst/Makefile.am:
8729         * gst/gst.h:
8730         * gst/gst_private.h:
8731         * gst/gstcaps.c:
8732         * gst/gstevent.c:
8733         * gst/gstformat.c:
8734         * gst/gstinfo.c:
8735         * gst/gstinfo.h:
8736         * gst/gstinterface.c:
8737         * gst/gstmemchunk.c:
8738         * gst/gstprobe.c:
8739         * gst/gstquery.c:
8740         * gst/gstregistry.c:
8741         * gst/gstregistrypool.c:
8742         * gst/gststructure.c:
8743         * gst/gsttaginterface.c:
8744         * gst/gstthread.c:
8745         * gst/gsttrace.c:
8746         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8747         * gst/gsturi.c:
8748         * gst/gstvalue.c:
8749           deprecate gst_info; remove gstlog.h
8750    
8751
8752 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8753
8754         * Makefile.am:
8755         * po/en_GB.po:
8756         * po/sv.po:
8757         * po/uk.po:
8758           updated translations
8759
8760 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8761
8762         * gst/gstbin.c: (gst_bin_dispose):
8763           better debugging
8764
8765 2004-05-03  Johan Dahlin  <johan@gnome.org>
8766
8767         * gst/schedulers/gstoptimalscheduler.c
8768         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8769         really is a GstElement. Avoids critical when running gst-launch -v
8770         and a oggdemux/decoding pipeline.
8771
8772 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8773
8774         * docs/gst/tmpl/gstpipeline.sgml :
8775         * docs/manual/elements-api.xml :
8776                 doc fix by Patrick Guimond (Protector) from devel ML
8777                 reviewed by ronald
8778
8779 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8780
8781         * docs/gst/Makefile.am :
8782         * docs/libs/Makefile.am :
8783                 apply a patch from Arwed v. Merkatz so that gtk-doc
8784                 generated docs install (same for .devhelp file)
8785                 (fixes part 1 of #138836)
8786
8787 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8788
8789         * docs/faq/dependencies.xml: typo
8790         * docs/faq/getting.xml :
8791             - fix download URL for new gstreamer site
8792             - hide sf.net download page as latest version aren't there
8793             - fix apt URLs
8794             - fill "get via CVS" paragraph (link to dev page on the site)
8795         * docs/faq/general.xml:
8796             hide status tables as they no more exists
8797             change case on plugins license file to reflect reality
8798         * docs/faq/troubleshooting.xml:
8799             remove the wiki question/answer as there is no more wiki
8800
8801 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8802
8803         * gst/gsterror.h:
8804           include the headers needed for declarations used in this header
8805
8806 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8807
8808         * docs/random/uraeus/gstreamer_and_midi.txt :
8809           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8810           (fixes #132288)
8811
8812 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8813
8814         reviewed by Benjamin Otte  <otte@gnome.org>
8815
8816         * gst/schedulers/gthread-cothreads.h:
8817           free allocated data for main cothread, too when destroying context
8818           (fixes #141417)
8819
8820 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8821
8822         * docs/manual/goals.xml : remove duplicated paragraph at end 
8823         of doc page (fixes #141448)
8824
8825 2004-04-29  David Schleef  <ds@schleef.org>
8826
8827         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8828         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8829
8830 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8831
8832         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8833           fix property
8834         * gst/gstcaps.c:
8835           fix doc string
8836         * po/POTFILES.in:
8837           rename typefind source file
8838
8839 2004-04-28  David Schleef  <ds@schleef.org>
8840
8841         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8842         * win32/GStreamer.vcproj:
8843         * win32/Makefile:
8844         * win32/config.h:
8845         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8846         (_trewinddir), (_ttelldir), (_tseekdir):
8847         * win32/dirent.h:
8848         * win32/gst-inspect.vcproj:
8849         * win32/gst-launch.vcproj:
8850         * win32/gst-register.vcproj:
8851         * win32/gstbytestream.vcproj:
8852         * win32/gstelements.vcproj:
8853         * win32/gstoptimalscheduler.vcproj:
8854         * win32/gstspider.vcproj:
8855         * win32/gtchar.h:
8856         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8857         * win32/mman.h:
8858         * win32/mman.inl:
8859         * win32/msvc71.sln:
8860
8861 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8862
8863         * gst/gst.c: (init_post):
8864         * gst/gstinfo.c:
8865           remove useless _gst_progname stuff
8866         * tools/gst-inspect.c: (print_field), (print_caps):
8867           improve caps output
8868
8869 2004-04-28  David Schleef  <ds@schleef.org>
8870
8871         Disable parsing of a lot of files that aren't part of the
8872         exported API.  Move corresponding template files to old/,
8873         waiting for removal when they don't contain anything
8874         interesting.
8875         * docs/gst/Makefile.am:
8876         * docs/gst/gstreamer-sections.txt:
8877         * docs/gst/tmpl/cothreads.sgml:
8878         * docs/gst/tmpl/cothreads_compat.sgml:
8879         * docs/gst/tmpl/gettext.sgml:
8880         * docs/gst/tmpl/gobject2gtk.sgml:
8881         * docs/gst/tmpl/grammar.tab.sgml:
8882         * docs/gst/tmpl/gst-i18n-app.sgml:
8883         * docs/gst/tmpl/gst-i18n-lib.sgml:
8884         * docs/gst/tmpl/gst_private.sgml:
8885         * docs/gst/tmpl/gstaggregator.sgml:
8886         * docs/gst/tmpl/gstarch.sgml:
8887         * docs/gst/tmpl/gstatomic_impl.sgml:
8888         * docs/gst/tmpl/gstbufferstore.sgml:
8889         * docs/gst/tmpl/gstdata_private.sgml:
8890         * docs/gst/tmpl/gstdisksink.sgml:
8891         * docs/gst/tmpl/gstdisksrc.sgml:
8892         * docs/gst/tmpl/gstelementfactory.sgml:
8893         * docs/gst/tmpl/gstextratypes.sgml:
8894         * docs/gst/tmpl/gstfakesink.sgml:
8895         * docs/gst/tmpl/gstfakesrc.sgml:
8896         * docs/gst/tmpl/gstfdsink.sgml:
8897         * docs/gst/tmpl/gstfdsrc.sgml:
8898         * docs/gst/tmpl/gstfilesink.sgml:
8899         * docs/gst/tmpl/gstfilesrc.sgml:
8900         * docs/gst/tmpl/gsthttpsrc.sgml:
8901         * docs/gst/tmpl/gstidentity.sgml:
8902         * docs/gst/tmpl/gstindexfactory.sgml:
8903         * docs/gst/tmpl/gstmarshal.sgml:
8904         * docs/gst/tmpl/gstmd5sink.sgml:
8905         * docs/gst/tmpl/gstmultidisksrc.sgml:
8906         * docs/gst/tmpl/gstmultifilesrc.sgml:
8907         * docs/gst/tmpl/gstpadtemplate.sgml:
8908         * docs/gst/tmpl/gstpipefilter.sgml:
8909         * docs/gst/tmpl/gstschedulerfactory.sgml:
8910         * docs/gst/tmpl/gstsearchfuncs.sgml:
8911         * docs/gst/tmpl/gstshaper.sgml:
8912         * docs/gst/tmpl/gstspider.sgml:
8913         * docs/gst/tmpl/gstspideridentity.sgml:
8914         * docs/gst/tmpl/gststatistics.sgml:
8915         * docs/gst/tmpl/gsttee.sgml:
8916         * docs/gst/tmpl/gsttimecache.sgml:
8917         * docs/gst/tmpl/gsttypefind.sgml:
8918         * docs/gst/tmpl/gsttypefindfactory.sgml:
8919         * docs/gst/tmpl/gstxmlregistry.sgml:
8920         * docs/gst/tmpl/gthread-cothreads.sgml:
8921         * docs/gst/tmpl/old/cothreads.sgml:
8922         * docs/gst/tmpl/old/cothreads_compat.sgml:
8923         * docs/gst/tmpl/old/gettext.sgml:
8924         * docs/gst/tmpl/old/gobject2gtk.sgml:
8925         * docs/gst/tmpl/old/grammar.tab.sgml:
8926         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8927         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8928         * docs/gst/tmpl/old/gst_private.sgml:
8929         * docs/gst/tmpl/old/gstaggregator.sgml:
8930         * docs/gst/tmpl/old/gstarch.sgml:
8931         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8932         * docs/gst/tmpl/old/gstbufferstore.sgml:
8933         * docs/gst/tmpl/old/gstdata_private.sgml:
8934         * docs/gst/tmpl/old/gstdisksink.sgml:
8935         * docs/gst/tmpl/old/gstdisksrc.sgml:
8936         * docs/gst/tmpl/old/gstelementfactory.sgml:
8937         * docs/gst/tmpl/old/gstextratypes.sgml:
8938         * docs/gst/tmpl/old/gstfakesink.sgml:
8939         * docs/gst/tmpl/old/gstfakesrc.sgml:
8940         * docs/gst/tmpl/old/gstfdsink.sgml:
8941         * docs/gst/tmpl/old/gstfdsrc.sgml:
8942         * docs/gst/tmpl/old/gstfilesink.sgml:
8943         * docs/gst/tmpl/old/gstfilesrc.sgml:
8944         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8945         * docs/gst/tmpl/old/gstidentity.sgml:
8946         * docs/gst/tmpl/old/gstindexfactory.sgml:
8947         * docs/gst/tmpl/old/gstmarshal.sgml:
8948         * docs/gst/tmpl/old/gstmd5sink.sgml:
8949         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8950         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8951         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8952         * docs/gst/tmpl/old/gstpipefilter.sgml:
8953         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8954         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8955         * docs/gst/tmpl/old/gstshaper.sgml:
8956         * docs/gst/tmpl/old/gstspider.sgml:
8957         * docs/gst/tmpl/old/gstspideridentity.sgml:
8958         * docs/gst/tmpl/old/gststatistics.sgml:
8959         * docs/gst/tmpl/old/gsttee.sgml:
8960         * docs/gst/tmpl/old/gsttimecache.sgml:
8961         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8962         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8963         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8964         * docs/gst/tmpl/old/types.sgml:
8965         * docs/gst/tmpl/types.sgml:
8966
8967         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8968         gtkdoc-scan doesn't like files with the same name in different
8969         directories.
8970         * gst/elements/Makefile.am:
8971         * gst/elements/gstelements.c:
8972         * gst/elements/gsttypefind.c: 
8973         * gst/elements/gsttypefind.h:
8974         * gst/elements/gsttypefindelement.c:
8975         * gst/elements/gsttypefindelement.h:
8976
8977 2004-04-28  David Schleef  <ds@schleef.org>
8978
8979         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8980         patch (bug #141317):
8981         * gst/gst-i18n-lib.h: Allow disabling gettext.
8982         * gst/gstatomic_impl.h: disable warning when it's dumb.
8983         * gst/gstclock.c: fix include
8984         * gst/gstcompat.h: fix variadic macro
8985         * gst/gstinfo.c: fix include
8986         * gst/gstmacros.h: add defines for inlines on MSVC
8987         * gst/gstplugin.c: fix includes
8988         * gst/gstregistry.c: fix includes
8989         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
8990         * gst/gstsystemclock.c: fix include
8991         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
8992         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
8993         * gst/registries/gstxmlregistry.c:
8994         (gst_xml_registry_parse_element_factory): fix use of non-portable
8995         functions
8996         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
8997         * libs/gst/control/dparammanager.h: same
8998
8999 2004-04-28  David Schleef  <ds@schleef.org>
9000
9001         Move a bunch of unused files to old/ with names that are
9002         not case-insensitive-unique.  These files still contain some
9003         useful information that needs to be merged into gstbin.sgml,
9004         etc., so they shouldn't be deleted yet.
9005         * docs/gst/tmpl/GstBin.sgml:
9006         * docs/gst/tmpl/GstBuffer.sgml:
9007         * docs/gst/tmpl/GstCaps.sgml:
9008         * docs/gst/tmpl/GstClock.sgml:
9009         * docs/gst/tmpl/GstCompat.sgml:
9010         * docs/gst/tmpl/GstData.sgml:
9011         * docs/gst/tmpl/GstElement.sgml:
9012         * docs/gst/tmpl/GstEvent.sgml:
9013         * docs/gst/tmpl/GstIndex.sgml:
9014         * docs/gst/tmpl/GstStructure.sgml:
9015         * docs/gst/tmpl/GstTag.sgml:
9016         * docs/gst/tmpl/old/GstBin.sgml:
9017         * docs/gst/tmpl/old/GstBuffer.sgml:
9018         * docs/gst/tmpl/old/GstCaps.sgml:
9019         * docs/gst/tmpl/old/GstClock.sgml:
9020         * docs/gst/tmpl/old/GstCompat.sgml:
9021         * docs/gst/tmpl/old/GstData.sgml:
9022         * docs/gst/tmpl/old/GstElement.sgml:
9023         * docs/gst/tmpl/old/GstEvent.sgml:
9024         * docs/gst/tmpl/old/GstIndex.sgml:
9025         * docs/gst/tmpl/old/GstStructure.sgml:
9026         * docs/gst/tmpl/old/GstTag.sgml:
9027
9028 2004-04-28  David Schleef  <ds@schleef.org>
9029
9030         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9031         (gst_caps_append), (gst_caps_append_structure),
9032         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9033         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9034         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9035         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9036         (gst_caps_intersect), (gst_caps_normalize),
9037         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9038         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9039         * gst/gstcaps.h: use GST_IS_CAPS().
9040
9041 2004-04-26  David Schleef  <ds@schleef.org>
9042
9043         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9044         assembly.  gcc doesn't handle it correctly. (bug #141083)
9045         * gst/gsttrashstack.h: same
9046
9047 2004-04-25  Benjamin Otte  <otte@gnome.org>
9048
9049         * gst/gstelement.c: (gst_element_change_state):
9050           fix assertion to do an int comparison
9051
9052 2004-04-25  Benjamin Otte  <otte@gnome.org>
9053
9054         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9055           better debugging output on error
9056
9057 2004-04-25  Benjamin Otte  <otte@gnome.org>
9058
9059         * gst/gstcaps.c: (gst_caps_subtract):
9060           fix memleak
9061
9062 2004-04-23  Benjamin Otte  <otte@gnome.org>
9063
9064         * gst/gstvalue.c: (gst_value_compare_buffer),
9065         (_gst_value_initialize):
9066           add comparison function for buffers
9067
9068 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9069
9070         * docs/pwg/pwg.xml:
9071           Just found out that this so-called "ima-wav" format is really
9072           just "dvi adpcm" (according to the MS WAV documentation). So
9073           renaming it. We didn't use it yet anyway.
9074
9075 2004-04-23  Benjamin Otte  <otte@gnome.org>
9076
9077         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9078           call gst_caps_is_subset
9079
9080 2004-04-23  Benjamin Otte  <otte@gnome.org>
9081
9082         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9083         (gst_caps_is_subset):
9084           add documentation
9085
9086 2004-04-23  Benjamin Otte  <otte@gnome.org>
9087           
9088         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9089         (gst_caps_structure_subtract), (gst_caps_subtract),
9090         (gst_caps_structure_figure_out_union),
9091         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9092           fix simplifying and subtracting not working correctly with optional
9093           properties
9094           solve assorted problems that make it now simplify ebven more
9095         * docs/gst/tmpl/gstcaps.sgml:
9096         * gst/gstcaps.h:
9097           make gst_caps_do_simplify return a bool to indicate if it simplified
9098         * testsuite/caps/simplify.c: (main):
9099           add more checks. The tests is quite a bit useless right now because
9100           the core is heavily simplifying itself.
9101         * testsuite/caps/caps.h:
9102           fix caps to contain all optional properties
9103
9104 2004-04-22  Benjamin Otte  <otte@gnome.org>
9105
9106         * docs/gst/tmpl/gstcaps.sgml:
9107         * docs/gst/tmpl/gstfilesrc.sgml:
9108         * docs/gst/tmpl/gststructure.sgml:
9109         * docs/gst/tmpl/gstvalue.sgml:
9110           update for recent API changes
9111         * gst/gstcaps.c: (gst_caps_do_simplify):
9112           fix to stop trying with a freed structure
9113         * gst/gstpad.c: (gst_pad_link_fixate):
9114           simplify caps
9115         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9116           remove C++ comment
9117         * gst/gstpad.h:
9118           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9119         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9120         (gst_structure_to_string):
9121           keep the correct type when using lists of ranges
9122         * gst/gstvalue.c: (gst_value_list_prepend_value),
9123         (gst_value_list_append_value):
9124           copy the value before adding to the list (d'oh)
9125         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9126         (gst_value_subtract_int_range_int_range):
9127           handle overflows correctly
9128         * gst/gstvalue.c: (gst_value_subtract_from_list):
9129           fix memleak
9130         * testsuite/caps/caps.h:
9131           add a caps that caused segfaults
9132
9133 2004-04-22  Benjamin Otte  <otte@gnome.org>
9134
9135         * testsuite/refcounting/pad.c: (main):
9136           fix test
9137
9138 2004-04-22  Benjamin Otte  <otte@gnome.org>
9139
9140         * gst/gstcaps.c: (gst_caps_subtract):
9141           allow subtracting ANY and EMPTY from ANY caps
9142
9143 2004-04-22  Benjamin Otte  <otte@gnome.org>
9144
9145         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9146         (gst_caps_union):
9147           only simplify in functions that create new caps. Simplifying in
9148           gst_caps_append breaks tests.
9149
9150 2004-04-22  Benjamin Otte  <otte@gnome.org>
9151
9152         * gst/gstcaps.c: (gst_caps_structure_simplify):
9153           unset GValue after use
9154         * gst/gstcaps.c: (gst_caps_append), 
9155         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9156           use gst_caps_simplify (reduces registry size by 30%)
9157         * gst/gstpad.c: (gst_pad_template_new):
9158           don't allow NULL caps
9159
9160 2004-04-22  Benjamin Otte  <otte@gnome.org>
9161
9162         * docs/gst/gstreamer-sections.txt:
9163           add gst_caps_do_simplify
9164         * gst/gstcaps.c:
9165           add documentation for gst_caps_do_simplify
9166         * gst/gstvalue.h:
9167           fix typo in gst_value_register_subtract_func declaration for gst-doc
9168
9169 2004-04-22  Benjamin Otte  <otte@gnome.org>
9170
9171         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9172           fix bug when converting from empty string.
9173         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9174         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9175           use gst_caps_new_empty to allocate a new caps. Only that function
9176           allocates memory for caps now.
9177         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9178         (gst_caps_remove_structure):
9179           add ability to remove one structure (but not to header yet)
9180         * gst/gstcaps.c: (gst_caps_compare_structures),
9181         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9182         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9183         * gst/gstcaps.h:
9184           add gst_caps_do_simplify that tries to simplify a caps in place.
9185           Deprecate old gst_caps_simplify function.
9186         * testsuite/caps/caps.h:
9187           add caps.h containing a common set of caps to test against.
9188         * testsuite/caps/sets.c: (check_caps), (main):
9189           use it.
9190         * testsuite/caps/.cvsignore:
9191         * testsuite/caps/Makefile.am:
9192         * testsuite/caps/simplify.c: (check_caps), (main):
9193           add test to check correctness and efficency of caps simplification.
9194
9195 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9196
9197         reviewed by Benjamin Otte  <otte@gnome.org>
9198
9199         * gst/gstparse.c: (_gst_parse_escape):
9200           Free the GString used in _gst_parse_escape()
9201
9202 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9203
9204         * gst/gstpad.c: (gst_pad_link_negotiate):
9205           refuse to link if the link is not possible
9206         * configure.ac:
9207         * testsuite/Makefile.am:
9208         * testsuite/negotiation/.cvsignore:
9209         * testsuite/negotiation/Makefile.am:
9210         * testsuite/negotiation/pad_link.c: (main):
9211           add test that checks the above behaviour
9212
9213 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9214
9215         * docs/gst/gstreamer-sections.txt:
9216           add newly added API
9217
9218 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9219
9220         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9221         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9222         (gst_filesrc_open_file), (gst_filesrc_close_file),
9223         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9224         * gst/elements/gstfilesrc.h:
9225           add support for non-regular files (#140734)
9226
9227 2004-04-21  Benjamin Otte  <otte@gnome.org>
9228
9229         * gst/gstpad.c: (gst_pad_link_fixate):
9230           add sophisticated error checking code to see if fixation functions
9231           did their fixation right
9232
9233 2004-04-21  Benjamin Otte  <otte@gnome.org>
9234
9235         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9236           check for ANY caps before appending/unioning
9237         * gst/gstcaps.c: (gst_caps_is_subset),
9238         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9239         (gst_caps_structure_subtract), (gst_caps_subtract):
9240         * gst/gstcaps.h:
9241           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9242           the API. deprecate gst_caps_is_equal_fixed
9243         * gst/gstpad.c: (gst_pad_try_set_caps):
9244         * gst/gstqueue.c: (gst_queue_link):
9245           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9246         * gst/gststructure.c: (gst_structure_get_name_id):
9247         * gst/gststructure.h:
9248           add function gst_structure_get_name_id
9249         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9250         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9251         (gst_value_subtract_int_range_int_range),
9252         (gst_value_subtract_double_double_range),
9253         (gst_value_subtract_double_range_double),
9254         (gst_value_subtract_double_range_double_range),
9255         (gst_value_subtract_from_list), (gst_value_subtract_list),
9256         (gst_value_can_intersect), (gst_value_subtract),
9257         (gst_value_can_subtract), (gst_value_register_subtract_func),
9258         (_gst_value_initialize):
9259         * gst/gstvalue.h:
9260           add support for subtracting values from each other. Note that
9261           subtracting means subtracting as in set theory. Required for caps
9262           stuff above.
9263         * testsuite/caps/.cvsignore:
9264         * testsuite/caps/Makefile.am:
9265         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9266         * testsuite/caps/sets.c: (check_caps), (main):
9267         * testsuite/caps/subtract.c: (check_caps), (main):
9268           add tests for subtraction and equality code.
9269
9270 2004-04-20  David Schleef  <ds@schleef.org>
9271
9272         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9273         * gst/indexers/Makefile.am:
9274         * gst/schedulers/Makefile.am:
9275         * libs/gst/bytestream/Makefile.am:
9276         * libs/gst/control/Makefile.am:
9277         * libs/gst/getbits/Makefile.am:
9278
9279 2004-04-20  David Schleef  <ds@schleef.org>
9280
9281         * common/as-libtool.mak: Fine-tune DLL building.
9282         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9283         (like gst-plugins)
9284         * examples/plugins/Makefile.am: remove plugindir
9285         * gst/autoplug/Makefile.am: DLL building fixes
9286         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9287         Windows.
9288         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9289         * gst/indexers/Makefile.am: DLL building fixes
9290         * gst/schedulers/Makefile.am: DLL building fixes.
9291         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9292         * libs/gst/control/Makefile.am: same
9293         * libs/gst/getbits/Makefile.am: same
9294         * testsuite/Makefile.am: New dlopen directory
9295         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9296         when dlopened.
9297         * testsuite/dlopen/dlopen_gst.c: (main): same
9298         * testsuite/dlopen/loadgst.c: (do_test): same
9299
9300 2004-04-20  David Schleef  <ds@schleef.org>
9301
9302         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9303         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9304
9305 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9306
9307         * gst/gstelement.c: (gst_element_wait),
9308         (gst_element_set_time_delay), (gst_element_change_state):
9309           Use GST_TIME_*
9310
9311 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9312
9313         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9314         (gst_spider_identity_plug):
9315           improve debugging messages
9316         * gst/gstbin.c: (gst_bin_remove_func):
9317           make sure the state_change function is only called with simple state
9318           transitions
9319
9320 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9321
9322         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9323         (gst_fakesink_set_property), (gst_fakesink_chain):
9324         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9325         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9326         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9327         * gst/elements/gstidentity.c: (gst_identity_chain),
9328         (gst_identity_set_property):
9329         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9330         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9331           add warnings to _set_property for unknown arguments
9332           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9333
9334 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9335
9336         * Makefile.am:
9337         * docs/manuals.mak:
9338           add .po file download snippet
9339           fix a bug in the doc makefile
9340
9341 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9342
9343         * Makefile.am:
9344         * po/LINGUAS:
9345         * po/en_GB.po:
9346           Added en_GB translation (Gareth Owen)
9347
9348 2004-04-20  Johan Dahlin  <johan@gnome.org>
9349
9350         * gst/gstpad.c (_invent_event): Clean up
9351
9352 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9353
9354         * testsuite/caps/filtercaps.c: (main):
9355           fix test to test things correctly (caps are complicated)
9356
9357 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9358
9359         * testsuite/caps/Makefile.am:
9360         * testsuite/caps/filtercaps.c: (main):
9361           add test (that doesn't work right now, but should)
9362
9363 2004-04-19  David Schleef  <ds@schleef.org>
9364
9365         * configure.ac: Add test for allowing unaligned access.  Add define
9366         to put in gstconfig.h.
9367         * docs/gst/gstreamer-sections.txt: New symbols
9368         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9369         * docs/gst/tmpl/gstfilesrc.sgml:
9370         * docs/gst/tmpl/gstparse.sgml:
9371         * docs/gst/tmpl/gsttypes.sgml:
9372         * docs/gst/tmpl/gstutils.sgml:
9373         * docs/gst/tmpl/gstvalue.sgml:
9374         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9375         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9376         on most !i386/!powerpc architectures.  From Daniel Gazard
9377         <daniel.gazard@free.fr>.  (bug #140156)
9378         * po/af.po: Check in changes made by gettext.
9379         * po/az.po:
9380         * po/fr.po:
9381         * po/nl.po:
9382         * po/sr.po:
9383         * po/sv.po:
9384
9385 2004-04-20  Benjamin Otte  <otte@gnome.org>
9386
9387         * gst/schedulers/entryscheduler.c: 
9388         (gst_entry_scheduler_yield):
9389           refuse to yield when decoupled elements insist on doing that.
9390           At least it's better than crashing
9391
9392 2004-04-19  David Schleef  <ds@schleef.org>
9393
9394         * docs/libs/Makefile.am: Change sinclude to include
9395         * docs/gst/Makefile.am: same
9396         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9397
9398 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9399
9400         * po/LINGUAS:
9401         * po/uk.po:
9402           Added Ukrainian translation (Maxim V. Dziumanenko)
9403
9404 2004-04-19  Johan Dahlin  <johan@gnome.org>
9405
9406         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9407         checking here, do it before calling the function.
9408         Clean up, use for loops instead of while loops while iterating
9409         over lists.
9410
9411         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9412         in debug message.
9413         (gst_spider_create_and_plug): Improve debug message.
9414         General: Replace while loops which iterates over GLists with for
9415         loops. Which are much cleaner, improves readability, especially
9416         for gst_spider_identity_plug
9417
9418         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9419         fixes bug 140477
9420
9421 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9422
9423         * po/LINGUAS:
9424         * po/tr.po:
9425           Added Turkish translation (Baris Cicek)
9426
9427 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9428
9429         * docs/faq/troubleshooting.xml:
9430           Mention gst-register in the FAQ (fixes 139045).
9431
9432 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9433
9434         * docs/gst/gstreamer-sections.txt:
9435
9436 2004-04-17  Benjamin Otte  <otte@gnome.org>
9437
9438         * gst/gstelement.c: (gst_element_dispose):
9439           simplify
9440         * gst/gstpad.c: (gst_pad_call_chain_function):
9441           don't create loads of events due to bad macro usage
9442
9443 2004-04-16  David Schleef  <ds@schleef.org>
9444
9445         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9446         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9447         * gst/gstvalue.c: (gst_value_serialize_buffer),
9448         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9449         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9450         to indicate types that are fixed wrt caps or not.  Switching to
9451         this function fixes (bug #140298).
9452         * gst/gstvalue.h:
9453
9454 2004-04-16  David Schleef  <ds@schleef.org>
9455
9456         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9457         for GST_UNALIGNED_ACESS, since we essentially know which archs
9458         are ok.
9459
9460 2004-04-17  Benjamin Otte  <otte@gnome.org>
9461
9462         * docs/gst/Makefile.am:
9463           ignore gst/parse directory when building docs (fixes #140205)
9464
9465 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9466
9467         * testsuite/refcounting/mem.c: (vmsize):
9468           do error checking
9469
9470 2004-04-16  Johan Dahlin  <johan@gnome.org>
9471
9472         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9473         and gst_pad_call_get_function.
9474
9475 2004-04-15  David Schleef  <ds@schleef.org>
9476
9477         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9478         checks if we can access unaligned memory.
9479         * configure.ac: Use it.
9480
9481 2004-04-16  Benjamin Otte  <otte@gnome.org>
9482
9483         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9484         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9485         * gst/elements/gstfilesrc.h:
9486           s/seek_happened/need_discont/ and require discont before sending any
9487           data
9488
9489 2004-04-15  David Schleef  <ds@schleef.org>
9490
9491         * gst/gstvalue.c: (gst_value_serialize_buffer),
9492         (gst_value_deserialize_buffer), (_gst_value_initialize):
9493         Register these types as fundamental types. (bug #140015)
9494
9495 2004-04-16  Benjamin Otte  <otte@gnome.org>
9496
9497         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9498         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9499         (gst_pad_pull):
9500           implement enforcing discont events before buffers are passed. This
9501           allows state changes of only some elements and later correctly going
9502           on where they left off (or in short: you can now set audio sinks to
9503           NULL to release the device when the pipeline is paused)
9504         * gst/gstpad.c: (gst_pad_call_chain_function),
9505         (gst_pad_call_get_function):
9506         * gst/gstpad.h:
9507           add gst_pad_call_chain_function and gst_pad_call_get_function for
9508           scheduler interaction. They are required because of the changes
9509           above.
9510         * gst/schedulers/entryscheduler.c: (get_buffer),
9511         (gst_entry_scheduler_chain_wrapper),
9512         (gst_entry_scheduler_get_wrapper),
9513         (gst_entry_scheduler_state_transition),
9514         (gst_entry_scheduler_pad_link):
9515         * gst/schedulers/gstbasicscheduler.c:
9516         (gst_basic_scheduler_chain_wrapper),
9517         (gst_basic_scheduler_src_wrapper),
9518         (gst_basic_scheduler_chainhandler_proxy),
9519         (gst_basic_scheduler_gethandler_proxy),
9520         (gst_basic_scheduler_cothreaded_chain),
9521         (gst_basic_scheduler_chain_elements):
9522         * gst/schedulers/gstoptimalscheduler.c:
9523         (get_group_schedule_function), (pad_clear_queued),
9524         (gst_opt_scheduler_pad_link):
9525           use the new functions instead of calling get/chain-functions
9526           directly.
9527
9528 2004-04-15  David Schleef  <ds@schleef.org>
9529
9530         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9531         * docs/gst/tmpl/gstinfo.sgml: same
9532         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9533         gtk-doc put here.
9534         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9535         * examples/queue/queue.c: (main):  We iterate pipelines, not
9536         bins.  (bug #139996)
9537
9538 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9539
9540         * docs/pwg/advanced-types.xml:
9541           Add MS RLE support. Also document Qt RLE although I have no sample
9542           files for that yet. And document an extra property for ADPCM.
9543
9544 2004-04-15  David Schleef  <ds@schleef.org>
9545
9546         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9547         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9548         Windows.
9549
9550 2004-04-15  David Schleef  <ds@schleef.org>
9551
9552         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9553         symbol names to not conflict with new gstinfo.h symbols.
9554         * gst/gstinfo.h: Add inline functions for all those crazy
9555         compilers that don't know how to handle variadic macros (MSVC).
9556
9557 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9558
9559         * configure.ac: bump nano to 1
9560
9561 === release 0.8.1 ===
9562
9563 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9564
9565         * NEWS:
9566         * RELEASE:
9567         * configure.ac:
9568           releasing 0.8.1, "Snow Brigade"
9569
9570 2004-04-14  David Schleef  <ds@schleef.org>
9571
9572         * testsuite/Makefile.am: define tests_ignore
9573         * testsuite/Rules: Added new tests_ignore, which get compiled,
9574         but not run (generally because they're inconsistent or have
9575         heisenbugs).  Now we can ensure all the .c files compile in
9576         testsuite/.
9577         * testsuite/bins/Makefile.am: define tests_ignore
9578         * testsuite/bytestream/Makefile.am:
9579         * testsuite/caps/Makefile.am:
9580         * testsuite/clock/Makefile.am:
9581         * testsuite/debug/Makefile.am:
9582         * testsuite/debug/global.c: (gst_debug_log_one),
9583         (gst_debug_log_two): Fix compilation problem.
9584         * testsuite/dynparams/Makefile.am:
9585         * testsuite/elements/Makefile.am:
9586         * testsuite/ghostpads/Makefile.am:
9587         * testsuite/indexers/Makefile.am:
9588         * testsuite/parse/Makefile.am:
9589         * testsuite/plugin/Makefile.am:
9590         * testsuite/refcounting/Makefile.am:
9591         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9592         results, because it's not calculated correctly.
9593         * testsuite/refcounting/pad.c: (main): same
9594         * testsuite/states/Makefile.am:
9595         * testsuite/tags/Makefile.am:
9596         * testsuite/threads/Makefile.am:
9597
9598 2004-04-14  David Schleef  <ds@schleef.org>
9599
9600         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9601         generating bad code around the cpu detection asm code.
9602
9603 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9604
9605         * tools/gst-inspect.c: (print_element_info):
9606           print numeric version of rank as well, since we added some - 1
9607           rank values to elements
9608
9609 2004-04-13  David Schleef  <ds@schleef.org>
9610
9611         * configure.ac:  Disable various code when compiling for MinGW.
9612         * gst/elements/Makefile.am:
9613         * gst/elements/gstelements.c:
9614         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9615         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9616         * gst/registries/gstxmlregistry.c: (make_dir):
9617
9618 2004-04-13  David Schleef  <ds@schleef.org>
9619
9620         * gst/Makefile.am:
9621         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9622         assembly.
9623         * gst/gstcpuid_i386.s: remove
9624
9625 2004-04-13  David Schleef  <ds@schleef.org>
9626
9627         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9628         seems to think it needs to be done.
9629         * docs/gst/tmpl/gstfakesink.sgml:
9630         * docs/gst/tmpl/gstfakesrc.sgml:
9631         * docs/gst/tmpl/gstfdsink.sgml:
9632         * docs/gst/tmpl/gstfdsrc.sgml:
9633         * docs/gst/tmpl/gstfilesink.sgml:
9634         * docs/gst/tmpl/gstfilesrc.sgml:
9635         * docs/gst/tmpl/gstidentity.sgml:
9636         * docs/gst/tmpl/gstmd5sink.sgml:
9637         * docs/gst/tmpl/gstmultifilesrc.sgml:
9638         * docs/gst/tmpl/gstpipefilter.sgml:
9639         * docs/gst/tmpl/gstshaper.sgml:
9640         * docs/gst/tmpl/gstspider.sgml:
9641         * docs/gst/tmpl/gstspideridentity.sgml:
9642         * docs/gst/tmpl/gststatistics.sgml:
9643         * docs/gst/tmpl/gsttee.sgml:
9644         * docs/gst/tmpl/gsttypefind.sgml:
9645         * docs/gst/tmpl/gstutils.sgml:
9646
9647 2004-04-13  David Schleef  <ds@schleef.org>
9648
9649         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9650         and to build DLLs on Windows.
9651         * gst/Makefile.am:
9652         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9653         (gst_filesrc_open_file):
9654         * gst/schedulers/Makefile.am:
9655
9656 2004-04-13  David Schleef  <ds@schleef.org>
9657
9658         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9659         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9660         fixating lists.
9661
9662 2004-04-12  David Schleef  <ds@schleef.org>
9663
9664         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9665         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9666         to using it.
9667         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9668         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9669         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9670         * gst/gststructure.c: (gst_structure_set_valist),
9671         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9672         support for buffers.
9673         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9674         intended to be const.
9675         * gst/gsttag.h: same
9676         * gst/gstvalue.c: (gst_value_serialize_buffer),
9677         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9678         to (de)serialize buffers.
9679         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9680         * testsuite/caps/string-conversions.c: (main):
9681         * testsuite/caps/value_serialize.c: add new test
9682
9683 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9684
9685         * docs/pwg/advanced-types.xml:
9686           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9687
9688 2004-04-11  Benjamin Otte  <otte@gnome.org>
9689
9690         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9691           rename categories to basic_*
9692         * gst/schedulers/gstbasicscheduler.c: 
9693         (gst_basic_scheduler_chain_wrapper),
9694         (gst_basic_scheduler_chainhandler_proxy),
9695         (gst_basic_scheduler_gethandler_proxy),
9696         (gst_basic_scheduler_eventhandler_proxy):
9697           debugging category fixes - put common stuff in log category
9698         * gst/schedulers/gstbasicscheduler.c: 
9699         (gst_basic_scheduler_chain_elements):
9700           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9701           active and linking two active chains
9702
9703 2004-04-10  Benjamin Otte  <otte@gnome.org>
9704
9705         * docs/pwg/intro-preface.xml:
9706           fix dead links and remove reference to Wiki
9707
9708 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9709
9710         * gst/schedulers/gstbasicscheduler.c:
9711           make sure we can switch back to the main function if we're still in
9712           the main function (supposed to fix #139617)
9713         * gst/schedulers/gthread-cothreads.h:
9714           don't throw an error when switching to the same cothread
9715
9716 2004-04-09  Benjamin Otte  <otte@gnome.org>
9717
9718         * gst/gstbin.c: (gst_bin_get_type):
9719         * gst/gstclock.c: (gst_clock_get_type):
9720         * gst/gstindex.c: (gst_index_get_type):
9721         * gst/gstobject.c: (gst_object_get_type),
9722         (gst_signal_object_get_type):
9723         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9724         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9725         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9726         * gst/gstqueue.c: (gst_queue_get_type):
9727         * gst/gstregistry.c: (gst_registry_get_type):
9728         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9729         * gst/gstthread.c: (gst_thread_get_type):
9730           don't use memchunks for these objects, use malloc instead
9731
9732 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9733
9734         * docs/gst/.cvsignore:
9735         * docs/gst/Makefile.am:
9736         * docs/gst/gstreamer-sections.txt:
9737         * docs/gst/tmpl/gstaggregator.sgml:
9738         * docs/gst/tmpl/gstbuffer.sgml:
9739         * docs/gst/tmpl/gstclock.sgml:
9740         * docs/gst/tmpl/gstelement.sgml:
9741         * docs/gst/tmpl/gstfakesink.sgml:
9742         * docs/gst/tmpl/gstfakesrc.sgml:
9743         * docs/gst/tmpl/gstfdsink.sgml:
9744         * docs/gst/tmpl/gstfdsrc.sgml:
9745         * docs/gst/tmpl/gstfilesink.sgml:
9746         * docs/gst/tmpl/gstfilesrc.sgml:
9747         * docs/gst/tmpl/gstidentity.sgml:
9748         * docs/gst/tmpl/gstindex.sgml:
9749         * docs/gst/tmpl/gstinfo.sgml:
9750         * docs/gst/tmpl/gstmd5sink.sgml:
9751         * docs/gst/tmpl/gstmultifilesrc.sgml:
9752         * docs/gst/tmpl/gstpad.sgml:
9753         * docs/gst/tmpl/gstpipefilter.sgml:
9754         * docs/gst/tmpl/gstpipeline.sgml:
9755         * docs/gst/tmpl/gstpluginfeature.sgml:
9756         * docs/gst/tmpl/gstqueue.sgml:
9757         * docs/gst/tmpl/gstregistry.sgml:
9758         * docs/gst/tmpl/gstscheduler.sgml:
9759         * docs/gst/tmpl/gstshaper.sgml:
9760         * docs/gst/tmpl/gstspider.sgml:
9761         * docs/gst/tmpl/gstspideridentity.sgml:
9762         * docs/gst/tmpl/gststatistics.sgml:
9763         * docs/gst/tmpl/gstsystemclock.sgml:
9764         * docs/gst/tmpl/gsttee.sgml:
9765         * docs/gst/tmpl/gstthread.sgml:
9766         * docs/gst/tmpl/gsttypefind.sgml:
9767         * docs/gst/tmpl/gstutils.sgml:
9768           further doc build fixes
9769
9770 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9771
9772         * docs/gst/Makefile.am:
9773           make docs exit on scanning problems
9774           fix nonsrcdir build issues
9775         * docs/gst/gstreamer-sections.txt:
9776           adding stuff from -unused
9777         * gst/gstqueue.h:
9778           create GstQueueSize
9779         * gst/schedulers/cothreads_compat.h:
9780           fix cothread warnings
9781
9782 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9783
9784         * docs/gst/gstreamer-sections.txt:
9785           remove defines deprecated by Benjamin
9786
9787 2004-04-07  Benjamin Otte  <otte@gnome.org>
9788
9789         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9790           when the buffer is complete, don't check if other buffers are needed
9791         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9792           check that the offset is >0 so we don't try to read before the
9793           beginning of the file
9794         * gst/gstpad.c: (gst_pad_set_pad_template):
9795           sink the template, so we don't end up with 130k pad templates
9796
9797 2004-04-06  Benjamin Otte  <otte@gnome.org>
9798
9799         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9800           don't ref the element, adding already reffed it. And we didn't unref
9801           it later anyway... (huge memleak when you used many spider elements)
9802         * gst/gstelement.c: (gst_element_base_class_finalize):
9803         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9804         (gst_element_register):
9805         * gst/gsturi.c: (gst_element_make_from_uri):
9806           use gst_object_(un)ref instead of g_object(un)ref
9807
9808 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9809
9810         * gst/gstbuffer.h:
9811           remove macro that wouldn't work anymore because struct member has
9812           been removed.
9813         * gst/schedulers/entryscheduler.c: (schedule_forward):
9814           fix segfault for unconnected pads
9815         
9816 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9817
9818         reviewed by David Schleef <ds@schleef.org>
9819
9820         * gst/gstinfo.h:
9821           *_FORMAT modifiers should require putting a % in front of them for
9822           consistency reasons.
9823
9824 2004-04-05  Colin Walters  <walters@redhat.com>
9825
9826         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9827         space.
9828
9829 2004-04-05  Benjamin Otte  <otte@gnome.org>
9830
9831         * configure.ac:
9832         * gst/Makefile.am:
9833         * gst/gst_private.h:
9834         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9835           add support for detecting if GStreamer runs inside valgrind.
9836           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9837           print a big message in valgrind that GStreamer has detected it's
9838           running inside and might now use different code.
9839         * gst/gstmemchunk.c: (populate), (free_area),
9840         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9841         (gst_mem_chunk_free):
9842           flag memchunks for valgrind, so it can detect leaking of chunks.
9843           This allows detecting leaks of GstBuffer and GstEvent correctly
9844           inside valgrind.
9845
9846 2004-04-05  David Schleef  <ds@schleef.org>
9847
9848         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9849           jensgr@gmx.net (Jens Granseuer)
9850
9851 2004-04-05  David Schleef  <ds@schleef.org>
9852
9853         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9854         (gst_buffer_default_free), (gst_buffer_default_copy),
9855         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9856         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9857         structures in one place.
9858
9859 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9860
9861         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9862           (GST_TIME_FORMAT, GST_TIME_ARGS)
9863
9864 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9865
9866         * testsuite/elements/Makefile.am:
9867           disable test until it stops breaking make distcheck
9868
9869 2004-04-05  Johan Dahlin  <johan@gnome.org>
9870
9871         * po/sv.po: Updated translation
9872
9873 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9874
9875         * gst/gstplugin.c: (gst_plugin_load_file):
9876           fix segfault for when original plugin was loaded statically
9877
9878 2004-04-05  Benjamin Otte  <otte@gnome.org>
9879
9880         * testsuite/debug/category.c: (main):
9881         * testsuite/debug/commandline.c: (main):
9882         * testsuite/debug/output.c: (main):
9883           fix tests to work again with debugging enabled
9884
9885 2004-04-05  Benjamin Otte  <otte@gnome.org>
9886
9887         * gst/schedulers/gstbasicscheduler.c:
9888         (gst_basic_scheduler_pad_link):
9889           fix to work with recent scheduling changes
9890
9891 2004-04-05  Benjamin Otte  <otte@gnome.org>
9892
9893         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9894         prepareChangeLog doesn't work when cvs indents):
9895           don't throw an error when no element can be scheduled, there's too
9896           many weird reasons why it doesn't work. Return STOPPED instead.
9897           decoupled elemts' schedulability doesn't depend on bufpens.
9898
9899 2004-04-04  Benjamin Otte  <otte@gnome.org>
9900
9901         * gst/schedulers/gstbasicscheduler.c:
9902         (gst_basic_scheduler_pad_select):
9903           fix uninitialized variable warnings
9904
9905 2004-04-04  Benjamin Otte  <otte@gnome.org>
9906
9907         * gst/gstpad.c: (gst_pad_collect_valist):
9908           fix uninitialized variable warning
9909         * gst/schedulers/entryscheduler.c: (schedule_forward):
9910           fix shadowed variable
9911
9912 2004-04-04  Benjamin Otte  <otte@gnome.org>
9913
9914         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9915         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9916         (gst_pad_select):
9917         * gst/gstpad.h:
9918         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9919         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9920         * gst/gstscheduler.h:
9921           implement gst_pad_collect as replacement for gst_pad_select.
9922           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9923           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9924           new pad_select, lock and unlock calls.
9925         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9926         * gst/cothreads.h:
9927         * gst/schedulers/cothreads_compat.h:
9928         * gst/schedulers/gthread-cothreads.h:
9929           remove unused cothread_lock and cothread_unlock calls
9930         * gst/schedulers/entryscheduler.c:
9931         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9932         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9933         (gst_entry_scheduler_pad_select):
9934           update to new API
9935         * gst/schedulers/gstbasicscheduler.c:
9936         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9937         (gst_basic_scheduler_pad_select):
9938           remove useless lock and unlock calls, update pad_select to new API
9939           (untested)
9940         * gst/schedulers/gstoptimalscheduler.c:
9941         (gst_opt_scheduler_class_init):
9942           remove useless select, lock and unlock function calls
9943         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9944           use gst_pad_collect instead of gst_pad_select
9945
9946 2004-04-04  Benjamin Otte  <otte@gnome.org>
9947
9948         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9949         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9950         (schedule_next_element), (print_entry):
9951           add can_schedule_pad to handle element states.
9952           add schedule_forward to select the correct entry to schedule next
9953
9954 2004-04-03  Benjamin Otte  <otte@gnome.org>
9955
9956         * gst/schedulers/entryscheduler.c: 
9957           remove unused variable, fix error inside Rb, fix compile warning in
9958           unreachable code
9959
9960 2004-04-03  Benjamin Otte  <otte@gnome.org>
9961
9962         * gst/schedulers/entryscheduler.c:
9963           completely revamp the inner workings, so it's a lot easier to
9964           understand and extend
9965
9966 2004-04-03  Andy Wingo  <wingo@pobox.com>
9967
9968         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9969         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9970         This allows better introspection of pipeline topology.
9971         (add_to_chain): Don't do trickery to put loop elements first;
9972         rather, queue a chain sort by marking the chain as dirty.
9973         (remove_from_chain): Mark the chain dirty.
9974         (sort_chain): New function. Sorts the group list so that terminal
9975         sinks are first. This means elements on the sink side will be
9976         preferentially sscheduled before elements on the src side of the
9977         pipeline.
9978         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9979         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9980         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9981         (group_inc_link): Change argument and variable names to match the
9982         new link structure member names (src and sink).
9983         (group_dec_link): Add some description
9984
9985 2004-04-03  Benjamin Otte  <otte@gnome.org>
9986
9987         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9988         * gst/gstinfo.h:
9989         * testsuite/debug/category.c: (main):
9990         * testsuite/debug/commandline.c: (main):
9991         * testsuite/debug/output.c: (main):
9992         * testsuite/debug/printf_extension.c: (main):
9993           fix to successfully build and test with --disable-gst-debug
9994           configure switch (fixes #138705)
9995
9996 2004-04-03  Benjamin Otte  <otte@gnome.org>
9997
9998         * docs/pwg/building-boiler.xml:
9999           add cvs login line and s/anonymous/anoncvs/
10000
10001 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10002
10003         reviewed by Benjamin Otte  <otte@gnome.org>
10004
10005         * gst/gststructure.c: (gst_structure_free):
10006           memleak fix: free fields array (partial fix for #134839)
10007
10008 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10009
10010         * docs/random/ds/0.9-suggested-changes:
10011           Add a note to change handoff use in fakesrc to be usable in
10012           a more generic way (fakesrc should be renamed to appsrc or so).
10013         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10014           Change signal type to scope, so we can fill the buffer in the
10015           handoff handler (that's the whole use of this signal...).
10016
10017 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10018
10019         * docs/pwg/other-ntoone.xml:
10020           Document muxers and n-to-1 elements.
10021
10022 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10023
10024         * gst/registries/gstxmlregistry.c
10025         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10026         determine if a file is a G_MODULE. The old one discards paths
10027         containing "so" somewhere in the middle. My home directory is
10028         called "soto". Go figure...
10029
10030 2004-03-31  David Schleef  <ds@schleef.org>
10031
10032         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10033         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10034         * gst/gstbuffer.h:
10035
10036 2004-03-31  David Schleef  <ds@schleef.org>
10037
10038         * gst/gstvalue.c: (gst_value_union_int_int_range),
10039         (gst_value_union_int_range_int_range), (gst_value_can_union),
10040         (gst_value_union), (_gst_value_initialize):  Add some union
10041         implementations.  We didn't have any previously.
10042         * testsuite/caps/Makefile.am:
10043         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10044         (gst_audioscale_getcaps), (test_caps), (main): A little test
10045         that is the same as the caps manipulation in audioscale.
10046
10047 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10048
10049         * docs/faq/general.xml:
10050           add entry about "does gst support format X?"
10051
10052 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10053
10054         * gst/gstthread.c:
10055           fix docs
10056         * gst/gstutils.h:
10057           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10058
10059 2004-03-30  Benjamin Otte  <otte@gnome.org>
10060
10061         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10062           set the offset of the buffer to the requested offset
10063         * gst/elements/gsttypefind.c: (stop_typefinding):
10064           revert patch 1.18 (which I unfortunately don't know the reason for).
10065           This is needed to allow downstream elements to seek. Otherwise
10066           typefind might overwrite a previous seek by downstream elements.
10067           This lead to errors with id3tag and typefind on some mp3s.
10068         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10069         (gst_entry_scheduler_iterate):
10070           be more verbose when debugging
10071
10072 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10073
10074         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10075           make sure we don't get NULL strings
10076
10077 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10078
10079         * gst/gstcaps.c:
10080         * gst/gstelement.c:
10081         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10082         * gst/gstindex.c: (gst_index_resolver_get_type),
10083         (gst_index_get_type), (gst_index_factory_get_type):
10084         * gst/gstinfo.c:
10085         * gst/gstpad.c:
10086         * gst/gstplugin.c:
10087         * gst/gsturi.c: (gst_uri_handler_get_type):
10088         * gst/gstvalue.c:
10089           first batch of documentation fixes
10090
10091 2004-03-29  David Schleef  <ds@schleef.org>
10092
10093         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10094         * docs/gst/gstreamer-docs.sgml:  More hacking
10095         * docs/gst/gstreamer-sections.txt:
10096         * docs/gst/tmpl/cothreads_compat.sgml:
10097         * docs/gst/tmpl/gstcaps.sgml:
10098         * docs/gst/tmpl/gstclock.sgml:
10099         * docs/gst/tmpl/gstelement.sgml:
10100         * docs/gst/tmpl/gstevent.sgml:
10101         * docs/gst/tmpl/gstpad.sgml:
10102         * docs/gst/tmpl/gstutils.sgml:
10103         * docs/gst/tmpl/gstxml.sgml:
10104         * docs/gst/tmpl/gthread-cothreads.sgml:
10105         * docs/random/ds/0.9-suggested-changes:
10106         * gst/elements/gstfakesink.h: doc fixes
10107         * gst/elements/gstfakesrc.h: doc fixes
10108         * gst/gstcaps.c: doc fixes
10109         * gst/gstcaps.h: doc fixes
10110         * gst/gstelement.c: doc fixes
10111         * gst/gstelement.h: doc fixes
10112         * gst/gstindex.c: doc fixes
10113         * gst/gstinfo.c: doc fixes
10114         * gst/gstpad.c: doc fixes
10115         * gst/gstpad.h: doc fixes
10116         * gst/gstplugin.c: doc fixes
10117         * gst/gsttypefind.h: doc fixes
10118         * gst/gsturi.c: doc fixes
10119         * gst/gstvalue.c: doc fixes
10120
10121 2004-03-29  Colin Walters  <walters@redhat.com>
10122
10123         * gst/registries/gstxmlregistry.c (get_time)
10124         (plugin_times_older_than_recurse):
10125         Use the result of stat to determine whether a path is a file,
10126         so we don't attempt to opendir() files.
10127
10128 2004-03-29  Benjamin Otte  <otte@gnome.org>
10129
10130         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10131           print caps in debugging output when setting caps failed
10132         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10133         (schedule_next_element), (get_buffer), (run_chainhandler),
10134         (element_may_start), (gst_entry_scheduler_chain_handler),
10135         (gst_entry_scheduler_get_handler),
10136         (gst_entry_scheduler_state_transition),
10137         (gst_entry_scheduler_pad_link):
10138           make this scheduler a testcase for mandatory
10139           discont-before-first-buffer which is needed if we want to allow apps
10140           to release the sound device.
10141           add SCHED_ASSERT macro to print scheduler state before an assertion
10142           triggers.
10143
10144 2004-03-29  Benjamin Otte  <otte@gnome.org>
10145
10146         * COPYING:
10147           replace by LGPL (former COPYING.LIB). The core is completely
10148           licensed LGPL.
10149         * COPYING.LIB:
10150           remove
10151
10152 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10153
10154         * po/af.po:
10155         * po/sv.po:
10156           updated Afrikaans and Swedish
10157
10158 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10159
10160         * po/LINGUAS:
10161         * po/az.po:
10162           adding Azerbaijani (Mətin Əmirov)
10163
10164 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10165
10166         * gst/gstelement.h: 
10167         * gst/gstelement.c (gst_element_set_time_delay): New function for
10168         setting element time taking into account a hardware buffering
10169         delay.
10170         (gst_element_set_time): Now just an invocation of
10171         gst_element_set_time_delay.
10172         * gst/gstclock.h: 
10173         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10174         allowing to set event times in the future.
10175         (gst_clock_get_event_time): Now just an invocation of
10176         gst_clock_get_event_time_delay.
10177
10178 2004-03-28  Benjamin Otte  <otte@gnome.org>
10179
10180         * gst/gstbin.c: (gst_bin_set_element_sched),
10181         (gst_bin_unset_element_sched):
10182           don't add decoupled elements to schedulers - otherwise it's
10183           impossible to control if a link to a decoupled element was already
10184           removed from a scheduler or not.
10185         * gst/schedulers/cothreads_compat.h:
10186         * gst/schedulers/gthread-cothreads.h:
10187           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10188           is no "unused" warning.
10189         * gst/schedulers/Makefile.am:
10190         * gst/schedulers/entryscheduler.c:
10191           add new scheduler, based on ideas from talking to David and Martin.
10192           It's supposed to be small and correct. Currently it's also slow (but
10193           it's not noticable)
10194         * examples/retag/retag.c: (main):
10195         * testsuite/bytestream/test1.c: (main):
10196           fix missing NULLs at end of variadic functions
10197         * testsuite/elements/.cvsignore:
10198           update
10199
10200 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10201
10202         * gst/gstevent.h:
10203         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10204
10205 2004-03-25  David Schleef  <ds@schleef.org>
10206
10207         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10208         * docs/gst/tmpl/gstaggregator.sgml:
10209         * docs/gst/tmpl/gstautoplugfactory.sgml:
10210         * docs/gst/tmpl/gstbin.sgml:
10211         * docs/gst/tmpl/gstbuffer.sgml:
10212         * docs/gst/tmpl/gstbufferstore.sgml:
10213         * docs/gst/tmpl/gstfakesink.sgml:
10214         * docs/gst/tmpl/gstfakesrc.sgml:
10215         * docs/gst/tmpl/gstmd5sink.sgml:
10216         * docs/gst/tmpl/gstreamer-unused.sgml:
10217         * docs/gst/tmpl/gstsearchfuncs.sgml:
10218         * docs/gst/tmpl/gstshaper.sgml:
10219         * docs/gst/tmpl/gstspider.sgml:
10220         * docs/gst/tmpl/gsttee.sgml:
10221         * docs/gst/tmpl/gstutils.sgml:
10222         * docs/gst/tmpl/gstvalue.sgml:
10223         * docs/gst/tmpl/gstxml.sgml:
10224         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10225         and we don't support it.
10226         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10227         (gst_use_threads), (gst_has_threads): same
10228         * gst/gstthreaddummy.c: same
10229         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10230         * gst/autoplug/gstspider.h: same
10231         * gst/elements/gstaggregator.h: Remove bogus function from header
10232         * gst/elements/gstfakesink.h: same
10233         * gst/elements/gstfakesrc.h: same
10234         * gst/elements/gstmd5sink.h: same
10235         * gst/elements/gstshaper.h: same
10236         * gst/elements/gsttee.h: same
10237         * gst/gstbin.c: doc fixes
10238         * gst/gstbin.h: Remove unused definition.
10239         * gst/gstbuffer.c: doc fixes
10240         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10241         * gst/gstfilter.c: doc fixes
10242         * gst/gsttag.c: doc fixes
10243         * gst/gstvalue.c: doc fixes
10244
10245 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10246
10247         * docs/pwg/advanced-types.xml:
10248           Document typefinding.
10249         * docs/pwg/other-oneton.xml:
10250           Document one-to-n elements, demuxers and parsers.
10251
10252 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10253
10254         reviewed by: David Schleef  <ds@schleef.org>
10255
10256         * configure.ac: Check bison version (bug #127838)
10257
10258 2004-03-25  David Schleef  <ds@schleef.org>
10259
10260         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10261         * docs/gst/gstreamer-sections.txt:
10262         * docs/gst/tmpl/gstautoplug.sgml:
10263         * docs/gst/tmpl/gststaticautoplug.sgml:
10264         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10265         * docs/gst/tmpl/gstutils.sgml:
10266         * docs/gst/tmpl/gstxml.sgml:
10267
10268 2004-03-24  David Schleef  <ds@schleef.org>
10269
10270         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10271         manual being such complete crap, that I decided to do major
10272         hacking of it.  This checkin replaces any fine tuning that
10273         may have been done previously, with the benefit of actually
10274         being complete for much of the API that was changed since
10275         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10276         * docs/gst/gstreamer-sections.txt:
10277         * docs/gst/tmpl/GstBin.sgml:
10278         * docs/gst/tmpl/GstBuffer.sgml:
10279         * docs/gst/tmpl/GstCaps.sgml:
10280         * docs/gst/tmpl/GstClock.sgml:
10281         * docs/gst/tmpl/GstCompat.sgml:
10282         * docs/gst/tmpl/GstData.sgml:
10283         * docs/gst/tmpl/GstElement.sgml:
10284         * docs/gst/tmpl/GstEvent.sgml:
10285         * docs/gst/tmpl/GstIndex.sgml:
10286         * docs/gst/tmpl/GstStructure.sgml:
10287         * docs/gst/tmpl/GstTag.sgml:
10288         * docs/gst/tmpl/cothreads.sgml:
10289         * docs/gst/tmpl/cothreads_compat.sgml:
10290         * docs/gst/tmpl/gettext.sgml:
10291         * docs/gst/tmpl/grammar.tab.sgml:
10292         * docs/gst/tmpl/gst-i18n-app.sgml:
10293         * docs/gst/tmpl/gst-i18n-lib.sgml:
10294         * docs/gst/tmpl/gst.sgml:
10295         * docs/gst/tmpl/gst_private.sgml:
10296         * docs/gst/tmpl/gstaggregator.sgml:
10297         * docs/gst/tmpl/gstarch.sgml:
10298         * docs/gst/tmpl/gstatomic.sgml:
10299         * docs/gst/tmpl/gstatomic_impl.sgml:
10300         * docs/gst/tmpl/gstbin.sgml:
10301         * docs/gst/tmpl/gstbuffer.sgml:
10302         * docs/gst/tmpl/gstbufferstore.sgml:
10303         * docs/gst/tmpl/gstcaps.sgml:
10304         * docs/gst/tmpl/gstclock.sgml:
10305         * docs/gst/tmpl/gstcompat.sgml:
10306         * docs/gst/tmpl/gstconfig.sgml:
10307         * docs/gst/tmpl/gstcpu.sgml:
10308         * docs/gst/tmpl/gstdata.sgml:
10309         * docs/gst/tmpl/gstdata_private.sgml:
10310         * docs/gst/tmpl/gstelement.sgml:
10311         * docs/gst/tmpl/gstenumtypes.sgml:
10312         * docs/gst/tmpl/gsterror.sgml:
10313         * docs/gst/tmpl/gstevent.sgml:
10314         * docs/gst/tmpl/gstfakesink.sgml:
10315         * docs/gst/tmpl/gstfakesrc.sgml:
10316         * docs/gst/tmpl/gstfilesink.sgml:
10317         * docs/gst/tmpl/gstfilter.sgml:
10318         * docs/gst/tmpl/gstindex.sgml:
10319         * docs/gst/tmpl/gstinfo.sgml:
10320         * docs/gst/tmpl/gstinterface.sgml:
10321         * docs/gst/tmpl/gstlog.sgml:
10322         * docs/gst/tmpl/gstmacros.sgml:
10323         * docs/gst/tmpl/gstmarshal.sgml:
10324         * docs/gst/tmpl/gstmd5sink.sgml:
10325         * docs/gst/tmpl/gstmultifilesrc.sgml:
10326         * docs/gst/tmpl/gstobject.sgml:
10327         * docs/gst/tmpl/gstpad.sgml:
10328         * docs/gst/tmpl/gstparse.sgml:
10329         * docs/gst/tmpl/gstpipeline.sgml:
10330         * docs/gst/tmpl/gstplugin.sgml:
10331         * docs/gst/tmpl/gstpluginfeature.sgml:
10332         * docs/gst/tmpl/gstqueue.sgml:
10333         * docs/gst/tmpl/gstreamer-unused.sgml:
10334         * docs/gst/tmpl/gstregistry.sgml:
10335         * docs/gst/tmpl/gstregistrypool.sgml:
10336         * docs/gst/tmpl/gstscheduler.sgml:
10337         * docs/gst/tmpl/gstsearchfuncs.sgml:
10338         * docs/gst/tmpl/gstshaper.sgml:
10339         * docs/gst/tmpl/gstspider.sgml:
10340         * docs/gst/tmpl/gstspideridentity.sgml:
10341         * docs/gst/tmpl/gststructure.sgml:
10342         * docs/gst/tmpl/gstsystemclock.sgml:
10343         * docs/gst/tmpl/gsttag.sgml:
10344         * docs/gst/tmpl/gsttaginterface.sgml:
10345         * docs/gst/tmpl/gsttee.sgml:
10346         * docs/gst/tmpl/gstthread.sgml:
10347         * docs/gst/tmpl/gsttrace.sgml:
10348         * docs/gst/tmpl/gsttrashstack.sgml:
10349         * docs/gst/tmpl/gsttypefind.sgml:
10350         * docs/gst/tmpl/gsttypes.sgml:
10351         * docs/gst/tmpl/gsturi.sgml:
10352         * docs/gst/tmpl/gsturitype.sgml:
10353         * docs/gst/tmpl/gstutils.sgml:
10354         * docs/gst/tmpl/gstvalue.sgml:
10355         * docs/gst/tmpl/gstversion.sgml:
10356         * docs/gst/tmpl/gstxml.sgml:
10357         * docs/gst/tmpl/gstxmlregistry.sgml:
10358         * docs/gst/tmpl/gthread-cothreads.sgml:
10359         * docs/gst/tmpl/types.sgml:
10360
10361 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10362
10363         * docs/pwg/other-sink.xml:
10364         * docs/pwg/other-source.xml:
10365           Documentation on how to write source and sink elements. Other
10366           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10367           manager, autoplugger) are all still pending.
10368
10369 2004-03-25  Benjamin Otte  <otte@gnome.org>
10370
10371         * testsuite/elements/Makefile.am:
10372         * testsuite/elements/gst-compprep-check:
10373           add check to make sure gst-compprep works
10374         * testsuite/elements/gst-inspect-check.in:
10375           improve initialization output
10376         * testsuite/Makefile.am:
10377         * testsuite/gst-inspect-check:
10378           remove old file
10379
10380 2004-03-24  David Schleef  <ds@schleef.org>
10381
10382         * testsuite/elements/Makefile.am:
10383         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10384         to the testsuite.
10385
10386 2004-03-24  Benjamin Otte  <otte@gnome.org>
10387
10388         * libs/gst/control/dparam.c: (gst_dparam_attach),
10389         (gst_dparam_detach):
10390         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10391           fix lvalue casts for real
10392
10393 2004-03-24  Benjamin Otte  <otte@gnome.org>
10394
10395         * gst/schedulers/gstbasicscheduler.c:
10396         (gst_basic_scheduler_src_wrapper):
10397         * gst/schedulers/gstoptimalscheduler.c:
10398         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10399         (pad_clear_queued), (gst_opt_scheduler_add_element),
10400         (gst_opt_scheduler_remove_element):
10401           fix GStreamer to not have issues with lvalue casts anymore (fixes
10402           #136841)
10403
10404 2004-03-24  Benjamin Otte  <otte@gnome.org>
10405
10406         * gst/gstelement.c:
10407           add documentation about a gobject quirk where the object hasn't the
10408           correct class pointer set on initialization
10409         * gst/schedulers/gstbasicscheduler.c:
10410         (gst_basic_scheduler_src_wrapper):
10411           make sure to not run into an infinite loop
10412
10413 2004-03-22  Benjamin Otte  <otte@gnome.org>
10414
10415         * gst/gstutils.c: (gst_util_dump_mem):
10416         * gst/gstutils.h:
10417           first argument of gst_util_dump_mem should be const
10418
10419 2004-03-22  Johan Dahlin  <johan@gnome.org>
10420
10421         * gst/gstvalue.h: Clean up a little bit.
10422
10423 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10424
10425         reviewed by Benjamin Otte  <otte@gnome.org>
10426
10427         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10428         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10429         (gst_aggregator_class_init), (gst_aggregator_init):
10430         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10431         (gst_filesrc_dispose), (gst_filesrc_set_location):
10432         * gst/elements/gstidentity.c: (gst_identity_finalize),
10433         (gst_identity_class_init), (gst_identity_chain):
10434         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10435         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10436         (gst_statistics_class_init):
10437         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10438         (gst_tee_get_property):
10439           clean up used memory in this elements correctly on teardown (closes
10440           #137279)
10441
10442 2004-03-20  Colin Walters  <walters@redhat.com>
10443
10444         * gst/registries/gstxmlregistry.c:
10445         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10446         registry saving atomic.
10447
10448 2004-03-20  Colin Walters  <walters@redhat.com>
10449
10450         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10451         Just use
10452         access() instead of actually creating and deleting files.
10453
10454 2004-03-18  David Schleef  <ds@schleef.org>
10455
10456         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10457         (bug #137625)
10458
10459 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10460
10461         * po/sv.po: updated translation (Christian Rose)
10462
10463 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10464
10465         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10466         (gst_filesink_get_query_types), (_do_init),
10467         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10468           return FALSE silently
10469         * po/af.po: updated translation (Petri Jooste)
10470
10471 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10472
10473         * Makefile.am:
10474         * configure.ac:
10475           dist common properly
10476         * po/af.po:
10477         * po/fr.po:
10478         * po/nl.po:
10479         * po/sr.po:
10480         * po/sv.po:
10481           refreshing translations
10482
10483 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10484
10485         * po/LINGUAS:
10486         * po/sv.po:
10487         * po/af.po:
10488           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10489
10490 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10491
10492         * Makefile.am: use common/release.mak
10493
10494 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10495
10496         * docs/faq/gst-uninstalled:
10497           adding gst-monkeysaudio to the list of possible plugin dirs
10498
10499 2004-03-16  David Schleef  <ds@schleef.org>
10500
10501         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10502         (gst_init_check_with_popt_table):  Fix some gettext strings to
10503         make them easier to translate.  Required making the strings
10504         non-const.
10505
10506 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10507
10508         * configure.ac: bump nano to 1
10509
10510 === release 0.8.0 ===
10511
10512 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10513
10514         * configure.ac: release 0.8.0, "Executive Slacks"
10515
10516 2004-03-16  Johan Dahlin  <johan@gnome.org>
10517
10518         * gst/schedulers/gstoptimalscheduler.c
10519         (gst_opt_scheduler_pad_unlink): Remove double ;,
10520         spotted by Scott Wheeler
10521
10522 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10523
10524         * configure.ac: bump libtool version
10525
10526 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10527
10528         * gst/gstcaps.h:
10529         * gst/gststructure.h:
10530           add reserved padding
10531
10532 2004-03-15  Benjamin Otte  <otte@gnome.org>
10533
10534         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10535           set the first parameter for select call correctly.
10536           (fixes #137230)
10537
10538 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10539
10540         * *.c,*.h: don't mix tabs and spaces
10541
10542 2004-03-15  Johan Dahlin  <johan@gnome.org>
10543
10544         * gst/schedulers/gstoptimalscheduler.c
10545         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10546         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10547
10548         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10549         
10550 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10551
10552         * testsuite/Rules:
10553           fix gst-register rules
10554
10555 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10556
10557         * testsuite/Rules:
10558           use versioned gst-register
10559
10560 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10561
10562         * docs/libs/gstreamer-libs-sections.txt:
10563           remove </SUBSECTION>
10564         * gst/gstplugin.c:
10565         * gst/gstregistry.c: (gst_registry_add_plugin):
10566         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10567         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10568           add debugging and fix some comment blocks
10569
10570 2004-03-15  Johan Dahlin  <johan@gnome.org>
10571
10572         * *.h: Revert indent changes.
10573         
10574 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10575
10576         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10577           g_error_free the g_error
10578         * tools/gst-feedback-m.m:
10579           check for other versions of gstreamer
10580         * tools/gst-indent:
10581           use sh, not bash
10582
10583 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10584
10585         * tools/gst-register.c: do not spill paths when registries are not
10586           writable, until we fix the "user running gst-register" case.
10587
10588 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10589
10590         * *.c, *.h: commit of gst-indent run on core
10591
10592 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10593
10594         * tools/gst-indent:
10595         * tools/Makefile.am:
10596           add our indentation style as a script
10597
10598 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10599
10600         * po/sr.po:
10601         * po/LINGUAS:
10602           added Serbian translation
10603
10604 2004-03-13  Benjamin Otte  <otte@gnome.org>
10605
10606         * gst/gstelement.c:
10607           add documentation note about gst_element_found_tags_for_pad not
10608           being usable in getfunctions. (see #137042)
10609
10610 2004-03-12  David Schleef  <ds@schleef.org>
10611
10612         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10613         change API right now!  Readd gst_caps_is_simple() macro.
10614         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10615         uninitialized variable.  I'd bet this caused crashes.
10616         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10617
10618 2004-03-12  Johan Dahlin  <johan@gnome.org>
10619
10620         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10621         * gst/gstcaps.h: Clean up
10622
10623         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10624         _gst_caps_initalize()
10625
10626         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10627         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10628
10629         * gst/gststructure.c (gst_structure_get_type): Ditto
10630
10631         * gst/gststructure.h: Ditto
10632         
10633 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10634
10635         * gst/gstqueue.c: (gst_queue_init):
10636           Reset default max. values in queues. Reason is simply to avoid
10637           braindead use. If you want wider values, use the properties. The
10638           default is supposed to always work. Wider values would make this
10639           beast a memory hog by default (250 full-PAL RGB32 video frames?
10640           That's 440 MB! No thank you).
10641
10642 2004-03-10  David Schleef  <ds@schleef.org>
10643
10644         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10645         were found.  (bug #136793)
10646
10647 2004-03-10  Johan Dahlin  <johan@gnome.org>
10648
10649         * gst/schedulers/gstoptimalscheduler.c
10650         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10651         links to elements within the same group, so we can finally remove
10652         that annoying warning. Refactor the code a little bit
10653         (group_dec_links_for_element): Split out
10654
10655 2004-03-09  David Schleef  <ds@schleef.org>
10656
10657         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10658         (bug #134863)
10659
10660 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10661
10662         * configure.ac: first bug fix due to major/minor bump
10663
10664 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10665
10666         * configure.ac: bump nano to 1
10667
10668 === release 0.7.6 ===
10669
10670 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10671
10672         * NEWS:
10673         * RELEASE:
10674         * configure.ac:
10675           releasing 0.7.6, "Almost"
10676         * po/fr.po:
10677         * po/nl.po:
10678         * tools/Makefile.am:
10679         * tools/gst-feedback-m.m:
10680           unversioned source
10681
10682 2004-03-09  Johan Dahlin  <johan@gnome.org>
10683
10684         Reviewed by: Thomas Vander Stichele
10685
10686         * gst/gstelement.c (gst_element_class_init): register second
10687         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10688         language bindings can (de)marshall correctly.
10689
10690         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10691
10692         * gst/gsterror.c (gst_g_error_get_type): New function
10693
10694         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10695         with VOID:OBJECT,OBJECT,STRING 
10696
10697 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10698
10699         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10700         Free a leaked g_timer on early returns.
10701
10702 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10703
10704         * docs/pwg/advanced-types.xml:
10705           Add cinepak description.
10706
10707 2004-03-07  David Schleef  <ds@schleef.org>
10708
10709         * docs/random/mimetypes:  Added cinepak description
10710
10711 2004-03-07  Andy Wingo  <wingo@pobox.com>
10712
10713         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10714
10715         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10716         there are no links to other groups when a group is destroyed.
10717         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10718         removed from a group, make sure the link count to elements linked
10719         to other pads is appropriately decremented. This really fixes
10720         #135672.
10721
10722         The 1.60->1.61 patch has been reapplied in light of this fix.
10723
10724         * gst/gstelement.c (gst_element_dispose): Really protect against
10725         multiple invocations this time.
10726
10727 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10728
10729         * docs/gst/gstreamer-sections.txt:
10730         * docs/gst/tmpl/gsttag.sgml:
10731           remove some deprecated functions, document some existing ones
10732         * gst/gsttag.c: (gst_tag_get_flag):
10733         * gst/gsttag.h:
10734           add accessor function
10735
10736 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10737
10738         * docs/gst/gstreamer-sections.txt:
10739         * docs/gst/tmpl/gsttag.sgml:
10740         * docs/gst/tmpl/gstxml.sgml:
10741         * gst/gsttag.c: (gst_tag_get_flag):
10742         * gst/gsttag.h:
10743
10744 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10745
10746         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10747         leak
10748
10749 2004-03-05  David Schleef  <ds@schleef.org>
10750
10751         * REQUIREMENTS: Add bison and flex.
10752         * configure.ac: Fix comment about bison.
10753         * docs/random/ds/0.9-suggested-changes: yer ma
10754         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10755
10756 2004-03-05  Benjamin Otte  <otte@gnome.org>
10757
10758         * gst/gstelement.c: (gst_element_error_full):
10759           revert recent recursive state changing commit - messing with other
10760           elements' states is evil and should be done by apps only.
10761
10762 2004-03-05  Benjamin Otte  <otte@gnome.org>
10763
10764         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10765           check for empty intersection instead of NULL caps
10766         (gst_element_get_compatible_pad_filtered):
10767           remove old workaround that is only a bug nowadays
10768
10769 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10770
10771         * gst/gstelement.c: (gst_element_error_full):
10772           make elements try to recursively change state to PAUSED on all
10773           parents after an error to suppress ensuing warnings
10774         * gst/parse/grammar.y:
10775           make it check if it was able to sync the state, and throw an error
10776           if not, so stuff like
10777           oggdemux ! vorbisdec ! osssink gets caught
10778
10779 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10780
10781         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10782           it contains lib64; use AS_AC_EXPAND to handle it properly
10783
10784 2004-03-05  David Schleef  <ds@schleef.org>
10785
10786         * gst/gstcpuid_i386.s:  Remove unused code
10787         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10788         (gst_getbits_newbuf): Remove MMX code
10789         * libs/gst/getbits/getbits.h: Remove MMX code
10790
10791 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10792
10793         * debian/.cvsignore:
10794         * debian/README.Debian:
10795         * debian/changelog:
10796         * debian/control:
10797         * debian/control.in:
10798         * debian/copyright:
10799         * debian/gstreamer-core-libs-dev.files:
10800         * debian/gstreamer-core-libs.files:
10801         * debian/gstreamer-core.files:
10802         * debian/gstreamer-core.postinst:
10803         * debian/gstreamer-core.postrm:
10804         * debian/gstreamer-doc.files:
10805         * debian/gstreamer-doc.links:
10806         * debian/gstreamer-doc.lintian:
10807         * debian/gstreamer-runtime.files:
10808         * debian/gstreamer-runtime.manpages:
10809         * debian/gstreamer-runtime.postinst:
10810         * debian/gstreamer-runtime.postrm:
10811         * debian/gstreamer-tools.files:
10812         * debian/gstreamer-tools.manpages:
10813         * debian/libgstreamer-dev.files:
10814         * debian/libgstreamer0.4.1.files:
10815         * debian/libgstreamerVERSION.files:
10816         * debian/rules:
10817         Debian package info not maintained here.
10818
10819 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10820
10821         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10822         * gst/gstbin.c: (gst_bin_class_init):
10823         * gst/gstelement.c: (gst_element_class_init):
10824         * gst/gstindex.c: (gst_index_class_init):
10825         * gst/gstobject.c: (gst_object_class_init),
10826         (gst_signal_object_class_init):
10827         * gst/gstpad.c: (gst_pad_template_class_init):
10828         * gst/gstregistry.c: (gst_registry_class_init):
10829         * gst/gsturi.c: (gst_uri_handler_base_init):
10830         * gst/gstxml.c: (gst_xml_class_init):
10831         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10832         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10833           make all signal names use dashes instead of underscore
10834
10835 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10836
10837         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10838
10839 2004-03-03  Benjamin Otte  <otte@gnome.org>
10840
10841         * gst/schedulers/gstoptimalscheduler.c:
10842           revert last commit by Andy Wingo. It causes segfaults on unreffing
10843           in Rhythmbox. (see bug #135672)
10844
10845 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10846
10847         * po/fr.po: fix typo
10848
10849 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10850
10851         * tools/gst-inspect.c: (main): 
10852         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10853
10854 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10855
10856         * configure.ac:
10857           get GLIB_ONLY and POPT flags for the nonversioned binaries
10858         * tools/Makefile.am:
10859           use them
10860
10861 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10862
10863         * gst/gst.c: (init_post):
10864           change so that GST_REGISTRY now is where the global registry gets
10865           saved, since that is where plugins now get attached to first, and
10866           spilled over to the user registry.  Note that in the case of using
10867           GST_REGISTRY env var, we don't want to affect any real registries
10868           beyond the one given by this var, and thus we don't set a user
10869           registry to spill to.  So make sure GST_REGISTRY is writable.
10870
10871 2004-03-01  David Schleef  <ds@schleef.org>
10872
10873         * AUTHORS:  Added some names.  Add yourself if you're missing.
10874
10875 2004-03-01  David Schleef  <ds@schleef.org>
10876
10877         * MAINTAINERS: Add
10878
10879 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10880
10881         * configure.ac:
10882           remove whitespace
10883         * docs/gst/tmpl/gstbuffer.sgml:
10884         * docs/gst/tmpl/gstdata.sgml:
10885         * docs/gst/tmpl/gstreamer-unused.sgml:
10886         * docs/gst/tmpl/gstxml.sgml:
10887           doc update
10888         * docs/manuals.mak:
10889           add a FIXME
10890         * docs/pwg/intro-preface.xml:
10891         * docs/pwg/pwg.xml:
10892           remove GNOME
10893         * gst/gst.c: (init_post):
10894           try GST_PLUGIN_PATH paths for the _global_registry first
10895         * gst/gstelement.h:
10896           add the error message as well, otherwise (null) debug info doesn't
10897           make much sense
10898         * tools/gst-register.c: (main):
10899           spill paths to next registry if this registry is not writable
10900         * po/fr.po:
10901         * po/nl.po:
10902           translation updates
10903
10904 2004-03-01  Johan Dahlin  <johan@gnome.org>
10905
10906         * gst/gstbuffer.c (_gst_buffer_initialize): 
10907         * gst/gstdata.c (gst_data_get_type): 
10908         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10909         instead of ref, since some applications that uses GBoxed
10910         routines depends on a function that actually returns a copy.
10911
10912 2004-02-27  Benjamin Otte  <otte@gnome.org>
10913
10914         * gst/gstbuffer.h:
10915           remove gst_buffer_free, use gst_data_unref
10916         * gst/gstdata.c: (gst_data_get_type):
10917           use refcounting in GstData GBoxed registration
10918         * gst/gstdata.h:
10919           remove gst_data_free, use gst_data_unref
10920
10921 2004-02-27  Johan Dahlin  <johan@gnome.org>
10922
10923         * gst/gstdata.c (gst_data_get_type): New function, register
10924         GstData as a GBoxed type.
10925
10926         * gst/gstdata.h (GST_TYPE_DATA): New macro
10927
10928 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10929
10930         * Makefile.am:
10931         * gstreamer.spec.in:
10932           put back RELEASE
10933         * gst/Makefile.am:
10934           clean up non-disting of built files
10935         * testsuite/debug/commandline.c:
10936           test fix for option rename
10937
10938 2004-02-26  David Schleef  <ds@schleef.org>
10939
10940         * configure.ac:  We don't really need glib-2.3.  Also remove
10941         some unneeded checks for library functions.
10942         * gst/Makefile.am:  Instead, we need to not dist files created
10943         by glib-genmarshal.
10944
10945 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10946
10947         * configure.ac:
10948           bump glib required version to 2.3.0 for g_value_takes_boxed
10949
10950  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10951
10952         * common/m4/gst-docs.m4
10953         change flavour text from enable to disable as enable is our default
10954         closes bug Bug 135304
10955
10956 === release 0.7.5 ===
10957  
10958  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10959  
10960         * NEWS:
10961           instate NEWS file
10962         * Makefile.am:
10963         * gstreamer.spec.in:
10964         * RELEASE:
10965           put back release
10966         * configure.ac:
10967         * docs/random/release:
10968           more updates
10969
10970 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10971
10972         * gst/gsttag.c: (_gst_tag_initialize):
10973         * po/fr.po:
10974         * po/nl.po:
10975           remove hyphen from codec tags
10976
10977 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10978
10979         * gst/parse/Makefile.am:
10980           fix dependency so that a make from a clean build works the first
10981           time
10982
10983 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10984
10985         * docs/random/release:
10986           update release strategy
10987         * po/fr.po:
10988           auto-update po file
10989         * po/nl.po:
10990           update dutch translation
10991
10992 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10993
10994         * docs/manual/debugging.xml:
10995         fix manual for new debugging system
10996
10997 2004-02-25  Andy Wingo  <wingo@pobox.com>
10998
10999         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11000         gst_pad_link_prepare. Please email the list with specific reasons
11001         for reverting.
11002
11003 2004-02-24  Andy Wingo  <wingo@pobox.com>
11004
11005         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11006         invocations.
11007
11008         * gst/schedulers/gstoptimalscheduler.c:
11009         I added a mess of prototypes at the top of the file by way of
11010         documentation. Some of the operations on chains and groups were
11011         re-organized.
11012
11013         (create_group): Added a type argument so if the group is enabled,
11014         the setup_group_scheduler knows what to do.
11015         (group_elements): Added a type argument here, too, to be passed on
11016         to create_group.
11017         (group_element_set_enabled): If an unlinked PLAYING element is
11018         added to a bin, we have to create a new group to hold the element,
11019         and this function will be called before the group is added to the
11020         chain. Thus we have a valid case for group->chain==NULL. Instead
11021         of calling chain_group_set_enabled, just set the flag on the group
11022         (the chain's status will be set when the group is added to it).
11023         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11024         Setup the group scheduler when the group is enabled, not
11025         specifically when an element goes PAUSED->PLAYING. This means
11026         PLAYING elements can be added, linked, and scheduled into a
11027         PLAYING pipeline, as was intended.
11028         (add_to_group): Don't ref the group twice. I don't know when this
11029         double-ref got in here. Removing it has the potential to cause
11030         segfaults if other parts of the scheduler are buggy. If you find
11031         that the scheduler is segfaulting for you, put in an extra ref
11032         here and see if that hacks over the underlying issue. Of course,
11033         then find out what code is unreffing a group it doesn't own...
11034         (create_group): Make the extra refcount floating, and remove it
11035         after adding the element. This means that...
11036         (unref_group): Destroy when the refcount reaches 0, not 1, like
11037         every other refcounted object in the known universe.
11038         (remove_from_group): When a group becomes empty, set it to be not
11039         active, and remove it from its chain. Don't unref it again,
11040         there's no floating reference any more.
11041         (destroy_group): We have to remove the group from the chain in
11042         remove_from_group (rather than here) to break refcounting cycles
11043         (the chain always has a ref on the group). So assert that
11044         group->chain==NULL.
11045         (ref_group_by_count): Removed, it was commented out anyway.
11046         (merge_chains): Use the remove_from_chain and add_to_chain
11047         primitives to do the reparenting, instead of rolling our own
11048         implementation.
11049         (add_to_chain): The first non-disabled group in the chain's group
11050         list will be the entry point for the chain. Because buffers can
11051         accumulate in loop elements' peer bufpens, we preferentially
11052         schedule loop groups before get groups to avoid unnecessary
11053         execution of get-based groups when the bufpens are already full.
11054         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11055         (get_group_schedule_function): Ditto.
11056         (loop_group_schedule_function): Ditto.
11057         (gst_opt_scheduler_loop_wrapper): Ditto.
11058         (gst_opt_scheduler_iterate): Ditto.
11059
11060         I understand the opt scheduler now, yippee!
11061
11062         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11063         (gst_pad_get_name, gst_pad_set_chain_function) 
11064         (gst_pad_set_get_function, gst_pad_set_event_function) 
11065         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11066         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11067         (gst_pad_set_query_function, gst_pad_get_query_types) 
11068         (gst_pad_get_query_types_default) 
11069         (gst_pad_set_internal_link_function) 
11070         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11071         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11072         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11073         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11074         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11075         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11076         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11077         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11078         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11079         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11080         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11081         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11082         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11083         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11084         argument checks, and some doc fixes.
11085
11086         (gst_pad_custom_new_from_template): Um, does anyone
11087         use these functions? Actually make a custom pad instead of a
11088         normal one.
11089         (gst_pad_try_set_caps): Transpose some checks.
11090         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11091         the pad is in negotiation.
11092         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11093         
11094         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11095
11096         * gst/gstelement.h: 
11097         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11098         on the list.
11099
11100 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11101
11102         * gst/gstbin.c: (gst_bin_add):
11103           add error for not being able to add elements
11104
11105 2004-02-22  Julien MOUTTE <julien@moutte.net>
11106
11107         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11108         audio-codec and video-codec.
11109
11110 2004-02-22  Benjamin Otte  <otte@gnome.org>
11111
11112         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11113
11114         * autogen.sh:
11115           replace test -e with test -x for mkinstalldirs to be more portable.
11116           (fixes #134816)
11117
11118 2004-02-22  Benjamin Otte  <otte@gnome.org>
11119
11120         * gst/gstpad.c:
11121           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11122           too noisy
11123         * gst/gsttag.c: (_gst_tag_initialize):
11124         * gst/gsttag.h:
11125           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11126         * libs/gst/control/dparam.c: (gst_dparam_attach):
11127         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11128           check that types for attached dparams match
11129
11130 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11131
11132         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11133         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11134         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11135           fix errors
11136
11137 2004-02-20  Andy Wingo  <wingo@pobox.com>
11138
11139         * gst/gstbin.c:
11140         * gst/gstbuffer.c:
11141         * gst/gstplugin.c:
11142         * gst/registries/gstxmlregistry.c: 
11143         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11144
11145         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11146         (gst_element_add_pad): DEBUG->INFO, some fixes.
11147         (gst_element_get_compatible_pad_template): Just see if the
11148         templates' caps intersect, not if one is a strict subset of the
11149         other. This conforms more to what gst_pad_link_intersect() does.
11150         (gst_element_class_add_pad_template): Don't memcpy the pad
11151         template, just ref it.
11152         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11153
11154         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11155         (gst_pad_link_filtered): Debug changes.
11156         (gst_pad_link_prepare): New function, consolidated from
11157         can_link_filtered and link_filtered.
11158
11159         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11160         look more like that of the functions in gstelement.c
11161
11162         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11163         object, and return the empty string if object is NULL.
11164
11165         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11166         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11167         LOG, not DEBUG. We still get flex info on debug.
11168
11169         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11170         debug string more verbose.
11171         (plugin_times_older_than): DEBUG->LOG.
11172
11173 2004-02-20  Julien MOUTTE <julien@moutte.net>
11174
11175         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11176         will emit found_tag for each stream they demux with the codec.
11177
11178 2004-02-20  Benjamin Otte  <otte@gnome.org>
11179
11180         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11181           copy navigation event correctly. Check freeing tag lists. 
11182         * gst/gstthread.c: (gst_thread_change_state):
11183           don't abort() on state changing mess - it might happen because of
11184           bugs.
11185         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11186           use boxed functions
11187         * gst/gstvalue.h:
11188           fix GST_VALUE_HOLDS_CAPS
11189
11190 2004-02-19  David Schleef  <ds@schleef.org>
11191
11192         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11193         and use it for GST_FUNCTION.  (bug #134750)
11194
11195 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11196
11197         * po/fr.po:
11198         * po/nl.po:
11199           updating translations
11200
11201 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11202
11203         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11204
11205 2004-02-18  kost@imn.htwk-leipzig.de
11206
11207         reviewed by: David Schleef  <ds@schleef.org>
11208
11209         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11210         for libgstcontrol.
11211
11212 2004-02-18  David Schleef  <ds@schleef.org>
11213
11214         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11215         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11216         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11217         * tools/gst-inspect.c: (print_element_info): Support dumping of
11218         double dparam information.
11219
11220 2004-02-17  David Schleef  <ds@schleef.org>
11221
11222         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11223         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11224         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11225         Use GST_TYPE_CAPS in signal prototype.
11226         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11227         Convert GST_TYPE_CAPS to boxed.
11228         * gst/gstelement.c: (gst_element_class_init):
11229         Use GST_TYPE_TAG_LIST in signal prototype.
11230         * gst/gstindex.c: (gst_index_class_init):
11231         * gst/gstindex.h:
11232         Add GST_TYPE_INDEX_ENTRY type.
11233         * gst/gstmarshal.list:
11234         Add necessary marshal types.
11235         * gst/gstpad.c: (gst_real_pad_class_init),
11236         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11237         (gst_pad_recover_caps_error):
11238         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11239         * gst/gststructure.c: (_gst_structure_initialize),
11240         (gst_structure_copy), (_gst_structure_copy_conditional):
11241         * gst/gststructure.h:
11242         Convert GST_TYPE_STRUCTURE to boxed.
11243         * gst/gsttag.c: (gst_tag_list_get_type):
11244         * gst/gsttag.h:
11245         Add GST_TYPE_TAG_LIST type.
11246
11247 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11248
11249         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11250         to what we agreed with david.
11251         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11252
11253 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11254
11255         * po/nl.po: update translation
11256
11257 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11258
11259         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11260           throw an error if spider is trying to play a mime type there is
11261           no decoder for
11262         * po/POTFILES.in:
11263           add gst/autoplug/gstspider.c for translation
11264
11265 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11266
11267         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11268         silently when the pad is negotiating.
11269
11270 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11271
11272         * docs/faq/Makefile.am:
11273           add script to run gstreamer uninstalled 
11274         * docs/faq/faq.xml:
11275         * docs/faq/developing.xml:
11276         * docs/faq/gst-uninstalled:
11277           extract script to run gstreamer uninstalled
11278         * docs/manuals.mak:
11279           add EXTRA_SOURCES variable for Makefile.am's to set to
11280           use additional SOURCE files for the doc build
11281
11282 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11283
11284         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11285
11286 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11287
11288         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11289         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11290         an error was thrown by osssink. Basically a state change failure for
11291         an element in a different scheduling group was considered as
11292         successful, which means that caps nego was going on and weird stuff
11293         happened. Like I wrote in the comment there, if someone wants to
11294         revert that please drop me a mail explaining why because I really see
11295         no point in keeping that broken behaviour there.
11296         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11297         be empty, we then return NULL which will trigger a nice error when 
11298         pulling from the pad.
11299
11300 2004-02-13  David Schleef  <ds@schleef.org>
11301
11302         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11303         (gst_dparam_get_property), (gst_dparam_set_property),
11304         (gst_dparam_do_update_default):
11305         * libs/gst/control/dparam.h:
11306         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11307         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11308         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11309         (gst_dpsmooth_do_update_double):
11310         * libs/gst/control/dparam_smooth.h:
11311         * libs/gst/control/dparammanager.c:
11312         (gst_dpman_inline_direct_update):
11313         Add support for double dparams.
11314
11315 2004-02-13  David Schleef  <ds@schleef.org>
11316
11317         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11318         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11319
11320 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11321
11322         reviewed by: David Schleef  <ds@schleef.org>
11323
11324         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11325         (gst_fdsrc_init), (gst_fdsrc_set_property),
11326         (gst_fdsrc_get_property), (gst_fdsrc_get):
11327         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11328         and sends an EOS event if file descriptor reading times out.
11329
11330 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11331
11332         * configure.ac:
11333           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11334
11335 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11336
11337         * configure.ac: pass required libxml version as argument
11338         (bug reported by Christophe Fergeau)
11339
11340 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11341   
11342         * docs/gst/gstreamer-docs.sgml:
11343         * docs/gst/tmpl/gstxml.sgml:
11344         * docs/libs/gstreamer-libs-docs.sgml:
11345           version API docs
11346
11347 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11348
11349         * gst/gstinfo.c:
11350         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11351         (gst_registry_pool_feature_filter):
11352         * gst/gstthread.c: (gst_thread_class_init):
11353         * gst/gstvalue.c:
11354           add includes exposed by building without libxml
11355         * gst/indexers/Makefile.am:
11356           do not build fileindex when LOADSAVE disabled; we should have
11357           a better libxml check later since fileindex depends on xml, not
11358           LOADSAVE or REGISTRY
11359         * libs/gst/control/Makefile.am:
11360           link with m
11361         * tools/Makefile.am:
11362           fix wrong source code for gst-xmlinspect
11363
11364 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11365
11366         * configure.ac:
11367           fix gcov help output
11368           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11369         * docs/random/release:
11370           some updated releasing notes
11371         * gstreamer.spec.in:
11372           more updates
11373
11374 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11375
11376         * docs/faq/faq.xml:
11377         * docs/manual/manual.xml:
11378         * docs/pwg/pwg.xml:
11379         * docs/pwg/titlepage.xml:
11380           put version in documentation
11381
11382 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11383
11384         * tools/Makefile.am: fix man page installation
11385
11386 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11387
11388         * configure.ac:
11389           don't check for libxml when load/save and registry disabled (#105844)
11390         * gstreamer.spec.in:
11391           sync with fedora candidate spec
11392
11393 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11394
11395         * po/fr.po:
11396         * po/nl.po:
11397           replace multidisksrc with multifilesrc
11398
11399 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11400
11401         * po/POTFILES.in:
11402           update to multidisksrc => multifilesrc file renaming (#134145)
11403
11404 2004-02-11  David Schleef  <ds@schleef.org>
11405
11406         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11407         * docs/gst/tmpl/gstpadtemplate.sgml: same
11408         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11409         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11410         fixing dance.
11411         * gst/gstutils.c: Remove disabled code that uses GstProps.
11412         * gst/registries/gstxmlregistry.h: same
11413         * docs/random/ds/0.9-suggested-changes: random notes
11414
11415 2004-02-11  kost@imn.htwk-leipzig.de
11416
11417         reviewed by: David Schleef  <ds@schleef.org>
11418
11419         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11420         initialisation of clock (bug #134128)
11421
11422 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11423
11424         * configure.ac:
11425         * gst/elements/Makefile.am:
11426         * gst/elements/gstelements.c:
11427         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11428         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11429         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11430         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11431         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11432         * gst/elements/gstmultifilesrc.h:
11433           rename multidisksrc to multifilesrc (part of #122200)
11434
11435 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11436
11437         * docs/manuals.mak:
11438           fix automake complaints
11439         * gst-element-check.m4:
11440           fix unquotedness
11441
11442 2004-02-11  David Schleef  <ds@schleef.org>
11443
11444         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11445         * gst/gstatomic_impl.h: Disable sparc implementation.
11446
11447 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11448
11449         * gst-element-check.m4:
11450           fix underquoted macros as reported by automake 1.8.x (#133800)
11451         * configure.ac:
11452           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11453           by autopoint (fixes #132996)
11454
11455 2004-02-10  Andy Wingo  <wingo@pobox.com>
11456
11457         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11458         way to do inheritance.
11459         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11460         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11461         Routine docs.
11462         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11463         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11464         doc.
11465         (gst_pad_unlink, gst_pad_is_linked): Docs.
11466         (gst_pad_renegotiate): A brief description of capsnego.
11467         (gst_pad_try_set_caps): Document.
11468         (gst_pad_try_set_caps_nonfixed): Document.
11469         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11470         (gst_pad_set_parent): Deprecated (although not out of the API).
11471         (gst_pad_get_parent): Deprecated, although many plugins use this.
11472         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11473         are private and will go away in 0.9.
11474         (gst_pad_perform_negotiate): Doc.
11475         (gst_pad_link_unnegotiate): I think this is meant to be static.
11476         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11477         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11478         (gst_pad_get_peer): Doc updates.
11479         (gst_pad_caps_change_notify): Doc.
11480         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11481         (gst_ghost_pad_new): Doc fixes.
11482
11483         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11484         (gst_object_check_uniqueness): 
11485
11486         * gst/gstelement.c (gst_element_add_pad) 
11487         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11488         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11489         (gst_element_get_static_pad, gst_element_get_pad_list) 
11490         (gst_element_class_get_pad_template_list) 
11491         (gst_element_class_get_pad_template): Work on the docs.
11492         (gst_element_get_pad_template_list): Uses the class method.
11493         (gst_element_get_compatible_pad_template): Docs, and consolidate
11494         some test conditions. 
11495         (gst_element_get_pad_from_template): New static function.
11496         (gst_element_request_compatible_pad): Docs, and work with
11497         non-request compatible templates. 
11498         (gst_element_get_compatible_pad_filtered): Docs and remove
11499         redundant checks.
11500         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11501         (gst_element_link_filtered, gst_element_link_many) 
11502         (gst_element_link, gst_element_link_pads) 
11503         (gst_element_unlink_many): Docs.
11504
11505 2004-02-05  Andy Wingo  <wingo@pobox.com>
11506
11507         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11508         s/pointer/boxed/.
11509
11510         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11511
11512         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11513         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11514         with the type=GST_TYPE_CAPS. This allows language bindings to know
11515         what kind of data they're dealing with.
11516
11517         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11518         to NULL when g_value_init is called. GstCaps, which rolls its own
11519         type implementation, now does the same instead of allocating empty
11520         caps.
11521         (_gst_caps_initialize, _gst_caps_collect_value,
11522         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11523         table methods. This allows G_VALUE_COLLECT to work.
11524
11525 2004-02-05  Andy Wingo  <wingo@pobox.com>
11526
11527         * configure.ac:
11528         * testsuite/Makefile.am (SUBDIRS): 
11529         * testsuite/ghostpads/Makefile.am: 
11530         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11531
11532         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11533         These two routines are the only ones that set
11534         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11535         pad template. They should be made static, depending on ABI needs.
11536         (gst_real_pad_dispose): Handle the case of ghost pads without a
11537         parent. Assert after dealing with ghost pads that the ghost pad
11538         list is empty.
11539         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11540         set after creation.
11541         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11542         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11543         functions. set_property will call add_ghost_pad/remove_ghost_pad
11544         as appropriate.
11545         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11546
11547         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11548         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11549         (gst_element_remove_pad): Handle ghost pads as well.
11550         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11551         depending on API-stability needs).
11552
11553 2004-02-05  Andy Wingo  <wingo@pobox.com>
11554
11555         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11556         of course they're const
11557
11558 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11559
11560         * tools/Makefile.am:
11561         * tools/gst-feedback:
11562         * tools/gst-feedback-0.7:
11563           make gst-feedback versioned too for consistency
11564
11565 2004-02-11  David Schleef  <ds@schleef.org>
11566
11567         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11568         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11569
11570 2004-02-10  Julien MOUTTE <julien@moutte.net>
11571
11572         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11573         the structure does not contain a valid tag list. Adding a safety check
11574         to remove a noisy warning in that case.
11575
11576 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11577
11578         * gst/gst.c: fix name to be in line with others
11579
11580 2004-02-09  Julien MOUTTE <julien@moutte.net>
11581
11582         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11583         not shout that loud when len is 0. Just return 0 silently.
11584
11585 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11586
11587         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11588         because data_unref has one and I prefer the debug to be symetric.
11589         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11590         were refed when added to the queue and unrefed only once when the queue
11591         was flushed. Now the flush handler unref the buffers two times : first
11592         unref for the ref added when pushing in the queue's tail and second
11593         unref to destroy the flushed buffer.
11594
11595 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11596
11597         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11598
11599 2004-02-06  David Schleef  <ds@schleef.org>
11600
11601         * docs/random/ds/0.9-suggested-changes: Random ramblings
11602         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11603         to int before printing.
11604         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11605         * gst/parse/parse.l: same.  See bug #129600
11606
11607 2004-02-06  David Schleef  <ds@schleef.org>
11608
11609         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11610         (gst_index_add_entry), (gst_index_add_associationv),
11611         (gst_index_add_association): Add gst_index_add_associationv()
11612         and clean up gst_index_add_association(). #127133
11613
11614 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11615
11616         * autogen.sh: check out common with right tag if CVS/Tag exists
11617
11618 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11619
11620         * testsuite/ghostpads/ghostpads.c: (main):
11621           fix testsuite from segfaulting
11622
11623 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11624
11625         * Makefile.am: add release target
11626         * configure.ac: bump nano to 1
11627         * docs/random/release:
11628
11629 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11630
11631         * gst/gstcaps.h:
11632         * gst/gstelement.c: (gst_element_base_class_init),
11633         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11634         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11635         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11636         (gst_real_pad_dispose):
11637         * gst/gststructure.c: (gst_structure_free),
11638         (gst_structure_from_string):
11639           put reverted patch back in
11640         * gst/gstelement.c: (gst_element_remove_pad):
11641           free explicit caps if they're set
11642         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11643           copy the structure when fixating
11644
11645 2004-02-05  David Schleef  <ds@schleef.org>
11646
11647         * gst/gstmarshal.list:
11648         * gst/gstpad.c: (gst_real_pad_class_init),
11649         (_gst_real_pad_fixate_accumulator):
11650         Revert POINTER->BOXED change in signal marshaller.
11651
11652 === release 0.7.4 ===
11653                                                                                 
11654 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11655                                                                                 
11656         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11657         * configure.ac: changed for release
11658
11659 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11660
11661         * gstreamer.spec.in:
11662           bump required version of gtk-doc
11663
11664 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11665
11666         * gst/gstcaps.h:
11667         * gst/gstelement.c: (gst_element_base_class_init),
11668         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11669         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11670         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11671         (gst_real_pad_dispose):
11672         * gst/gststructure.c: (gst_structure_free),
11673         (gst_structure_from_string):
11674           revert patch that breaks applications, reapply after release
11675           to get this fixed properly
11676
11677 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11678
11679         * gst/gsttag.c: (_gst_tag_initialize):
11680         * gst/gsttag.h:
11681           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11682
11683 2004-02-04  David Schleef  <ds@schleef.org>
11684
11685         Fix some memleaks:
11686         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11687         (gst_spider_plug_from_srcpad):
11688         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11689
11690 2004-02-04  David Schleef  <ds@schleef.org>
11691
11692         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11693         a GstRealPad before accessing its structure members.
11694
11695 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11696
11697         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11698         (gst_clock_get_speed):
11699         * gst/gstclock.h:
11700           reset padding, remove unused fields
11701
11702 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11703
11704         * gst/autoplug/gstspideridentity.c:
11705         (gst_spider_identity_sink_loop_type_finding):
11706           use get_allowed_caps, not get_caps (fixes #132519)
11707         * gst/elements/gsttypefind.c: (stop_typefinding):
11708           use correct order when sending buffers and seeking
11709
11710 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11711
11712         * configure.ac:
11713         * gst/gstelement.h:
11714         * gst/gstpad.h:
11715         * gst/gstqueue.h:
11716           upgrade libtool CURRENT, reset padding
11717
11718 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11719
11720         * configure.ac:
11721           bump to prerelease
11722           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11723
11724 2004-02-04  David Schleef  <ds@schleef.org>
11725
11726         * docs/random/ds/0.9-suggested-changes: random notes
11727         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11728         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11729         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11730         expansion.
11731         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11732         (gst_filesink_get_query_types): same
11733         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11734         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11735         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11736         to use new GST_PTR_FORMAT.
11737         * gst/gstelement.h: deprecate function factory macros
11738         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11739         These are our last variadic macros that can't be replaced with
11740         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11741         attempting to deprecate gst_element_clock_wait().
11742         * gst/gstevent.h: same
11743         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11744         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11745         * gst/gstpad.h: deprecate function factory macros similar to above.
11746
11747 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11748
11749         * configure.ac:
11750         * tools/Makefile.am:
11751         * tools/gst-run.c: (popt_callback), (hash_print_key),
11752         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11753         (get_candidates), (main):
11754           add new source file to generate non-versioned wrapper binaries
11755           for our tools.
11756
11757 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11758
11759         * gst/gstevent.c: (_gst_event_free):
11760           actually break; inside the switch statement
11761         * gst/parse/grammar.y:
11762           fix memleak where GValues weren't unset
11763
11764 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11765
11766         * gst/gststructure.c: (gst_structure_from_string):
11767           fix huge memleak
11768         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11769         (new_entry), (gst_type_find_element_chain):
11770         * gst/gstelement.c: (gst_element_base_class_init),
11771         (gst_element_class_set_details):
11772         * gst/gstpad.c: (gst_pad_can_link_filtered):
11773           fix smaller memleaks
11774         * gst/gstpad.c: (gst_real_pad_dispose):
11775           check that explicit caps are gone
11776         * gst/gststructure.c: (gst_structure_free):
11777           actually free the structure
11778         * gst/gstelement.c: (gst_element_clear_pad_caps):
11779           unset explicit caps
11780
11781 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11782
11783         * tools/Makefile.am:
11784           use AM_CFLAGS since all the CFLAGS are the same
11785           use AM_LDFAGS
11786
11787 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11788
11789         * docs/manual/gnome.xml:
11790           expand example a little
11791         * gst/gst.c: (gst_init_with_popt_table),
11792         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11793           make sure popt option displays are done with right textdomain
11794           use GstPoptOption type
11795         * gst/gst.h:
11796           create GstPoptOption type
11797
11798 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11799
11800         * gst/gsterror.c: (_gst_stream_errors_init):
11801         * gst/gsterror.h:
11802           adding error type for no codec
11803         * po/POTFILES.in:
11804           add gst-inspect
11805         * po/nl.po:
11806           update dutch translation
11807         * tools/gst-inspect.c: (print_element_list), (main):
11808           do proper internationalization
11809         * tools/gst-launch.c: (idle_func):
11810           remove commented out function call
11811
11812 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11813
11814         * docs/README:
11815           add some error fixing notes
11816         * docs/gst/gstreamer-sections.txt:
11817           remove double entries
11818         * docs/gst/tmpl/gstbin.sgml:
11819         * docs/gst/tmpl/gstclock.sgml:
11820           remove override
11821         * docs/gst/tmpl/gstelement.sgml:
11822         * docs/gst/tmpl/gstindex.sgml:
11823         * docs/gst/tmpl/gstobject.sgml:
11824         * docs/gst/tmpl/gstpadtemplate.sgml:
11825         * docs/gst/tmpl/gstreamer-unused.sgml:
11826         * docs/gst/tmpl/gsttag.sgml:
11827         * docs/gst/tmpl/gstthread.sgml:
11828         * docs/gst/tmpl/gstxml.sgml:
11829         * gst/gsttag.h:
11830           sync header prototypes with c decls
11831         * gst/gsttaginterface.c:
11832           fix doc headers
11833
11834 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11835
11836         * gst/parse/Makefile.am:
11837         * gst/gstobject.h:
11838           get rid of gstmarshal.h dependency. It's not needed.
11839         * gst/gst.h:
11840         * gst/elements/gstfakesink.c:
11841         * gst/elements/gstfakesrc.c:
11842         * gst/elements/gstidentity.c:
11843         * gst/gstbin.c:
11844         * gst/gstelement.c:
11845         * gst/gstindex.c:
11846         * gst/gstobject.c:
11847         * gst/gstpad.c:
11848         * gst/gstthread.c:
11849         * gst/gstxml.c:
11850         * libs/gst/control/dparam.c:
11851         * libs/gst/control/dparammanager.c:
11852           include gstmarshal.h.
11853         Fixes #132045
11854
11855 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11856
11857         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11858         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11859         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11860         * gst/elements/gstfilesrc.h:
11861           don't ref the filesrc when creating mmaped buffers. Don't keep a
11862           list of not-yet-destroyed buffers.
11863         * gst/gstbuffer.h:
11864           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11865
11866 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11867
11868         * gst/gst.c: (init_pre):
11869           remove textdomain
11870
11871 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11872
11873         * docs/pwg/advanced-events.xml:
11874         * docs/pwg/advanced-scheduling.xml:
11875         * docs/pwg/intro-basics.xml:
11876         * docs/pwg/other-manager.xml:
11877         * docs/pwg/other-nton.xml:
11878         * docs/pwg/other-ntoone.xml:
11879         * docs/pwg/other-oneton.xml:
11880         * docs/pwg/pwg.xml:
11881           All sort of documentation... Forgot what. Point is that I want this
11882           in before I leave. The 'other-*' will be the last section and will
11883           explain issues specific to these type of elements.
11884
11885 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11886
11887         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11888         (gst_filesrc_get_read):
11889           set all the values on buffers that we can
11890
11891 2004-02-02  David Schleef  <ds@schleef.org>
11892
11893         Change usage of isblah() to g_ascii_isblah() to be more locale
11894         independent.  (#133076)
11895         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11896         * gst/gstutils.c:
11897         * gst/parse/parse.l:
11898
11899 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11900
11901         reviewed by: David Schleef  <ds@schleef.org>
11902
11903         Fix memory leaks:
11904         * gst/gstcaps.c: (gst_caps_to_string):
11905         * gst/registries/gstxmlregistry.c:
11906         (gst_xml_registry_add_path_list_func),
11907         (gst_xml_registry_parse_padtemplate):
11908
11909 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11910
11911         * gst/gstelement.c: (gst_element_default_error):
11912           suffix error messages with period
11913
11914 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11915
11916         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11917         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11918         * gst/gsterror.c: (gst_error_get_message):
11919           Suffix with dots
11920         * po/fr.po:
11921         * po/nl.po:
11922           Update translation files
11923
11924 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11925
11926         * gst/autoplug/gstspideridentity.c:
11927         (gst_spider_identity_sink_loop_type_finding):
11928         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11929         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11930         (gst_filesink_close_file), (gst_filesink_handle_event),
11931         (gst_filesink_chain):
11932         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11933         (gst_filesrc_get_read), (gst_filesrc_open_file):
11934         * gst/elements/gstidentity.c: (gst_identity_chain):
11935         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11936         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11937         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11938         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11939         * gst/gsterror.c: (_gst_core_errors_init),
11940         (_gst_library_errors_init), (_gst_resource_errors_init),
11941         (_gst_stream_errors_init), (gst_error_get_message):
11942         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11943         (gst_pad_recover_caps_error), (gst_pad_pull):
11944         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11945         * gst/schedulers/gstbasicscheduler.c:
11946         (gst_basic_scheduler_chainhandler_proxy),
11947         (gst_basic_scheduler_gethandler_proxy),
11948         (gst_basic_scheduler_cothreaded_chain):
11949           Suffix error messages with period.
11950           Use (NULL) instead of NULL
11951
11952 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11953
11954         * docs/gst/tmpl/gstelement.sgml:
11955         * docs/gst/tmpl/gstxml.sgml:
11956         * gst/gstelement.c: (gst_element_error_full):
11957           add element path to error
11958
11959 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11960
11961         * docs/random/mimetypes:
11962           update raw int/float info
11963         * gst/gsttag.c: (_gst_tag_initialize):
11964         * gst/gsttag.h:
11965           add GST_TAG_ENCODER
11966
11967 2004-01-30  David Schleef  <ds@schleef.org>
11968
11969         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11970           missing (#132991)
11971
11972 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11973
11974         reviewed by Benjamin Otte 
11975           parts of the patch submitted in bug #113913
11976
11977         * configure.ac:
11978           use AC_C_INLINE. Use = instead of == with test
11979         * examples/plugins/example.c:
11980         * gst/autoplug/gstspideridentity.c:
11981         * gst/elements/gstfdsrc.c:
11982         * gst/elements/gstfilesrc.c:
11983         * gst/elements/gstidentity.c:
11984         * gst/elements/gstmultidisksrc.c:
11985         * gst/elements/gststatistics.c:
11986         * gst/gstelement.c:
11987         * gst/gstobject.c:
11988         * gst/gstpad.c:
11989         * gst/gstpipeline.c:
11990         * gst/gstthread.c:
11991           don't end enums with a comma
11992         * gst/gstindex.c: (gst_index_compare_func):
11993           do explicit casting to gint
11994         * gst/gsttrace.c: (gst_trace_text_flush):
11995           #define strsize as a macro
11996
11997 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11998
11999         * docs/README:
12000         * docs/gst/gstreamer-docs.sgml:
12001         * docs/gst/gstreamer-sections.txt:
12002         * docs/gst/tmpl/gstelement.sgml:
12003         * docs/gst/tmpl/gsterror.sgml:
12004         * docs/gst/tmpl/gstinterface.sgml:
12005         * docs/gst/tmpl/gstreamer-unused.sgml:
12006         * docs/gst/tmpl/gststructure.sgml:
12007         * docs/gst/tmpl/gsttag.sgml:
12008         * docs/gst/tmpl/gsttaginterface.sgml:
12009         * docs/gst/tmpl/gstvalue.sgml:
12010         make sure all API ends up in the built docs
12011         * gst/gstinterface.c:
12012         * gst/gststructure.c: (gst_structure_id_set_value),
12013         (gst_structure_set_value), (gst_structure_id_get_value):
12014         * gst/gststructure.h:
12015         * gst/gstvalue.h:
12016         sync .h with .c declarations
12017
12018 2004-01-30  Julien Moutte  <julien@moutte.net>
12019
12020         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12021         Ronald will fix riffread.
12022
12023 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12024
12025         * docs/pwg/advanced-interfaces.xml:
12026           Added tuner interface docs.
12027
12028 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12029
12030         * docs/random/mimetypes:
12031           correct Theora information
12032         * gst/gstelement.h:
12033           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12034
12035 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12036
12037         * gst/gstelement.c: (gst_element_error_full):
12038         * gst/gstelement.h:
12039           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12040
12041 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12042
12043         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12044         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12045         again and even before DISCONT.
12046         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12047         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12048         bytestream so that it's not stopping to fill the bytestream if events
12049         different than EOS or DISCONT are received. Instead it process them so
12050         that they go downstream.
12051
12052 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12053
12054         * docs/gst/tmpl/gstelement.sgml:
12055         * docs/gst/tmpl/gstreamer-unused.sgml:
12056         * docs/gst/tmpl/gstxml.sgml:
12057         * gst/autoplug/gstspideridentity.c:
12058         (gst_spider_identity_sink_loop_type_finding):
12059         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12060         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12061         (gst_filesink_close_file), (gst_filesink_handle_event),
12062         (gst_filesink_chain):
12063         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12064         (gst_filesrc_get_read), (gst_filesrc_open_file):
12065         * gst/elements/gstidentity.c: (gst_identity_chain):
12066         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12067         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12068         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12069         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12070         * gst/gstelement.h:
12071         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12072         (gst_pad_recover_caps_error), (gst_pad_pull):
12073         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12074         * gst/schedulers/gstbasicscheduler.c:
12075         (gst_basic_scheduler_chainhandler_proxy),
12076         (gst_basic_scheduler_gethandler_proxy),
12077         (gst_basic_scheduler_cothreaded_chain):
12078           gst_element_error -> GST_ELEMENT_ERROR
12079
12080 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12081
12082         * docs/Makefile.am:
12083         * docs/gst/tmpl/gstelement.sgml:
12084         * docs/gst/tmpl/gstxml.sgml:
12085         * docs/manuals.mak:
12086         * docs/pwg/advanced-request.xml:
12087         * docs/pwg/advanced-scheduling.xml:
12088         * docs/pwg/advanced-tagging.xml:
12089           fix non-validating docbook using CDATA
12090           make sure make check-local gets run first to check if it validates
12091
12092 2004-01-29  Julien MOUTTE <julien@moutte.net>
12093
12094         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12095         handling (up and downstream).
12096         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12097         my_filter thing.
12098
12099 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12100
12101         * docs/pwg/advanced-tagging.xml:
12102           Add docs about tag writing.
12103
12104 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12105
12106         * docs/pwg/advanced-tagging.xml:
12107           Add a part about tag reading and application signalling... Tag
12108           writing still needs to be documented.
12109         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12110           We can set file locations in READY, too.
12111
12112 2004-01-29  Julien MOUTTE <julien@moutte.net>
12113
12114         * docs/random/ds/element-checklist: Adding some notes about src
12115         events.
12116
12117 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12118
12119         * docs/random/mimetypes:
12120           Update docs to point to correct elements for various mimetypes, and
12121           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12122           <stephane.loeuillet@tiscali.fr>.
12123
12124 2004-01-28  David Schleef  <ds@schleef.org>
12125
12126         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12127
12128 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12129
12130         * docs/random/mimetypes:
12131           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12132           undefined"
12133         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12134           make it only work in NULL.
12135         * gst/gstcaps.c:
12136           don't posion NULL caps
12137         * gst/gstelement.c: (gst_element_set_time):
12138           add debugging statement
12139         * gst/gstelement.c: (gst_element_emit_found_tag),
12140         (gst_element_found_tag_func), (gst_element_found_tags):
12141         * gst/gstelement.h:
12142           These functions take const taglists
12143         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12144           fix memleak
12145         * gst/gstpad.c: (gst_pad_event_default):
12146           make more effort on handling discont and clocks, g_warn if everything
12147           fails
12148         * gst/gststructure.c: (gst_structure_remove_fields),
12149         (gst_structure_remove_fields_valist):
12150         * gst/gststructure.h:
12151           add gst_structure_remove_fields(_valist)
12152         * gst/gsttag.c:
12153           fix doc glitch
12154
12155 2004-01-28  David Schleef  <ds@schleef.org>
12156
12157         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12158         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12159         Fix memory leakage of gst_caps_to_string().
12160
12161         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12162         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12163         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12164         (gst_spider_identity_sink_loop_type_finding):
12165         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12166         (find_suggest):
12167         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12168         (gst_pad_set_explicit_caps):
12169         * gst/parse/grammar.y:
12170
12171 2004-01-28  David Schleef  <ds@schleef.org>
12172
12173         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12174         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12175         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12176         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12177         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12178         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12179         (gst_debug_log_default), (_gst_info_printf_extension),
12180         (_gst_info_printf_extension_arginfo):  Add printf extension.
12181         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12182         * gst/gststructure.c: (gst_structure_to_string),
12183         (_gst_structure_parse_value): Use gst_value_deserialize() and
12184         remove old code.
12185         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12186         (gst_value_deserialize_boolean), (gst_strtoi),
12187         (gst_value_deserialize_int), (gst_value_deserialize_double),
12188         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12189         a bunch of deserialize functions and gst_value_deserialize.
12190         * gst/gstvalue.h: er, _de_serialize, not unserialize
12191         * testsuite/caps/string-conversions.c: (main): We don't currently
12192         handle (float) in caps, so convert these to (double).
12193         * testsuite/debug/Makefile.am: Add new test for the printf extension
12194         * testsuite/debug/printf_extension.c: (main): same
12195
12196 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12197
12198         * docs/random/company/time:
12199           Add some docs about clocking and time
12200
12201 2004-01-28  Julien MOUTTE <julien@moutte.net>
12202
12203         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12204
12205 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12206
12207         * docs/pwg/advanced-clock.xml:
12208         * docs/pwg/advanced-dparams.xml:
12209         * docs/pwg/advanced-events.xml:
12210         * docs/pwg/advanced-interfaces.xml:
12211         * docs/pwg/advanced-midi.xml:
12212         * docs/pwg/advanced-request.xml:
12213         * docs/pwg/advanced-scheduling.xml:
12214         * docs/pwg/advanced-tagging.xml:
12215         * docs/pwg/advanced-types.xml:
12216         * docs/pwg/appendix-checklist.xml:
12217         * docs/pwg/building-boiler.xml:
12218         * docs/pwg/building-chainfn.xml:
12219         * docs/pwg/building-filterfactory.xml:
12220         * docs/pwg/building-pads.xml:
12221         * docs/pwg/building-props.xml:
12222         * docs/pwg/building-signals.xml:
12223         * docs/pwg/building-state.xml:
12224         * docs/pwg/building-testapp.xml:
12225         * docs/pwg/intro-basics.xml:
12226         * docs/pwg/intro-preface.xml:
12227         * docs/pwg/other-autoplugger.xml:
12228         * docs/pwg/other-sink.xml:
12229         * docs/pwg/other-source.xml:
12230         * docs/pwg/titlepage.xml:
12231           fix up id's
12232
12233 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12234
12235         * docs/95NonPath:
12236         * docs/HACKING:
12237         * docs/README:
12238         * docs/building-the-docs-on-debian:
12239           collect relevant bits of doc info
12240
12241 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12242
12243         * docs/pwg/advanced_tagging.xml:
12244           Half-assed commit so Thomas can re-arrange document IDs here to be
12245           consistent, too.
12246
12247 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12248
12249         * docs/manual/autoplugging.xml:
12250         * docs/manual/bins-api.xml:
12251         * docs/manual/bins.xml:
12252         * docs/manual/buffers-api.xml:
12253         * docs/manual/buffers.xml:
12254         * docs/manual/clocks.xml:
12255         * docs/manual/components.xml:
12256         * docs/manual/cothreads.xml:
12257         * docs/manual/debugging.xml:
12258         * docs/manual/dparams-app.xml:
12259         * docs/manual/dynamic.xml:
12260         * docs/manual/elements-api.xml:
12261         * docs/manual/elements.xml:
12262         * docs/manual/factories.xml:
12263         * docs/manual/gnome.xml:
12264         * docs/manual/goals.xml:
12265         * docs/manual/helloworld.xml:
12266         * docs/manual/helloworld2.xml:
12267         * docs/manual/init-api.xml:
12268         * docs/manual/intro.xml:
12269         * docs/manual/links-api.xml:
12270         * docs/manual/links.xml:
12271         * docs/manual/manual.xml:
12272         * docs/manual/motivation.xml:
12273         * docs/manual/pads-api.xml:
12274         * docs/manual/pads.xml:
12275         * docs/manual/plugins-api.xml:
12276         * docs/manual/plugins.xml:
12277         * docs/manual/programs.xml:
12278         * docs/manual/queues.xml:
12279         * docs/manual/quotes.xml:
12280         * docs/manual/schedulers.xml:
12281         * docs/manual/states-api.xml:
12282         * docs/manual/states.xml:
12283         * docs/manual/threads.xml:
12284         * docs/manual/typedetection.xml:
12285         * docs/manual/xml.xml:
12286           use chapter, part, section or misc as id starts for all bits
12287
12288 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12289
12290         * docs/gst/gstreamer-sections.txt:
12291           Fix up TITLE of the sections
12292
12293 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12294
12295         * docs/pwg/advanced_interfaces.xml:
12296           Add documentation on propertyprobing.
12297         * docs/pwg/advanced_events.xml:
12298         * docs/pwg/advanced_tagging.xml:
12299         * docs/pwg/building_boiler.xml:
12300         * docs/pwg/building_filterfactory.xml:
12301         * docs/pwg/pwg.xml:
12302           Move filterfactory and tagging into their own chapter, add a chapter
12303           on events. all these are empty placeholders that will be filled in
12304           some day.
12305
12306 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12307
12308         * docs/pwg/advanced_interfaces.xml:
12309           Docs for mixer interface. Also a check for website uploading.
12310
12311 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12312
12313         * docs/HACKING:
12314         * docs/Makefile.am:
12315         * docs/faq/Makefile.am:
12316         * docs/gst/Makefile.am:
12317         * docs/gst/tmpl/gstelement.sgml:
12318         * docs/gst/tmpl/gstplugin.sgml:
12319         * docs/gst/tmpl/gstreamer-unused.sgml:
12320         * docs/libs/Makefile.am:
12321         * docs/manual/Makefile.am:
12322         * docs/manuals.mak:
12323         * docs/pwg/Makefile.am:
12324         * docs/upload.mak:
12325           Separate out upload target and make it similar for
12326           both docbook and gtk-doc docs
12327
12328 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12329
12330         * docs/manuals.mak:
12331           Fix upload target to work with freedesktop
12332
12333 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12334
12335         * docs/pwg/advanced_types.xml:
12336           Add notes on creating your own types.
12337         * docs/pwg/building_boiler.xml:
12338         * docs/pwg/building_pads.xml:
12339         * docs/pwg/building_state.xml:
12340           Add some stuff about how to retrieve values from structures, how
12341           that relates to types and change layout slightly again to be almost
12342           perfect.
12343
12344 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12345
12346         * docs/pwg/advanced_dparams.xml:
12347         * docs/pwg/advanced_scheduling.xml:
12348           Change index layout slightly.
12349
12350 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12351
12352         * docs/pwg/advanced_clock.xml:
12353         * docs/pwg/advanced_interfaces.xml:
12354         * docs/pwg/advanced_midi.xml:
12355           General placeholders for now.
12356         * docs/pwg/advanced_request.xml:
12357           Explanation about sometimes and request pads.
12358         * docs/pwg/advanced_scheduling.xml:
12359           Concept of bytestream, loopfunctions and schedulers.
12360         * docs/pwg/building_boiler.xml:
12361           Add something about plugin-init.
12362
12363 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12364
12365         * docs/pwg/building_pads.xml:
12366           Fix broken docbook
12367
12368 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12369
12370         * docs/pwg/advanced_interfaces.xml:
12371         * docs/pwg/pwg.xml:
12372           Add as a placeholder for future filling-in.
12373         * docs/pwg/basics_autoplugging.xml:
12374         * docs/pwg/basics_buffers.xml:
12375         * docs/pwg/basics_elements.xml:
12376         * docs/pwg/basics_events.xml:
12377         * docs/pwg/basics_plugins.xml:
12378         * docs/pwg/basics_types.xml:
12379           Remove, because unused (this is all in intro_basics.xml).
12380         * docs/pwg/building_signals.xml:
12381           Short intro to signals + reference to GObject docs - we really
12382           shouldn't go into these sort of things to deply because we don't
12383           use them that extensively anyway.
12384         * docs/pwg/building_state.xml:
12385           Explanation of states. Benjamin, please check.
12386         * docs/pwg/building_testapp.xml:
12387           Put everything in one page - putting only a few lines of content
12388           per page doesn't really make sense.
12389
12390           Time to get into the advanced topics. ;).
12391
12392 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12393
12394         * docs/pwg/advanced_types.xml:
12395           Finish documenting the current state of mimetypes.
12396         * docs/pwg/building_boiler.xml:
12397         * docs/pwg/building_chainfn.xml:
12398         * docs/pwg/building_pads.xml:
12399         * docs/pwg/building_props.xml:
12400         * docs/pwg/building_testapp.xml:
12401           Start documenting the "how to build a simple audio filter" part
12402           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12403           states and (maybe?) a short introduction to capsnego in the chapter
12404           on pads (building_pads.xml). Capsnego should probably be explained
12405           fully in advanced_capsnego.xml or so.
12406
12407 2004-01-26  David Schleef  <ds@schleef.org>
12408
12409         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12410         * gst/gstpad.h: Add new function to allow element to (somewhat)
12411         specify non-fixed caps on a pad.
12412         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12413         that I added a few weeks ago.
12414
12415 2004-01-26  David Schleef  <ds@schleef.org>
12416
12417         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12418           making try_set_caps() work with non-fixed caps.
12419
12420 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12421
12422         * docs/pwg/advanced_types.xml:
12423         * docs/pwg/intro_basics.xml:
12424         * docs/pwg/intro_preface.xml:
12425         * docs/pwg/pwg.xml:
12426         * docs/pwg/titlepage.xml:
12427           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12428           in here (docs/random/mimetypes), and will from there on work on both
12429           updating outdated parts and adding missing parts.
12430           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12431
12432 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12433
12434         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12435           policy is set
12436
12437 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12438
12439         * gst/gstelement.h:
12440           remove gst_element_factory_get_version. It doesn't exist anymore.
12441         * gst/gstplugin.c:
12442         * gst/gstplugin.h:
12443           remove gst_plugin_set_name and change gst_plugin_get_longname to
12444           gst_plugin_get_description to match code.
12445         * gst/gsterror.h:
12446           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12447         * gst/gstpad.c: (gst_pad_try_set_caps):
12448           make it work with nonfixed caps.
12449           Note that even in the nonfixed case the link function of the pad
12450           that tries to set caps isn't called.
12451
12452 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12453
12454         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12455           fix bug where buffer was not assembled correctly
12456         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12457           silence by default
12458         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12459           only seek if there's no more buffers that could work without seeking
12460
12461 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12462
12463         * gst/gsttag.c: (_gst_tag_initialize):
12464         * gst/gsttag.h:
12465           Add application tag (for encoding/muxing app).
12466
12467 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12468
12469         * autogen.sh:
12470           make autopoint force, and libtoolize not copy
12471         * common/m4/as-docbook.m4:
12472           added docbook xml catalog setup check
12473         * common/m4/gst-doc.m4:
12474           use docbook check
12475
12476 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12477
12478         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12479         * gst/gsttag.h:
12480           add GstTagFlag
12481
12482 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12483
12484         * docs/gst/gstreamer-sections.txt:
12485         * docs/gst/tmpl/gst.sgml:
12486         * docs/gst/tmpl/gstbuffer.sgml:
12487         * docs/gst/tmpl/gstclock.sgml:
12488         * docs/gst/tmpl/gstelement.sgml:
12489         * docs/gst/tmpl/gstreamer-unused.sgml:
12490         * docs/gst/tmpl/gstxml.sgml:
12491           sync latest API changes to docs
12492
12493 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12494
12495         * gst/gstpluginfeature.c:
12496           fix doc snippet
12497         * tools/gst-inspect.c: (print_element_list):
12498           fix output of typefind
12499           add GPL header
12500         * tools/gst-launch.c:
12501           add GPL header
12502
12503 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12504
12505         * gst/elements/Makefile.am:
12506         * gst/elements/gstelements.c:
12507         * gst/elements/gsttypefindelement.c:
12508         * gst/elements/gsttypefindelement.h:
12509         * po/POTFILES.in:
12510         * po/fr.po:
12511         * po/nl.po:
12512           renamed gsttypefindelement to gsttypefind, conserving CVS history
12513
12514 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12515
12516         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12517         * gst/gsttag.h:
12518           add some tags used in ogg as well
12519           fix _ in replaygain tags
12520
12521 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12522
12523         * gst/gsterror.h:
12524           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12525
12526 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12527
12528         * gst/gstelement.c: (gst_element_error_full):
12529         * gst/gstelement.h:
12530           change _extended to _full
12531
12532 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12533
12534         reviewed by: <delete if not using a buddy>
12535
12536         * docs/gst/tmpl/gst.sgml:
12537         * docs/gst/tmpl/gstbuffer.sgml:
12538         * docs/gst/tmpl/gstclock.sgml:
12539         * docs/gst/tmpl/gstelement.sgml:
12540         * docs/gst/tmpl/gstreamer-unused.sgml:
12541         * docs/gst/tmpl/gstxml.sgml:
12542         * gst/gstelement.c: (gst_element_error_full):
12543         * gst/gstelement.h:
12544
12545 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12546
12547         * gst/gstelement.h: fix _gst_element_error_printf prototype
12548
12549 2004-01-20  David Schleef  <ds@schleef.org>
12550
12551         * gst/gststructure.c: (gst_structure_to_string):
12552         Convert function to use gst_value_serialize().
12553         * gst/gstvalue.c: (gst_value_serialize_list),
12554         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12555         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12556         (gst_value_serialize_int), (gst_value_serialize_double),
12557         (gst_string_wrap), (gst_value_serialize_string),
12558         (gst_value_serialize), (gst_value_deserialize):
12559         * gst/gstvalue.h:
12560         Add implementations for serialize.
12561
12562 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12563
12564         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12565         we want to keep that one in the future or change xvidenc.c to use 
12566         another error.
12567
12568 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12569
12570         * gst/gstelement.c: (_gst_element_error_printf):
12571         * gst/gstelement.h:
12572           privatise function
12573
12574 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12575
12576         * docs/random/error:
12577           doc explaining error system
12578         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12579           cleanup
12580
12581 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12582
12583         * gst/gst-i18n-app.h:
12584         * gst/gst-i18n-lib.h:
12585           remove inclusion of config.h
12586         * po/POTFILES.in:
12587         * po/nl.po:
12588           add gst/gstelement.c
12589
12590 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12591
12592         * po/nl.po: updated Dutch translation
12593
12594 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12595
12596         * gst/gsterror.c: (_gst_core_errors_init),
12597         (_gst_library_errors_init), (_gst_resource_errors_init),
12598         (_gst_stream_errors_init):
12599         remove ending punctuation dots
12600
12601 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12602
12603         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12604         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12605         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12606         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12607         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12608         use GST_ERROR_SYSTEM
12609
12610 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12611
12612         * gst/gstelement.c: (gst_element_error_printf),
12613         (gst_element_error_extended):
12614         * gst/gstelement.h:
12615           add a helper printf function so we can have NULL values passed.
12616
12617 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12618
12619         * gst/gstelement.h:
12620           add G_STMT macros to gst_element_error, which isn't strictly
12621           necessary but people tell me to anyway.
12622
12623 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12624
12625         * gst/Makefile.am:
12626         * gst/autoplug/gstspideridentity.c:
12627         (gst_spider_identity_sink_loop_type_finding):
12628         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12629         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12630         (gst_filesink_close_file), (gst_filesink_handle_event),
12631         (gst_filesink_chain):
12632         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12633         (gst_filesrc_map_region), (gst_filesrc_get_read),
12634         (gst_filesrc_open_file):
12635         * gst/elements/gstidentity.c: (gst_identity_chain):
12636         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12637         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12638         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12639         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12640         * gst/gst.h:
12641         * gst/gst_private.h:
12642         * gst/gstelement.c: (gst_element_class_init),
12643         (gst_element_default_error), (gst_element_error_func),
12644         (gst_element_error_extended):
12645         * gst/gstelement.h:
12646         * gst/gsterror.c: (_gst_core_errors_init),
12647         (_gst_library_errors_init), (_gst_resource_errors_init),
12648         (_gst_stream_errors_init), (gst_error_get_message):
12649         * gst/gsterror.h:
12650         * gst/gstinfo.c: (_gst_debug_init):
12651         * gst/gstmarshal.list:
12652         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12653         (gst_pad_recover_caps_error), (gst_pad_pull):
12654         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12655         * gst/schedulers/gstbasicscheduler.c:
12656         (gst_basic_scheduler_chainhandler_proxy),
12657         (gst_basic_scheduler_gethandler_proxy),
12658         (gst_basic_scheduler_cothreaded_chain):
12659         * po/POTFILES.in:
12660         * po/fr.po:
12661         * po/nl.po:
12662           change error signal
12663           add error categories
12664
12665 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12666
12667         * gst/gsttag.c: (_gst_tag_initialize):
12668         * gst/gsttag.h:
12669         Add replaygain tag
12670
12671 2004-01-18  Colin Walters  <walters@verbum.org>
12672
12673         * examples/retag/retag.c: Call gst_init before processing
12674         program args.  Add g_assert to _link_many call.
12675
12676 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12677
12678         * gst/gstpad.c: (gst_pad_alloc_buffer):
12679           Return a newly allocated buffer when the pad has no peer.
12680
12681 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12682
12683         * gst/gstclock.c: (gst_clock_get_time):
12684           make it compile with gcc 2.95 again.
12685           Patch by Scott Wheeler
12686
12687 2004-01-15  David Schleef  <ds@schleef.org>
12688
12689         * gst/gstcaps.h:
12690         Added gst_caps_is_simple() macro.
12691         * testsuite/caps/caps.c: (test1):
12692         * testsuite/caps/intersect2.c: (main):
12693         * testsuite/caps/intersection.c: (main):
12694         Fixes to make 'make check' work again after removing
12695         gst_caps_is_chained().
12696
12697 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12698
12699         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12700         and additions to the MIDI document.
12701
12702 2004-01-15  David Schleef  <ds@schleef.org>
12703
12704         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12705         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12706         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12707
12708 2004-01-15  David Schleef  <ds@schleef.org>
12709
12710         * gst/gstqueue.c:
12711         * gst/gstqueue.h:
12712         Fix the spelling of "treshold" and make min_threshold actually
12713         affect the queue.
12714
12715 2004-01-15  David Schleef  <ds@schleef.org>
12716
12717         * gst/gstcaps.c:
12718         Add lots of documentation.
12719         * gst/gstcaps.h:
12720         Deprecate a few functions.
12721         * gst/gstpad.c:
12722         Removed use of deprecated functions.
12723
12724 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12725
12726         * gst/gstpad.c: (gst_pad_is_linked):
12727         * gst/gstpad.h:
12728           implement gst_pad_is_linked
12729         * gst/gstelement.h:
12730           reserve space for initiate_state_change
12731
12732 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12733
12734         * gst/autoplug/gstspideridentity.c:
12735         (gst_spider_identity_sink_loop_type_finding):
12736           break infinite loop by just returning instead of looping
12737         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12738           set event time difference correctly. Set it to 1 second instead
12739           of 100ms to be more tolerant
12740         * gst/gstelement.c: (gst_element_set_time):
12741           add debugging output
12742
12743 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12744
12745         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12746           query if buffers are inside the pool, ignore events
12747
12748 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12749
12750         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12751         (gst_clock_set_speed), (gst_clock_set_active),
12752         (gst_clock_is_active), (gst_clock_reset),
12753         (gst_clock_handle_discont):
12754         * gst/gstclock.h:
12755           deprecate old interface and disable functions that aren't in use
12756           anymore.
12757         * gst/gstelement.h:
12758         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12759         (gst_element_set_time), (gst_element_adjust_time):
12760           add concept of "element time" and functions to get/set this time.
12761         * gst/gstelement.c: (gst_element_change_state):
12762           update element time correctly.
12763         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12764           This is a debug message, not a g_critical.
12765         * gst/gstpad.c: (gst_pad_event_default):
12766           handle discontinuous events right with element time.
12767         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12768           update to clocking fixes.
12769           set clocks on elements in READY=>PAUSED. The old behaviour caused
12770           a wrong element time on the first element that started playing.
12771         * gst/schedulers/gstbasicscheduler.c:
12772         (gst_basic_scheduler_class_init):
12773         * gst/schedulers/gstoptimalscheduler.c:
12774         (gst_opt_scheduler_class_init):
12775           remove code that just implements the default behaviour.
12776         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12777           update to use new clocking functions
12778         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12779         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12780           update to test new element time.
12781         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12782           use _get_allowed_caps instead of _get_caps. This catches filtered
12783           caps correctly.
12784         * testsuite/debug/commandline.c:
12785           update for new GST_DEBUG syntax.
12786         * testsuite/threads/Makefile.am:
12787           disable a test that only works sometimes.
12788
12789 2004-01-13  Julien MOUTTE <julien@moutte.net>
12790
12791         * po/LINGUAS: Adding fr.
12792         * po/fr.po: Adding french translation.
12793
12794 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12795
12796         * gst/parse/grammar.y:
12797         * po/POTFILES.in:
12798         * po/nl.po:
12799         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12800           translate parsing error messages
12801
12802 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12803
12804         * po/POTFILES.in: adding gst-launch
12805         * po/nl.po: updated translation, all 99 strings translated
12806         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12807         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12808           fix strings for translation
12809
12810 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12811
12812         * gst/gst.c:
12813           - capitalize beginnings of popt options
12814           - fix strings for translation
12815           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12816
12817 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12818
12819         * po/README: add some notes on how to update translations
12820
12821 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12822
12823         * ABOUT-NLS: removed, is autogenerated from autopoint
12824         * autogen.sh: add autopoint stuff
12825         * configure.ac: fix up gettext stuff
12826         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12827         * gst/elements/gsttypefindelement.c: add header include
12828         * gst/gettext.h: add header, copy from system-installed header
12829         * gst/gst-i18n-app.h: to be included by each app having translations
12830         * gst/gst-i18n-lib.h: to be included by each lib having translations
12831         * gst/gst.c: (init_pre): fix up gettext calls
12832         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12833         * po/LINGUAS: the new way to specify translations present
12834         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12835         * po/Makevars: the variables filled in for GStreamer
12836         * po/POTFILES.in: added new files with translations
12837         * po/de.po: has new strings
12838         * po/nl.po: readded, has new strings
12839
12840 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12841
12842         * gst/gsttag.c: fix some strings marked for translation
12843
12844 2004-01-13  Iain <iain@prettypeople.org>
12845
12846         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12847         group when we add an element to it, cos we unref it when we remove one
12848
12849 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12850
12851         * testsuite/debug/commandline.c: (debug_not_reached):
12852         * testsuite/debug/output.c: (check_message):
12853           fix testsuite
12854
12855 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12856
12857         * examples/cutter/.cvsignore:
12858         * examples/helloworld/.cvsignore:
12859         * examples/launch/.cvsignore:
12860         * examples/manual/.cvsignore:
12861         * examples/mixer/.cvsignore:
12862         * examples/pingpong/.cvsignore:
12863         * examples/plugins/.cvsignore:
12864         * examples/queue/.cvsignore:
12865         * examples/queue2/.cvsignore:
12866         * examples/queue3/.cvsignore:
12867         * examples/queue4/.cvsignore:
12868         * examples/retag/.cvsignore:
12869         * examples/thread/.cvsignore:
12870         * examples/typefind/.cvsignore:
12871         * examples/xml/.cvsignore:
12872         * gst/.cvsignore:
12873         * gst/autoplug/.cvsignore:
12874         * gst/elements/.cvsignore:
12875         * gst/indexers/.cvsignore:
12876         * gst/parse/.cvsignore:
12877         * gst/registries/.cvsignore:
12878         * gst/schedulers/.cvsignore:
12879         * libs/gst/bytestream/.cvsignore:
12880         * libs/gst/control/.cvsignore:
12881         * libs/gst/getbits/.cvsignore:
12882         * tests/.cvsignore:
12883         * tests/bufspeed/.cvsignore:
12884         * tests/instantiate/.cvsignore:
12885         * tests/memchunk/.cvsignore:
12886         * tests/muxing/.cvsignore:
12887         * tests/sched/.cvsignore:
12888         * tests/seeking/.cvsignore:
12889         * tests/threadstate/.cvsignore:
12890         * testsuite/.cvsignore:
12891         * testsuite/caps/.cvsignore:
12892         * testsuite/cleanup/.cvsignore:
12893         * testsuite/dynparams/.cvsignore:
12894         * testsuite/plugin/.cvsignore:
12895         * tools/.cvsignore:
12896           update - this is huge, because it includes *.bb, *.bbg and *.da files
12897           which are generated for gcov.
12898
12899 2004-01-11  David Schleef  <ds@schleef.org>
12900
12901         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12902         a function to parse integers in ways that strto[u]l() does not.
12903
12904 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12905
12906         * tools/gst-inspect.c: (print_caps):
12907           improve output of caps a bit
12908
12909 2004-01-11  David Schleef  <ds@schleef.org>
12910
12911         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12912         inherit correct flags (READONLY and DONTKEEP).
12913
12914 2004-01-11  David Schleef  <ds@schleef.org>
12915
12916         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12917         (gst_filesrc_map_region):
12918         * gst/gstbuffer.c: (_gst_buffer_initialize),
12919         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12920         (gst_buffer_new), (gst_buffer_create_sub),
12921         (gst_buffer_is_span_fast), (gst_buffer_span):
12922         * gst/gstbuffer.h:
12923         Change GstBuffer private structure element names. (all files)
12924         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12925         (gst_queue_link):
12926         * gst/gstqueue.h:
12927         Implement getcaps/pad_link functions that handle the case where
12928         there are data in the queue.
12929
12930 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12931
12932         * gst/elements/gstbufferstore.c:
12933           initialize debugging structure correctly
12934         * gst/elements/gsttee.c: (gst_tee_set_property):
12935           g_object_notify when property was changed
12936         * gst/elements/gsttypefindelement.c:
12937         (gst_type_find_element_change_state):
12938           clear caps correctly
12939
12940 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12941
12942         * gst/gstqueue.c: (gst_queue_init):
12943           Use better defaults for when a queue should block. This
12944           gets rid of jerky playback for quite a few files.
12945           It takes more memory.
12946
12947 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12948
12949         (gst_xml_registry_parse_padtemplate):
12950           make critical message slightly more useful
12951
12952 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12953
12954         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12955         (gst_debug_message_get), (gst_debug_log_default):
12956         * gst/gstinfo.h:
12957           Change gst_debug_log(_valist) to take a const format string.
12958           Change prototype of log function and functions using those to 
12959           take a GstDebugMessage instead of a string that requires using
12960           gst_debug_message_get.
12961
12962 2004-01-08  David Schleef  <ds@schleef.org>
12963
12964         * Makefile.am:
12965         * configure.ac:
12966         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12967         and -ftest-coverage, which allows gcov to show information about
12968         testsuite coverage.
12969
12970 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12971
12972         * gst/gstutils.h:
12973           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12974           GST_PARENT_CALL_WITH_DEFAULT
12975         * gst/elements/gstaggregator.c: 
12976         * gst/elements/gstbufferstore.c: 
12977         * gst/elements/gstfakesink.c: 
12978         * gst/elements/gstfakesrc.c: 
12979         * gst/elements/gstfdsink.c: 
12980         * gst/elements/gstfdsrc.c: 
12981         * gst/elements/gstfilesink.c: 
12982         * gst/elements/gstfilesrc.c: 
12983         * gst/elements/gstidentity.c: 
12984         * gst/elements/gstmd5sink.c: 
12985         * gst/elements/gstmultidisksrc.c:
12986         * gst/elements/gstpipefilter.c: 
12987         * gst/elements/gstshaper.c:
12988         * gst/elements/gststatistics.c:
12989         * gst/elements/gsttee.c:
12990         * gst/elements/gsttypefindelement.c:
12991           use them.
12992
12993 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
12994
12995         * docs/gst/gstreamer-docs.sgml: remove props
12996         * docs/gst/gstreamer-sections.txt: remove props
12997         * docs/gst/tmpl/gst.sgml:
12998         * docs/gst/tmpl/gstbin.sgml:
12999         * docs/gst/tmpl/gstbuffer.sgml:
13000         * docs/gst/tmpl/gstcaps.sgml:
13001         * docs/gst/tmpl/gstclock.sgml:
13002         * docs/gst/tmpl/gstelement.sgml:
13003         * docs/gst/tmpl/gstindex.sgml:
13004         * docs/gst/tmpl/gstobject.sgml:
13005         * docs/gst/tmpl/gstpad.sgml:
13006         * docs/gst/tmpl/gstpadtemplate.sgml:
13007         * docs/gst/tmpl/gstreamer-unused.sgml:
13008         * docs/gst/tmpl/gstthread.sgml:
13009         * docs/gst/tmpl/gstxml.sgml:
13010           sync with code reorganization
13011
13012 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13013
13014         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13015         Make the 'Could not find compatible pad' message more informative.
13016
13017 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13018                                                                                 
13019         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13020           Fix for if we pass NULL as property to location.
13021         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13022         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13023           Fix for instantiate-test (see below).
13024         * gst/gststructure.c: (_gst_structure_parse_value):
13025           Fix compile error on gcc-2.96.
13026         * configure.ac:
13027         * tests/Makefile.am:
13028         * tests/instantiate/Makefile.am:
13029         * tests/instantiate/create.c: (create_all_elements), (main):
13030           Add a test that instantiates all elements. This makes it easy to
13031           track dead code for old API/design (like setting event functions
13032           on sink pads and so on).
13033
13034 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13035
13036         * gst/gstcaps.c: (gst_caps_append_structure):
13037           Move the poisoning to allow a NULL structure
13038         * gst/gstevent.c: (_gst_event_free):
13039           When freeing a navigation event, free the structure
13040           also
13041
13042 2004-01-04  David Schleef  <ds@schleef.org>
13043
13044         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13045         Remove usage of gst_pad_proxy_fixate.
13046         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13047         (gst_caps_split_one), (gst_caps_replace):
13048         Add poisoning code.
13049         * gst/gstmarshal.list:
13050         Add pointer__pointer for fixate signal
13051         * gst/gstpad.c: (gst_real_pad_class_init),
13052         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13053         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13054         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13055         Add poisoning code. Add fixate signal on RealPad. Change
13056         set_explicit_caps() to take const GstCaps, like try_set_caps().
13057         * gst/gstpad.h:
13058         * testsuite/caps/Makefile.am:
13059         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13060
13061 2004-01-03  David Schleef  <ds@schleef.org>
13062
13063         * gst/elements/gsttypefindelement.c:
13064         (gst_type_find_element_have_type), (gst_type_find_element_init):
13065         Use gst_pad_use_explicit_caps for src pad.
13066         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13067         before using it.
13068
13069 2004-01-03  David Schleef  <ds@schleef.org>
13070
13071         * gst/gstelement.c: (gst_element_link_pads_filtered),
13072         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13073         that linking was successful.
13074         * gst/gstpad.c: (gst_pad_link_free),
13075         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13076         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13077         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13078         GstPadLinkReturn correctly between functions, and don't fail
13079         when DELAYED is used (DELAYED is very important).  Better
13080         cleanup on unlinking and unnegotiation.  Should fix some spider
13081         bugs.
13082
13083 2004-01-02  David Schleef  <ds@schleef.org>
13084
13085         * gst/gstelement.c: (gst_element_class_init),
13086         (gst_element_base_class_init): ->padtemplates should be cleared
13087         in base_init, since we need to have a fresh list for every
13088         class.  (Alternately, we chould copy the list and share the
13089         actual pad templates (not the list), but that would require
13090         changing every plugin to move pad template registration from
13091         base_init to class_init.)
13092
13093 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13094
13095         * gst/gstelement.c: (gst_element_class_add_pad_template):
13096           Refuse registering a pad template if another pad template
13097           with the same name already exists (#114715).
13098
13099 2004-01-02  David Schleef  <ds@schleef.org>
13100
13101         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13102         (gst_caps_is_equal_fixed): Add new function.
13103         * gst/gstcaps.h: ditto.
13104         * gst/gstpad.c: (gst_real_pad_class_init),
13105         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13106         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13107         check new caps against existing caps -- if they're the same, return
13108         OK without renegotiating.  caps-nego-failed signal fixed so that
13109         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13110         to save an extra caps copy.  Don't complete negotiation if a pad
13111         link function returns DELAYED.
13112
13113 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13114
13115         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13116           Fix wrong g_return_if_fail
13117
13118 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13119
13120         * gst/gstbin.c: (gst_bin_class_init):
13121         Change the marshalling of element_added/element_removed
13122         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13123         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13124
13125 2004-01-01  David Schleef  <ds@schleef.org>
13126
13127         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13128         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13129         (gst_pad_use_explicit_caps):
13130         * gst/gstpad.h:
13131         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13132         to use an internal getcaps and link fuction so that negotiation
13133         always results in the explicitly set caps.
13134         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13135         are particularly useful for decoders.
13136
13137 2003-12-31  David Schleef  <ds@schleef.org>
13138
13139         * gst/elements/gstidentity.c: (gst_identity_class_init),
13140         (gst_identity_init), (gst_identity_chain),
13141         (gst_identity_set_property), (gst_identity_get_property):
13142         * gst/elements/gstidentity.h:
13143         * gst/gstqueue.c: (gst_queue_init):
13144           Negotiation fixes.
13145
13146 2003-12-31  David Schleef  <ds@schleef.org>
13147
13148         * gst/gstcaps.c: (gst_caps_intersect),
13149         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13150           Implement gst_caps_normalize().
13151         * testsuite/caps/normalisation.c: (main):
13152           Add an additional test
13153
13154 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13155
13156         * gst/gstqueue.c: (gst_queue_init):
13157           use gst_pad_proxy_getcaps()
13158
13159 2003-12-31  David Schleef  <ds@schleef.org>
13160
13161         * gst/elements/gstshaper.c: (gst_shaper_link):
13162         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13163         * gst/gstqueue.c: (gst_queue_link):
13164           Negotiation fixes.
13165
13166 2003-12-31  David Schleef  <ds@schleef.org>
13167
13168         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13169         * gst/gstpad.h: Add functions that are useful as default pad
13170         link and fixate functions for elements.
13171
13172 2003-12-30  David Schleef  <ds@schleef.org>
13173
13174         * gst/gstpad.c: (gst_pad_link_try):
13175           Fix segfault when attempting to return to old caps
13176
13177 2003-12-29  David Schleef  <ds@schleef.org>
13178
13179         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13180         (gst_caps_structure_simplify), (gst_caps_simplify):
13181         * gst/gstcaps.h:
13182           Add simplify function
13183         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13184         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13185         * gst/gstpad.h:
13186           Copy over srcnotify, sinknotify when calling old pad_link
13187           functions.  Add new is_negotiated() function.
13188         * gst/gststructure.c: (gst_structure_copy):
13189           Fix an incredibly stupid bug that should have been noticed
13190           weeks ago.  _copy() returned the argument, not the new copy.
13191
13192 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13193
13194         * gst/gstcaps.c: (gst_caps_append):
13195           add sanity checks
13196         * gst/gstcaps.h: (gst_caps_debug):
13197           remove, it doesn't exist anymore.
13198         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13199         (gst_element_threadsafe_properties_post_run):
13200           make debugging messages not clutter up THREAD debug category
13201         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13202         (gst_element_change_state):
13203           update to new caps API
13204         * gst/gstinterface.c: (gst_implements_interface_cast):
13205           don't put vital code in g_return_if_fail
13206         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13207         (gst_pad_link_filtered):
13208           add pst_pad_try_link and use it.
13209         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13210           implement correctly, deprecate first one.
13211         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13212           add and implement.
13213         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13214           implement.
13215         (gst_pad_get_negotiated_caps):
13216           add and implement. Make GST_PAD_CAPS call this function.
13217         (gst_pad_get_caps):
13218           remove unneeded check..
13219         (gst_pad_recover_caps_error):
13220           disable, always return FALSE.
13221         (gst_real_pad_dispose):
13222           don't free caps and appfilter anymore, they're unused.
13223         * gst/gstpad.h:
13224           Reflect changes mentioned above.
13225         * gst/gstsystemclock.c: (gst_system_clock_wait):
13226           Make 'clock is way behind' a debugging message.
13227         * gst/gstthread.c: (gst_thread_change_state):
13228           Fix debugging message
13229
13230 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13231
13232         * gst/gstinfo.h:
13233           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13234         * docs/gst/tmpl/gstreamer-unused.sgml:
13235           removed all traces of cvs conflicts
13236
13237 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13238
13239         * configure.ac:
13240         * gst/schedulers/cothreads_compat.h:
13241         * libs/Makefile.am:
13242           remove last instances of wingo cothread usage
13243
13244 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13245
13246         * gst/gstplugin.c:
13247         * gst/gstversion.h.in:
13248         * gst/parse/grammar.y:
13249           change comment block from /** to /* when not gtk-doc comments
13250
13251 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13252
13253         * gst/gst.c: whitespace and doc style fixes
13254
13255 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13256
13257         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13258
13259 2003-12-24  Colin Walters  <walters@verbum.org>
13260
13261         * gst/elements/gsttypefindelement.c:
13262           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13263           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13264           Don't double-free caps.
13265
13266 2003-12-23  David Schleef  <ds@schleef.org>
13267
13268         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13269           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13270           Many little fixes and additions of debug statements to
13271           get rhythmbox working.
13272
13273 2003-12-23  Colin Walters  <walters@verbum.org>
13274
13275         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13276         Use GST_PAD_LINK_SUCCESSFUL.
13277
13278 2003-12-23  David Schleef  <ds@schleef.org>
13279
13280         * gst/elements/gstaggregator.c:
13281         * gst/elements/gsttee.c:
13282           Use gst_pad_proxy_getcaps().
13283         * gst/gstpad.c:
13284         * gst/gstpad.h:
13285           Add gst_pad_proxy_getcaps(), which filter elements can use
13286           as a generic getcaps implementation.
13287           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13288           was advertised.
13289
13290 2003-12-23  David Schleef  <ds@schleef.org>
13291
13292         * gst/gstpad.c:
13293           Rearrange/rewrite much of the pad negotiation code, since it
13294           resembled pasta.  This actually changes the way some
13295           negotiation works, since the previous code was inconsistent
13296           depending on how it was invoked.  Add (internal) structure
13297           GstPadLink, which is used to hold some information (more in
13298           the future) about the link between two pads.  Fixes a number
13299           of bugs, including random lossage of filter caps when the
13300           initial negotiation is delayed.  A few functions are still
13301           unimplemented.
13302         * gst/gstpad.h:
13303           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13304           these when testing GstPadLinkReturn values instead of comparing
13305           directly.
13306
13307 2003-12-23  David Schleef  <ds@schleef.org>
13308
13309         * gst/gstvalue.c: 
13310         * gst/gstvalue.h:
13311           Rearrange lots of code.  Change registration of compare function
13312           into registration of compare/serialize/deserialize functions.
13313           Doesn't include implementation of gst_value_[de]serialize(),
13314           but that should be easy.
13315
13316 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13317
13318         * docs/gst/gstreamer-sections.txt:
13319         * docs/gst/tmpl/gstprops.sgml: removed
13320         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13321           David removed props and caps code, so let's remove their docs as well.
13322           Removed all no longer existing symbols from gstreamer-sections.txt
13323           
13324 2003-12-22  Colin Walters  <walters@verbum.org>
13325
13326         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13327           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13328           of tags directly.
13329
13330 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13331
13332         * gst/elements/gstelements.c:
13333           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13334         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13335           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13336           gst_caps (peer).
13337
13338 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13339
13340         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13341         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13342         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13343         (gst_spider_identity_sink_loop_type_finding):
13344         * gst/autoplug/gstspideridentity.h:
13345           Fix autoplugging in spider element, so it works with new caps.
13346           This was mainly caused by identifying empty caps incorrectly.
13347
13348 2003-12-22  David Schleef  <ds@schleef.org>
13349
13350         * gststructure.c, gstvalue.c, gstvalue.h: Add
13351           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13352           using g_value_copy()
13353
13354 2003-12-21  David Schleef  <ds@schleef.org>
13355
13356         * many, many files: Merge CAPS branch.  This includes:
13357           - implemention of GstValue and several GstValue types
13358           - implemention of GstStructure
13359           - entire rewrite of GstCaps
13360           - removal of GstProps
13361           - many changes to GstPad to compensate for new caps paradigm
13362           - removal of GstBufferpool
13363         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13364         gstvalue.h, gst/gstcaps[2]*.[ch]:
13365           - rename gstcaps2.[ch] to gstcaps.[ch]
13366
13367 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13368
13369         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13370         (gst_queue_chain), (gst_queue_handle_src_event):
13371           implement timeout for sending events. Workaround for if the
13372           pipeline on this queue is not passing any data.
13373
13374 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13375                                                                                 
13376         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13377         * moved CVS to freedesktop.org
13378