docs/random/wtay/network-transp: Some old doc I had.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-27  Wim Taymans  <wim@fluendo.com>
2
3         * docs/random/wtay/network-transp:
4         Some old doc I had.
5
6 2005-07-27  Wim Taymans  <wim@fluendo.com>
7
8         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
9         (gst_dp_event_from_packet):
10         Fix serialization of seek events.
11
12 2005-07-27  Wim Taymans  <wim@fluendo.com>
13
14         * check/gst-libs/gdp.c: (GST_START_TEST):
15         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
16         Fix compilation and fix event serialization.
17
18 2005-07-27  Wim Taymans  <wim@fluendo.com>
19
20         * CHANGES-0.9:
21         * docs/design/part-TODO.txt:
22         * docs/design/part-events.txt:
23         Some docs updates
24
25         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
26         (gst_base_sink_event), (gst_base_sink_do_sync),
27         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
28         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
29         (gst_base_src_do_seek), (gst_base_src_event_handler),
30         (gst_base_src_loop):
31         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
32         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
33         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
34         (gst_base_transform_event), (gst_base_transform_handle_buffer),
35         (gst_base_transform_set_passthrough),
36         (gst_base_transform_is_passthrough):
37         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
38         * gst/elements/gstfilesink.c: (gst_file_sink_event):
39         Event updates.
40
41         * gst/gstbuffer.h:
42         Use faster casts.
43
44         * gst/gstelement.c: (gst_element_seek):
45         * gst/gstelement.h:
46         Update gst_element_seek.
47
48         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
49         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
50         (gst_event_new_flush_start), (gst_event_new_flush_stop),
51         (gst_event_new_eos), (gst_event_new_newsegment),
52         (gst_event_parse_newsegment), (gst_event_new_tag),
53         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
54         (gst_event_parse_qos), (gst_event_new_seek),
55         (gst_event_parse_seek), (gst_event_new_navigation):
56         * gst/gstevent.h:
57         Make GstEvent use GstStructure. Add parsing code, make sure the
58         API is sufficiently generic.
59         Mark possible directions of events and serialization.
60
61         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
62         (_gst_message_copy), (gst_message_new_segment_start),
63         (gst_message_new_segment_done), (gst_message_new_custom),
64         (gst_message_parse_segment_start),
65         (gst_message_parse_segment_done):
66         Small cleanups.
67
68         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
69         (gst_pad_set_caps), (gst_pad_send_event):
70         Update for new events. 
71         Catch events sent in wrong directions.
72
73         * gst/gstqueue.c: (gst_queue_link_src),
74         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
75         (gst_queue_handle_src_query):
76         Event updates.
77
78         * gst/gsttag.c:
79         * gst/gsttag.h:
80         Remove event code from this file.
81
82         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
83         (gst_dp_event_from_packet):
84         Event updates.
85
86 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
87
88         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
89         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
90         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
91           Make debugging actually useful.
92
93 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
94
95         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
96         (gst_pad_fixate_caps):
97           Implement default fixation once again, so that gst_pad_fixate()
98           actually does anything at all. This probably needs to be some
99           sort of a last resort, and use profile-based fixation first, but
100           since that doesn't exist yet, this is the best we have. Fixes
101           visualization in Totem.
102
103 2005-07-22  Wim Taymans  <wim@fluendo.com>
104
105         * docs/design/part-events.txt:
106         Small update.
107
108         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
109         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
110         (gst_base_sink_activate_pull):
111         Some more comments.
112
113         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
114         (gst_fake_src_create):
115         Fix handoff marshall.
116
117         * gst/elements/gstidentity.c: (gst_identity_class_init),
118         (gst_identity_transform_ip):
119         We're a real inplace element.
120
121         * gst/gstbus.c: (gst_bus_post):
122         Added some comments.
123
124         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
125         * tests/muxing/case1.c: (main):
126         * tests/sched/dynamic-pipeline.c: (main):
127         * tests/sched/interrupt1.c: (main):
128         * tests/sched/interrupt2.c: (main):
129         * tests/sched/interrupt3.c: (main):
130         * tests/sched/runxml.c: (main):
131         * tests/sched/sched-stress.c: (main):
132         * tests/seeking/seeking1.c: (event_received), (main):
133         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
134         (main):
135         * tests/threadstate/threadstate3.c: (main):
136         * tests/threadstate/threadstate4.c: (main):
137         * tests/threadstate/threadstate5.c: (main):
138         Fix the tests.
139
140 2005-07-21  Wim Taymans  <wim@fluendo.com>
141
142         * docs/design/part-seeking.txt:
143         Some small additions.
144
145         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
146         (gst_base_sink_get_times), (gst_base_sink_do_sync),
147         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
148         * gst/base/gstbasesink.h:
149         discont values are gint64, handle the math correctly.
150
151         * gst/base/gstbasesrc.c: (gst_base_src_loop):
152         Make the basesrc report error if the source pad is not linked.
153
154         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
155         (gst_queue_loop), (gst_queue_handle_src_query),
156         (gst_queue_src_activate_push):
157         Make queue collect data even if the srcpad is not linked.
158         Start pushing out data as soon as it is linked.
159
160         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
161         * gst/gstutils.h:
162         Added gst_flow_get_name() to ease error reporting.
163
164 2005-07-20  Wim Taymans  <wim@fluendo.com>
165
166         * gst/gstmessage.c: (gst_message_new_segment_start),
167         (gst_message_new_segment_done), (gst_message_parse_segment_start),
168         (gst_message_parse_segment_done):
169         * gst/gstmessage.h:
170         Added a bunch of messages for advanced seeking.
171
172         * gst/parse/grammar.y:
173         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
174         (gst_dpman_state_changed):
175         Fix some new-pad -> pad-added signals
176
177 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
178
179         * docs/manual/appendix-porting.xml:
180         * docs/pwg/appendix-porting.xml:
181           Document new-pad/state-change signal renames and the FixedList
182           type rename.
183
184 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
185
186         * docs/manual/advanced-autoplugging.xml:
187         * docs/manual/basics-helloworld.xml:
188         * docs/manual/basics-pads.xml:
189         * docs/random/ds/0.9-suggested-changes:
190         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
191         * gst/gstelement.h:
192         * gst/gstevent.h:
193         * gst/gstformat.h:
194         * gst/gstquery.h:
195         * gst/gststructure.c: (gst_structure_value_get_generic_type),
196         (gst_structure_parse_array), (gst_structure_parse_value):
197         * gst/gstvalue.c: (gst_type_is_fixed),
198         (gst_value_list_prepend_value), (gst_value_list_append_value),
199         (gst_value_list_get_size), (gst_value_list_get_value),
200         (gst_value_transform_array_string), (gst_value_serialize_array),
201         (gst_value_deserialize_array), (gst_value_intersect_array),
202         (gst_value_is_fixed), (_gst_value_initialize):
203         * gst/gstvalue.h:
204           GstElement::new-pad -> pad-added, GstElement::state-change ->
205           state-changed, GstValueFixedList -> GstValueArray, add format and
206           flags as their own arguments in gst_element_seek() (should improve
207           "bindeability"), remove function generators since they don't work
208           under a whole bunch of compilers (they were deprecated already
209           anyway).
210
211 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
212
213         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
214         (_gst_debug_register_funcptr):
215         * gst/gstinfo.h:
216           Fix illegal cast on some platforms (#309253).
217
218 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
219
220         * gst/gstmessage.c: (gst_message_new_custom):
221         * gst/gstmessage.h:
222           Add _new_custom, make _new_application a macro to _new_custom.
223
224 2005-07-20  Wim Taymans  <wim@fluendo.com>
225
226         * gst/base/gstbasesrc.c: (gst_base_src_init),
227         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
228         * gst/base/gstbasesrc.h:
229         Add a gboolean to decide when to push out a discont.
230
231         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
232         (gst_queue_loop), (gst_queue_handle_src_query),
233         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
234         (gst_queue_set_property), (gst_queue_get_property):
235         Some cleanups.
236
237         * tests/threadstate/threadstate1.c: (main):
238         Make a thread test compile and run... very silly..
239
240
241 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
242
243         * docs/manual/appendix-porting.xml:
244           Mention removal of libgstgconf-0.9.la and existence of gconf
245           elements.
246
247 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
248
249         * docs/pwg/advanced-clock.xml:
250         * docs/pwg/appendix-porting.xml:
251         * docs/pwg/intro-preface.xml:
252         * docs/pwg/other-base.xml:
253         * docs/pwg/other-manager.xml:
254         * docs/pwg/other-nton.xml:
255         * docs/pwg/other-ntoone.xml:
256         * docs/pwg/other-oneton.xml:
257         * docs/pwg/pwg.xml:
258           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
259           demuxer), remove n-to-n (was never written), fix some code examples
260           and links and update the porting section to include all this.
261
262 2005-07-19  Wim Taymans  <wim@fluendo.com>
263
264         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
265         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
266         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
267         (gst_queue_src_activate_push), (gst_queue_change_state),
268         (gst_queue_get_property):
269         * gst/gstqueue.h:
270         Propagate GstFlowReturn more intelligently upstream and output
271         an ERROR/EOS when streaming stopped due to fatal error.
272
273 2005-07-19  Wim Taymans  <wim@fluendo.com>
274
275         * tools/gst-launch.c: (check_intr), (event_loop), (main):
276         Don't block forever for the state change to complete, the
277         pipeline already did with a sensible timeout.
278
279 2005-07-19  Wim Taymans  <wim@fluendo.com>
280
281         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
282         Make sure we never call the create function is we
283         got deactivated.
284
285 2005-07-19  Andy Wingo  <wingo@pobox.com>
286
287         * gst/parse/parse.l: Attempt to solve bug #172815.
288
289 2005-07-19  Wim Taymans  <wim@fluendo.com>
290
291         * docs/design/part-clocks.txt:
292         * docs/design/part-events.txt:
293         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
294         Small docs updates.
295         Only update the seeking values when we are not
296         busy streaming.
297
298 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
299
300         * gst/base/gstbasesrc.c: (gst_base_src_loop):
301           Oops, ignore the result of gst_pad_push_event here.
302
303 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
304
305         * gst/base/gstbasesrc.c: (gst_base_src_loop),
306         (gst_base_src_activate_push):
307           Send discont event from the loop function, as pads
308           aren't activated yet in the activate_push handler.
309
310         * gst/gstbin.c: (bin_bus_handler):
311           Don't leak element name.
312
313 2005-07-18  Andy Wingo  <wingo@pobox.com>
314
315         * configure.ac: Use AS_LIBTOOL_TAGS.
316
317 2005-07-18  Wim Taymans  <wim@fluendo.com>
318
319         * docs/gst/gstreamer.types:
320         Remove deleted types.
321
322 2005-07-18  Wim Taymans  <wim@fluendo.com>
323
324         * check/elements/gstfakesrc.c: (GST_START_TEST):
325         * configure.ac:
326         * gst/Makefile.am:
327         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
328         (init_popt_callback):
329         * gst/gst.h:
330         * gst/gst_private.h:
331         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
332         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
333         * gst/gstbin.h:
334         * gst/gstbus.h:
335         * gst/gstconfig.h.in:
336         * gst/gstelement.c: (gst_element_class_init),
337         (gst_element_set_base_time), (gst_element_get_base_time),
338         (iterator_fold_with_resync), (gst_element_change_state),
339         (gst_element_dispose), (gst_element_get_bus):
340         * gst/gstelement.h:
341         * gst/gstelementfactory.h:
342         * gst/gsterror.c: (_gst_core_errors_init):
343         * gst/gsterror.h:
344         * gst/gstevent.h:
345         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
346         * gst/gstindex.c:
347         * gst/gstinfo.c: (_gst_debug_init):
348         * gst/gstmessage.c: (_gst_message_copy):
349         * gst/gstmessage.h:
350         * gst/gstminiobject.h:
351         * gst/gstobject.c:
352         * gst/gstobject.h:
353         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
354         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
355         * gst/gstpad.h:
356         * gst/gstparse.h:
357         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
358         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
359         (gst_pipeline_get_last_stream_time):
360         * gst/gstpipeline.h:
361         * gst/gstpluginfeature.h:
362         * gst/gstquery.h:
363         * gst/gstscheduler.c:
364         * gst/gstscheduler.h:
365         * gst/gststructure.h:
366         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
367         (gst_task_finalize), (gst_task_func), (gst_task_create),
368         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
369         (gst_task_stop), (gst_task_pause):
370         * gst/gsttask.h:
371         * gst/gsttypefind.h:
372         * gst/gsttypes.h:
373         * gst/registries/gstlibxmlregistry.c: (load_feature),
374         (gst_xml_registry_load), (gst_xml_registry_save_feature):
375         * gst/registries/gstxmlregistry.c:
376         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
377         * gst/schedulers/threadscheduler.c:
378         * libs/gst/control/dparammanager.h:
379         * tools/gst-inspect.c: (print_element_list),
380         (print_plugin_features), (print_element_features):
381         * tools/gst-xmlinspect.c: (print_element_list),
382         (print_plugin_info), (main):
383         Removed plugable schedulers.
384         Removed Scheduler/Manager from elements.
385         Removed gsttypes.h, rearranged includes.
386         Removed dependency pad<->element, element<>pipeline, and
387         various others,  fix includes.
388         implement gst_pad_get_parent() with gst_object_get_parent()
389         Make GstTask sefcontained.
390         Fix _get_state() on GstBin, it did not return ASYNC with a 0
391         timeout.
392         Fix endless loop in iterator_fold_with_resync.
393
394
395 2005-07-18  Wim Taymans  <wim@fluendo.com>
396
397         * gst/Makefile.am:
398         * gst/gstarch.h:
399         Remove old file.
400
401 2005-07-18  Wim Taymans  <wim@fluendo.com>
402
403         * gst/Makefile.am:
404         No more cothreads.h
405
406 2005-07-18  Wim Taymans  <wim@fluendo.com>
407
408         * gst/cothreads.c:
409         * gst/cothreads.h:
410         Let's remove these.
411
412 2005-07-18  Wim Taymans  <wim@fluendo.com>
413
414         * docs/design/part-dynamic.txt:
415         * docs/design/part-events.txt:
416         * docs/design/part-seeking.txt:
417         Some more docs in the works.
418
419         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
420         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
421         (gst_base_transform_setcaps), (gst_base_transform_get_size),
422         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
423         (gst_base_transform_handle_buffer),
424         (gst_base_transform_sink_activate_push),
425         (gst_base_transform_src_activate_pull),
426         (gst_base_transform_set_passthrough),
427         (gst_base_transform_is_passthrough):
428         Refcounting fixes.
429
430         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
431         Cleanups.
432
433         * gst/gstevent.c: (gst_event_finalize):
434         Set SRC to NULL.
435
436         * gst/gstutils.c: (gst_element_unlink),
437         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
438         (gst_pad_proxy_setcaps):
439         * gst/gstutils.h:
440         Add _get_parent_element() to get a pads parent as an element.
441
442 2005-07-18  Wim Taymans  <wim@fluendo.com>
443
444         * check/gst/gstbin.c: (GST_START_TEST):
445         Remove bogus test.
446
447 2005-07-18  Wim Taymans  <wim@fluendo.com>
448
449         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
450         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
451         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
452         (gst_base_sink_event), (gst_base_sink_do_sync),
453         (gst_base_sink_chain), (gst_base_sink_loop),
454         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
455         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
456         Refcounting fixes.
457         Fix logic for returning ASYNC when not prerolled.
458
459 2005-07-18  Wim Taymans  <wim@fluendo.com>
460
461         * gst/gstqueue.c: (gst_queue_handle_sink_event):
462         Fix nasty refcount bug.
463
464 2005-07-16 Philippe Khalaf <burger@speedy.org>
465         * gst/elements/gstfdsrc.c:
466         * gst/elements/gstfdsrc.h:
467         * gst/elements/gstelements.c:
468         * gst/elements/Makefile.am:
469         Ported fdsrc to 0.9.
470
471 2005-07-16  Wim Taymans  <wim@fluendo.com>
472
473         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
474         (gst_base_sink_do_sync):
475         Fix compile error.
476
477 2005-07-16  Wim Taymans  <wim@fluendo.com>
478
479         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
480         (gst_base_sink_event), (gst_base_sink_get_times),
481         (gst_base_sink_do_sync), (gst_base_sink_change_state):
482         * gst/base/gstbasesink.h:
483         Store and use discont values when syncing buffers as described
484         in design docs.
485         
486         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
487         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
488         (gst_base_src_activate_push):
489         Push discont event when starting.
490
491         * gst/elements/gstidentity.c: (gst_identity_transform):
492         Small cleanups.
493
494         * gst/gstbin.c: (gst_bin_change_state):
495         Small cleanups in base_time  distribution.
496
497         * gst/gstelement.c: (gst_element_set_base_time),
498         (gst_element_get_base_time), (gst_element_change_state):
499         * gst/gstelement.h:
500         Added methods for the base_time of the element.
501         Some MT fixes.
502
503         * gst/gstpipeline.c: (gst_pipeline_send_event),
504         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
505         (gst_pipeline_get_last_stream_time):
506         * gst/gstpipeline.h:
507         MT fixes.
508         Handle seeking as described in design doc, remove stream_time
509         hack.
510         Cleanups clock and stream_time selection code. Added accessors
511         for the stream_time.
512         
513
514 2005-07-16  Andy Wingo  <wingo@pobox.com>
515
516         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
517         (#305291).
518
519 2005-07-16  Wim Taymans  <wim@fluendo.com>
520
521         * check/gst/gstbin.c: (GST_START_TEST):
522         Make elements silent as the deep_notify refs the
523         parent, which might make the test fail.
524
525         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
526         Don't hold the lock for too long.
527
528 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
529
530         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
531           Don't unref the caps we passed to gst_caps_make_writable() after
532           passing them. gst_caps_make_writable() will do that for us.
533
534 2005-07-15  Andy Wingo  <wingo@pobox.com>
535
536         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
537         (#157311).
538
539         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
540         own marshalling function for the handoff signal. Properly type the
541         buffer as a buffer. Fixes some warnings. Should do a more general
542         solution.
543         (gst_identity_class_init): Plug into the right marshaller.
544
545 2005-07-15  Wim Taymans  <wim@fluendo.com>
546
547         * docs/design/part-TODO.txt:
548         * docs/design/part-clocks.txt:
549         * docs/design/part-element-sink.txt:
550         * docs/design/part-events.txt:
551         * docs/design/part-gstpipeline.txt:
552         Updated docs, mostly DISCONT related.
553
554 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
555
556         * docs/pwg/building-pads.xml:
557           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
558
559 2005-07-15  Andy Wingo  <wingo@pobox.com>
560
561         * tools/gst-typefind.c: Update, add copyright block.
562
563         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
564         Normalize and truncate caps before fixation.
565
566         * gst/gstcaps.h:
567         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
568         discards all but the first structure from its argument.
569
570 2005-07-15  Wim Taymans  <wim@fluendo.com>
571
572         * gst/base/gstbasetransform.c: (gst_base_transform_init),
573         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
574         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
575         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
576         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
577         (gst_base_transform_chain), (gst_base_transform_change_state),
578         (gst_base_transform_set_passthrough),
579         (gst_base_transform_is_passthrough):
580         * gst/base/gstbasetransform.h:
581         Make passthrough work using the bufferpools.
582         Changed API a bit, subclasses have to write into a buffer
583         provided by the base class.
584         More debug info in nego functions.
585         
586         * gst/elements/gstidentity.c: (gst_identity_init),
587         (gst_identity_transform):
588         Port to new base class.
589
590 2005-07-15  Wim Taymans  <wim@fluendo.com>
591
592         * gst/gstmessage.c: (gst_message_new_state_changed):
593         * tools/gst-launch.c: (event_loop), (main):
594         Totally dump messages in -launch with the -m option.
595         Fix message name for State messages,
596
597 2005-07-14  Wim Taymans  <wim@fluendo.com>
598
599         * gst/base/gstbasesrc.c: (gst_base_src_loop):
600         Post error messages on errors.
601
602 2005-07-14  Wim Taymans  <wim@fluendo.com>
603
604         * gst/gstcaps.c: (gst_caps_do_simplify):
605         Remove debug info.
606
607         * gst/gsterror.h:
608         Define error for stream stopped.
609
610         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
611         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
612         Do proper return values.
613
614         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
615         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
616         (gst_pad_get_range):
617         Better return values.
618
619         * gst/gstpad.h:
620         Reorganise return values, add macro to check for fatal errors.
621
622         * gst/gstqueue.c: (gst_queue_chain):
623         Return proper GstFlowReturn values,
624
625 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
626
627         * docs/gst/gstreamer-sections.txt:
628         * docs/gst/gstreamer.types:
629         * docs/gst/tmpl/gst.sgml:
630         * docs/gst/tmpl/gstbasesink.sgml:
631         * docs/gst/tmpl/gstbasesrc.sgml:
632         * docs/gst/tmpl/gstbasetransform.sgml:
633         * docs/gst/tmpl/gstbin.sgml:
634         * docs/gst/tmpl/gstbuffer.sgml:
635         * docs/gst/tmpl/gstcaps.sgml:
636         * docs/gst/tmpl/gstclock.sgml:
637         * docs/gst/tmpl/gstcompat.sgml:
638         * docs/gst/tmpl/gstconfig.sgml:
639         * docs/gst/tmpl/gstelement.sgml:
640         * docs/gst/tmpl/gstelementdetails.sgml:
641         * docs/gst/tmpl/gstelementfactory.sgml:
642         * docs/gst/tmpl/gstenumtypes.sgml:
643         * docs/gst/tmpl/gsterror.sgml:
644         * docs/gst/tmpl/gstevent.sgml:
645         * docs/gst/tmpl/gstfakesink.sgml:
646         * docs/gst/tmpl/gstfakesrc.sgml:
647         * docs/gst/tmpl/gstfilesink.sgml:
648         * docs/gst/tmpl/gstfilesrc.sgml:
649         * docs/gst/tmpl/gstfilter.sgml:
650         * docs/gst/tmpl/gstformat.sgml:
651         * docs/gst/tmpl/gstghostpad.sgml:
652         * docs/gst/tmpl/gstimplementsinterface.sgml:
653         * docs/gst/tmpl/gstindex.sgml:
654         * docs/gst/tmpl/gstindexfactory.sgml:
655         * docs/gst/tmpl/gstinfo.sgml:
656         * docs/gst/tmpl/gstiterator.sgml:
657         * docs/gst/tmpl/gstmacros.sgml:
658         * docs/gst/tmpl/gstmemchunk.sgml:
659         * docs/gst/tmpl/gstminiobject.sgml:
660         * docs/gst/tmpl/gstobject.sgml:
661         * docs/gst/tmpl/gstpad.sgml:
662         * docs/gst/tmpl/gstpadtemplate.sgml:
663         * docs/gst/tmpl/gstparse.sgml:
664         * docs/gst/tmpl/gstpipeline.sgml:
665         * docs/gst/tmpl/gstplugin.sgml:
666         * docs/gst/tmpl/gstpluginfeature.sgml:
667         * docs/gst/tmpl/gstquery.sgml:
668         * docs/gst/tmpl/gstqueue.sgml:
669         * docs/gst/tmpl/gstregistry.sgml:
670         * docs/gst/tmpl/gstregistrypool.sgml:
671         * docs/gst/tmpl/gstscheduler.sgml:
672         * docs/gst/tmpl/gstschedulerfactory.sgml:
673         * docs/gst/tmpl/gststructure.sgml:
674         * docs/gst/tmpl/gstsystemclock.sgml:
675         * docs/gst/tmpl/gsttaglist.sgml:
676         * docs/gst/tmpl/gsttagsetter.sgml:
677         * docs/gst/tmpl/gsttrace.sgml:
678         * docs/gst/tmpl/gsttrashstack.sgml:
679         * docs/gst/tmpl/gsttypefind.sgml:
680         * docs/gst/tmpl/gsttypefindfactory.sgml:
681         * docs/gst/tmpl/gsttypes.sgml:
682         * docs/gst/tmpl/gsturihandler.sgml:
683         * docs/gst/tmpl/gsturitype.sgml:
684         * docs/gst/tmpl/gstutils.sgml:
685         * docs/gst/tmpl/gstvalue.sgml:
686         * docs/gst/tmpl/gstversion.sgml:
687         * docs/gst/tmpl/gstxml.sgml:
688         * docs/libs/tmpl/gstcontrol.sgml:
689         * docs/libs/tmpl/gstdataprotocol.sgml:
690         * docs/libs/tmpl/gstdparam.sgml:
691         * docs/libs/tmpl/gstdplinint.sgml:
692         * docs/libs/tmpl/gstdpman.sgml:
693         * docs/libs/tmpl/gstdpsmooth.sgml:
694         * docs/libs/tmpl/gstgetbits.sgml:
695         * docs/libs/tmpl/gstunitconvert.sgml:
696         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
697         (gst_push_src_base_init), (gst_push_src_class_init),
698         (gst_push_src_init), (gst_push_src_create):
699         * gst/base/gstpushsrc.h:
700         * gst/elements/gstelements.c:
701         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
702         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
703         (gst_fake_sink_init), (gst_fake_sink_set_property),
704         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
705         (gst_fake_sink_event), (gst_fake_sink_preroll),
706         (gst_fake_sink_render), (gst_fake_sink_change_state):
707         * gst/elements/gstfakesink.h:
708         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
709         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
710         (gst_fake_src_base_init), (gst_fake_src_class_init),
711         (gst_fake_src_init), (gst_fake_src_event_handler),
712         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
713         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
714         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
715         (gst_fake_src_create_buffer), (gst_fake_src_create),
716         (gst_fake_src_start), (gst_fake_src_stop):
717         * gst/elements/gstfakesrc.h:
718         * gst/elements/gstfilesink.c: (_do_init),
719         (gst_file_sink_base_init), (gst_file_sink_class_init),
720         (gst_file_sink_init), (gst_file_sink_dispose),
721         (gst_file_sink_set_location), (gst_file_sink_set_property),
722         (gst_file_sink_get_property), (gst_file_sink_open_file),
723         (gst_file_sink_close_file), (gst_file_sink_query),
724         (gst_file_sink_event), (gst_file_sink_render),
725         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
726         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
727         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
728         * gst/elements/gstfilesink.h:
729         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
730         (gst_file_src_class_init), (gst_file_src_init),
731         (gst_file_src_finalize), (gst_file_src_set_location),
732         (gst_file_src_set_property), (gst_file_src_get_property),
733         (gst_file_src_map_region), (gst_file_src_map_small_region),
734         (gst_file_src_create_mmap), (gst_file_src_create_read),
735         (gst_file_src_create), (gst_file_src_is_seekable),
736         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
737         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
738         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
739         (gst_file_src_uri_handler_init):
740         * gst/elements/gstfilesrc.h:
741           more autistic cleanliness in functions/names/defines
742
743 2005-07-13  Andy Wingo  <wingo@pobox.com>
744
745         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
746         source couldn't negotiate.
747
748         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
749         connections again.
750
751         * gst/gstutils.h:
752         * gst/gstutils.c (gst_element_link_pads_filtered): New old
753         function. I am channeling Hades. Put your boots on suckers!!!
754
755 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
756
757         * testsuite/caps/Makefile.am:
758         * testsuite/caps/value_compare.c:
759         * testsuite/caps/value_intersect.c:
760         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
761           move two testsuite apps over to the check dir
762
763 2005-07-12  Wim Taymans  <wim@fluendo.com>
764
765         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
766         Added more debug info in the negotiate process.
767
768         * gst/gstmessage.h:
769         Prepare for segment playback.
770
771         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
772         Better debugging.
773
774         * gst/gstutils.c:
775         Some more docs.
776
777         * tools/gst-launch.c: (main):
778         NULL pipeline on errors.
779
780 2005-07-12  Andy Wingo  <wingo@pobox.com>
781
782         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
783         not it comes from a malloc region. Make sure our copy gets freed.
784
785 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
786
787         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
788         * check/gst/gstmessage.c: (GST_START_TEST):
789         * check/gst/gststructure.c: (GST_START_TEST),
790         (gst_structure_suite), (main):
791           more testing
792         * gst/gstelement.c: (gst_element_message_full):
793           clean up GError and debug string now that they get copied
794         * gst/gstmessage.c: (gst_message_new_error),
795         (gst_message_new_warning), (gst_message_parse_error),
796         (gst_message_parse_warning):
797           use GST_TYPE_G_ERROR for structure_new, and take copies of
798           arguments, so that we don't mess up refcounting
799
800 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
801
802         * check/Makefile.am:
803           add per-test valgrind targets
804         * check/gst-libs/gdp.c: (GST_START_TEST),
805         (gst_data_protocol_suite), (main):
806           clean up
807
808 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
809
810         * check/Makefile.am:
811           instate more valgrindable tests
812         * check/elements/gstfakesrc.c: (chain_func), (event_func),
813         (GST_START_TEST), (fakesrc_suite):
814         * check/gst/gstpad.c: (GST_START_TEST):
815         * check/gst/gststructure.c: (GST_START_TEST):
816           fix test leaks
817         * docs/gst/tmpl/gstminiobject.sgml:
818         * gst/gstpad.c: (gst_pad_finalize):
819           fix the static mutex leak
820
821 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
822
823         * check/Makefile.am:
824           add two more tests for valgrinding
825         * check/gst/gstvalue.c: (GST_START_TEST):
826           test refcount of deserialized buffer, found a leak
827         * docs/gst/gstreamer-docs.sgml:
828         * docs/gst/gstreamer-sections.txt:
829         * docs/gst/gstreamer.types:
830         * docs/gst/tmpl/gstminiobject.sgml:
831           add miniobject to docs
832         * gst/gstminiobject.c:
833           add some docs
834         * gst/gstvalue.c: (gst_value_deserialize_buffer),
835         (gst_string_unwrap):
836           fix a hard-to-find invalid write for one of the tests
837           fix a leak for deserialized buffers
838
839 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
840
841         * docs/pwg/advanced-events.xml:
842         * docs/pwg/advanced-request.xml:
843         * docs/pwg/advanced-scheduling.xml:
844         * docs/pwg/appendix-porting.xml:
845         * docs/pwg/building-boiler.xml:
846         * docs/pwg/intro-preface.xml:
847         * docs/pwg/other-ntoone.xml:
848           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
849           of example code and explanation for pad activation, loop() and
850           getrange() functions and a bit more. Remove old comments pointing
851           to loop-functions.
852         * examples/pwg/Makefile.am:
853           Add loop/getrange examples.
854
855 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
856
857         * configure.ac:
858           check for valgrind binary + some fixes
859         * check/gst.supp:
860           valgrind suppressions for the tests
861         * check/Makefile.am:
862           add a valgrind: target that valgrinds the unit tests
863         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
864         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
865         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
866         * check/gst/gstghostpad.c:
867           added some cleanup
868         * check/gst/gstdata.c:
869           removed
870         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
871         (thread_unref), (gst_mini_object_suite), (main):
872           added
873         * gst/gst.c: (gst_deinit):
874         * gst/gst.h:
875           add a method to clean up.
876         * gst/gstsystemclock.c: (gst_system_clock_dispose),
877         (gst_system_clock_obtain):
878           allow for disposing the system clock.
879         * tools/gst-launch.c: (main):
880           deinit
881
882 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
883
884         * docs/gst/tmpl/gstbasesrc.sgml:
885         * docs/gst/tmpl/gstfakesrc.sgml:
886         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
887         (gst_base_src_init), (gst_base_src_set_property),
888         (gst_base_src_get_property), (gst_base_src_get_range),
889         (gst_base_src_start):
890         * gst/base/gstbasesrc.h:
891           add num-buffers property
892         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
893         (gst_fakesrc_init), (gst_fakesrc_set_property),
894         (gst_fakesrc_get_property), (gst_fakesrc_create),
895         (gst_fakesrc_start):
896           remove num-buffers property
897
898 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
899
900         * docs/gst/gstreamer-sections.txt:
901         * docs/gst/tmpl/gstbasesink.sgml:
902         * docs/gst/tmpl/gstbasesrc.sgml:
903         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
904         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
905         (gst_base_sink_finalize), (gst_base_sink_set_clock),
906         (gst_base_sink_set_property), (gst_base_sink_get_property),
907         (gst_base_sink_handle_object), (gst_base_sink_event),
908         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
909         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
910         (gst_base_sink_loop), (gst_base_sink_deactivate),
911         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
912         (gst_base_sink_change_state):
913         * gst/base/gstbasesink.h:
914         * gst/base/gstbasesrc.h:
915         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
916         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
917         (gst_filesink_init):
918           more macro splitting
919
920 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
921
922         * gst/gstelement.c: (gst_element_get_bus):
923           add debug
924         * tools/gst-launch.c: (check_intr), (event_loop):
925           fix bus leaks
926
927 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
928
929         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
930           fix a caps leak
931
932 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
933
934         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
935         (gst_base_src_finalize):
936           add finalize method and clean up properly
937         * gst/gstpipeline.c: (gst_pipeline_dispose):
938           add debug
939
940 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
941
942         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
943         (gst_bin_suite):
944           add more things to check
945         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
946         * gst/gstelement.c:
947           more debug
948
949 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
950
951         * check/elements/gstfakesrc.c: (chain_func), (event_func),
952         (GST_START_TEST), (fakesrc_suite):
953         * check/gst-libs/gdp.c: (GST_START_TEST):
954         * check/gst/gst.c: (GST_START_TEST):
955         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
956         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
957         * check/gst/gstbus.c: (GST_START_TEST):
958         * check/gst/gstcaps.c: (GST_START_TEST):
959         * check/gst/gstdata.c: (GST_START_TEST):
960         * check/gst/gstelement.c: (GST_START_TEST):
961         * check/gst/gstghostpad.c: (GST_START_TEST):
962         * check/gst/gstiterator.c: (GST_START_TEST):
963         * check/gst/gstmessage.c: (GST_START_TEST):
964         * check/gst/gstobject.c: (GST_START_TEST):
965         * check/gst/gstpad.c: (GST_START_TEST):
966         * check/gst/gststructure.c: (GST_START_TEST):
967         * check/gst/gstsystemclock.c: (GST_START_TEST),
968         (gst_systemclock_suite):
969         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
970         * check/gst/gstvalue.c: (GST_START_TEST):
971         * check/pipelines/cleanup.c: (GST_START_TEST):
972         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
973         * check/states/sinks.c: (GST_START_TEST):
974         * check/gstcheck.c: (gst_check_init):
975         * check/gstcheck.h:
976           add debugging category
977           use GST_START_TEST now, so we add a debug line
978
979 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
980
981         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
982           add test for state change message on a bin
983         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
984           add another test
985         * gst/gstbin.c: (gst_bin_init):
986         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
987         * gst/gstelement.c: (gst_element_post_message),
988         (gst_element_set_state):
989         * gst/gstelementfactory.c: (gst_element_factory_create):
990         * gst/gstmessage.c: (gst_message_new):
991         * gst/gstscheduler.c:
992           various debugging additions and cleanups
993
994 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
995
996         * check/Makefile.am:
997         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
998         (main):
999           adding tests for elements
1000         * gst/gstelement.c: (gst_element_dispose):
1001
1002 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1003
1004         * gst/registries/gstlibxmlregistry.c: (load_feature):
1005           plug more leaks.  A simple gst_init() now is leakfree, yay.
1006
1007 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1008
1009         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1010         (gst_xml_registry_load):
1011           plug another memleak
1012
1013 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1014
1015         * configure.ac:
1016           use GST_SET_ERROR_CFLAGS
1017         * docs/faq/cvs.xml:
1018           change to ERROR_CFLAGS
1019
1020 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1021
1022         * configure.ac:
1023           make GST_ERROR_CFLAGS overridable and re-enable Werror
1024         * docs/faq/cvs.xml:
1025           add a note about error CFLAGS
1026         * docs/gst/tmpl/gstfakesrc.sgml:
1027         * gst/elements/gstfakesrc.c:
1028           comment out some unused code
1029         * gst/gst.c: (split_and_iterate):
1030         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1031         (load_feature):
1032           plug some memleaks
1033
1034 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1035
1036         * common/Makefile.am:
1037         * common/gtk-doc.mak:
1038         * docs/gst/Makefile.am:
1039           factor out gtk-doc.mak
1040
1041 2005-07-07  Wim Taymans  <wim@fluendo.com>
1042
1043         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1044         (gst_thread_scheduler_dispose):
1045         Unlock the STREAM_LOCK completely.
1046
1047 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1048
1049         * check/Makefile.am:
1050         * check/elements/.cvsignore:
1051         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1052         (START_TEST), (fakesrc_suite), (main):
1053         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1054         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1055         (gst_fakesrc_create), (gst_fakesrc_start):
1056         * gst/elements/gstfakesrc.h:
1057           adding a first element test
1058
1059 2005-07-07  Andy Wingo  <wingo@pobox.com>
1060
1061         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1062         debug message.
1063
1064 2005-07-07  Wim Taymans  <wim@fluendo.com>
1065
1066         * gst/gstquery.c:
1067         * gst/gstquery.h:
1068         Remove old types
1069
1070 2005-07-07  Wim Taymans  <wim@fluendo.com>
1071
1072         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1073         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1074         Allow subclasses to implement their own negotiation.
1075
1076 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1077
1078         * docs/design/part-gstbin.txt:
1079         * docs/design/part-gstpipeline.txt:
1080           Update design notes to reflect the movement of
1081           responsibility for bus handling from GstPipeline to
1082           GstBin
1083
1084 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1085
1086         * configure.ac:
1087           Remove unnecessary queue2/3/4 examples.
1088
1089 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1090
1091         * examples/Makefile.am:
1092         * examples/helloworld/helloworld.c: (event_loop), (main):
1093         * examples/queue/queue.c: (event_loop), (main):
1094         * examples/queue2/queue2.c: (main):
1095           Update a couple of the examples to work again.
1096
1097         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1098         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1099          Spelling corrections and extra debug.
1100         
1101         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1102         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1103         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1104         * gst/gstbin.h:
1105         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1106         (gst_pipeline_change_state):
1107         * gst/gstpipeline.h:
1108           Move the bus handler for children to the GstBin, and create a
1109           separate bus for receiving messages from children to the one the
1110           bus sends 'upwards' on.
1111
1112 2005-07-06  Wim Taymans  <wim@fluendo.com>
1113
1114         * gst/base/README:
1115         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1116         (gst_base_sink_handle_object), (gst_base_sink_loop),
1117         (gst_base_sink_change_state):
1118         * gst/base/gstbasesink.h:
1119         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1120         (gst_base_src_init), (gst_base_src_setcaps),
1121         (gst_base_src_getcaps), (gst_base_src_loop),
1122         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1123         (gst_base_src_start), (gst_base_src_change_state):
1124         * gst/base/gstbasesrc.h:
1125         Make basesrc negotiate.
1126         Handle the case where preroll fails in basesink.
1127         Update README.
1128
1129 2005-07-06  Wim Taymans  <wim@fluendo.com>
1130
1131         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1132         Implement the fixate function.
1133         Clean up acceptcaps.
1134
1135 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1136
1137         * docs/pwg/building-filterfactory.xml:
1138         * docs/pwg/pwg.xml:
1139           Remove never-written filter-factory chapter; I'll add the various
1140           base classes to part 4 ("other element types") later on.
1141
1142 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1143
1144         * docs/pwg/advanced-negotiation.xml:
1145         * docs/pwg/building-boiler.xml:
1146         * docs/pwg/building-pads.xml:
1147         * docs/pwg/pwg.xml:
1148         * examples/pwg/Makefile.am:
1149           Add a chapter on caps negotiation, simplify the original code
1150           samples a bit w.r.t. caps negotiation, add link to the advanced
1151           section. Add a bunch of examples showing different use cases of
1152           different types of caps negotiation. Upstream renegotiation isn't
1153           fully documented yet since nobody knows how that works.
1154
1155 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1156
1157         * check/gst/gstpad.c:
1158         * check/gstcheck.c:
1159         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1160           if pad has no parent, return NULL as list of internal links
1161
1162 2005-07-05  Andy Wingo  <wingo@pobox.com>
1163
1164         * gst/elements/gstfilesrc.c:
1165         * gst/elements/gstfakesrc.c: 
1166         * gst/base/gstpushsrc.c:
1167         * gst/base/gstbasesrc.h: 
1168         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1169         
1170 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1171
1172         * Makefile.am:
1173           better report generation target (lcov needs a patch)
1174
1175 2005-07-05  Andy Wingo  <wingo@pobox.com>
1176
1177         * gst/elements, testsuite: Null if we got it...
1178
1179 2005-07-05  Wim Taymans  <wim@fluendo.com>
1180
1181         * configure.ac:
1182         * libs/gst/dataprotocol/Makefile.am:
1183         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1184         * libs/gst/dataprotocol/dataprotocol.h:
1185         * pkgconfig/Makefile.am:
1186         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1187         * pkgconfig/gstreamer-dataprotocol.pc.in:
1188         Ported dataprotol to 0.9. 
1189         Added pkgconfig files.
1190
1191 2005-07-05  Andy Wingo  <wingo@pobox.com>
1192
1193         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1194         Default to returning TRUE for the case when tranform_caps returns
1195         a fixed caps, like for identity or volume.
1196
1197         * check/gst/gstbus.c (pound_bus_with_messages): 
1198         * check/gst/gstmessage.c (START_TEST): 
1199         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1200         message API change.
1201
1202         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1203         logic weaks here: always run transform_caps, trying passthrough
1204         operation only if the original caps intersects with the transform.
1205
1206         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1207         source and sink caps.
1208
1209         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1210         Intersect the peer caps with the pad template before going into
1211         transform_caps.
1212         (gst_base_transform_transform_caps): More debugging.
1213
1214         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1215         src argument.
1216
1217 2005-07-04  Edward Hervey  <edward@fluendo.com>
1218
1219         * gst/gstutils.c:
1220         * gst/gstutils.h:
1221         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1222         in bindings.
1223
1224 2005-07-04  Andy Wingo  <wingo@pobox.com>
1225
1226         * check/gst/gstpad.c: Only set explicit caps on pads.
1227
1228 2005-07-01  Andy Wingo  <wingo@pobox.com>
1229
1230         * tests/network-clock.scm: Commentary update.
1231
1232         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1233         Didn't really make sense, not implementable with basetransform,
1234         etc.
1235         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1236         attempt at implementing the sync property, needs an unlock method.
1237
1238         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1239         New func, by default returns the same caps (the identity
1240         transformation).
1241         (gst_base_transform_getcaps): Uses transform_caps to return
1242         something sensible.
1243         (gst_base_transform_setcaps): Complicated logic to get caps on
1244         both pads, even if they are different, and to call set_caps once
1245         for every time both pads get their caps set.
1246         (gst_base_transform_handle_buffer): Give the ref to the transform
1247         function. Allows in-place modification of the buffer.
1248
1249         * gst/base/gstbasetransform.h (transform_caps): New class method.
1250         Given caps on one side, what can I do on the other.
1251         (set_caps): Take two caps, one for each side of the element.
1252
1253         * gst/gstpad.h:
1254         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1255         caps in place. This is safe because we can check the mutability of
1256         the caps, and a good idea because fixate functions are just called
1257         as a matter of last resort. (Not actually implemented.)
1258         (gst_pad_set_caps): If the caps we're setting is actually the same
1259         as the existing pad caps, just update the pointer without calling
1260         setcaps. Assert that caps is either NULL or fixed, as per the
1261         docs.
1262
1263         * gst/gstghostpad.c: Update for fixate changes.
1264
1265 2005-07-02  Andy Wingo  <wingo@pobox.com>
1266
1267         * gst/gstcaps.c:
1268         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1269         two refcounts makes it immutable, which is enough. Doc more.
1270
1271 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1272
1273         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1274           Put the mini_object into GValue as a mini_object,
1275           not a gpointer, since that's how we declared
1276           the signal.
1277
1278 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1279
1280         * examples/pwg/Makefile.am:
1281           Fix buildbot again.
1282
1283 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1284
1285         * docs/pwg/building-testapp.xml:
1286           Add extra check.
1287         * examples/pwg/Makefile.am:
1288           Fix buildbot.
1289
1290 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1291
1292         * configure.ac:
1293         * examples/Makefile.am:
1294         * examples/pwg/Makefile.am:
1295         * examples/pwg/extract.pl:
1296           Enable building the PWG examples.
1297         * docs/pwg/advanced-interfaces.xml:
1298           Add URI interface stub.
1299         * docs/pwg/advanced-types.xml:
1300         * docs/pwg/other-autoplugger.xml:
1301         * docs/pwg/appendix-porting.xml:
1302         * docs/pwg/pwg.xml:
1303           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1304         * docs/pwg/building-boiler.xml:
1305         * docs/pwg/building-chainfn.xml:
1306         * docs/pwg/building-pads.xml:
1307         * docs/pwg/building-props.xml:
1308         * docs/pwg/building-state.xml:
1309         * docs/pwg/building-testapp.xml:
1310           Update the building-*.xml parts for 0.9 changes. All examples
1311           code blocks compile in examples/pwg/*.
1312
1313 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1314
1315         * docs/manual/advanced-autoplugging.xml:
1316         * docs/manual/appendix-checklist.xml:
1317         * docs/manual/appendix-integration.xml:
1318         * docs/manual/highlevel-components.xml:
1319           Fix playbin/decodebin examples, update docs a bit, mention bus
1320           instead of signals in various places, mention kmplayer and
1321           kaffeine since they have a working GStreamer backend in the KDE
1322           section.
1323
1324 2005-06-30  Wim Taymans  <wim@fluendo.com>
1325
1326         * CHANGES-0.9:
1327         * docs/design/draft-ghostpads.txt:
1328         * docs/design/draft-push-pull.txt:
1329         * docs/design/draft-query.txt:
1330         * docs/design/part-TODO.txt:
1331         * docs/design/part-query.txt:
1332         Added CHANGES-0.9 doc, updated status of other docs.
1333         
1334         * gst/gstquery.h:
1335         Remove "hmm" macro
1336
1337 2005-06-30  Wim Taymans  <wim@fluendo.com>
1338
1339         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1340         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1341         (gst_base_sink_change_state):
1342         * gst/base/gstbasesink.h:
1343         Some tweaks, only EOS and a buffer complete a preroll.
1344
1345 2005-06-30  Andy Wingo  <wingo@pobox.com>
1346
1347         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1348         activate_push down to the internal pad as well.
1349
1350 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1351
1352         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1353
1354         * gst/gsttaginterface.c:
1355           Some documentation fixes (#307394 and #307397).
1356
1357 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1358
1359         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1360
1361         * gst/gstvalue.c: (gst_value_intersect_list):
1362           Fix memleak (#309125).
1363
1364 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1365
1366         * docs/manual/advanced-dataaccess.xml:
1367           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1368         * docs/manual/basics-pads.xml:
1369           Add reference for filtered caps to above chapter.
1370
1371 2005-06-30  Wim Taymans  <wim@fluendo.com>
1372
1373         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1374         (gst_bin_change_state):
1375         Probes are gone.
1376         Lame attempt at making the state change function a bit
1377         more readable.
1378
1379 2005-06-30  Wim Taymans  <wim@fluendo.com>
1380
1381         * docs/design/part-clocks.txt:
1382         * docs/design/part-element-sink.txt:
1383         * docs/design/part-events.txt:
1384         * docs/design/part-preroll.txt:
1385         * docs/design/part-states.txt:
1386         Some more tweeks and additions to the docs.
1387
1388 2005-06-30  Wim Taymans  <wim@fluendo.com>
1389
1390         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1391         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1392         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1393         (gst_pad_check_pull_range), (gst_pad_get_range),
1394         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1395         * gst/gstpad.h:
1396         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1397         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1398         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1399         (gst_pad_remove_buffer_probe):
1400         Removed atomic operations, use existing LOCK.
1401         Move exception handling out of main code path.
1402
1403 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1404
1405         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1406         (silly_return_true_function), (gst_pad_class_init),
1407         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1408         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1409         (gst_pad_send_event):
1410           Fix accumulator, add default value by using _emitv() instead
1411           of _emit() for signal emission.
1412
1413 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1414
1415         * docs/manual/advanced-dataaccess.xml:
1416         * examples/manual/Makefile.am:
1417           Add probe example.
1418         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1419           Make work (??).
1420
1421 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1422
1423         * gst/elements/gstfilesink.c: (gst_filesink_render):
1424           Simplify code so that we don't have to handle short
1425           writes and return GST_FLOW_ERROR if an error occured.
1426
1427 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1428
1429         * docs/gst/gstreamer-docs.sgml:
1430           Remove probes more.
1431
1432 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1433
1434         * docs/gst/gstreamer-sections.txt:
1435         * docs/gst/tmpl/gstpad.sgml:
1436         * docs/gst/tmpl/gstprobe.sgml:
1437         * gst/Makefile.am:
1438         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1439         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1440         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1441         (gst_pad_push_event), (gst_pad_send_event):
1442         * gst/gstpad.h:
1443         * gst/gstutils.c: (gst_pad_add_data_probe),
1444         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1445         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1446         (gst_pad_remove_buffer_probe):
1447         * gst/gstutils.h:
1448           Remove old probes, add new g-signal-based probes and some utility
1449           functions.
1450
1451 2005-06-29  Edward Hervey  <edward@fluendo.com>
1452
1453         * gst/gstelementfactory.c:
1454         * gst/gstutils.h:
1455         * gst/gstutils.c:
1456         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1457         the definition to the header file.
1458
1459 2005-06-29  Andy Wingo  <wingo@pobox.com>
1460
1461         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1462         plugins from the source directory.
1463
1464 2005-06-29  Wim Taymans  <wim@fluendo.com>
1465
1466         * docs/gst/tmpl/gstbuffer.sgml:
1467         * docs/gst/tmpl/gstclock.sgml:
1468         Some fixings for blantently wrong text.
1469
1470 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1471
1472         * check/Makefile.am:
1473         * gst/gst.c: (add_path_func), (init_pre):
1474         * gst/gstregistry.c: (gst_registry_add_path):
1475           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1476           only scan the GST_PLUGIN_PATH locations, and not add
1477           system locations
1478
1479 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1480
1481         * docs/gst/gstreamer-sections.txt:
1482         * docs/gst/tmpl/gstbasesrc.sgml:
1483         * gst/gstelement.c:
1484         * gst/gstelement.h:
1485         * gst/gstevent.c:
1486         * gst/gstutils.c:
1487           doc fixes
1488
1489 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1490
1491         * docs/manual/advanced-autoplugging.xml:
1492           Fix autoplugging example.
1493
1494 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1495
1496         * docs/manual/advanced-autoplugging.xml:
1497         * docs/manual/mime-world.fig:
1498           Try to get autoplugging working, fix type detection. Fix text
1499           in hello-world image.
1500
1501 2005-06-29  Wim Taymans  <wim@fluendo.com>
1502
1503         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1504         (gst_base_sink_change_state):
1505         Small debug line.
1506
1507         * gst/gstclock.h:
1508         map SIGNAL and BROADCAST to the right function.
1509
1510         * gst/gstobject.h:
1511         Remove redundant braces.
1512
1513         * gst/gstpad.c: (gst_pad_set_caps):
1514         Don't call setcaps function when reseting caps to NULL.
1515
1516         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1517         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1518         (gst_system_clock_id_unschedule):
1519         Use BROADCAST as this is what we do.
1520
1521 2005-06-29  Wim Taymans  <wim@fluendo.com>
1522
1523         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1524         We are actually prerolling before commiting the state
1525         change. 
1526
1527 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1528
1529         * docs/manual/advanced-clocks.xml:
1530         * docs/manual/advanced-interfaces.xml:
1531         * docs/manual/advanced-metadata.xml:
1532         * docs/manual/advanced-position.xml:
1533         * docs/manual/advanced-schedulers.xml:
1534         * docs/manual/advanced-threads.xml:
1535         * docs/manual/appendix-porting.xml:
1536         * docs/manual/basics-bins.xml:
1537         * docs/manual/basics-bus.xml:
1538         * docs/manual/basics-elements.xml:
1539         * docs/manual/basics-helloworld.xml:
1540         * docs/manual/basics-pads.xml:
1541         * docs/manual/highlevel-components.xml:
1542         * docs/manual/manual.xml:
1543         * docs/manual/thread.fig:
1544           Update (until threads/scheduling) Application Development Manual;
1545           remove GstThread, add GstBus, add simple porting checklist, add
1546           documentation for tag writing, clocks, make all examples until this
1547           part compile and run.
1548         * examples/manual/Makefile.am:
1549           Update from changes to Application Development Manual; add bus
1550           example, remove thread example.
1551
1552 2005-06-28  Wim Taymans  <wim@fluendo.com>
1553
1554         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1555         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1556         (gst_bus_source_dispatch):
1557         Add debugging messages.
1558         Make internal methods static.
1559         Handle the case where the bus is flushed in the handler.
1560         
1561         * gst/gstelement.c: (gst_element_get_bus):
1562         Fix refcount in _get_bus();
1563
1564         * gst/gstpipeline.c: (gst_pipeline_change_state),
1565         (gst_pipeline_get_clock_func):
1566         Clock refcounting fixes.
1567         Handle the case where preroll timed out more gracefully.
1568         
1569         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1570         Clean up the internal thread in dispose. This is needed
1571         for subclasses that actually get disposed.
1572         
1573         * gst/schedulers/threadscheduler.c:
1574         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1575         (gst_thread_scheduler_dispose):
1576         Free thread pool in dispose.
1577
1578 2005-06-28  Andy Wingo  <wingo@pobox.com>
1579
1580         * tests/network-clock-utils.scm (debug, print-event): New utils.
1581
1582         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1583         (*packet-loss*): Unified loss probability.
1584         (network-time): Report out-of-band events.
1585
1586         * tests/plot-data: Add support for out-of-band events. Hack it
1587         into this script instead of passing it down the pipe; should fix
1588         this later.
1589
1590 2005-06-28  Wim Taymans  <wim@fluendo.com>
1591
1592         * docs/gst/gstreamer.types:
1593         * docs/gst/tmpl/gstbasesrc.sgml:
1594         * docs/gst/tmpl/gstpad.sgml:
1595         Docs fixes.
1596
1597 2005-06-28  Wim Taymans  <wim@fluendo.com>
1598
1599         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1600         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1601         (gst_proxy_pad_do_fixatecaps):
1602         Correctly proxy the check_pull_range function.
1603
1604 2005-06-28  Andy Wingo  <wingo@pobox.com>
1605
1606         * tests/network-clock.scm: Removed need for slib.
1607         
1608 2005-06-28  Wim Taymans  <wim@fluendo.com>
1609
1610         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1611         (gst_basesink_preroll_queue_flush):
1612         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1613         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1614         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1615         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1616         (gst_proxy_pad_set_property):
1617         * gst/gstpad.c:
1618         * gst/gstpad.h:
1619         * gst/gstqueue.c: (gst_queue_init):
1620         The deprecated pad loop function is removed now.
1621
1622 2005-06-28  Andy Wingo  <wingo@pobox.com>
1623
1624         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1625         New parameters, simulate network packet loss.
1626
1627         * tests/network-clock-utils.scm: Initialize the RNG.
1628
1629 2005-06-28  Wim Taymans  <wim@fluendo.com>
1630
1631         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1632         (gst_basesink_event), (gst_basesink_deactivate):
1633         Flushing the preroll queue always needs to unlock the waiters.
1634
1635 2005-06-28  Edward Hervey  <edward@fluendo.com>
1636
1637         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1638         Wheen a seek was successful on a pipeline, set the stream_time to the
1639         seek offset in order to have a synchronized stream_time.
1640
1641 2005-06-28  Wim Taymans  <wim@fluendo.com>
1642
1643         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1644         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1645         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1646         (gst_proxy_pad_do_fixatecaps):
1647         Call wrapper function instead of just calling the function
1648         pointers. This takes care of any locking and whatmore.
1649
1650 2005-06-28  Wim Taymans  <wim@fluendo.com>
1651
1652         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1653         (gst_pad_pull_range):
1654         * gst/gstpad.h:
1655         CONNECTED -> LINKED.
1656
1657 2005-06-28  Andy Wingo  <wingo@pobox.com>
1658
1659         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1660         source-munging commit!!!
1661
1662         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1663         (gst_object_sink): Take gpointer arguments, not GstObject --
1664         avoids casts. Like GLib.
1665
1666         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1667         activate.
1668
1669 2005-06-27  Andy Wingo  <wingo@pobox.com>
1670
1671         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1672         remaining buffer.
1673
1674         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1675         returns a sorted copy of the trace list.
1676         (gst_alloc_trace_print_live): New API, only prints traces with
1677         live objects. Sort the list.
1678         (gst_alloc_trace_print_all): Sort the list.
1679         (gst_alloc_trace_print): Align columns.
1680
1681         * gst/elements/gstttypefindelement.c:
1682         * gst/elements/gsttee.c:
1683         * gst/base/gstbasesrc.c:
1684         * gst/base/gstbasesink.c:
1685         * gst/base/gstbasetransform.c:
1686         * gst/gstqueue.c: Adapt for pad activation changes.
1687
1688         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1689         sched.
1690         (gst_pipeline_dispose): Drop ref on sched.
1691
1692         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1693         (gst_pad_activate_default): Push mode by default.
1694         (pre_activate_switch, post_activate_switch): New stubs, things to
1695         do before and after switching activation modes on pads.
1696         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1697         the pad's activate function to choose which mode to activate.
1698         Shortcut on deactivation and call the right function directly.
1699         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1700         mode.
1701         (gst_pad_activate_push): New API, same for push mode.
1702         (gst_pad_set_activate_function) 
1703         (gst_pad_set_activatepull_function) 
1704         (gst_pad_set_activatepush_function): Setters for new API.
1705
1706         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1707         Trace all miniobjects.
1708         (gst_mini_object_make_writable): Unref the arg if we copy, like
1709         gst_caps_make_writable.
1710
1711         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1712
1713         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1714         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1715         Adapt for new pad API.
1716
1717         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1718
1719         * gst/gstelement.h:
1720         * gst/gstelement.c (gst_element_iterate_src_pads) 
1721         (gst_element_iterate_sink_pads): New API functions.
1722         
1723         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1724         should fold into gstiterator.c in some form.
1725         (gst_element_pads_activate): Simplified via use of fold and
1726         delegation of decisions to gstpad->activate.
1727
1728         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1729         help in debugging.
1730
1731         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1732         class once in init, like gstmessage. Didn't run into this issue
1733         but it seems correct. Don't initialize a trace, gstminiobject does
1734         that.
1735
1736         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1737         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1738         to the bus.
1739         (assert_live_count): New util function, uses alloc traces to check
1740         cleanup.
1741
1742         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1743         To be modified when unlink drops the internal pad.
1744
1745 2005-06-27  Wim Taymans  <wim@fluendo.com>
1746
1747         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1748         (gst_bin_change_state):
1749         Cleanup the get_state() function a little, make sure it
1750         iterates the same set of elements.
1751         Added stub iterate_state_order().
1752
1753 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1754
1755         * docs/gst/gstreamer-docs.sgml:
1756         * docs/gst/gstreamer-sections.txt:
1757         * docs/gst/gstreamer.types:
1758         * docs/gst/tmpl/gstbasesink.sgml:
1759         * docs/gst/tmpl/gstbasesrc.sgml:
1760         * docs/gst/tmpl/gstbasetransform.sgml:
1761         * docs/gst/tmpl/gstelement.sgml:
1762         * docs/gst/tmpl/gstiterator.sgml:
1763         * gst/base/gstbasesrc.c:
1764         * gst/base/gstbasesrc.h:
1765         * gst/base/gstbasetransform.h:
1766         * gst/gstelement.c:
1767         * gst/gstiterator.h:
1768           adding basetransform and iterator docs
1769
1770 2005-06-27  Andy Wingo  <wingo@pobox.com>
1771
1772         * docs/design/part-activation.txt: Notes on how activation should
1773         work -- not quite implemented yet.
1774
1775 2005-06-25  Wim Taymans  <wim@fluendo.com>
1776
1777         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1778         At least get the chain function correct, needs more
1779         fixing.
1780
1781 2005-06-25  Wim Taymans  <wim@fluendo.com>
1782
1783         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1784         (gst_basesink_handle_object), (gst_basesink_event),
1785         (gst_basesink_do_sync), (gst_basesink_handle_event),
1786         (gst_basesink_change_state):
1787         * gst/gsttask.h:
1788         Right, two problems here: ghostpads don't take locks and
1789         glib _rec_mutex_lock_full() with depth==0 still locks.
1790         Catch illegal locking and g_warn them.
1791
1792 2005-06-25  Wim Taymans  <wim@fluendo.com>
1793
1794         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1795         Have to check for completion now...
1796
1797 2005-06-25  Wim Taymans  <wim@fluendo.com>
1798
1799         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1800         (gst_basesink_handle_object), (gst_basesink_event),
1801         (gst_basesink_do_sync), (gst_basesink_handle_event),
1802         (gst_basesink_change_state):
1803         * gst/gstpad.h:
1804         Unlock STREAM_LOCK whatever the recursion was.
1805
1806 2005-06-25  Wim Taymans  <wim@fluendo.com>
1807
1808         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1809         (gst_basesink_preroll_queue_empty),
1810         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1811         (gst_basesink_event), (gst_basesink_do_sync),
1812         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1813         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1814         (gst_basesink_change_state):
1815         Reworked the base sink, handle event and buffer serialisation
1816         correctly and removed possible deadlock.
1817         Handle EOS correctly.
1818
1819 2005-06-25  Wim Taymans  <wim@fluendo.com>
1820
1821         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1822         (gst_pipeline_change_state):
1823         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1824         Allow elements to post EOS in the state change function.
1825         Fix up -launch, make it exit the poll loop when the
1826         pipeline actually changed state.
1827         Fix up warning parsing in -launch.
1828
1829 2005-06-25  Wim Taymans  <wim@fluendo.com>
1830
1831         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1832         (gst_tee_sink_activate):
1833         Core takes STREAM_LOCK for us now.
1834
1835 2005-06-25  Wim Taymans  <wim@fluendo.com>
1836
1837         * gst/gstelement.c: (gst_element_get_state_func),
1838         (gst_element_set_state):
1839         * gst/gstelement.h:
1840         * gst/gstmessage.c: (gst_message_parse_error),
1841         (gst_message_parse_warning):
1842         Keep track of current target state while performing a state
1843         change so that subclasses can do something interesting.
1844         Fix parsing of warning/error messages when GError is NULL.
1845
1846 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1847
1848         * docs/gst/Makefile.am:
1849         * docs/gst/gstreamer-docs.sgml:
1850         * docs/gst/gstreamer-sections.txt:
1851         * docs/gst/gstreamer.types:
1852         * docs/gst/tmpl/gstbasesink.sgml:
1853         * docs/gst/tmpl/gstbasesrc.sgml:
1854         * docs/gst/tmpl/gstbin.sgml:
1855         * docs/gst/tmpl/gstcompat.sgml:
1856         * docs/gst/tmpl/gstfakesink.sgml:
1857         * docs/gst/tmpl/gstfakesrc.sgml:
1858         * docs/gst/tmpl/gstfilesink.sgml:
1859         * docs/gst/tmpl/gstfilesrc.sgml:
1860         * docs/gst/tmpl/gstindex.sgml:
1861         * docs/manual/appendix-quotes.xml:
1862         * gst/base/gstbasesrc.h:
1863         * gst/elements/gstfakesrc.h:
1864         * gst/gstmessage.h:
1865           start pulling in base classes and elements in our docs
1866
1867 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1868
1869         * docs/gst/Makefile.am:
1870         * docs/libs/Makefile.am:
1871           fixed make distcheck with gtk-doc 1.3
1872
1873 2005-06-23  Wim Taymans  <wim@fluendo.com>
1874
1875         * gst/gstelement.c: (gst_element_get_state_func),
1876         (gst_element_set_state), (gst_element_change_state):
1877         When the state did not change, also report NO_PREROLL
1878         when it matters.
1879
1880 2005-06-23  Wim Taymans  <wim@fluendo.com>
1881
1882         * gst/gstpad.c: (gst_pad_event_default):
1883         * gst/gstqueue.c: (gst_queue_loop):
1884         No unsafe task pausing please.
1885
1886 2005-06-23  Wim Taymans  <wim@fluendo.com>
1887
1888         * gst/schedulers/threadscheduler.c:
1889         (gst_thread_scheduler_task_start),
1890         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1891         Ref the task before pushing it on the threadpool. This
1892         makes sure that we have a ref when the threadfunction is
1893         actually called.
1894
1895 2005-06-23  Andy Wingo  <wingo@pobox.com>
1896
1897         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1898         offset is greater than the file's size.
1899
1900         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1901         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1902         * gst/gstobject.c (gst_object_class_init): Make the class lock
1903         recursive. Wim won't let me drop deep_notify. Decodebin works
1904         again, whoopdy doo.
1905
1906         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1907         internal pad, and hacks accordingly. Doesn't do it on the target
1908         pad because we change its caps. Probably catches all cases of
1909         interest tho.
1910         (gst_ghost_pad_set_property): Connect to notify::caps as
1911         appropritate.
1912
1913         * tests/network-clock.scm (plot-simulation): Pipe data to the
1914         elite python skript.
1915
1916         * tests/network-clock-utils.scm (define-parameter): New macro,
1917         defines a parameter that can be set via the command line.
1918         (set-parameter!, parse-parameter-arguments): Command line args
1919         parser.
1920
1921         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1922         stdin.
1923
1924 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1925
1926         * gst/elements/gsttypefindelement.c:
1927         (gst_type_find_element_handle_event):
1928           Don't restart typefinding on a discont.
1929         * gst/gstelement.c: (gst_element_set_state):
1930           Debug spelling fix.
1931         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1932           Allow changing mode of an active pad.
1933           Debug output fixes.
1934         * gst/registries/gstlibxmlregistry.c: (load_feature):
1935           Don't cast a static pad template to a normal pad template.
1936
1937 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1938
1939         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1940         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1941           remove gst_strtoll completely, since it didn't actually do
1942           anything more than what g_ascii_strtoull already does.
1943           check for range errors when deserializing
1944           do a cast for the unsigned cases; but further fixing needs
1945           a decision on what the interpretation of "(int)" and
1946           deserialization should be for values that fall outside the
1947           type's boundaries (ie, refuse, or interpret as casting)
1948
1949 2005-06-23  Wim Taymans  <wim@fluendo.com>
1950
1951         * check/Makefile.am:
1952         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1953         * docs/design/part-live-source.txt:
1954         * docs/design/part-states.txt:
1955         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1956         (gst_basesrc_set_live), (gst_basesrc_is_live),
1957         (gst_basesrc_get_range), (gst_basesrc_activate),
1958         (gst_basesrc_change_state):
1959         * gst/base/gstbasesrc.h:
1960         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1961         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1962         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1963         * gst/gstelement.c: (gst_element_get_state_func),
1964         (gst_element_set_state):
1965         * gst/gstelement.h:
1966         * gst/gsttypes.h:
1967         * tools/gst-launch.c: (event_loop), (main):
1968         Added support for live sources and other elements that
1969         cannot do preroll.
1970         Updated design docs, added live-source design doc.
1971         Implemented live source functionality in basesrc
1972         Fix error condition in _bin_get_state()
1973         Implement live source handling in -launch.
1974         Added check for live sources.
1975         Fixed case in GstBin where elements were changed state
1976         multiple times.
1977
1978
1979 2005-06-23  Andy Wingo  <wingo@pobox.com>
1980
1981         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1982         borken refcounting.
1983
1984         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1985         gst_caps_replace takes care of this for us.
1986
1987         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1988         gst_pad_set_caps on the target, not just its setcaps() function.
1989
1990         * tests/network-clock.scm: 
1991         * tests/network-clock-utils.scm: A network clock simulator.
1992         Something of an algorithmic testbed before doing something in C.
1993
1994 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1995
1996         * check/Makefile.am:
1997         * check/gst/capslist.h:
1998           copy over from 0.8, and add two with bitmasks specified with
1999           (int) 0xFF...
2000         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2001           add test to parse everything from capslist.h
2002         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2003         (main):
2004           add test for structure deserialization
2005         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2006           add tests for deserialization of strings to int types
2007         * gst/gststructure.c: (gst_structure_nth_field_name):
2008         * gst/gststructure.h:
2009           add a way to get the name of a field referenced by index
2010         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2011           instead of checking if the resulting long long lies between
2012           min and max, we check if the long long would fit into
2013           a number of bytes for the final type.
2014           This fixes cases where a string represents 2^32 - 1, which
2015           when cast to int would be the (valid) -1, but is bigger than
2016           G_MAXINT
2017
2018 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2019
2020         * gst/parse/grammar.y:
2021           add a log line for type deserialization
2022
2023 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2024
2025         * check/gst/gstvalue.c: (START_TEST):
2026         * gst/gstvalue.c: (gst_value_deserialize):
2027           return long long, not int, so gint64 deserialization actually
2028           works.  Is there any flag that makes the compiler check this ?
2029           Fixes #308559
2030
2031 2005-06-22  Wim Taymans  <wim@fluendo.com>
2032
2033         * gst/gstbuffer.h:
2034         Added convenience macros for setting buffers in GValue.
2035
2036 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2037
2038         * check/gst/.cvsignore:
2039         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2040           add a test deserializing int64, and comment part out because
2041           it fails, yay !
2042
2043 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2044
2045         * check/Makefile.am:
2046         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2047         * testsuite/Makefile.am:
2048         * testsuite/caps/Makefile.am:
2049         * testsuite/caps/value_serialize.c:
2050         * testsuite/test_gst_init.c:
2051           move a value_serialize test over
2052
2053 2005-06-20  Wim Taymans  <wim@fluendo.com>
2054
2055         * gst/gstpad.c:
2056         Small doc updates.
2057         
2058         * gst/gstvalue.c: (gst_value_compare_buffer),
2059         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2060         (gst_value_compare_flags), (gst_value_serialize_flags),
2061         (gst_value_deserialize_flags), (_gst_value_initialize):
2062         Fix serialisation of buffers, they are not boxed types anymore
2063
2064 2005-06-20  Wim Taymans  <wim@fluendo.com>
2065
2066         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2067         Testcase to show error in buffer-on-caps serialisation.
2068
2069 2005-06-20  Andy Wingo  <wingo@pobox.com>
2070
2071         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2072         will be adding to later.
2073
2074         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2075         if its socks fill with rocks.
2076         (gst_system_clock_obtain): Set the name on object construction.
2077         Avoid double-checked locking.
2078
2079 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2080
2081         * gst/gsturi.c: (gst_element_make_from_uri):
2082           Fix potential endless loop.
2083
2084 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2085
2086         * check/Makefile.am:
2087           add gsttag
2088         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2089         (main):
2090           move over from testsuite dir and clean up
2091         * configure.ac:
2092         * gst/gsttag.c:
2093         * testsuite/Makefile.am:
2094         * testsuite/tags/.cvsignore:
2095         * testsuite/tags/Makefile.am:
2096         * testsuite/tags/merge.c:
2097           remove testsuite/tags
2098
2099 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2100
2101         * docs/gst/gstreamer-sections.txt:
2102         * docs/gst/tmpl/gstenumtypes.sgml:
2103         * win32/gstenumtypes.c:
2104           clean up documentation build a little
2105
2106 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2107
2108         * check/gstcheck.h:
2109           add macros for checking refcounts on objects and caps
2110         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2111           add some more unit tests
2112         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2113         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2114           fix leaked refcounts (I hope :)) so unittest works
2115         * gst/gstpad.h:
2116           whitespace removal
2117
2118 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2119
2120         * configure.ac: back to HEAD
2121
2122 === release 0.9.1 ===
2123
2124 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2125
2126         * NEWS:
2127         * RELEASE:
2128           updated
2129
2130 2005-06-17  Andy Wingo  <wingo@pobox.com>
2131
2132         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2133         assert; it's always possible that the pad gets deactivated in
2134         between the checks in gstpad.c and the implementation. Rely on
2135         finish_preroll() to return a FLUSHING or similar instead of on the
2136         assert.
2137         
2138         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2139         clock and post an EOS message if we come out of finish_preroll in
2140         the playing state.
2141
2142 2005-06-16  David Schleef  <ds@schleef.org>
2143
2144         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2145         (gst_capsfilter_set_property): Allow NULL as possible value
2146         for filter_caps property, indicating GST_CAPS_ANY.
2147
2148 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2149
2150         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2151           fix debug output
2152         * gst/schedulers/Makefile.am:
2153           use libgst prefix
2154         * gstreamer.spec.in:
2155           fix spec for it
2156
2157 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2158
2159         * gstreamer.spec.in:
2160           clean up
2161
2162 2005-06-08  Andy Wingo  <wingo@pobox.com>
2163
2164         * gst/gstutils.c: RPAD fixes all around.
2165         (gst_element_link_pads): Refcounting fixes.
2166
2167         * tools/gst-inspect.c:
2168         * tools/gst-xmlinspect.c:
2169         * parse/grammar.y:
2170         * gst/base/gsttypefindhelper.c:
2171         * gst/base/gstbasesink.c:
2172         * gst/gstqueue.c: RPAD fixes.
2173
2174         * gst/gstghostpad.h:
2175         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2176         pads. The tricky thing is they provide both source and sink
2177         interfaces, since they proxy the internal pad for the external
2178         pad, and vice versa. Implement with lower-level ProxyPad objects,
2179         with the interior proxy pad as a child of the exterior ghost pad.
2180         Should write a doc on this.
2181         
2182         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2183         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2184         gst_object API.
2185         
2186         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2187         pads are real pads. No ghost pads in this file. Not documenting
2188         the myriad s/RPAD/PAD/ and REALIZE fixes.
2189         (gst_pad_class_init): Add properties for "direction" and
2190         "template". Both are construct-only, so they can't change during
2191         the life of the pad. Fixes properly deriving from GstPad.
2192         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2193         derived objects, just set properties when creating the objects via
2194         g_object_new.
2195         (gst_pad_get_parent): Implement as a function, return NULL if the
2196         parent is not an element.
2197         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2198         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2199         
2200         * gst/gstobject.c (gst_object_class_init): Make name a construct
2201         property. Don't set it in the object init.
2202
2203         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2204         with UNKNOWN direction.
2205         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2206         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2207         (gst_element_remove_pad): Remove ghost-pad special cases.
2208         (gst_element_pads_activate): Remove rpad cruft.
2209
2210         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2211         catch the pad's-parent-not-an-element case.
2212
2213         * gst/gst.h: Include gstghostpad.h.
2214
2215         * gst/gst.c (init_post): No more real, ghost pads.
2216
2217         * gst/Makefile.am: Add gstghostpad.[ch].
2218
2219         * check/Makefile.am:
2220         * check/gst/gstbin.c:
2221         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2222         into a bin creates ghost pads, and that the refcounts are right.
2223         Partly moved from gstbin.c.
2224
2225 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2226
2227         * check/gst-libs/.cvsignore:
2228         * check/gst/.cvsignore:
2229         * check/pipelines/.cvsignore:
2230           ignore more
2231         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2232         (START_TEST), (cleanup_suite), (main):
2233           add some tests related to cleanup after running pipelines
2234
2235 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2236
2237         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2238           add a testsuite for GstBuffer
2239
2240 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2241
2242         * gst/gstminiobject.h:
2243           add defines for accessing the refcount
2244
2245 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2246
2247         * Makefile.am: added support for html unit test coverage reports
2248
2249 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2250
2251         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2252           Free existing caps if the capsfilter changes. Add a FIXME about
2253           setting those caps on the pads.
2254
2255         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2256           Before adding a ghost pad to a parent bin, check that there isn't
2257           already one for the element on the bin. Prevents infinite recursion
2258           when using decodebin in parse pipelines. Andy says he'll rewrite the
2259           way this works anyway, so ignore the hack.
2260
2261 2005-06-02  Andy Wingo  <wingo@pobox.com>
2262
2263         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2264         file size, pass it on to the type find helper.
2265
2266         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2267         segment_start and segment_end properly according to the seek
2268         method. Segment_end is still a bit flaky because offset can be
2269         negative for CUR and END cases, but it takes -1 as an "unset"
2270         value.
2271
2272 2005-06-02  Wim Taymans  <wim@fluendo.com>
2273
2274         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2275         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2276         (gst_basesink_activate):
2277         * gst/base/gstbasesink.h:
2278         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2279         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2280         (gst_pad_query), (gst_pad_start_task):
2281         * gst/gstpad.h:
2282         * gst/gstqueue.c: (gst_queue_bufferalloc),
2283         (gst_queue_handle_sink_event), (gst_queue_chain):
2284         Bufferalloc: return GstFlowReturn to more accuratly report
2285         why allocation failed.
2286
2287 2005-06-02  Wim Taymans  <wim@fluendo.com>
2288
2289         * gst/gstpipeline.c: (gst_pipeline_send_event):
2290         Take snapshot of state without blocking.
2291
2292 2005-06-02  Wim Taymans  <wim@fluendo.com>
2293
2294         * docs/design/part-TODO.txt:
2295         * docs/design/part-caps.txt:
2296         * docs/design/part-clocks.txt:
2297         * docs/design/part-negotiation.txt:
2298         * docs/design/part-preroll.txt:
2299         Small doc updates 
2300
2301 2005-05-30  Wim Taymans  <wim@fluendo.com>
2302
2303         * gst/elements/gstidentity.c: (gst_identity_event),
2304         (gst_identity_transform), (gst_identity_get_property):
2305         Protect last_message property as it is accessed from
2306         multiple threads.
2307
2308 2005-05-30  Wim Taymans  <wim@fluendo.com>
2309
2310         * gst/gstelement.c: (gst_element_init),
2311         (gst_element_pads_activate), (gst_element_change_state):
2312         Slicker pad activation code.
2313
2314 2005-05-30  Wim Taymans  <wim@fluendo.com>
2315
2316         * gst/Makefile.am:
2317         * gst/gstelement.h:
2318         * gst/gstelementfactory.h:
2319         * gst/gsttypes.h:
2320         Move elementfactory methods to separate .h file.
2321
2322 2005-05-30  Wim Taymans  <wim@fluendo.com>
2323
2324         * docs/design/part-overview.txt:
2325         * gst/gstsystemclock.h:
2326         Small typo fixes, doc updates.
2327
2328 2005-05-30  Wim Taymans  <wim@fluendo.com>
2329
2330         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2331         (init_popt_callback):
2332         Remove cpu-opt flag.
2333
2334 2005-05-30  Wim Taymans  <wim@fluendo.com>
2335
2336         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2337         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2338         * gst/gstbuffer.h:
2339         Avoid typechecking in places where not needed.
2340         Added accessor for malloc_data.
2341
2342 2005-05-30  Wim Taymans  <wim@fluendo.com>
2343
2344         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2345         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2346         (gst_pad_configure_sink), (gst_pad_configure_src),
2347         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2348         (gst_pad_start_task):
2349         Propagate errors from _set_caps() in configure_src/sink
2350         functions instead of returning TRUE.
2351         FLUSH events can travel up and downstream
2352
2353
2354 2005-05-30  Wim Taymans  <wim@fluendo.com>
2355
2356         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2357         (gst_basesink_activate):
2358         Handle EOS in preroll.
2359
2360 2005-05-30  Wim Taymans  <wim@fluendo.com>
2361
2362         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2363         (gst_queue_loop), (gst_queue_handle_src_event):
2364         Remove old pieces of code
2365         Flushing the queue in an upstream event is a very bad idea.
2366
2367 2005-05-26  Andy Wingo  <wingo@pobox.com>
2368
2369         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2370         gst_value_set_mini_object so as to add a ref on the object (which
2371         will be removed when the value is unset).
2372
2373         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2374         arg type in ::handoff.
2375
2376         * gst/gstelement.c (gst_element_change_state): Also deactivate
2377         pads in READY->NULL, just in case the element didn't make it to
2378         PAUSED. Wingo tested, Wim approved.
2379
2380 2005-05-26  Wim Taymans  <wim@fluendo.com>
2381
2382         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2383         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2384         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2385         A flushing pad cannot be used to alloc_buffer from.
2386
2387 2005-05-26  Wim Taymans  <wim@fluendo.com>
2388
2389         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2390         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2391         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2392         (gst_bus_create_watch), (gst_bus_add_watch_full):
2393         * gst/gstbus.h:
2394         Implement a real GSource and use g_main_context_wakeup() to
2395         signal new messages instead of the socketpair.
2396
2397 2005-05-25  Wim Taymans  <wim@fluendo.com>
2398
2399         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2400         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2401         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2402         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2403         (gst_pad_send_event), (gst_pad_start_task):
2404         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2405         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2406         (gst_queue_sink_activate), (gst_queue_src_activate),
2407         (gst_queue_change_state):
2408         * gst/gstqueue.h:
2409         Fix state changes for non sinks. We now change sinks, then elements
2410         with unconnected srcpads, then the rest.
2411         More efficient queue unlocking in flush and state changes.
2412         Set the pad activate mode even if it does not have an activate
2413         function.
2414
2415 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2416
2417         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2418           Don't go in pull mode for non-seekable sources.
2419         * gst/elements/gsttypefindelement.h:
2420         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2421         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2422         (free_entry), (stop_typefinding),
2423         (gst_type_find_element_handle_event), (find_peek),
2424         (gst_type_find_element_chain), (do_pull_typefind),
2425         (gst_type_find_element_change_state):
2426           Allow typefinding (w/o seeking) in push-mode, simplified version
2427           of what was in 0.8.
2428         * gst/gstutils.c: (gst_buffer_join):
2429         * gst/gstutils.h:
2430           gst_buffer_join() from 0.8.
2431
2432 2005-05-25  Wim Taymans  <wim@fluendo.com>
2433
2434         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2435         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2436         (gst_pad_send_event), (gst_pad_start_task):
2437         Disable attempt at mode switching until it is figured out.
2438
2439 2005-05-25  Wim Taymans  <wim@fluendo.com>
2440
2441         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2442         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2443         (gst_basesink_finish_preroll), (gst_basesink_chain),
2444         (gst_basesink_loop), (gst_basesink_activate),
2445         (gst_basesink_change_state):
2446         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2447         (gst_basesrc_get_range), (gst_basesrc_loop),
2448         (gst_basesrc_activate):
2449         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2450         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2451         (gst_real_pad_init), (gst_real_pad_set_property),
2452         (gst_real_pad_get_property), (gst_pad_set_active),
2453         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2454         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2455         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2456         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2457         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2458         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2459         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2460         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2461         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2462         (gst_pad_stop_task):
2463         * gst/gstpad.h:
2464         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2465         (gst_queue_loop), (gst_queue_src_activate):
2466         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2467         (gst_task_get_state):
2468         * gst/gsttask.h:
2469         * gst/schedulers/threadscheduler.c:
2470         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2471         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2472         in task function.
2473         Remove ACTIVE pad flag, use FLUSHING everywhere
2474         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2475         functions.
2476         Add locks around IS_FLUSHING when reading.
2477         Take STREAM lock in chain(), get_range() functions so plugins
2478         don't need to take it anymore.
2479         
2480
2481
2482 2005-05-25  Wim Taymans  <wim@fluendo.com>
2483
2484         * tools/gst-launch.c: (event_loop):
2485         Unref message after using its contents instead of
2486         before.
2487
2488 2005-05-24  Wim Taymans  <wim@fluendo.com>
2489
2490         * docs/design/draft-ghostpads.txt:
2491         * docs/design/draft-push-pull.txt:
2492         * docs/design/draft-query.txt:
2493         * docs/design/part-overview.txt:
2494         Docs updates, added general overview doc.
2495
2496 2005-05-21  David Schleef  <ds@schleef.org>
2497
2498         * docs/gst/tmpl/old/GstBin.sgml:
2499         * docs/gst/tmpl/old/GstBuffer.sgml:
2500         * docs/gst/tmpl/old/GstCaps.sgml:
2501         * docs/gst/tmpl/old/GstClock.sgml:
2502         * docs/gst/tmpl/old/GstCompat.sgml:
2503         * docs/gst/tmpl/old/GstData.sgml:
2504         * docs/gst/tmpl/old/GstElement.sgml:
2505         * docs/gst/tmpl/old/GstEvent.sgml:
2506         * docs/gst/tmpl/old/GstIndex.sgml:
2507         * docs/gst/tmpl/old/GstStructure.sgml:
2508         * docs/gst/tmpl/old/GstTag.sgml:
2509         * docs/gst/tmpl/old/cothreads.sgml:
2510         * docs/gst/tmpl/old/cothreads_compat.sgml:
2511         * docs/gst/tmpl/old/gettext.sgml:
2512         * docs/gst/tmpl/old/gobject2gtk.sgml:
2513         * docs/gst/tmpl/old/grammar.tab.sgml:
2514         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2515         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2516         * docs/gst/tmpl/old/gst_private.sgml:
2517         * docs/gst/tmpl/old/gstaggregator.sgml:
2518         * docs/gst/tmpl/old/gstarch.sgml:
2519         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2520         * docs/gst/tmpl/old/gstbufferstore.sgml:
2521         * docs/gst/tmpl/old/gstdata_private.sgml:
2522         * docs/gst/tmpl/old/gstdisksink.sgml:
2523         * docs/gst/tmpl/old/gstdisksrc.sgml:
2524         * docs/gst/tmpl/old/gstelementfactory.sgml:
2525         * docs/gst/tmpl/old/gstextratypes.sgml:
2526         * docs/gst/tmpl/old/gstfakesink.sgml:
2527         * docs/gst/tmpl/old/gstfakesrc.sgml:
2528         * docs/gst/tmpl/old/gstfdsink.sgml:
2529         * docs/gst/tmpl/old/gstfdsrc.sgml:
2530         * docs/gst/tmpl/old/gstfilesink.sgml:
2531         * docs/gst/tmpl/old/gstfilesrc.sgml:
2532         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2533         * docs/gst/tmpl/old/gstidentity.sgml:
2534         * docs/gst/tmpl/old/gstindexfactory.sgml:
2535         * docs/gst/tmpl/old/gstmarshal.sgml:
2536         * docs/gst/tmpl/old/gstmd5sink.sgml:
2537         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2538         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2539         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2540         * docs/gst/tmpl/old/gstpipefilter.sgml:
2541         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2542         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2543         * docs/gst/tmpl/old/gstshaper.sgml:
2544         * docs/gst/tmpl/old/gstspider.sgml:
2545         * docs/gst/tmpl/old/gstspideridentity.sgml:
2546         * docs/gst/tmpl/old/gststatistics.sgml:
2547         * docs/gst/tmpl/old/gsttee.sgml:
2548         * docs/gst/tmpl/old/gsttimecache.sgml:
2549         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2550         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2551         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2552         * docs/gst/tmpl/old/types.sgml:
2553           I didn't intend to add these or check them in.
2554
2555 2005-05-19  David Schleef  <ds@schleef.org>
2556
2557         * configure.ac: Use -no-common everywhere.  In a sane world, it
2558           would be the default in libtool, because without it, you can't
2559           build DLLs on Windows.
2560         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2561         * docs/gst/gstreamer-sections.txt:
2562         * docs/gst/tmpl/gstcpu.sgml:
2563         * docs/gst/tmpl/gstdata.sgml:
2564         * docs/gst/tmpl/gstthread.sgml:
2565
2566 2005-05-19  David Schleef  <ds@schleef.org>
2567
2568         * gst/gstminiobject.c: (gst_value_set_mini_object),
2569         (gst_value_take_mini_object), (gst_value_get_mini_object):
2570         * gst/gstminiobject.h: Add GValue set/get functions.
2571
2572 2005-05-19  Wim Taymans  <wim@fluendo.com>
2573
2574         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2575         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2576         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2577         * gst/gstbuffer.h:
2578         * gst/gstbus.c: (gst_bus_post):
2579         * gst/gstelement.c: (gst_element_get_random_pad):
2580         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2581         Make subbufer unref the parent in finalize.
2582         some more debugging info.
2583
2584
2585 2005-05-19  Wim Taymans  <wim@fluendo.com>
2586
2587         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2588         (gst_basesink_init), (gst_basesink_finalize),
2589         (gst_basesink_activate), (gst_basesink_change_state):
2590         Don't free preroll queue too early.
2591
2592 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2593
2594         * gst/Makefile.am:
2595         * gst/ROADMAP:
2596           Hi, I'm outdated. Please shoot me.
2597
2598 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2599
2600         * gst/gstpipeline.c: (gst_pipeline_send_event):
2601           Do not access variables after they have been deleted.
2602
2603 2005-05-19  Wim Taymans  <wim@fluendo.com>
2604
2605         * tools/gst-inspect.c: (print_plugin_features):
2606         A plugin feature does unfortunatly not use the
2607         object name yet...
2608
2609 2005-05-18  Wim Taymans  <wim@fluendo.com>
2610
2611         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2612         Port _span() functions to new subbuffers.
2613
2614 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2615
2616         * gst/gstbin.c: (gst_bin_add_func):
2617           Fix clock settery in bins when adding kids after the clock has
2618           been selected.
2619
2620 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2621
2622         * gst/elements/gstidentity.c: (gst_identity_class_init):
2623           Workaround until signals support GstMiniObject.
2624
2625 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2626
2627         * gst/gstbuffer.c:
2628         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2629
2630 2005-05-18  Wim Taymans  <wim@fluendo.com>
2631
2632         * gst/base/Makefile.am:
2633         * gst/base/gstadapter.c: (gst_adapter_base_init),
2634         (gst_adapter_class_init), (gst_adapter_init),
2635         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2636         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2637         (gst_adapter_flush), (gst_adapter_available),
2638         (gst_adapter_available_fast):
2639         * gst/base/gstadapter.h:
2640         Ported and added adapter to the base classes.
2641
2642 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2643
2644         * gst/gst.c:
2645         * gst/gstmessage.c:
2646           Make sure the class is reffed/unreffed once before threads can be
2647           used.  Fixes #304551.
2648
2649 2005-05-17  Wim Taymans  <wim@fluendo.com>
2650
2651         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2652         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2653         * gst/gstminiobject.c: (gst_mini_object_get_type),
2654         (gst_mini_object_free):
2655         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2656         (gst_pad_push), (gst_pad_push_event):
2657         * gst/gstqueue.c: (gst_queue_change_state):
2658         Don't queue buffers in basesink when we are flushing.
2659         Unref buffer when flushing in basesink.
2660         Flush queue when going to READY
2661         Unref buffer when _push() returns an error.
2662         Don't free MiniObject instance when refcount is incremented
2663         in _finalize() so that we can recover objects.
2664
2665 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2666
2667         * docs/manual/advanced-schedulers.xml:
2668         * docs/manual/appendix-checklist.xml:
2669         * docs/pwg/advanced-clock.xml:
2670         * docs/pwg/advanced-interfaces.xml:
2671         * docs/pwg/advanced-request.xml:
2672         * docs/pwg/advanced-types.xml:
2673         * docs/pwg/intro-preface.xml:
2674         * examples/plugins/example.c: (gst_example_get_type),
2675         (gst_example_class_init), (gst_example_chain),
2676         (gst_example_set_property), (gst_example_get_property),
2677         (gst_example_change_state), (plugin_init):
2678         * examples/plugins/example.h:
2679           small doc fixes
2680
2681 2005-05-17  Wim Taymans  <wim@fluendo.com>
2682
2683         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2684         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2685         * gst/gstqueue.c: (gst_queue_change_state):
2686         Clear queue when going to READY.
2687         Remove IN_SETCAPS flag too.
2688
2689 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2690
2691         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2692           Remove implicit cast from gboolean to GstElementStateReturn;
2693           make sure we still return failure in paused => ready case if
2694           the parent class fails to change state and our own stop 
2695           vfunc succeeds.
2696
2697 2005-05-17  Wim Taymans  <wim@fluendo.com>
2698
2699         * tools/gst-launch.c: (event_loop):
2700         Message was unreffed too soon.
2701
2702 2005-05-16  Andy Wingo  <wingo@pobox.com>
2703
2704         * gst/gstbin.c (sink_iterator_filter): Err... um...
2705
2706         * check/gst/gstbin.c (test_ghost_pads): New test for the
2707         ghosting-if-elements-not-in-same-bin behavior.
2708
2709 2005-05-16  David Schleef  <ds@schleef.org>
2710
2711         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2712         accessing refcount directly.
2713
2714 2005-05-15  David Schleef  <ds@schleef.org>
2715
2716         * check/Makefile.am: remove GstData checks
2717         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2718         * gst/Makefile.am: add miniobject, remove data
2719         * gst/gst.h: add miniobject, remove data
2720         * gst/gstdata.c: remove
2721         * gst/gstdata.h: remove
2722         * gst/gstdata_private.h: remove
2723         * gst/gsttypes.h: remove GstEvent and GstMessage
2724         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2725         * gst/gstmarshal.list: change BOXED -> OBJECT
2726
2727         Implement GstMiniObject.
2728         * gst/gstminiobject.c:
2729         * gst/gstminiobject.h:
2730
2731         Modify to be subclasses of GstMiniObject.
2732         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2733         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2734         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2735         (gst_subbuffer_get_type), (gst_subbuffer_init),
2736         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2737         (gst_buffer_span):
2738         * gst/gstbuffer.h:
2739         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2740         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2741         (_gst_event_copy), (gst_event_new):
2742         * gst/gstevent.h:
2743         * gst/gstmessage.c: (_gst_message_initialize),
2744         (gst_message_get_type), (gst_message_class_init),
2745         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2746         (gst_message_new), (gst_message_new_error),
2747         (gst_message_new_warning), (gst_message_new_tag),
2748         (gst_message_new_state_changed), (gst_message_new_application):
2749         * gst/gstmessage.h:
2750         * gst/gstprobe.c: (gst_probe_perform),
2751         (gst_probe_dispatcher_dispatch):
2752         * gst/gstprobe.h:
2753         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2754         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2755         (_gst_query_copy), (gst_query_new):
2756
2757         Update elements for GstData -> GstMiniObject changes
2758         * gst/gstquery.h:
2759         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2760         (gst_queue_chain), (gst_queue_loop):
2761         * gst/elements/gstbufferstore.c:
2762         (gst_buffer_store_add_buffer_func),
2763         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2764         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2765         (gst_fakesink_render):
2766         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2767         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2768         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2769         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2770         (gst_filesrc_create_read):
2771         * gst/elements/gstidentity.c: (gst_identity_class_init):
2772         * gst/elements/gsttypefindelement.c:
2773         (gst_type_find_element_src_event), (free_entry_buffers),
2774         (gst_type_find_element_handle_event):
2775         * libs/gst/dataprotocol/dataprotocol.c:
2776         (gst_dp_header_from_buffer):
2777         * libs/gst/dataprotocol/dataprotocol.h:
2778         * libs/gst/dataprotocol/dp-private.h:
2779
2780 2005-05-15  David Schleef  <ds@schleef.org>
2781
2782         * gst/elements/gstelements.c: Don't include headers that were
2783         just removed.
2784
2785 2005-05-15  David Schleef  <ds@schleef.org>
2786
2787         * gst/elements/Makefile.am: Remove some elements that don't
2788         need to be in the core (or even exist at all).
2789         * gst/elements/gstaggregator.c:
2790         * gst/elements/gstaggregator.h:
2791         * gst/elements/gstmd5sink.c:
2792         * gst/elements/gstmd5sink.h:
2793         * gst/elements/gstmultifilesrc.c:
2794         * gst/elements/gstmultifilesrc.h:
2795         * gst/elements/gstpipefilter.c:
2796         * gst/elements/gstpipefilter.h:
2797         * gst/elements/gstshaper.c:
2798         * gst/elements/gstshaper.h:
2799         * gst/elements/gststatistics.c:
2800         * gst/elements/gststatistics.h:
2801         * po/POTFILES.in: Remove above files.
2802
2803 2005-05-14  Andy Wingo  <wingo@pobox.com>
2804
2805         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2806         so as to get the refs right.
2807         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2808         unreffing objects that don't pass the filter.
2809
2810         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2811         gst_element_set_bus.
2812         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2813         normal cases, this will destroy the bus.
2814
2815         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2816         object.
2817
2818         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2819         has no sinks.
2820
2821 2005-05-13  Andy Wingo  <wingo@pobox.com>
2822
2823         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2824         gst_pad_link, call pad_link_maybe_ghosting,
2825         (pad_link_maybe_ghosting): Links pads, making sure that the
2826         elements being linked are in the same bin.
2827         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2828         Helpers for pad_link_maybe_ghosting.
2829
2830 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2831
2832         * configure.ac:
2833           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2834
2835 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2836
2837         * docs/design/part-element-source.txt:
2838           Mention GstPushSrc
2839
2840 2005-05-12  Wim Taymans  <wim@fluendo.com>
2841
2842         * gst/base/gstbasesink.c: (gst_basesink_init),
2843         (gst_basesink_activate):
2844         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2845         (gst_basesrc_is_seekable):
2846         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2847         (bin_element_is_sink), (gst_bin_change_state):
2848         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2849         * gst/gstelement.h:
2850         Identify sinks by their flag to avoid overly complicated
2851         checks (fow now).
2852         Do state changes even for elements not reachable from the
2853         sinks.
2854         BaseSink is a sink now :)
2855         Some more debugging info in the basesrc.
2856
2857
2858 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2859
2860         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2861           Implement _query on a bin, similar to _send_event.
2862
2863 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2864
2865         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2866           Discont event offset format should be GST_FORMAT_BYTES,
2867           not GST_FORMAT_TIME.
2868
2869 2005-05-12  Wim Taymans  <wim@fluendo.com>
2870
2871         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2872         Same fix as Ronald's but without the signal. 
2873
2874 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2875
2876         * gst/gstutils.c: (gst_element_query_position):
2877           No, an element is not a pad.
2878
2879 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2880
2881         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2882         (gst_bin_get_state):
2883           If a child is removed from a bin while we remove the child from
2884           the bin and while we're retrieving its state, signal this to the
2885           get_state function so we abort the wait (instead of waiting for
2886           a timeout) and can immediately re-iterate over all other elements.
2887
2888 2005-05-12  Wim Taymans  <wim@fluendo.com>
2889
2890         * gst/base/Makefile.am:
2891         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2892         (gst_basesrc_start):
2893         * gst/base/gstbasesrc.h:
2894         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2895         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2896         (gst_pushsrc_init), (gst_pushsrc_create):
2897         * gst/base/gstpushsrc.h:
2898         Added is_seekable to BaseSrc
2899         Added simple PushSrc.
2900
2901 2005-05-11  Wim Taymans  <wim@fluendo.com>
2902
2903         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2904         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2905         (gst_element_link_pads), (gst_element_query_position),
2906         (gst_element_query_convert), (intersect_caps_func),
2907         (gst_pad_query_position), (gst_pad_query_convert):
2908         Fix refcounting in utils function.
2909         No point in trying to activate a pad when it's added, it could
2910         be added from the state change function and then we deadlock, the
2911         element has to decide what to do.
2912
2913 2005-05-10  Andy Wingo  <wingo@pobox.com>
2914
2915         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2916         *all* the arguments.
2917
2918         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2919         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2920         lock (according to the docs -- if this is wrong change the docs).
2921
2922         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2923         flush messages in the NULL state.
2924
2925         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2926         message immediately and return.
2927         (gst_bus_set_flushing): New function. If a bus is flushing, it
2928         flushes out any queued messages and immediately unrefs new
2929         messages. This is so when an element goes to NULL, all of the
2930         unhandled messages coming from it can be freed, and their
2931         references to the element dropped. In other words: message source
2932         ref considered harmful :P
2933
2934         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2935         we're finished with it.
2936
2937         * gst/gstmessage.c (gst_message_new_state_changed): 
2938
2939 2005-05-10  Wim Taymans  <wim@fluendo.com>
2940
2941         * gst/gstvalue.c: (gst_value_compare_flags),
2942         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2943         (_gst_value_initialize):
2944         Added flags serialize/deserialize/compare code.
2945
2946 2005-05-09  Andy Wingo  <wingo@pobox.com>
2947
2948         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2949         Intersect the peer's caps with our caps.
2950
2951 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2952
2953         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2954         * gst/elements/gsttypefindelement.c: (find_peek):
2955           Handle negative offsets better. Fixes decodebin.
2956
2957 2005-05-09  Wim Taymans  <wim@fluendo.com>
2958
2959         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2960         (gst_base_transform_event):
2961         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2962         Implement accept_caps.
2963         Fix silly lock/unlock mismatch in base class.
2964
2965 2005-05-09  Wim Taymans  <wim@fluendo.com>
2966
2967         * docs/design/draft-push-pull.txt:
2968         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2969         * gst/elements/gstfilesink.c: (gst_filesink_init),
2970         (gst_filesink_query):
2971         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2972         (gst_type_find_handle_src_query), (find_element_get_length):
2973         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2974         * gst/gstelement.h:
2975         * gst/gstmessage.c:
2976         * gst/gstmessage.h:
2977         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2978         (gst_real_pad_get_caps_unlocked),
2979         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2980         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2981         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2982         (gst_real_pad_dispose), (gst_real_pad_finalize),
2983         (gst_pad_load_and_link), (gst_pad_save_thyself),
2984         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2985         (gst_pad_check_pull_range), (gst_pad_pull_range),
2986         (gst_pad_template_get_type), (gst_pad_template_class_init),
2987         (gst_pad_template_init), (gst_pad_template_dispose),
2988         (name_is_valid), (gst_static_pad_template_get),
2989         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2990         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2991         (gst_pad_get_element_private), (gst_pad_start_task),
2992         (gst_pad_pause_task), (gst_pad_stop_task),
2993         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2994         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2995         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
2996         (gst_ghost_pad_new):
2997         * gst/gstpad.h:
2998         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
2999         (gst_query_new_position), (gst_query_set_position),
3000         (gst_query_parse_position), (gst_query_new_convert),
3001         (gst_query_set_convert), (gst_query_parse_convert):
3002         * gst/gstquery.h:
3003         * gst/gstqueryutils.c:
3004         * gst/gstqueryutils.h:
3005         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3006         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3007         (gst_queue_handle_src_query):
3008         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3009         (gst_element_query_position), (gst_element_query_convert),
3010         (intersect_caps_func), (gst_pad_query_position),
3011         (gst_pad_query_convert):
3012         * gst/gstutils.h:
3013         * tools/gst-inspect.c: (print_pad_info):
3014         * tools/gst-xmlinspect.c: (print_element_info):
3015         Remove old query functions. Ported old code.
3016         Added position/convert helper functions to gstutils.
3017         Reordered gstpad.c code, grouping relevant things.
3018         Remove gst_message_new(), always need to speficy a specific
3019         message.
3020
3021
3022 2005-05-09  Andy Wingo  <wingo@pobox.com>
3023
3024         * gst/gstiterator.h: Add some includes.
3025
3026         * gst/gstqueryutils.h: Include more headers.
3027
3028         * gst/gstpad.h:
3029         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3030         some uses of gst_pad_query.
3031
3032         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3033         NULL out parameters.
3034         (gst_query_new_position): New proc, allocates a new position
3035         query.
3036
3037         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3038         gstqueryutils.c to the build.
3039
3040         * gst/gststructure.c (gst_structure_set_valist): Implement with
3041         the generic G_VALUE_COLLECT.
3042         
3043 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3044
3045         * gst/Makefile.am: (gst_headers):
3046         Added gstqueryutils.h to the list of headers to install, that was
3047         a 'nachty' move wingo :)
3048
3049 2005-05-06  Andy Wingo  <wingo@pobox.com>
3050
3051         * gst/gstquery.h
3052         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3053         GstData, init a memchunk.
3054         (standard_definitions): Add a few query types, deprecate a few.
3055         (gst_query_get_type): New proc.
3056         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3057         implementation.
3058         (gst_query_new_application, gst_query_get_structure): New public
3059         procs.
3060
3061         * docs/design/draft-query.txt: Removed LINKS from the query types,
3062         because all the rest can be dispatched to other pads -- seemed
3063         ugly to have a query that couldn't be dispatched. internal_links
3064         is fine as a pad method.
3065
3066         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3067         in gstpad.c, but maintain binary compatibility for the moment.
3068         Will fix before 0.9 is out.
3069
3070         * gst/gstqueryutils.c: 
3071         * gst/gstqueryutils.h: New files, implement 3 methods for each
3072         query type: parse_query, parse_response, and set. Probably need an
3073         allocator as well.
3074
3075         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3076
3077         * gst/elements/gstfilesink.c (gst_filesink_query2):
3078         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3079         query_types, and formats methods.
3080
3081         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3082         (gst_pad_set_query2_function): New functions.
3083         (gst_real_pad_init): Set query2_default as the default query2
3084         function. Basically just dispatches to internally linked pads.
3085
3086         Needs review!
3087         
3088         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3089         without using the atomic operations. Only one thread can possibly
3090         be accessing the data at this point. Changed so as to avoid
3091         gst_atomic operations.
3092
3093 2005-05-06  Wim Taymans  <wim@fluendo.com>
3094
3095         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3096         Also set caps if we use the fallback buffer alloc.
3097
3098 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3099
3100         * docs/gst/Makefile.am:
3101         * docs/gst/gstreamer-docs.sgml:
3102         * docs/gst/gstreamer-sections.txt:
3103         * docs/gst/tmpl/gstatomic.sgml:
3104         * docs/gst/tmpl/gstmemchunk.sgml:
3105         * testsuite/elements/struct_i386.h:
3106         * win32/GStreamer.vcproj:
3107         * win32/Makefile:
3108           Purge GstAtomic stuff from docs and win32 makefiles as well
3109
3110 2005-05-06  Wim Taymans  <wim@fluendo.com>
3111
3112         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3113         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3114         * gst/gstpad.c: (gst_pad_peer_get_caps):
3115         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3116         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3117         (gst_queue_src_activate), (gst_queue_change_state):
3118         * gst/gstqueue.h:
3119         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3120         (intersect_caps_func):
3121         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3122         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3123         Some fixes for the peer_get_caps() change.
3124
3125 2005-05-06  Wim Taymans  <wim@fluendo.com>
3126
3127         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3128         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3129         (gst_basesink_activate):
3130         Actually do something with error codes returned from the push
3131         functions.
3132
3133 2005-05-06  Wim Taymans  <wim@fluendo.com>
3134
3135         * docs/design/part-element-sink.txt:
3136         * docs/design/part-element-source.txt:
3137         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3138         (gst_basesink_event), (gst_basesink_activate):
3139         * gst/base/gstbasesink.h:
3140         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3141         (gst_basesrc_activate):
3142         * gst/base/gstbasesrc.h:
3143         * gst/gstelement.c: (gst_element_pads_activate):
3144         Some more documentation.
3145         Fixed scheduling decision in _pads_activate().
3146
3147 2005-05-05  Andy Wingo  <wingo@pobox.com>
3148
3149         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3150         the test suite.
3151
3152 2005-05-05  Wim Taymans  <wim@fluendo.com>
3153
3154         * gst/base/Makefile.am:
3155         * gst/base/gstbasesink.h:
3156         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3157         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3158         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3159         (gst_collectpads_class_init), (gst_collectpads_init),
3160         (gst_collectpads_finalize), (gst_collectpads_new),
3161         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3162         (find_pad), (gst_collectpads_remove_pad),
3163         (gst_collectpads_is_active), (gst_collectpads_collect),
3164         (gst_collectpads_collect_range), (gst_collectpads_start),
3165         (gst_collectpads_stop), (gst_collectpads_peek),
3166         (gst_collectpads_pop), (gst_collectpads_available),
3167         (gst_collectpads_read), (gst_collectpads_flush),
3168         (gst_collectpads_chain):
3169         * gst/base/gstcollectpads.h:
3170         * gst/elements/Makefile.am:
3171         * gst/elements/gstelements.c:
3172         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3173         (gst_fakesink_get_times), (gst_fakesink_event),
3174         (gst_fakesink_preroll), (gst_fakesink_render):
3175         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3176         (gst_filesink_init), (gst_filesink_set_location),
3177         (gst_filesink_open_file), (gst_filesink_close_file),
3178         (gst_filesink_pad_query), (gst_filesink_event),
3179         (gst_filesink_render), (gst_filesink_change_state):
3180         * gst/elements/gstfilesink.h:
3181         Added object to help in making collect pad based elements.
3182         Ported filesink.
3183         Make event function in sink baseclass return gboolean.
3184
3185 2005-05-05  Wim Taymans  <wim@fluendo.com>
3186
3187         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3188         (gst_bin_get_by_name):
3189         * gst/gstbuffer.h:
3190         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3191         (gst_clock_finalize):
3192         * gst/gstdata.c: (gst_data_replace):
3193         * gst/gstdata.h:
3194         * gst/gstelement.c: (gst_element_request_pad),
3195         (gst_element_pads_activate):
3196         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3197         (gst_object_unref):
3198         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3199         (gst_pad_set_checkgetrange_function),
3200         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3201         (gst_pad_check_pull_range), (gst_pad_pull_range),
3202         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3203         (gst_pad_pause_task), (gst_pad_stop_task):
3204         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3205         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3206         Fix name lookup in GstBin.
3207         Added _data_replace() function and _buffer_replace()
3208         Use finalize method to clean up clock.
3209         Fix refcounting on request pads.
3210         Fix pad schedule mode error.
3211         Some more object refcounting debug info,
3212
3213
3214 2005-05-04  Andy Wingo <wingo@pobox.com>
3215
3216         * check/Makefile.am:
3217         * docs/gst/tmpl/gstatomic.sgml:
3218         * docs/gst/tmpl/gstplugin.sgml:
3219         * gst/base/gstbasesink.c: (gst_basesink_activate):
3220         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3221         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3222         (gst_basesrc_query), (gst_basesrc_set_property),
3223         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3224         (gst_basesrc_activate):
3225         * gst/base/gstbasesrc.h:
3226         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3227         (gst_base_transform_src_activate):
3228         * gst/elements/gstelements.c:
3229         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3230         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3231         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3232         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3233         (gst_type_find_element_checkgetrange),
3234         (gst_type_find_element_activate):
3235         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3236         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3237         (gst_caps_load_thyself):
3238         * gst/gstelement.c: (gst_element_pads_activate),
3239         (gst_element_save_thyself), (gst_element_restore_thyself):
3240         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3241         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3242         * gst/gstpad.h:
3243         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3244         (gst_xml_parse_file), (gst_xml_parse_memory),
3245         (gst_xml_get_element), (gst_xml_make_element):
3246         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3247         (_file_index_id_save_xml), (gst_file_index_commit):
3248         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3249         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3250         (load_paths):
3251         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3252         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3253         * tools/gst-complete.c: (main):
3254         * tools/gst-compprep.c: (main):
3255         * tools/gst-inspect.c: (print_element_properties_info):
3256         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3257         * tools/gst-xmlinspect.c: (print_element_properties):
3258         GCC 4 fixen.
3259         
3260 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3261
3262         * gst/gstplugin.c: (gst_plugin_check_module),
3263         (gst_plugin_check_file), (gst_plugin_load_file):
3264             apply patch from #172526 to make register work on MacOSX
3265
3266 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3267
3268         * docs/gst/tmpl/gstconfig.sgml:
3269         * gst/gstconfig.h.in:
3270           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3271         * testsuite/debug/printf_extension.c: (main):
3272           Do not use GST_PTR_FORMAT on pointers to types with
3273           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3274         * testsuite/elements/property.h:
3275           use correct printf format
3276
3277 2005-05-02  Wim Taymans  <wim@fluendo.com>
3278
3279         * docs/design/draft-push-pull.txt:
3280         * docs/design/draft-query.txt:
3281         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3282         (gst_basesrc_start):
3283         Added draft for new query API.
3284         Added draft for better selecting scheduling methods.
3285         Make basesrc ignore length if the subclass does not support
3286         it.
3287
3288 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3289
3290         * gst/Makefile.am:
3291           possible fixes for automake-1.5 - _LIBADD is reserved
3292
3293 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3294
3295         * docs/faq/Makefile.am:
3296         * docs/manual/Makefile.am:
3297         * docs/manuals.mak:
3298         * docs/pwg/Makefile.am:
3299         * gst/Makefile.am:
3300           possible fixes for automake-1.5
3301
3302 2005-04-28  Wim Taymans  <wim@fluendo.com>
3303
3304         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3305         (gst_basesink_pad_getcaps), (gst_basesink_init),
3306         (gst_basesink_do_sync):
3307         * gst/gstclock.c: (gst_clock_entry_new):
3308         * gst/gstevent.c: (gst_event_discont_get_value):
3309         * gst/gstpipeline.c: (pipeline_bus_handler),
3310         (gst_pipeline_change_state):
3311         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3312         Better debugging of clocking info.
3313         Allow NULL values when getting discont values.
3314
3315 2005-04-27  Wim Taymans  <wim@fluendo.com>
3316
3317         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3318         * check/gst/gstpad.c: (gst_pad_suite):
3319         Increase timeout for checks.
3320
3321 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3322
3323         * check/Makefile.am:
3324           fix the broken rule for cleanup.  Apparently this rule is
3325           only needed on FC2, so maybe this warrants further autotool
3326           inspection.
3327
3328 2005-04-26  Wim Taymans  <wim@fluendo.com>
3329
3330         * gst/gsttrashstack.h:
3331         Ooohh. a nasty one! After having a failed pop() from the stack,
3332         it's possible that the stack is empty. In that case, don't
3333         follow the NULL pointer.
3334
3335 2005-04-25  Wim Taymans  <wim@fluendo.com>
3336
3337         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3338         (gst_pad_set_checkgetrange_function),
3339         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3340         (gst_pad_check_pull_range), (gst_pad_pull_range),
3341         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3342         (gst_pad_pause_task), (gst_pad_stop_task):
3343         * gst/gstplugin.c: (gst_plugin_load):
3344         * gst/gstplugin.h:
3345         Remove gst_library_load as it does more harm than good with
3346         the new g_module flags.
3347         Revert bogus caps template check in pad linking, pad caps
3348         are important when linking not the template, which is more
3349         general than the current caps.
3350
3351 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3352
3353         * gst/autoplug/.cvsignore:
3354         * gst/autoplug/Makefile.am:
3355         * gst/autoplug/gstsearchfuncs.c:
3356         * gst/autoplug/gstsearchfuncs.h:
3357         * gst/autoplug/gstspider.c:
3358         * gst/autoplug/gstspider.h:
3359         * gst/autoplug/gstspideridentity.c:
3360         * gst/autoplug/gstspideridentity.h:
3361         * gst/autoplug/spidertest.c:
3362           Die, spider, die.
3363
3364 2005-04-25  Wim Taymans  <wim@fluendo.com>
3365
3366         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3367         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3368         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3369         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3370         * gst/gstpad.h:
3371         Added stubs for unimplemented functions. 
3372
3373 2005-04-24  David Schleef  <ds@schleef.org>
3374
3375         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3376         please fix.
3377
3378 2005-04-24  David Schleef  <ds@schleef.org>
3379
3380         Convert everything from GstAtomicInt to g_atomic_int_*, and
3381         remove gstatomic.
3382         * gst/Makefile.am:
3383         * gst/gstatomic.c:
3384         * gst/gstatomic.h:
3385         * gst/gstatomic_impl.h:
3386         * gst/gstbuffer.c:
3387         * gst/gstcaps.c:
3388         * gst/gstcaps.h:
3389         * gst/gstclock.c:
3390         * gst/gstclock.h:
3391         * gst/gstdata.c:
3392         * gst/gstdata.h:
3393         * gst/gstdata_private.h:
3394         * gst/gstevent.c:
3395         * gst/gstinfo.c:
3396         * gst/gstinfo.h:
3397         * gst/gstmessage.c:
3398         * gst/gstobject.c:
3399         * gst/gstobject.h:
3400         * gst/gststructure.c:
3401         * gst/gststructure.h:
3402         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3403         * gst/gstutils.h:
3404
3405 2005-04-24  David Schleef  <ds@schleef.org>
3406
3407         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3408         make the regressions tests work.  Remove some code that is no
3409         longer true.
3410         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3411         Disable warning for pads without templates.
3412
3413 2005-04-24  David Schleef  <ds@schleef.org>
3414
3415         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3416         functions that handle filtered links.
3417         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3418         removed functions.
3419         * gst/gstutils.c: Fix/remove utility functions that handle
3420         filtered caps.
3421         * gst/gstutils.h:
3422         * gst/gstvalue.c: Add serialization/deserialization of caps
3423         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3424         requires fixing so that the filter caps notation creates
3425         a capsfilter element and sets the filter_caps property.  I
3426         think everyone probably wants to keep the shorthand notation.
3427         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3428         * docs/gst/tmpl/gstpad.sgml:
3429
3430         * gst/elements/gstelements.c: Register capsfilter element.
3431         * gst/Makefile.am: fix spacing
3432         * docs/random/ds/0.9-suggested-changes: random
3433
3434 2005-04-23  David Schleef  <ds@schleef.org>
3435
3436         * gst/elements/Makefile.am:
3437         * gst/elements/gstcapsfilter.c: New element that acts like an
3438         identity, but filters caps.  Will eventually replace filtered
3439         caps in pad linking.
3440         * gst/gstutils.c: (gst_element_create_all_pads): New function
3441         to create all the ALWAYS pads that are registered with an
3442         element class.  This functionality should eventually be
3443         merged in with GstElement initialization.
3444         * gst/gstutils.h:
3445         * testsuite/trigger/README: part of trigger test code that should
3446         have been checked in a long time ago.
3447
3448 2005-04-23  David Schleef  <ds@schleef.org>
3449
3450         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3451         needed with new versions of libtool (nobody will confirm this),
3452         and hard to carry around.
3453         * gst/autoplug/Makefile.am:
3454         * gst/base/Makefile.am:
3455         * gst/elements/Makefile.am:
3456         * gst/indexers/Makefile.am:
3457         * gst/schedulers/Makefile.am:
3458         * libs/gst/bytestream/Makefile.am:
3459         * libs/gst/control/Makefile.am:
3460         * libs/gst/dataprotocol/Makefile.am:
3461         * libs/gst/getbits/Makefile.am:
3462
3463 2005-04-21  Wim Taymans  <wim@fluendo.com>
3464
3465         * docs/design/draft-push-pull.txt:
3466         * docs/design/part-MT-refcounting.txt:
3467         * docs/design/part-TODO.txt:
3468         * docs/design/part-caps.txt:
3469         * docs/design/part-events.txt:
3470         * docs/design/part-gstbus.txt:
3471         * docs/design/part-gstpipeline.txt:
3472         * docs/design/part-messages.txt:
3473         * docs/design/part-push-pull.txt:
3474         * docs/design/part-query.txt:
3475         Some more docs.
3476
3477 2005-04-21  Wim Taymans  <wim@fluendo.com>
3478
3479         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3480         (gst_message_new), (gst_message_new_error),
3481         (gst_message_new_warning), (gst_message_new_tag),
3482         (gst_message_new_state_changed), (gst_message_new_application),
3483         (gst_message_get_structure):
3484         * gst/gstmessage.h:
3485         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3486         (gst_structure_copy_conditional):
3487         Use parent refcount in GstMessage to ensure GstStructure
3488         consistency.
3489         Cleaned up headers a bit.
3490         
3491
3492 2005-04-20  Wim Taymans  <wim@fluendo.com>
3493
3494         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3495         (gst_basesink_pad_getcaps), (gst_basesink_init),
3496         (gst_basesink_chain_unlocked):
3497         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3498         (gst_type_find_helper):
3499         * gst/elements/gsttypefindelement.c:
3500         (gst_type_find_element_have_type), (gst_type_find_element_init),
3501         (stop_typefinding), (gst_type_find_element_handle_event),
3502         (find_suggest), (gst_type_find_element_chain),
3503         (gst_type_find_element_checkgetrange),
3504         (gst_type_find_element_getrange), (do_typefind),
3505         (gst_type_find_element_activate):
3506         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3507         (gst_buffer_default_free), (gst_buffer_default_copy),
3508         (gst_buffer_set_caps):
3509         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3510         (gst_caps_replace):
3511         * gst/gstmessage.c: (gst_message_new),
3512         (gst_message_new_state_changed):
3513         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3514         (gst_pad_set_checkgetrange_function),
3515         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3516         (gst_pad_set_caps), (gst_pad_check_pull_range),
3517         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3518         * gst/gstpad.h:
3519         * gst/gsttypefind.c: (gst_type_find_register):
3520         Make gst_caps_replace() work like other _replace() functions.
3521         Use _caps_replace() where possible.
3522         Make sure _message_new() initialises its field.
3523         Add gst_static_pad_template_get_caps()
3524
3525
3526 2005-04-18  Andy Wingo  <wingo@pobox.com>
3527
3528         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3529         on the peer, not the pad. I think that was a typo. Pass an extra
3530         arg to see if random access is possible. Activate the pads as
3531         PULL_RANGE if possible.
3532
3533         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3534
3535         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3536         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3537         to PROP_....
3538
3539 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3540
3541         * docs/faq/using.xml:
3542           Add note on gstreamer-properties (#154996).
3543
3544 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3545
3546         * docs/random/bbb/optional-properties:
3547           Some analysis on optional properties.
3548
3549 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3550
3551         * docs/gst/tmpl/gstelementfactory.sgml:
3552         * gst/gstelement.h:
3553         * gst/gstelementfactory.c: (gst_element_factory_init),
3554         (gst_element_factory_cleanup), (gst_element_register),
3555         (__gst_element_factory_add_static_pad_template),
3556         (gst_element_factory_get_static_pad_templates),
3557         (gst_element_factory_can_src_caps),
3558         (gst_element_factory_can_sink_caps):
3559         * gst/registries/Makefile.am:
3560         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3561         (gst_xml_registry_class_init), (gst_xml_registry_init),
3562         (gst_xml_registry_new), (gst_xml_registry_set_property),
3563         (gst_xml_registry_get_property), (get_time), (make_dir),
3564         (gst_xml_registry_get_perms_func),
3565         (plugin_times_older_than_recurse), (plugin_times_older_than),
3566         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3567         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3568         (add_to_char_array), (read_string), (read_uint), (read_enum),
3569         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3570         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3571         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3572         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3573         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3574         (gst_xml_registry_rebuild):
3575         * gst/registries/gstlibxmlregistry.h:
3576         * tools/gst-compprep.c: (main):
3577         * tools/gst-inspect.c: (print_pad_templates_info):
3578         * tools/gst-xmlinspect.c: (print_element_info):
3579           Use libxml2 for registry parsing, use staticpadtemplates in
3580           elementfactories. Makes gst_init() +/- 10x faster.
3581
3582 2005-04-12  Wim Taymans  <wim@fluendo.com>
3583
3584         * gst/base/Makefile.am:
3585         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3586         (gst_basesink_pad_getcaps), (gst_basesink_init),
3587         (gst_basesink_event), (gst_basesink_change_state):
3588         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3589         (gst_basesrc_init), (gst_basesrc_query),
3590         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3591         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3592         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3593         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3594         (gst_basesrc_stop), (gst_basesrc_activate),
3595         (gst_basesrc_change_state):
3596         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3597         (helper_find_suggest), (gst_type_find_helper):
3598         * gst/base/gsttypefindhelper.h:
3599         * gst/elements/Makefile.am:
3600         * gst/elements/gstelements.c:
3601         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3602         (gst_fakesink_get_times), (gst_fakesink_event),
3603         (gst_fakesink_preroll), (gst_fakesink_render):
3604         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3605         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3606         (gst_fakesrc_get_property), (gst_fakesrc_create),
3607         (gst_fakesrc_start), (gst_fakesrc_stop):
3608         * gst/elements/gstfakesrc.h:
3609         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3610         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3611         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3612         (gst_filesrc_create_read), (gst_filesrc_create),
3613         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3614         (gst_filesrc_start):
3615         * gst/elements/gsttypefindelement.c:
3616         (gst_type_find_element_have_type), (gst_type_find_element_init),
3617         (start_typefinding), (stop_typefinding), (push_buffer_store),
3618         (gst_type_find_element_handle_event),
3619         (gst_type_find_element_chain),
3620         (gst_type_find_element_checkgetrange),
3621         (gst_type_find_element_getrange), (do_typefind),
3622         (gst_type_find_element_activate),
3623         (gst_type_find_element_change_state):
3624         * gst/elements/gsttypefindelement.h:
3625         * gst/gstpipeline.c: (pipeline_bus_handler):
3626         Added typefind helper.
3627         Small preroll fix in the base sink.
3628         Disable typefind code in basesrc.
3629         Crude port of typefindelement.
3630         Fakesrc cleanups.
3631
3632
3633 2005-04-11  Wim Taymans  <wim@fluendo.com>
3634
3635         * check/gst/gstbus.c: (gstbus_suite):
3636         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3637         * check/gstcheck.h:
3638           Fix up the timeout so that the test does not fail.
3639
3640 2005-04-06  Wim Taymans  <wim@fluendo.com>
3641
3642         * gst/base/README:
3643         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3644         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3645         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3646         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3647         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3648         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3649         (gst_basesrc_stop), (gst_basesrc_activate),
3650         (gst_basesrc_change_state), (basesrc_find_peek),
3651         (basesrc_find_suggest), (gst_basesrc_type_find):
3652         * gst/base/gstbasesrc.h:
3653         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3654         (gst_filesrc_class_init), (gst_filesrc_init),
3655         (gst_filesrc_finalize), (gst_filesrc_set_location),
3656         (gst_filesrc_set_property), (gst_filesrc_get_property),
3657         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3658         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3659         (gst_filesrc_create_read), (gst_filesrc_create),
3660         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3661         * gst/elements/gstfilesrc.h:
3662         * gst/gstelement.c: (gst_element_get_state_func),
3663         (gst_element_lost_state), (gst_element_pads_activate):
3664         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3665         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3666         (gst_pad_pull_range):
3667         * gst/gstpad.h:
3668         More work on the generic source base class, implement seeking,
3669         query.
3670         Make filesrc extend the base source class.
3671         Added gst_pad_set_checkgetrange_function to GstPad.
3672
3673 2005-04-06  Andy Wingo  <wingo@pobox.com>
3674
3675         * pkgconfig/gstreamer-base.pc.in:
3676         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3677
3678         * pkgconfig/Makefile.am:
3679         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3680
3681 2005-04-04  Wim Taymans  <wim@fluendo.com>
3682
3683         * gst/base/Makefile.am:
3684         * gst/base/README:
3685         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3686         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3687         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3688         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3689         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3690         (gst_basesrc_base_init), (gst_basesrc_class_init),
3691         (gst_basesrc_init), (gst_basesrc_get_formats),
3692         (gst_basesrc_get_query_types), (gst_basesrc_query),
3693         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3694         (gst_basesrc_set_property), (gst_basesrc_get_property),
3695         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3696         (gst_basesrc_loop), (gst_basesrc_activate),
3697         (gst_basesrc_change_state):
3698         * gst/base/gstbasesrc.h:
3699         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3700         (gst_fakesrc_class_init), (gst_fakesrc_init),
3701         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3702         (gst_fakesrc_get_property), (gst_fakesrc_create):
3703         * gst/elements/gstfakesrc.h:
3704         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3705         (gst_filesrc_open_file), (gst_filesrc_loop),
3706         (gst_filesrc_activate), (filesrc_find_peek),
3707         (gst_filesrc_type_find):
3708         Made base source class, make fakesrc extend it.
3709         Add comments to basesink class.
3710         Some filesrc cleanup.
3711
3712 2005-03-31  David Schleef  <ds@schleef.org>
3713
3714         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3715         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3716         expected to link against libgstreamer.
3717         * gst/base/Makefile.am: link against libgstreamer
3718         * gst/elements/Makefile.am: same
3719
3720 2005-03-31  Andy Wingo  <wingo@pobox.com>
3721
3722         * tests/instantiate/Makefile.am:
3723         * tests/instantiate/caps.c: Add test to test speed of caps copy
3724         and free.
3725
3726         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3727         GMemChunk to be fair.
3728
3729         * gst/gsttrashstack.h: Remove warning about using the fallback
3730         trash stack implementation, it's still faster than malloc.
3731
3732 2005-03-30  Andy Wingo  <wingo@pobox.com>
3733
3734         * tests/complexity.c: Add a copyright.
3735
3736 2005-03-31  Wim Taymans  <wim@fluendo.com>
3737
3738         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3739         (gst_base_transform_class_init), (gst_base_transform_init),
3740         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3741         (gst_base_transform_get_property),
3742         (gst_base_transform_sink_activate),
3743         (gst_base_transform_src_activate),
3744         (gst_base_transform_change_state):
3745         * gst/base/gstbasetransform.h:
3746         * gst/elements/gstidentity.c: (gst_identity_class_init),
3747         (gst_identity_event), (gst_identity_check_perfect),
3748         (gst_identity_transform), (gst_identity_start),
3749         (gst_identity_stop):
3750         Added start/stop methods to transform base class so subclasses 
3751         don't need to deal with state changes even.
3752
3753 2005-03-31  Wim Taymans  <wim@fluendo.com>
3754
3755         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3756         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3757         * gst/gstevent.h:
3758         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3759         (gst_pad_pull_range):
3760         Added rate to the discont event to prepare for variable speed
3761         and reverse playback.
3762
3763 2005-03-29  David Schleef  <ds@schleef.org>
3764
3765         * configure.ac:
3766         * testsuite/trigger/Makefile.am:
3767         * testsuite/trigger/trigger.c: A little example program to show
3768         how trigger-based elements can work.
3769
3770 2005-03-29  Wim Taymans  <wim@fluendo.com>
3771
3772         * gst/base/Makefile.am:
3773         * gst/base/README:
3774         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3775         (gst_basesink_base_init), (gst_basesink_class_init),
3776         (gst_basesink_pad_getcaps), (gst_basesink_init),
3777         (gst_basesink_activate), (gst_basesink_change_state):
3778         * gst/base/gstbasesink.h:
3779         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3780         (gst_base_transform_base_init), (gst_base_transform_finalize),
3781         (gst_base_transform_class_init), (gst_base_transform_init),
3782         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3783         (gst_base_transform_event), (gst_base_transform_getrange),
3784         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3785         (gst_base_transform_set_property),
3786         (gst_base_transform_get_property),
3787         (gst_base_transform_sink_activate),
3788         (gst_base_transform_src_activate),
3789         (gst_base_transform_change_state):
3790         * gst/base/gstbasetransform.h:
3791         * gst/elements/gstidentity.c: (gst_identity_finalize),
3792         (gst_identity_class_init), (gst_identity_init),
3793         (gst_identity_event), (gst_identity_check_perfect),
3794         (gst_identity_transform), (gst_identity_set_property),
3795         (gst_identity_get_property), (gst_identity_change_state):
3796         * gst/elements/gstidentity.h:
3797         * gst/gstelement.c: (gst_element_get_state_func),
3798         (gst_element_lost_state), (gst_element_pads_activate):
3799         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3800         (gst_pad_check_pull_range), (gst_pad_pull_range):
3801         * gst/gstpad.h:
3802         Simplify pad activation.
3803         Added function to check if pull_range can be performed.
3804         Error out when pulling inactive or flushing pads.
3805         Removed const from refcounted types as it does not make sense.
3806         Simplify pad templates in basesink
3807         Added base class for simple 1-to-1 transforms.
3808         Make identity subclass the base transform.
3809
3810 2005-03-29  Andy Wingo  <wingo@pobox.com>
3811
3812         * docs/libs/gstreamer-libs-overrides.txt: 
3813         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3814         really don't understand what's going on, but like whatever. I want
3815         green buildbot!
3816
3817         * docs/gst/Makefile.am:
3818         * docs/libs/Makefile.am: Dist the overrides files.
3819
3820         * check/Makefile.am (clean-local): Remove .libs directories.
3821
3822         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3823         elements to EXTRA_DIST, so po/ files are happy.
3824
3825         * po/POTFILES.in: Er, remove it here.
3826
3827         * po/POTFILES: Remove gstspider.c.
3828
3829         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3830
3831         * docs/libs/gstreamer-libs-docs.sgml: 
3832         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3833         bytestream.
3834
3835         * tests/complexity.c (main): Set the length of the preroll queue
3836         on the sinks to prevent a lockup.
3837
3838         * libs/gst/dataprotocol/Makefile.am: 
3839         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3840         the same as the one in check/gst-libs/gdp.c.
3841
3842         * po/, docs/gst/: Commit automatic changes to docs and po files.
3843
3844         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3845         the versioned libgstbase.
3846
3847         * check/Makefile.am: Depend on an unversioned gst-register, seems
3848         to make autoconf happier.
3849
3850         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3851
3852 2005-03-28  Wim Taymans  <wim@fluendo.com>
3853
3854         * configure.ac:
3855         * docs/design/part-gstelement.txt:
3856         * docs/design/part-negotiation.txt:
3857         * docs/design/part-preroll.txt:
3858         * docs/design/part-scheduling.txt:
3859         * docs/design/part-states.txt:
3860         * gst/Makefile.am:
3861         * gst/base/Makefile.am:
3862         * gst/base/README:
3863         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3864         (gst_basesink_base_init), (gst_basesink_class_init),
3865         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3866         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3867         (gst_basesink_set_pad_functions),
3868         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3869         (gst_basesink_set_property), (gst_basesink_get_property),
3870         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3871         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3872         (gst_basesink_preroll_queue_push),
3873         (gst_basesink_preroll_queue_empty),
3874         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3875         (gst_basesink_event), (gst_basesink_get_times),
3876         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3877         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3878         (gst_basesink_loop), (gst_basesink_activate),
3879         (gst_basesink_change_state):
3880         * gst/base/gstbasesink.h:
3881         * gst/elements/Makefile.am:
3882         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3883         (gst_fakesink_class_init), (gst_fakesink_init),
3884         (gst_fakesink_set_property), (gst_fakesink_get_property),
3885         (gst_fakesink_get_times), (gst_fakesink_event),
3886         (gst_fakesink_preroll), (gst_fakesink_render),
3887         (gst_fakesink_change_state):
3888         * gst/elements/gstfakesink.h:
3889         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3890         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3891         * gst/gstelement.c: (gst_element_add_pad),
3892         (gst_element_get_state_func), (gst_element_abort_state),
3893         (gst_element_commit_state), (gst_element_lost_state),
3894         (gst_element_set_state), (gst_element_pads_activate):
3895         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3896         * gst/gstpipeline.c: (gst_pipeline_send_event),
3897         (gst_pipeline_change_state):
3898         Added state change code.
3899         Added/updated docs.
3900         Added sink base class, make fakesink extend the base class.
3901         Small cleanups in GstPipeline.
3902
3903 2005-03-26  David Schleef  <ds@schleef.org>
3904
3905         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3906         is broken and should be implemented in a different library.
3907         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3908         * gst/gst.h: remove gstcpu.h
3909         * gst/gstcpu.c: remove
3910         * gst/gstcpu.h: remove
3911         * gst/Makefile.am.future: Remove this file.  It's ancient.
3912
3913 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3914
3915         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3916         (gst_bin_send_event):
3917           Add default event/set_manager handlers. The set_manager handler
3918           takes care that the manager is distributed over kids that were
3919           already in the bin before the manager was set. The event handler
3920           is a utility virtual function that sends the event over all sinks,
3921           so that gst_element_send_event (bin, event); has the expected
3922           behaviour.
3923         * gst/gstpad.c: (gst_pad_event_default):
3924           Re-install default event handling for discontinuities, so that
3925           seeking works without requiring hacks in applications or extra
3926           code in sinks.
3927         * gst/gstpipeline.c: (gst_pipeline_class_init),
3928         (gst_pipeline_send_event):
3929           Half hack, half utility: set a pipeline to PAUSED for seek events,
3930           since that is the only way we can guarantee a/v sync. Means that
3931           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3932           and it "just works".
3933
3934 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3935
3936         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3937           Lock/unlock mismatch.
3938
3939 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3940
3941         * docs/faq/gst-uninstalled:
3942           add gst-plugins-base
3943         * docs/gst/Makefile.am:
3944           don't error out until docs are fixed
3945         * docs/gst/gstreamer.types:
3946           remove thread
3947
3948 2005-03-22  Wim Taymans  <wim@fluendo.com>
3949
3950         * check/Makefile.am:
3951         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3952         * gst/gststructure.c: (gst_structure_set_valist),
3953         (gst_structure_copy_conditional):
3954         Activated more tests.
3955         Added message test.
3956         Added G_TYPE_POINTER to GstStructure.
3957         
3958
3959 2005-03-22  Wim Taymans  <wim@fluendo.com>
3960
3961         * docs/design/part-TODO.txt:
3962         * docs/design/part-events.txt:
3963         * docs/design/part-gstbin.txt:
3964         * docs/design/part-gstbus.txt:
3965         * docs/design/part-gstpipeline.txt:
3966         * docs/design/part-messages.txt:
3967         * gst/gstbus.c:
3968         * gst/gstmessage.c:
3969         Docs updates
3970
3971 2005-03-21  Wim Taymans  <wim@fluendo.com>
3972
3973         * gst/gstbus.c: (gst_bus_post):
3974         Fix copy-and-paste error.
3975
3976 2005-03-21  Wim Taymans  <wim@fluendo.com>
3977
3978         * check/Makefile.am:
3979         * gst/Makefile.am:
3980         * gst/elements/Makefile.am:
3981         * gst/elements/gstelements.c:
3982         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3983         (gst_fakesink_event), (gst_fakesink_chain):
3984         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3985         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3986         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3987         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3988         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3989         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3990         (gst_fakesrc_loop), (gst_fakesrc_activate),
3991         (gst_fakesrc_change_state):
3992         * gst/elements/gstfakesrc.h:
3993         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3994         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
3995         (gst_filesrc_open_file), (gst_filesrc_loop),
3996         (gst_filesrc_activate), (gst_filesrc_change_state),
3997         (filesrc_find_peek), (filesrc_find_suggest),
3998         (gst_filesrc_type_find):
3999         * gst/elements/gstidentity.c: (gst_identity_finalize),
4000         (gst_identity_class_init), (gst_identity_init),
4001         (gst_identity_proxy_getcaps), (identity_queue_push),
4002         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4003         (gst_identity_getrange), (gst_identity_chain),
4004         (gst_identity_sink_loop), (gst_identity_src_loop),
4005         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4006         (gst_identity_set_property), (gst_identity_get_property),
4007         (gst_identity_change_state):
4008         * gst/elements/gstidentity.h:
4009         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4010         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4011         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4012         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4013         (gst_tee_sink_activate):
4014         * gst/elements/gsttee.h:
4015         * gst/gst.c: (gst_register_core_elements), (init_post):
4016         * gst/gst.h:
4017         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4018         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4019         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4020         (gst_bin_change_state):
4021         * gst/gstbin.h:
4022         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4023         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4024         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4025         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4026         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4027         (bus_watch_callback), (bus_watch_destroy),
4028         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4029         (poll_timeout), (gst_bus_poll):
4030         * gst/gstbus.h:
4031         * gst/gstcaps.h:
4032         * gst/gstdata.h:
4033         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4034         (gst_element_post_message), (gst_element_message_full),
4035         (gst_element_get_state_func), (gst_element_get_state),
4036         (gst_element_abort_state), (gst_element_commit_state),
4037         (gst_element_lost_state), (gst_element_set_state),
4038         (gst_element_pads_activate), (gst_element_change_state),
4039         (gst_element_dispose), (gst_element_set_manager_func),
4040         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4041         (gst_element_set_manager), (gst_element_get_manager),
4042         (gst_element_set_bus), (gst_element_get_bus),
4043         (gst_element_set_scheduler), (gst_element_get_scheduler):
4044         * gst/gstelement.h:
4045         * gst/gstevent.c: (gst_event_new_segment_seek),
4046         (gst_event_new_flush):
4047         * gst/gstevent.h:
4048         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4049         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4050         (gst_message_new_eos), (gst_message_new_error),
4051         (gst_message_new_warning), (gst_message_new_tag),
4052         (gst_message_new_state_changed), (gst_message_new_application),
4053         (gst_message_get_structure), (gst_message_parse_tag),
4054         (gst_message_parse_state_changed), (gst_message_parse_error),
4055         (gst_message_parse_warning):
4056         * gst/gstmessage.h:
4057         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4058         (gst_real_pad_set_property), (gst_pad_set_active),
4059         (gst_pad_is_active), (gst_pad_set_blocked_async),
4060         (gst_pad_set_blocked), (gst_pad_is_blocked),
4061         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4062         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4063         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4064         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4065         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4066         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4067         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4068         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4069         (gst_pad_set_caps), (gst_pad_configure_sink),
4070         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4071         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4072         (gst_real_pad_dispose), (gst_real_pad_finalize),
4073         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4074         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4075         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4076         * gst/gstpad.h:
4077         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4078         (pipeline_bus_handler), (gst_pipeline_change_state),
4079         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4080         * gst/gstpipeline.h:
4081         * gst/gstprobe.h:
4082         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4083         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4084         (gst_queue_link_src), (gst_queue_bufferalloc),
4085         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4086         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4087         (gst_queue_loop), (gst_queue_handle_src_event),
4088         (gst_queue_handle_src_query), (gst_queue_src_activate),
4089         (gst_queue_change_state):
4090         * gst/gstqueue.h:
4091         * gst/gstscheduler.c: (gst_scheduler_init),
4092         (gst_scheduler_dispose), (gst_scheduler_create_task),
4093         (gst_scheduler_factory_create):
4094         * gst/gstscheduler.h:
4095         * gst/gststructure.c: (gst_structure_get_type),
4096         (gst_structure_copy_conditional):
4097         * gst/gststructure.h:
4098         * gst/gsttaginterface.h:
4099         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4100         (gst_task_init), (gst_task_dispose), (gst_task_create),
4101         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4102         (gst_task_pause):
4103         * gst/gsttask.h:
4104         * gst/gstthread.c:
4105         * gst/gstthread.h:
4106         * gst/gsttypes.h:
4107         * gst/schedulers/Makefile.am:
4108         * gst/schedulers/cothreads_compat.h:
4109         * gst/schedulers/entryscheduler.c:
4110         * gst/schedulers/faircothreads.c:
4111         * gst/schedulers/faircothreads.h:
4112         * gst/schedulers/fairscheduler.c:
4113         * gst/schedulers/gstbasicscheduler.c:
4114         * gst/schedulers/gstoptimalscheduler.c:
4115         * gst/schedulers/gthread-cothreads.h:
4116         * gst/schedulers/threadscheduler.c:
4117         (gst_thread_scheduler_task_get_type),
4118         (gst_thread_scheduler_task_class_init),
4119         (gst_thread_scheduler_task_init),
4120         (gst_thread_scheduler_task_start),
4121         (gst_thread_scheduler_task_stop),
4122         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4123         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4124         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4125         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4126         (plugin_init):
4127         * libs/gst/Makefile.am:
4128         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4129         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4130         (gst_file_pad_parent_set):
4131         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4132         (gst_dp_event_from_packet):
4133         * tests/complexity.c: (main):
4134         * tests/mass_elements.c: (main):
4135         * testsuite/states/locked.c: (message_received), (main):
4136         * testsuite/states/parent.c: (main):
4137         * tools/gst-inspect.c: (print_element_flag_info),
4138         (print_implementation_info), (print_pad_info):
4139         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4140         (main):
4141         * tools/gst-md5sum.c: (event_loop), (main):
4142         * tools/gst-typefind.c: (main):
4143         * tools/gst-xmlinspect.c: (print_element_info):
4144         Next big merge.
4145         Added GstBus for mainloop integration.
4146         Added GstMessage for sending notifications on the bus.
4147         Added GstTask as an abstraction for pipeline entry points.
4148         Removed GstThread.
4149         Removed Schedulers.
4150         Simplified GstQueue for multithreaded core.
4151         Made _link threadsafe, removed old capsnego.
4152         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4153         Added pad blocking functions.
4154         Reworked scheduling functions in GstPad to prepare for
4155         scheduling updates soon.
4156         Moved events out of data stream.
4157         Simplified GstEvent types.
4158         Added return values to push/pull.
4159         Removed clocking from GstElement.
4160         Added prototypes for state change function for next merge.
4161         Removed iterate from bins and state change management.
4162         Fixed some elements, disabled others for now.
4163         Fixed -inspect and -launch.
4164         Added check for GstBus.
4165
4166 2005-03-10  Wim Taymans  <wim@fluendo.com>
4167
4168         * docs/design/part-MT-refcounting.txt:
4169         * docs/design/part-clocks.txt:
4170         * docs/design/part-gstelement.txt:
4171         * docs/design/part-gstobject.txt:
4172         * docs/design/part-standards.txt:
4173         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4174         (gst_bin_remove_func), (gst_bin_remove):
4175         * gst/gstbin.h:
4176         * gst/gstbuffer.c:
4177         * gst/gstcaps.h:
4178         * testsuite/clock/clock1.c: (main):
4179         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4180         (main):
4181         * testsuite/dlopen/loadgst.c: (do_test):
4182         * testsuite/refcounting/bin.c: (add_remove_test1),
4183         (add_remove_test2), (main):
4184         * testsuite/refcounting/element.c: (main):
4185         * testsuite/refcounting/element_pad.c: (main):
4186         * testsuite/refcounting/pad.c: (main):
4187         * tools/gst-launch.c: (sigint_handler_sighandler):
4188         * tools/gst-typefind.c: (main):
4189         Doc updates.
4190         Added doc about clock.
4191         removed gst_bin_iterate_recurse_up(), marked methods
4192         for removal.
4193         Fix more testsuites.
4194
4195 2005-03-09  Wim Taymans  <wim@fluendo.com>
4196
4197         * gst/gstpad.c: (gst_pad_get_direction),
4198         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4199         (gst_pad_collect_valist):
4200         * testsuite/bins/interface.c: (main):
4201         * testsuite/caps/audioscale.c: (test_caps):
4202         * testsuite/caps/caps.c: (test1), (test2), (test3):
4203         * testsuite/caps/deserialize.c: (main):
4204         * testsuite/caps/enumcaps.c: (main):
4205         * testsuite/caps/filtercaps.c: (main):
4206         * testsuite/caps/intersect2.c: (main):
4207         * testsuite/caps/random.c: (main):
4208         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4209         * testsuite/caps/sets.c: (check_caps):
4210         * testsuite/caps/simplify.c: (check_caps), (main):
4211         * testsuite/caps/subtract.c: (check_caps):
4212         Fix _pad_get_direction wrt ghostpads.
4213         Fix caps testsuite.
4214
4215 2005-03-09  Wim Taymans  <wim@fluendo.com>
4216
4217         * check/Makefile.am:
4218         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4219         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4220         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4221         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4222         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4223         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4224         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4225         (bin_element_is_sink), (gst_bin_iterate_sinks),
4226         (gst_bin_iterate_all_by_interface):
4227         * gst/gstbin.h:
4228         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4229         (gst_element_change_state), (gst_element_dispose),
4230         (gst_element_finalize), (gst_element_set_loop_function):
4231         * gst/gstelement.h:
4232         * gst/gstiterator.c: (find_custom_fold_func):
4233         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4234         (gst_pad_collectv), (gst_pad_collect_valist),
4235         (gst_pad_template_new):
4236         * gst/gstpipeline.c: (gst_pipeline_class_init),
4237         (gst_pipeline_dispose), (gst_pipeline_set_property),
4238         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4239         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4240         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4241         * gst/gstutils.h:
4242         * gst/schedulers/entryscheduler.c:
4243         * gst/schedulers/gstbasicscheduler.c:
4244         (gst_basic_scheduler_cothreaded_chain),
4245         (gst_basic_scheduler_chain_add_element):
4246         * testsuite/bins/interface.c: (main):
4247         Added GstBin test.
4248         Added GstSystemClock test.
4249         Implemented clock distribution code in GstBin.
4250         Implemented iterate sinks method for future use.
4251         Rearranged gstelement.h
4252         Fix GstIterator comparison bug.
4253         Moved some code to GstPipeline, mostly clocking related.
4254
4255 2005-03-09  Wim Taymans  <wim@fluendo.com>
4256
4257         * configure.ac:
4258         * gst/gst_private.h:
4259         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4260         (gst_bin_remove_func), (gst_bin_remove),
4261         (gst_bin_get_by_name_recurse_up):
4262         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4263         (gst_clock_id_compare_func), (gst_clock_id_wait),
4264         (gst_clock_id_wait_async), (gst_clock_init),
4265         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4266         * gst/gstelement.h:
4267         * gst/gstinfo.c: (_gst_debug_init):
4268         * gst/gstobject.h:
4269         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4270         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4271         * gst/gstpad.h:
4272         Bump version number, we're now 0.9.0
4273         Add future debugging category.
4274         Fix NULL _unref() in _get_by_name_recurse_up
4275         Rearrange gstpad.h.
4276         Update some docs.
4277
4278 2005-03-08  Wim Taymans  <wim@fluendo.com>
4279
4280         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4281         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4282         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4283         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4284         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4285         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4286         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4287         * gst/elements/gstidentity.c: (gst_identity_class_init):
4288         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4289         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4290         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4291         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4292         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4293         (gst_tee_link):
4294         * gst/gstelement.c: (gst_element_class_init),
4295         (gst_element_base_class_init), (gst_element_init),
4296         (gst_element_get_random_pad), (gst_element_wait_state_change),
4297         (gst_element_change_state), (gst_element_dispose),
4298         (gst_element_finalize), (gst_element_set_loop_function):
4299         * gst/gstelement.h:
4300         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4301         * gst/gstthread.c: (gst_thread_class_init),
4302         (gst_thread_release_children_locks), (gst_thread_change_state):
4303         * gst/schedulers/gstbasicscheduler.c:
4304         (gst_basic_scheduler_loopfunc_wrapper),
4305         (gst_basic_scheduler_chain_wrapper),
4306         (gst_basic_scheduler_src_wrapper),
4307         (gst_basic_scheduler_remove_element):
4308         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4309         Remove threadsafe properties. Fix elements because GObject
4310         complains when installing a property before declaring a
4311         set/get_property handler.
4312         Rearrange gstelement.h file, use STATE macros for state locks.
4313         Free mutexes in the finalize method instead of dispose.
4314
4315 2005-03-08  Wim Taymans  <wim@fluendo.com>
4316
4317         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4318         * gst/gstthread.c: (gst_thread_release_children_locks):
4319         Added parentage check.
4320         Fix build og GstThread again.
4321
4322 2005-03-08  Wim Taymans  <wim@fluendo.com>
4323
4324         * docs/design/part-MT-refcounting.txt:
4325         * docs/design/part-conventions.txt:
4326         * docs/design/part-gstobject.txt:
4327         * docs/design/part-relations.txt:
4328         * docs/design/part-standards.txt:
4329         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4330         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4331         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4332         (gst_bin_iterate_all_by_interface):
4333         * gst/gstbuffer.h:
4334         * gst/gstclock.h:
4335         * gst/gstelement.c: (gst_element_class_init),
4336         (gst_element_change_state), (gst_element_set_loop_function):
4337         * gst/gstelement.h:
4338         * gst/gstiterator.c:
4339         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4340         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4341         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4342         (gst_object_set_parent), (gst_object_unparent),
4343         (gst_object_check_uniqueness):
4344         * gst/gstobject.h:
4345         Docs updates, clean up some headers.
4346
4347 2005-03-07  Wim Taymans  <wim@fluendo.com>
4348
4349         * check/.cvsignore:
4350         * check/Makefile.am:
4351         * check/gst-libs/.cvsignore:
4352         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4353         * check/gst/.cvsignore:
4354         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4355         (START_TEST), (gstbus_suite), (main):
4356         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4357         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4358         (gst_data_suite), (main):
4359         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4360         (add_fold_func), (gstiterator_suite), (main):
4361         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4362         (thread_name_object), (thread_name_object_default),
4363         (gst_object_name_compare), (gst_object_suite), (main):
4364         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4365         (gst_pad_suite), (main):
4366         * check/gstcheck.c: (gst_check_log_message_func),
4367         (gst_check_log_critical_func), (gst_check_init):
4368         * check/gstcheck.h:
4369         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4370         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4371         Added checks.
4372
4373 2005-03-07  Wim Taymans  <wim@fluendo.com>
4374
4375         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4376         (gst_list_iterator_next), (gst_list_iterator_resync),
4377         (gst_list_iterator_free), (gst_iterator_new_list),
4378         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4379         (gst_iterator_free), (gst_iterator_push), (filter_next),
4380         (filter_resync), (filter_uninit), (filter_free),
4381         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4382         (gst_iterator_foreach), (find_custom_fold_func),
4383         (gst_iterator_find_custom):
4384         * gst/gstiterator.h:
4385         Added missing files.
4386
4387 2005-03-07  Wim Taymans  <wim@fluendo.com>
4388
4389         * Makefile.am:
4390         * configure.ac:
4391         * docs/design/part-MT-refcounting.txt:
4392         * docs/design/part-conventions.txt:
4393         * docs/design/part-gstobject.txt:
4394         * docs/design/part-relations.txt:
4395         * examples/mixer/mixer.c: (main):
4396         * examples/thread/thread.c: (eos), (main):
4397         * gst/Makefile.am:
4398         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4399         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4400         (gst_spider_plug_from_srcpad):
4401         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4402         (gst_spider_identity_change_state),
4403         (gst_spider_identity_sink_loop_type_finding):
4404         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4405         * gst/elements/gstidentity.c: (gst_identity_init):
4406         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4407         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4408         * gst/elements/gsttypefindelement.c: (free_entry):
4409         * gst/gst.c:
4410         * gst/gst.h:
4411         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4412         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4413         (gst_bin_set_index), (gst_bin_set_element_sched),
4414         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4415         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4416         (gst_bin_iterate_elements), (iterate_child_recurse),
4417         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4418         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4419         (compare_interface), (gst_bin_get_by_interface),
4420         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4421         * gst/gstbin.h:
4422         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4423         (gst_buffer_default_free), (gst_buffer_default_copy),
4424         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4425         (gst_buffer_create_sub):
4426         * gst/gstbuffer.h:
4427         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4428         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4429         (gst_caps_unref), (gst_static_caps_get),
4430         (gst_caps_remove_and_get_structure), (gst_caps_append),
4431         (gst_caps_append_structure), (gst_caps_remove_structure),
4432         (gst_caps_copy_nth), (gst_caps_set_simple),
4433         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4434         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4435         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4436         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4437         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4438         (gst_caps_structure_figure_out_union),
4439         (gst_caps_switch_structures), (gst_caps_do_simplify),
4440         (gst_caps_replace), (gst_caps_from_string),
4441         (gst_caps_copy_conditional):
4442         * gst/gstcaps.h:
4443         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4444         (_gst_clock_id_free), (gst_clock_id_unref),
4445         (gst_clock_id_compare_func), (gst_clock_id_wait),
4446         (gst_clock_id_wait_async), (gst_clock_class_init),
4447         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4448         (gst_clock_get_time), (gst_clock_set_time_adjust),
4449         (gst_clock_set_property), (gst_clock_get_property):
4450         * gst/gstclock.h:
4451         * gst/gstcompat.h:
4452         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4453         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4454         * gst/gstdata.h:
4455         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4456         (gst_element_requires_clock), (gst_element_provides_clock),
4457         (gst_element_set_clock), (gst_element_clock_wait),
4458         (gst_element_wait), (gst_element_set_time_delay),
4459         (gst_element_is_indexable), (gst_element_add_pad),
4460         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4461         (pad_compare_name), (gst_element_get_static_pad),
4462         (gst_element_request_pad), (gst_element_get_request_pad),
4463         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4464         (gst_element_class_get_pad_template_list),
4465         (gst_element_class_get_pad_template), (gst_element_error_func),
4466         (gst_element_get_random_pad), (gst_element_get_event_masks),
4467         (gst_element_send_event), (gst_element_seek),
4468         (gst_element_get_query_types), (gst_element_query),
4469         (gst_element_get_formats), (gst_element_convert),
4470         (gst_element_is_locked_state), (gst_element_set_locked_state),
4471         (gst_element_sync_state_with_parent), (gst_element_change_state),
4472         (gst_element_finalize), (gst_element_yield),
4473         (gst_element_interrupt), (gst_element_set_scheduler),
4474         (gst_element_get_scheduler), (gst_element_set_loop_function):
4475         * gst/gstelement.h:
4476         * gst/gstevent.h:
4477         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4478         (gst_format_get_by_nick), (gst_format_get_details),
4479         (gst_format_iterate_definitions):
4480         * gst/gstformat.h:
4481         * gst/gstindex.c: (gst_index_gtype_resolver):
4482         * gst/gstinfo.c:
4483         * gst/gstinfo.h:
4484         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4485         (gst_mem_chunk_free):
4486         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4487         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4488         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4489         (gst_object_dispatch_properties_changed),
4490         (gst_object_set_name_default), (gst_object_set_name),
4491         (gst_object_get_name), (gst_object_set_name_prefix),
4492         (gst_object_get_name_prefix), (gst_object_set_parent),
4493         (gst_object_get_parent), (gst_object_unparent),
4494         (gst_object_check_uniqueness), (gst_object_save_thyself),
4495         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4496         (gst_object_set_property), (gst_object_get_property),
4497         (gst_object_get_path_string):
4498         * gst/gstobject.h:
4499         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4500         (gst_real_pad_init), (gst_real_pad_get_property),
4501         (gst_pad_custom_new), (gst_pad_get_direction),
4502         (gst_pad_set_active), (gst_pad_is_active),
4503         (gst_pad_set_event_function), (gst_pad_is_linked),
4504         (gst_pad_link_free), (gst_pad_link_intersect),
4505         (gst_pad_link_fixate), (gst_pad_set_caps),
4506         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4507         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4508         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4509         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4510         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4511         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4512         (gst_pad_realize), (gst_pad_get_allowed_caps),
4513         (gst_real_pad_dispose), (gst_real_pad_finalize),
4514         (gst_pad_collectv), (gst_pad_collect_valist),
4515         (gst_pad_template_dispose), (gst_pad_template_new),
4516         (gst_pad_get_internal_links):
4517         * gst/gstpad.h:
4518         * gst/gstpipeline.c: (gst_pipeline_dispose),
4519         (gst_pipeline_change_state):
4520         * gst/gstpipeline.h:
4521         * gst/gstplugin.c:
4522         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4523         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4524         * gst/gstpluginfeature.h:
4525         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4526         * gst/gstquery.c: (_gst_query_type_initialize),
4527         (gst_query_type_register), (gst_query_type_get_by_nick),
4528         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4529         * gst/gstquery.h:
4530         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4531         * gst/gstscheduler.c: (gst_scheduler_add_element),
4532         (gst_scheduler_factory_create):
4533         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4534         (gst_structure_free), (gst_structure_set_name),
4535         (gst_structure_id_set_value), (gst_structure_set_value),
4536         (gst_structure_set_valist), (gst_structure_remove_field),
4537         (gst_structure_remove_fields),
4538         (gst_structure_remove_fields_valist),
4539         (gst_structure_remove_all_fields), (gst_structure_foreach),
4540         (gst_structure_map_in_place),
4541         (gst_caps_structure_fixate_field_nearest_int),
4542         (gst_caps_structure_fixate_field_nearest_double):
4543         * gst/gststructure.h:
4544         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4545         (gst_system_clock_init), (gst_system_clock_dispose),
4546         (gst_system_clock_async_thread),
4547         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4548         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4549         * gst/gstsystemclock.h:
4550         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4551         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4552         * gst/gsttaginterface.c:
4553         * gst/gstthread.c: (gst_thread_dispose),
4554         (gst_thread_release_children_locks), (gst_thread_change_state),
4555         (gst_thread_main_loop):
4556         * gst/gsttrashstack.h:
4557         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4558         * gst/gsttypes.h:
4559         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4560         (gst_element_request_pad), (gst_element_get_pad_from_template),
4561         (gst_element_request_compatible_pad),
4562         (gst_element_get_compatible_pad_filtered),
4563         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4564         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4565         (gst_element_link_many), (gst_element_link),
4566         (gst_element_link_pads), (gst_element_unlink_pads),
4567         (gst_element_unlink_many), (gst_element_unlink),
4568         (gst_pad_can_link_filtered), (gst_pad_can_link),
4569         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4570         (gst_object_default_error), (gst_bin_add_many),
4571         (gst_bin_remove_many), (gst_element_populate_std_props),
4572         (gst_element_class_install_std_props), (gst_buffer_merge),
4573         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4574         (link_fold_func), (gst_pad_proxy_setcaps):
4575         * gst/gstutils.h:
4576         * gst/gstvalue.c: (gst_value_deserialize_string):
4577         * gst/parse/grammar.y:
4578         * gst/schedulers/gstbasicscheduler.c:
4579         (gst_basic_scheduler_cothreaded_chain),
4580         (gst_basic_scheduler_chain_recursive_add),
4581         (gst_basic_scheduler_pad_link):
4582         * gst/schedulers/gstoptimalscheduler.c:
4583         (get_group_schedule_function),
4584         (gst_opt_scheduler_state_transition),
4585         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4586         * libs/gst/bytestream/bytestream.c:
4587         * libs/gst/dataprotocol/dataprotocol.c:
4588         (gst_dp_header_from_buffer):
4589         * po/nb.po:
4590         * po/ru.po:
4591         * tests/threadstate/threadstate2.c: (eos):
4592         * tools/gst-compprep.c: (main):
4593         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4594         (print_pad_info), (print_children_info):
4595         * tools/gst-launch.c: (idle_func), (main):
4596         * tools/gst-md5sum.c: (idle_func), (main):
4597         * tools/gst-xmlinspect.c: (print_element_info):
4598         First THREADED backport attempt, focusing on adding locks and
4599         making sure the API is threadsafe. Needs more work. More docs
4600         follow this week.
4601
4602 2005-02-24  Andy Wingo  <wingo@pobox.com>
4603
4604         * tests/bench-complexity.scm:
4605         * tests/complexity.gnuplot: New files, good for running complexity
4606         benchmarks.
4607
4608         * tests/Makefile.am:
4609         * tests/complexity.c: New test, sets up N elements, at each level
4610         teeing into M streams per element. Eeeenteresting.
4611
4612         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4613         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4614         running bench-mass_elements.scm.
4615
4616         * tests/bench-mass_elements.scm: New script, runs mass_elements
4617         for various numbers of identities, outputting the results to a
4618         file. Requires guile 1.6. Just for testing.
4619
4620 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4621
4622         * gst/schedulers/fairscheduler.c:
4623           compile with debug disabled
4624
4625 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4626
4627         * configure.ac:
4628           hunting season on 0.9 is now OPEN
4629
4630 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4631
4632         * docs/libs/tmpl/gstcontrol.sgml:
4633         * docs/libs/tmpl/gstdparam.sgml:
4634         * docs/libs/tmpl/gstdplinint.sgml:
4635         * docs/libs/tmpl/gstdpman.sgml:
4636         * docs/libs/tmpl/gstdpsmooth.sgml:
4637         * docs/libs/tmpl/gstunitconvert.sgml:
4638           more docs for the state of dparams
4639
4640 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4641
4642         * gst/gstelementfactory.c: (gst_element_factory_create):
4643         * gst/gstobject.c: (gst_object_init),
4644         (gst_object_set_name_default), (gst_object_set_name):
4645           name objects by default, not in gst_element_factory_create. Allows
4646           using elements created with g_object_new. (fixes #167283)
4647
4648 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4649
4650         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4651           make the time that debugging functions print relative to when
4652           gst_init was called
4653
4654 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4655
4656         * gst/gsttaginterface.c:
4657           Fix inline docs: tag setter vararg functions are NULL-terminated,
4658           GST_TAG_INVALID doesn't exist any more.
4659
4660 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4661
4662         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4663         Allocate the 1 byte more memory that was forgotten!!!!!
4664         fixes memory corruption on 64bit platforms
4665
4666 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4667
4668         * docs/pwg/building-pads.xml:
4669         * docs/pwg/intro-basics.xml:
4670           fixed a few typos, relabeled introductionary list of types
4671         * docs/random/ensonic/dparams.txt:
4672           more notes abut dparam changes
4673         * libs/gst/control/dparam.c: (gst_dparam_attach):
4674         * libs/gst/control/dparammanager.c:
4675         * libs/gst/control/dparammanager.h:
4676           - many comments and notes on dparam implementation
4677           - new dparams are were not initialized to the default value
4678             from param spec
4679
4680 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4681
4682         submitted by: Peter Astakhov
4683
4684         * po/LINGUAS:
4685         * po/ru.po:
4686           adding Russian translation
4687
4688 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4689
4690         * configure.ac:
4691         * docs/gst/Makefile.am:
4692         * docs/libs/Makefile.am:
4693           make sure popt is added to gtk-doc flags.  Fixes #147782.
4694
4695 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4696
4697         * docs/faq/using.xml:
4698           Fix typo in FAQ (artssink => artsdsink)
4699
4700 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4701
4702         * tools/gst-launch.1.in:
4703           Fix typo (#166699).
4704
4705 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4706
4707         * docs/faq/using.xml:
4708           Add -v argument to fakesrc/fakesink gst-launch line,
4709           so that the promised output will actually show up.
4710
4711 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4712
4713         * gst/gstthread.c: (gst_thread_change_state):
4714           Implement state-change error handling (#166073).
4715
4716 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4717
4718         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4719           Release interrupt after handling (#166250).
4720
4721 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4722
4723         * configure.ac:
4724           back to HEAD
4725
4726 === release 0.8.9 ===
4727
4728 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4729
4730         * NEWS:
4731         * RELEASE:
4732         * configure.ac:
4733           releasing 0.8.9, "Like Eating Glass"
4734
4735 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4736
4737         submitted by: Clytie Siddall
4738
4739         * po/vi.po: Added Vietnamese translation
4740
4741 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4742
4743         patch by: Tim Philipp-Müller
4744
4745         * configure.ac:
4746         * gst/gstpad.c:
4747           unref data when probe function returns FALSE.  Fixes #166362
4748
4749 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4750
4751         * gst/gst.c: (gst_init_get_popt_table):
4752           Fix typo (#166269).
4753
4754 2005-02-04  Andy Wingo  <wingo@pobox.com>
4755
4756         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4757         the debugging on whether the caps are compatible.
4758
4759 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4760
4761         * docs/manual/basics-elements.xml:
4762           Fix two typos.
4763
4764 2005-02-02  Wim Taymans  <wim@fluendo.com>
4765
4766         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4767         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4768         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4769         Remove some FIXMEs after analysing and commenting why they
4770         are not issues.
4771
4772 2005-02-02  Wim Taymans  <wim@fluendo.com>
4773
4774         * gst/schedulers/gstoptimalscheduler.c:
4775         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4776         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4777         (get_invalid_call), (chain_invalid_call),
4778         (get_group_schedule_function), (loop_group_schedule_function),
4779         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4780         (gst_opt_scheduler_state_transition),
4781         (gst_opt_scheduler_add_element),
4782         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4783         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4784         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4785         (gst_opt_scheduler_show):
4786         Added lock to protect scheduler data structures.
4787
4788 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4789
4790         * testsuite/threads/threadi.c: (cb_data):
4791           Fix buglet in test.
4792
4793 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4794
4795         * testsuite/threads/Makefile.am:
4796         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4797           On Wim's request, split the test in three separately-compiled
4798           tests that each test a very specific bug. Two of them still fail,
4799           will create bugs for those. threadi.c indicates why they fail.
4800
4801 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4802
4803         * gst/schedulers/gstoptimalscheduler.c:
4804         (get_group_schedule_function):
4805           Try to work with the threading mess that queue_link is.
4806
4807 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4808
4809         * gst/gstbin.c: (gst_bin_remove_func):
4810           Explicitely make an element release locks in a group when being
4811           remove from a bin.
4812         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4813           If there's no scheduler, always return immediately (similar to
4814           gst_element_interrupt).
4815
4816 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4817
4818         * gst/gstbin.c: (gst_bin_child_state_change_func):
4819           Remove a piece of code that could never be reached.
4820         * docs/gst/gstreamer-sections.txt:
4821         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4822         (gst_pad_call_get_function):
4823         * gst/gstpad.h:
4824         * testsuite/pad/Makefile.am:
4825           Fix #150546, enable tests.
4826
4827 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4828
4829         * docs/pwg/advanced-types.xml:
4830           Fix description for buffer-frames=0.
4831         * docs/gst/tmpl/gstbin.sgml:
4832         * gst/gstbin.c: (gst_bin_child_state_change_func),
4833         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4834         * gst/gstbin.h:
4835         * testsuite/threads/Makefile.am:
4836         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4837         (cb_state), (cb_play), (main):
4838           Fix non-recursive state changes to *really* change the state
4839           of the object, and not just call parent_class->state_change.
4840           Fix a lot of lockups caused by this. Fixes #132775. Add test
4841           for the problem. Also enable test to show #142588 (fixed).
4842         * gst/gstthread.c: (gst_thread_change_state),
4843         (gst_thread_child_state_change):
4844           Don't exit the thread if we go to NULL and are inside thread
4845           context. Instead, return control to the main thread context
4846           and exit from there.
4847         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4848           Don't unset virtual functions, since those may still be used.
4849           That's not necessarily correct, but suffices for now.
4850         * configure.ac:
4851         * testsuite/Makefile.am:
4852         * testsuite/pad/Makefile.am:
4853         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4854         (gst_test_sink_base_init), (gst_test_sink_chain),
4855         (gst_test_sink_init), (main):
4856         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4857         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4858         (main):
4859         * testsuite/pad/link.c: (gst_test_element_class_init),
4860         (gst_test_element_base_init), (gst_test_src_get),
4861         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4862         (gst_test_filter_loop), (gst_test_filter_init),
4863         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4864         (cb_error), (main):
4865           Add tests to show #150546. Pass, but should fail (currently
4866           disabled from the testsuite).
4867         * gst/gstscheduler.c: (gst_scheduler_dispose):
4868           Dereference child schedulers on dispose (#94464).
4869         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4870           Fix typo.
4871         * testsuite/threads/thread.c: (main):
4872           Add more debug.
4873
4874 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4875
4876         * gst/gstpad.c: (gst_pad_push):
4877           Oops, revert previous commit, broke testsuite...
4878
4879 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4880
4881         * gst/gstpad.c: (gst_pad_push):
4882           Add check that the pad on which the push is performed is not a
4883           get-based pad (#150546).
4884
4885 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4886
4887         * gst/elements/gsttypefindelement.c:
4888         (gst_type_find_element_handle_event):
4889           Fix buffer pushing if stream EOSes during typefinding.
4890
4891 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4892
4893         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4894
4895         * gst/gstvalue.c: (gst_string_wrap):
4896           Allow NULL-strings as argument (#165365).
4897
4898 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4899
4900         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4901
4902         * gst/schedulers/faircothreads.c:
4903         (gst_fair_scheduler_cothread_queue_show):
4904           Fix build without debug enabled.
4905
4906 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4907
4908         * docs/gst/gstreamer-sections.txt:
4909         * docs/libs/gstreamer-libs-docs.sgml:
4910         * docs/libs/gstreamer-libs-sections.txt:
4911         * docs/libs/tmpl/gstcontrol.sgml:
4912         * docs/libs/tmpl/gstdparam.sgml:
4913         * docs/libs/tmpl/gstdplinint.sgml:
4914         * docs/libs/tmpl/gstdpman.sgml:
4915         * docs/libs/tmpl/gstdpsmooth.sgml:
4916         * docs/libs/tmpl/gstputbits.sgml:
4917         * docs/libs/tmpl/gstunitconvert.sgml:
4918         * libs/gst/control/dparam.c:
4919         * libs/gst/control/dparam.h:
4920         * libs/gst/control/dparammanager.c:
4921         (gst_dpman_add_required_dparam_callback),
4922         (gst_dpman_add_required_dparam_direct),
4923         (gst_dpman_add_required_dparam_array),
4924         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4925         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4926         (gst_dpman_get_manager)
4927           restructured DParam docs
4928
4929 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4930
4931         * gst-element-check.m4:
4932           Only check for gst-inspect if we haven't already
4933           found it in previous element check runs
4934
4935 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4936
4937         * docs/gst/Makefile.am:
4938         * docs/libs/Makefile.am:
4939           fixed install rules to treat style.css as optional
4940
4941 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4942
4943         * docs/gst/Makefile.am:
4944         * docs/libs/Makefile.am:
4945           install style.css along with docs
4946         * docs/gst/tmpl/gstbin.sgml:
4947         * docs/gst/tmpl/gstclock.sgml:
4948         * docs/gst/tmpl/gstdata.sgml:
4949         * docs/gst/tmpl/gstelement.sgml:
4950         * gst/gstbin.h:
4951         * gst/gstelement.c: (gst_element_class_init):
4952         * gst/gstelement.h:
4953           fixing incomplete docs
4954
4955 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4956
4957         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4958           Don't unref seek event twice when fflush() fails
4959           
4960 2005-01-22  David Schleef  <ds@schleef.org>
4961
4962         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4963
4964 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4965
4966         * docs/gst/Makefile.am:
4967         * docs/libs/Makefile.am:
4968           added params for deprecation guards
4969         * gst/gst.c:
4970         * gst/gst.h:
4971         * gst/gsterror.c: (_gst_resource_errors_init),
4972         (_gst_stream_errors_init):
4973         * gst/gsterror.h:
4974           documented some more enums
4975
4976 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4977         * gst/autoplug/gstspideridentity.c:
4978         Cosmetic fix - spider_find_peek should be static
4979         * gst/parse/parse.l:
4980         Applying fix for #164261
4981
4982 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4983
4984         * docs/gst/gstreamer-sections.txt:
4985         * docs/gst/tmpl/gstplugin.sgml:
4986         * docs/libs/gstreamer-libs-sections.txt:
4987         * docs/libs/tmpl/gstcontrol.sgml:
4988         * gst/gstbuffer.h:
4989         * gst/gsttag.h:
4990         * gst/gstvalue.c:
4991           added docs for the TAG defines
4992
4993 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4994
4995         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4996           Only unref entry if there is an entry.
4997
4998 2005-01-17  Wim Taymans  <wim@fluendo.com>
4999
5000         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5001         (remove_from_group), (schedule_group), (normalize_group),
5002         (gst_opt_scheduler_iterate):
5003         Also ref/unref decoupled elements before iterating the
5004         group since they are not added to the list of elements.
5005
5006 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5007
5008         * docs/manual/highlevel-components.xml:
5009           Add subtitle/streamselection as new features to playbin.
5010
5011 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5012
5013         * docs/manual/manual.xml:
5014           Re-enable dataaccess docs (oops).
5015
5016 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5017
5018         * docs/pwg/advanced-types.xml:
5019         * docs/random/mimetypes:
5020           Add documentation on libsndfile types (#163309), by Steve Baker
5021           <steve@stevebaker.org>.
5022         * gst/gstelement.c: (gst_element_release_request_pad):
5023           If an element has no explicit function, just remove the pad.
5024
5025 2005-01-17  Luca Ognibene  <luogni@tin.it>
5026
5027         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5028
5029         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5030           Fix memleak (#163801).
5031
5032 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5033
5034         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5035           I think this is actually more correct...
5036
5037 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5038
5039         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5040           Another workaround for memory access while destroyed in callback.
5041           Please, someone with refcount knowledge, have a look at this.
5042
5043 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5044
5045         * docs/faq/faq.xml:
5046         * docs/faq/legal.xml:
5047           move the legal Q&A here
5048
5049 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5050
5051         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5052         (gst_tee_request_new_pad):
5053           Fix negotiation.
5054
5055 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5056
5057         * docs/random/omega/caps2:
5058         * testsuite/caps/caps_strings:
5059           replace framerate aproximations by their real value
5060           (24000/1001, 30000/1001, 60000/1001)
5061           Partially fixes bug #164049
5062
5063 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5064
5065         * docs/gst/Makefile.am:
5066           don't fail on the stupid GstPoptOption
5067
5068 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5069
5070         * gst/gstpad.h:
5071         * gst/gstprobe.c:
5072           allow probes to work on ghost pads by realizing the pad
5073           probe debugging
5074
5075 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5076
5077         * docs/gst/gstreamer-sections.txt:
5078         * docs/gst/tmpl/gstpad.sgml:
5079         * gst/gstpad.c: (gst_pad_set_active_recursive):
5080         * gst/gstpad.h:
5081           Add gst_pad_set_active_recursive().
5082
5083 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5084
5085         * docs/random/release:
5086           updates
5087         * gst/gst_private.h:
5088         * gst/gstinfo.c:
5089         * gst/gstobject.c:
5090           move deep_notify logging to a new category
5091         * gst/gstprobe.c:
5092         * gst/gstprobe.h:
5093           add stuff so bindings can wrap probes
5094
5095 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5096
5097         * gst/gstplugin.c: (gst_plugin_load):
5098           Fix plugin loading if plugin/lib was already loaded. Fixes
5099           #163383
5100
5101 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5102
5103         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5104
5105         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5106           Protect plugin loading by a mutex so it's threadsafe. Fixes
5107           #163234.
5108
5109 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5110
5111         * gst/gstevent.c: (_gst_event_copy):
5112           Reference source object when copying events, since it'll be
5113           dereferenced on event dereferencing as well.
5114
5115 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5116
5117         * docs/gst/gstreamer-sections.txt:
5118         * docs/gst/tmpl/gstevent.sgml:
5119         * gst/gstevent.c: (gst_event_new_filler_stamped),
5120         (gst_event_filler_get_duration):
5121         * gst/gstevent.h:
5122           Add two new functions for filler events (which are used to
5123           synchronize streams if one of them is not having any data
5124           for a while) without interrupting the actual data-stream.
5125           Basically a no-op.
5126         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5127         (gst_queue_link_sink), (gst_queue_link_src),
5128         (gst_queue_change_state):
5129           Allow for renegotiation while filled. Required for stream
5130           switching while playing.
5131
5132 2005-01-08  Benjamin Otte  <otte@gnome.org>
5133
5134         * gst/gstelement.c: (gst_element_link_many):
5135           fix up g_return_if_fail's
5136         * po/LINGUAS:
5137         * po/de.po:
5138           add German translation, that was somehow not included
5139
5140 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5141
5142         * docs/random/mimetypes:
5143           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5144           do not add them to riff-lib as they are not common
5145
5146 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5147
5148         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5149           Check for existence of probe after performing the probe before
5150           re-accessing it to prevent segfaults caused by removal of the
5151           probe in the callback.
5152
5153 2005-01-05  David Schleef  <ds@schleef.org>
5154
5155         * testsuite/registry/Makefile.am:
5156         * testsuite/registry/gst-print-formats.c:
5157         (print_pad_templates_info), (print_element_list),
5158         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5159         (g_list_uniqify), (get_pad_templates_info),
5160         (get_element_mime_list), (print_mime_list), (main): A little
5161         program that looks through the registry to find elements of
5162         a given type.  Not particularly interesting as a test, except
5163         that there's no other test covering the same area.
5164
5165 2005-01-05  David Schleef  <ds@schleef.org>
5166
5167         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5168         (fault_handler_sigaction), (fault_spin),
5169         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5170         in signal.h-type signal handlers by not calling forbidden functions,
5171         including gst_element_set_state().
5172
5173 2005-01-05  David Schleef  <ds@schleef.org>
5174
5175         * gst/gstvalue.h: Mark _gst_reserved[] as private
5176
5177 2005-01-05  David Schleef  <ds@schleef.org>
5178
5179         * gst/gstvalue.c: Fix doc build problem.
5180
5181 2005-01-05  David Schleef  <ds@schleef.org>
5182
5183         * gst/gstvalue.c: Add some documentation
5184
5185 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5186
5187         * docs/README:
5188           another shell oneliner for empty return value docs
5189         * gst/gstcaps.c:
5190         * gst/gstvalue.c:
5191         * libs/gst/control/dparam.c:
5192           more doc fixes (parameters and return values)
5193
5194 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5195
5196         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5197
5198         * gst/gstregistry.h:
5199         * gst/registries/gstxmlregistry.c:
5200           Fix macro's for Mingw (fixes #162276).
5201
5202 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5203
5204         * docs/README:
5205           quick shell oneliner to find undocumented members
5206         * docs/gst/tmpl/gstplugin.sgml:
5207         * docs/gst/tmpl/gstscheduler.sgml:
5208         * docs/gst/tmpl/gstthread.sgml:
5209           more enumtypes cleanup
5210         * gst/gsterror.h:
5211           activated documentation comments, now someone needs to document
5212           the enums :(
5213
5214 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5215
5216         * docs/manual/manual.xml:
5217           Add dataaccess part (doh!).
5218
5219 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5220
5221         * docs/manual/advanced-autoplugging.xml:
5222           Fix typo (intiate -> initiate).
5223
5224 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5225
5226         * docs/random/bbb/streamselection:
5227           Add some notes on how to handle multi-subtitle/-audio streams.
5228
5229 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5230
5231         * docs/gst/gstreamer-docs.sgml:
5232         * docs/gst/gstreamer-sections.txt:
5233         * docs/gst/tmpl/gstenumtypes.sgml:
5234         * docs/gst/tmpl/gsterror.sgml:
5235         * docs/gst/tmpl/gstevent.sgml:
5236         * docs/gst/tmpl/gstpad.sgml:
5237         * docs/gst/tmpl/gstpadtemplate.sgml:
5238         * docs/gst/tmpl/gstthread.sgml:
5239           removed gstenumtypes section from docs and put all the enums into
5240           their sections
5241
5242 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5243
5244         * gst/gstplugin.c:
5245           document gst_library_load a bit more (riff special case + return
5246           value if already loaded)
5247         * testsuite/bytestream/filepadsink.c:
5248           plugin name is 'gstbytestream', not 'bytestream'
5249
5250 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5251
5252         * docs/random/bbb/subtitles:
5253           Add some first mind rumblings on proper subtitle support.
5254
5255 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5256
5257         * po/ca.po:
5258         * po/sv.po:
5259           updated translations
5260
5261 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5262
5263         * docs/manual/advanced-dataaccess.xml:
5264           Add section on how to use fakesrc/fakesink/identity in your
5265           application, plus section on how to embed plugins. Also mention
5266           probes.
5267         * docs/manual/appendix-checklist.xml:
5268         * docs/manual/appendix-debugging.xml:
5269         * docs/manual/appendix-gnome.xml:
5270         * docs/manual/appendix-integration.xml:
5271           Debug -> checklist, GNOME -> integration, add sections on Linux,
5272           KDE integration and add other things useful for application
5273           development.
5274         * docs/manual/manual.xml:
5275           Remove some fixmes, update some file pointers.
5276         * docs/pwg/appendix-checklist.xml:
5277           Fix typo.
5278         * docs/pwg/building-boiler.xml:
5279           Remove ugly header and add commented fixme.
5280         * docs/pwg/pwg.xml:
5281           Add fixme.
5282         * examples/manual/Makefile.am:
5283           Add example for added docs.
5284
5285 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5286
5287         * configure.ac:
5288           back to HEAD
5289
5290 === release 0.8.8 ===
5291
5292 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5293
5294         * NEWS:
5295         * RELEASE:
5296         * configure.ac:
5297           Releasing 0.8.8, "I'll Take Care Of You"
5298
5299 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5300
5301         * configure.ac:
5302           second prerelease
5303
5304 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5305
5306         patch by: Wim Taymans
5307
5308         * gst/gstbin.c:
5309           Fix for #159852 - make iterate emission threadsafe
5310
5311 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5312
5313         * docs/faq/cvs.xml:
5314           notes about new fdo account request
5315
5316 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5317
5318         * docs/gst/gstreamer-docs.sgml:
5319         * docs/gst/tmpl/gstenumtypes.sgml:
5320         * docs/gst/tmpl/gstplugin.sgml:
5321         * docs/libs/gstreamer-libs-docs.sgml:
5322           Added missing short docs. Added ids for navigation.
5323
5324 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5325
5326         * docs/manual/advanced-autoplugging.xml:
5327         * docs/manual/advanced-schedulers.xml:
5328         * docs/manual/advanced-threads.xml:
5329           Rewrites. Remove cothreads, go a bit into opt specifically,
5330           document threads and their gotchas, and do some technical stuff
5331           on autoplugging plus add some working examples. Fixes #157395.
5332         * examples/manual/Makefile.am:
5333           Add typefind/autoplugger example (one that actually works).
5334           Remove queue example since it's a duplicate of the thread one.
5335
5336 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5337
5338         * gst/gstvalue.c: (gst_value_deserialize_string):
5339           use deprecated g_value_set_string_take_ownership to keep compatible
5340           with glib 2.2
5341
5342 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5343
5344         * gst/gstvalue.c: (gst_value_deserialize_string):
5345           revert last patch, only dom a g_utf8_validate now before accepting
5346           the string - caps parsing strips " from strings so we can't rely on
5347           them
5348         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5349           disable a test that tested the above and comment it
5350
5351 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5352
5353         Patch reviewed by David Schleef  <ds@schleef.org>
5354
5355         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5356         bug #153882)
5357         * win32/gstenumtypes.h: same
5358
5359 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5360
5361         * gst/gstpad.c: (gst_pad_query):
5362           Do query on realized pad, similar to how convert/send_event handle
5363           this. Also makes sense, since this pad belongs to the function to
5364           which this query will be sent. Fixes #158163.
5365
5366 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5367
5368         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5369
5370 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5371
5372         * docs/faq/general.xml: fix pipeline to actually work
5373
5374 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5375
5376         * gst/gstvalue.c: (gst_value_deserialize_string):
5377           check that a simple string that gets deserialized does not contain
5378           invalid characters
5379         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5380           remove a test that tested a wring behaviour
5381
5382 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5383
5384         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5385
5386         * docs/manual/intro-motivation.xml:
5387           Fix typos.
5388
5389 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5390
5391         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5392
5393         * docs/gst/tmpl/gstprobe.sgml:
5394           Fix documentation of probe callback - it is supposed to return
5395           FALSE, not TRUE, to remove data from the stream (#159087).
5396
5397 2004-12-16  Daniel Gazard  <dany42@free.fr>
5398
5399         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5400
5401         * gst/gstelementfactory.c: (gst_element_factory_create):
5402           Fix compile failure if compiling without libxml2 support (#149936).
5403
5404 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5405
5406         * docs/manual/advanced-autoplugging.xml:
5407         * docs/manual/highlevel-components.xml:
5408           Move spider from autoplugging to components. Autoplugging is for
5409           internals, not for solutions. ;-).
5410
5411 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5412
5413         * docs/random/ds/0.9-suggested-changes:
5414           Make note on device/location/uri property names.
5415
5416 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5417
5418         * docs/manual/advanced-autoplugging.xml:
5419         * docs/manual/advanced-clocks.xml:
5420         * docs/manual/advanced-interfaces.xml:
5421         * docs/manual/advanced-metadata.xml:
5422         * docs/manual/advanced-position.xml:
5423         * docs/manual/advanced-schedulers.xml:
5424         * docs/manual/advanced-threads.xml:
5425         * docs/manual/appendix-gnome.xml:
5426         * docs/manual/appendix-programs.xml:
5427         * docs/manual/appendix-quotes.xml:
5428         * docs/manual/autoplugging.xml:
5429         * docs/manual/basics-bins.xml:
5430         * docs/manual/basics-data.xml:
5431         * docs/manual/basics-elements.xml:
5432         * docs/manual/basics-helloworld.xml:
5433         * docs/manual/basics-init.xml:
5434         * docs/manual/basics-pads.xml:
5435         * docs/manual/basics-plugins.xml:
5436         * docs/manual/bins-api.xml:
5437         * docs/manual/bins.xml:
5438         * docs/manual/buffers-api.xml:
5439         * docs/manual/buffers.xml:
5440         * docs/manual/clocks.xml:
5441         * docs/manual/components.xml:
5442         * docs/manual/cothreads.xml:
5443         * docs/manual/debugging.xml:
5444         * docs/manual/dparams-app.xml:
5445         * docs/manual/dynamic.xml:
5446         * docs/manual/elements-api.xml:
5447         * docs/manual/elements.xml:
5448         * docs/manual/factories.xml:
5449         * docs/manual/gnome.xml:
5450         * docs/manual/goals.xml:
5451         * docs/manual/helloworld.xml:
5452         * docs/manual/helloworld2.xml:
5453         * docs/manual/highlevel-components.xml:
5454         * docs/manual/highlevel-xml.xml:
5455         * docs/manual/init-api.xml:
5456         * docs/manual/intro-basics.xml:
5457         * docs/manual/intro-motivation.xml:
5458         * docs/manual/intro-preface.xml:
5459         * docs/manual/intro.xml:
5460         * docs/manual/links-api.xml:
5461         * docs/manual/links.xml:
5462         * docs/manual/manual.xml:
5463         * docs/manual/motivation.xml:
5464         * docs/manual/pads-api.xml:
5465         * docs/manual/pads.xml:
5466         * docs/manual/plugins-api.xml:
5467         * docs/manual/plugins.xml:
5468         * docs/manual/programs.xml:
5469         * docs/manual/queues.xml:
5470         * docs/manual/quotes.xml:
5471         * docs/manual/schedulers.xml:
5472         * docs/manual/states-api.xml:
5473         * docs/manual/states.xml:
5474         * docs/manual/threads.xml:
5475         * docs/manual/typedetection.xml:
5476         * docs/manual/win32.xml:
5477         * docs/manual/xml.xml:
5478           Try 2. This time, include a short preface as a "general
5479           introduction", also add code blocks around all code samples
5480           so they get compiled. We still need a way to tell readers
5481           the filename of the code sample. In some cases, don't show
5482           all code in the documentation, but do include it in the generated
5483           code. This allows for focussing on specific bits in the docs,
5484           while still having a full test application available.
5485         * examples/manual/Makefile.am:
5486           Fix up examples for new ADM. Add several of the new examples that
5487           were either added or were missing from the build system.
5488         * examples/manual/extract.pl:
5489           Allow nameless blocks.
5490
5491 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5492
5493         * docs/manual/elements-api.xml:
5494         * docs/manual/helloworld.xml:
5495         * examples/manual/extract.pl:
5496           fix last example.  Add example of adding code blocks that are not
5497           shown in docbook output.
5498
5499 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5500
5501         * docs/manual/dynamic.xml:
5502         * docs/manual/elements-api.xml:
5503         * docs/manual/gnome.xml:
5504         * docs/manual/helloworld2.xml:
5505         * docs/manual/init-api.xml:
5506         * docs/manual/queues.xml:
5507         * docs/manual/threads.xml:
5508         * docs/manual/xml.xml:
5509         * examples/manual/extract.pl:
5510           Make it possible to extract example code from separate blocks.
5511           Should make Ronald happy.
5512
5513 2004-12-15  Wim Taymans  <wim@fluendo.com>
5514
5515         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5516         (remove_from_group), (group_elements_set_visited),
5517         (normalize_group), (gst_opt_scheduler_iterate):
5518         Fix bug where a flag was not updated on a decoupled entry point 
5519         because we were just checking the group element list and decoupled
5520         elements are not in that list..
5521
5522 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5523
5524         * docs/manual/advanced-autoplugging.xml:
5525         * docs/manual/advanced-clocks.xml:
5526         * docs/manual/advanced-dparams.xml:
5527         * docs/manual/advanced-interfaces.xml:
5528         * docs/manual/advanced-metadata.xml:
5529         * docs/manual/advanced-position.xml:
5530         * docs/manual/advanced-schedulers.xml:
5531         * docs/manual/advanced-threads.xml:
5532         * docs/manual/appendix-debugging.xml:
5533         * docs/manual/appendix-gnome.xml:
5534         * docs/manual/appendix-programs.xml:
5535         * docs/manual/appendix-quotes.xml:
5536         * docs/manual/appendix-win32.xml:
5537         * docs/manual/autoplugging.xml:
5538         * docs/manual/basics-bins.xml:
5539         * docs/manual/basics-data.xml:
5540         * docs/manual/basics-elements.xml:
5541         * docs/manual/basics-helloworld.xml:
5542         * docs/manual/basics-init.xml:
5543         * docs/manual/basics-pads.xml:
5544         * docs/manual/basics-plugins.xml:
5545         * docs/manual/bins-api.xml:
5546         * docs/manual/bins.xml:
5547         * docs/manual/buffers-api.xml:
5548         * docs/manual/buffers.xml:
5549         * docs/manual/clocks.xml:
5550         * docs/manual/components.xml:
5551         * docs/manual/cothreads.xml:
5552         * docs/manual/debugging.xml:
5553         * docs/manual/dparams-app.xml:
5554         * docs/manual/dynamic.xml:
5555         * docs/manual/elements-api.xml:
5556         * docs/manual/elements.xml:
5557         * docs/manual/factories.xml:
5558         * docs/manual/gnome.xml:
5559         * docs/manual/goals.xml:
5560         * docs/manual/helloworld.xml:
5561         * docs/manual/helloworld2.xml:
5562         * docs/manual/highlevel-components.xml:
5563         * docs/manual/highlevel-xml.xml:
5564         * docs/manual/init-api.xml:
5565         * docs/manual/intro-motivation.xml:
5566         * docs/manual/intro-preface.xml:
5567         * docs/manual/intro.xml:
5568         * docs/manual/links-api.xml:
5569         * docs/manual/links.xml:
5570         * docs/manual/manual.xml:
5571         * docs/manual/motivation.xml:
5572         * docs/manual/pads-api.xml:
5573         * docs/manual/pads.xml:
5574         * docs/manual/plugins-api.xml:
5575         * docs/manual/plugins.xml:
5576         * docs/manual/programs.xml:
5577         * docs/manual/queues.xml:
5578         * docs/manual/quotes.xml:
5579         * docs/manual/schedulers.xml:
5580         * docs/manual/states-api.xml:
5581         * docs/manual/states.xml:
5582         * docs/manual/threads.xml:
5583         * docs/manual/typedetection.xml:
5584         * docs/manual/win32.xml:
5585         * docs/manual/xml.xml:
5586           First try at rewriting the ADM. Needs lotsamore work, but some
5587           parts might already be somewhat useful.
5588         * docs/pwg/advanced-interfaces.xml:
5589           Remove properties interface, it never actually existed (except for
5590           on my HD...).
5591
5592 2004-12-13  David Schleef  <ds@schleef.org>
5593
5594         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5595         be NULL (bug #160220).
5596
5597 2004-12-13  David Schleef  <ds@schleef.org>
5598
5599         * configure.ac: remove all mmx stuff, because it's not used.
5600         * docs/random/ds/0.9-suggested-changes: additional notes
5601         * include/Makefile.am: we don't use these anymore
5602         * include/mmx.h: remove
5603         * include/sse.h: remove
5604
5605 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5606
5607         * docs/random/mimetypes:
5608           Add FOURCC code for h264 codec (VSSH)
5609           Add alternate FOURCC codes for h263 related codecs
5610
5611 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5612
5613         * docs/manual/programs.xml:
5614           Added more gst-launch examples.
5615
5616 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5617
5618         * gst/gstqueue.c: (gst_queue_handle_src_query):
5619           Check for availability again.
5620
5621 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5622
5623         * gst/gstcaps.c: (gst_caps_compare_structures):
5624           Simple caps go first. This has the nice side-effect of fixing an
5625           obscure warning.
5626
5627 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5628
5629         * gst/gstversion.h.in:
5630           Protect header.
5631
5632 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5633
5634         * gst/schedulers/gstoptimalscheduler.c:
5635         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5636         (gst_opt_scheduler_get_wrapper):
5637           When we're recursing into a chain run, only run the directly
5638           related group, not all queued ones. This will fix a possible
5639           deadlock in chains with more than two groups.
5640
5641 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5642
5643         * autogen.sh:
5644           remove patch if autopoint fails
5645
5646 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5647
5648         * docs/gst/gstreamer-sections.txt:
5649           Document Thomas' addition, fix build, make Luis the sheriff happy.
5650
5651 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5652
5653         * gst/gstplugin.c:
5654         * gst/gstplugin.h:
5655           add accessor for version field
5656
5657 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5658
5659         submitted by: Luca Ferretti <elle.uca@infinito.it>
5660
5661         * po/LINGUAS:
5662         * po/it.po:
5663           New tranlation added: Italian
5664
5665 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5666
5667         * gst/gstpad.c: (gst_pad_is_negotiated),
5668         (gst_pad_get_negotiated_caps):
5669           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5670           it doesn't actually check the contents), so be sure to hand it
5671           a RealPad else we'll crash.
5672
5673 2004-12-03  Wim Taymans  <wim@fluendo.com>
5674
5675         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5676         (gst_queue_link), (gst_queue_handle_src_query):
5677         Reverted to 1.110 until this makes the testsuite and various
5678         apps work.
5679
5680 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5681
5682         * docs/upload.mak: fix included CVS conflict strings
5683
5684 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5685
5686         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5687
5688         * gst/gstelement.c: (gst_element_error_full):
5689           Use g_error_new_literal because error text may have
5690           percentage signs in it. Fixes #160019.
5691
5692 2004-12-01  Benjamin Otte  <otte@gnome.org>
5693
5694         * gst/elements/gstbufferstore.c:
5695         (gst_buffer_store_add_buffer_func):
5696           don't try to make subbuffers bigger than they can be. (fixes
5697           #159970)
5698
5699 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5700
5701         * docs/gst/gstreamer-sections.txt:
5702         * docs/gst/tmpl/gstvalue.sgml:
5703           Add new function to docs to fix build.
5704
5705 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5706
5707         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5708         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5709         (_gst_pad_default_fixate_foreach):
5710         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5711         * gst/gstvalue.h:
5712           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5713           in some cases (arrays), the fixedness depends on the content.
5714         * gst/gstqueue.c: (gst_queue_handle_src_query):
5715           Check for availability before doing something.
5716
5717 2004-11-29  Wim Taymans  <wim@fluendo.com>
5718
5719         * testsuite/threads/Makefile.am:
5720         * testsuite/threads/signals.c: (gst_test_get_type),
5721         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5722         (gst_test_set_property), (gst_test_get_property),
5723         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5724         (gst_test_do_prop), (run_thread), (main):
5725         Added a bunch of testcases that show threadsafety bugs in glib.
5726
5727 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5728
5729         * docs/manual/programs.xml:
5730           Added a first batch of gst-launch examples, as provided by Ronald
5731           and others from the devel-mlist
5732
5733 2004-11-28  Benjamin Otte  <otte@gnome.org>
5734
5735         * gst/gstelement.c: (gst_element_negotiate_pads):
5736           simplify
5737         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5738         (gst_value_serialize_string), (gst_value_deserialize_string):
5739           add unwrapping of previously wrapped strings. Fix bug in wrapping
5740           while at it.
5741         * testsuite/caps/value_serialize.c: (test1),
5742         (test_string_serialization), (test_string_deserialization), (main):
5743           add tests for string (de)serialization
5744
5745 2004-11-26  Wim Taymans  <wim@fluendo.com>
5746
5747         * testsuite/threads/159566.c: (object_deep_notify), (main):
5748         * testsuite/threads/Makefile.am:
5749         Added testsuite to show bug #159566
5750
5751 2004-11-25  Wim Taymans  <wim@fluendo.com>
5752
5753         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5754         (gst_thread_child_state_change), (gst_thread_main_loop):
5755         Ref the thread object in the GThread mainloop. Break out of the
5756         thread mainloop if it holds the last ref. This properly exits
5757         the threads when disposing the thread from its own context. It
5758         also avoids possible deadlocks in the dispose function.
5759
5760 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5761
5762         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5763         it is necessary to wait.
5764
5765 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5766
5767         * docs/pwg/building-boiler.xml:
5768           Make description somewhat clearer.
5769
5770 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5771
5772         * docs/upload.mak:
5773           Apparently docs changed location on FDO's server.
5774
5775 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5776
5777         * docs/pwg/appendix-checklist.xml:
5778           Add some random notes on things to check when writing an element.
5779           This list can be extended as people see fit.
5780
5781 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5782
5783         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5784         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5785         pad. The queue will now wait until it is empty and forward the new
5786         caps to the source.
5787         * gst/gstbin.c (gst_bin_set_element_sched)
5788         (gst_bin_unset_element_sched): Make sure that all elements and
5789         links are registered and unregistered with the scheduler exactly
5790         once. This elaborates on a fix by Benjamin Otte, but
5791         guarantees that decoupled elements are also registered.
5792
5793 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5794
5795         * docs/manual/quotes.xml:
5796           add a quote
5797         * configure.ac:
5798         * gst/gst.c:
5799         * gst/gstinfo.c:
5800           add LIBDIR and move init message higher up so it's at the start
5801
5802 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5803
5804         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5805         * gstreamer.spec.in: add fair
5806
5807 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5808
5809         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5810         * gst/elements/gstidentity.c: (gst_identity_class_init):
5811           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5812           <teuf@gnome.org> (#157263).
5813         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5814         (gst_type_find_handle_src_query):
5815           Subtract size of internally stored data from position queries.
5816
5817 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5818
5819         * gst/schedulers/fairscheduler.c:
5820         * gst/schedulers/faircothreads.c:
5821         * gst/schedulers/faircothreads.h:
5822         New cothread based scheduler: Fair scheduler.
5823         * gst/schedulers/gthread-cothreads.h: 
5824         Add the standard #if around the whole file.
5825         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5826         compilation of the functions defined in this file. This is
5827         necessary to be able to use this file as a normal header.
5828         * gst/schedulers/Makefile.am: Add compiling support for fair
5829         scheduler.
5830         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5831         scheduler cothreads layer from documentation generation.
5832
5833 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5834
5835         * gst/autoplug/gstspideridentity.c:
5836         (gst_spider_identity_sink_loop_type_finding):
5837           Don't crash if that function is not implemented.
5838
5839 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5840
5841         * docs/pwg/advanced-types.xml:
5842           Another typo.
5843
5844 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5845
5846         * docs/pwg/intro-preface.xml:
5847           Hm, ok, so the brackets weren't really useful...
5848         * docs/pwg/other-ntoone.xml:
5849           Fix embarassing typo.
5850
5851 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5852
5853         * docs/pwg/intro-preface.xml:
5854           Rewrite preface.
5855
5856 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5857
5858         * docs/pwg/advanced-scheduling.xml:
5859         * docs/pwg/advanced-tagging.xml:
5860         * docs/pwg/advanced-types.xml:
5861         * docs/pwg/building-boiler.xml:
5862         * docs/pwg/building-chainfn.xml:
5863         * docs/pwg/building-signals.xml:
5864         * docs/pwg/building-state.xml:
5865         * docs/pwg/building-testapp.xml:
5866         * docs/pwg/intro-basics.xml:
5867         * docs/pwg/other-manager.xml:
5868         * docs/pwg/other-source.xml:
5869           Typo fixes.
5870         * docs/pwg/other-manager.xml:
5871           Add some first content. No example code yet.
5872         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5873           Remove double newlines.
5874
5875 2004-11-04  Wim Taymans  <wim@fluendo.com>
5876
5877         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5878         (remove_from_group), (normalize_group), (group_migrate_connected),
5879         (gst_opt_scheduler_iterate):
5880         * testsuite/schedulers/.cvsignore:
5881         * testsuite/schedulers/Makefile.am:
5882         * testsuite/schedulers/queue_link.c: (main):
5883         Added testcase for scheduler segfault.
5884         Fix scheduler segfault when removing a decoupled
5885         entry point as the last element from a group.
5886
5887 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5888
5889         * gst/gstmarshal.list: add missing marshaller, fixes build
5890
5891 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5892
5893         * docs/random/signal: added notes about using BOXED for GstBuffer
5894         signal marshallers, not POINTER
5895
5896 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5897
5898         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5899         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5900         POINTER=>BOXED changes to marshal GstBuffers
5901
5902 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5903
5904         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5905         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5906
5907 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5908
5909         * docs/gst/gstreamer-sections.txt:
5910         * docs/gst/tmpl/gstcaps.sgml:
5911         * docs/gst/tmpl/gsterror.sgml:
5912         * docs/gst/tmpl/gstinfo.sgml:
5913         * docs/gst/tmpl/gstmacros.sgml:
5914         * docs/gst/tmpl/gstutils.sgml:
5915         * docs/random/ensonic/interfaces.txt:
5916         * gst/gstinfo.h:
5917           added some more docs, removed two obsolete defines
5918
5919 2004-11-02  Kjartan Maraas <as at gnome.org>
5920
5921         reviewed by: Wim Taymans, Ronald Bultje.
5922
5923         * gst/cothreads.c: (cothread_create):
5924         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5925         (gst_bin_child_state_change_func):
5926         * gst/gstbuffer.c: (gst_buffer_span):
5927         * gst/gstelement.c: (gst_element_get_index),
5928         (gst_element_get_event_masks), (gst_element_get_query_types),
5929         (gst_element_get_formats):
5930         * gst/gsterror.c: (_gst_core_errors_init),
5931         (_gst_library_errors_init), (_gst_resource_errors_init),
5932         (_gst_stream_errors_init):
5933         * gst/gstobject.c: (gst_object_default_deep_notify):
5934         * gst/gstpad.c: (gst_pad_get_event_masks),
5935         (gst_pad_get_internal_links_default):
5936         * gst/gstplugin.c: (gst_plugin_register_func),
5937         (gst_plugin_get_module):
5938         * gst/gststructure.c: (gst_structure_get_string),
5939         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5940         (gst_structure_to_abbr):
5941         * gst/gstutils.c: (gst_print_element_args):
5942         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5943         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5944         Aplied part of patch #157127: Cleanup of issues reported by 
5945         sparse.
5946         Also do not try to use cothreads when there is no cothread
5947         context yet.
5948
5949 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5950
5951         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5952         (gst_opt_scheduler_iterate):
5953         Applied patch #154061. Running a pipeline in which an element 
5954         calls GST_ELEMENT_ERROR in the chain function, the opt 
5955         scheduler doesn't unref the chain so it never gets freed.
5956
5957 2004-11-02  Wim Taymans  <wim@fluendo.com>
5958
5959         * gst/gststructure.c: (gst_structure_get_abbrs),
5960         (gst_structure_from_abbr), (gst_structure_to_abbr):
5961         Remove that ugly if-then thing in the code that converts
5962         between strings and types.
5963
5964 2004-11-02  Wim Taymans  <wim@fluendo.com>
5965
5966         * gst/gstscheduler.c: (gst_scheduler_add_element),
5967         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5968         Aplied clock distribution patch, this should fix bug
5969         #148787.
5970
5971 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5972
5973         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5974
5975         * po/LINGUAS:
5976         * po/nb.po:
5977           Added Norwegian Bokmaal translation
5978
5979 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5980
5981         * tools/gst-inspect.c: (print_signal_info):
5982           print signal arguments as pointers if they are
5983
5984 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5985
5986         * docs/pwg/building-boiler.xml:
5987           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5988
5989 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5990
5991         * gst/parse/parse.l:
5992         * testsuite/parse/parse1.c: (main):
5993         Since parse can do 'element name=a:b' make 'a:b.' work as
5994         well. 
5995         Added testcase to verify fix.
5996
5997 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5998
5999         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6000         Use the realpad when printing the direction.
6001         Add extra \n when printing extensions of typefind factories.
6002
6003 2004-10-13  David Schleef  <ds@schleef.org>
6004
6005         * examples/manual/Makefile.am: $< isn't portable in Makefile
6006         rules.
6007
6008 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6009
6010         * docs/gst/tmpl/gstobject.sgml:
6011         * docs/gst/tmpl/gstplugin.sgml:
6012         * docs/gst/tmpl/gstpluginfeature.sgml:
6013         * docs/gst/tmpl/gstregistry.sgml:
6014         * docs/gst/tmpl/gstversion.sgml:
6015         * gst/gstbin.c:
6016           more api documentation
6017         * gst/gstplugin.c: (gst_plugin_register_func),
6018         (gst_plugin_check_file), (gst_plugin_load_file):
6019           better error signaling and logging
6020
6021 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6022
6023         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6024           Subtract current queue contents from position queries.
6025
6026 2004-10-11  Johan Dahlin  <johan@gnome.org>
6027
6028         * gst/gsturi.c (gst_uri_get_location): unescape string
6029         (gst_uri_construct): escape string.
6030
6031 2004-10-11  Benjamin Otte  <otte@gnome.org>
6032
6033         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6034         (gst_pad_try_set_caps_nonfixed):
6035           allow renegotiation of unconnected pads (as inside spider). Simply
6036           return OK if unconnected - mimic try_set_caps there.
6037
6038 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6039
6040         * gst/gstbin.c: (gst_bin_sync_children_state):
6041           Add missing break.
6042
6043 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6044
6045         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6046         Set element to EOS before sending EOS event
6047
6048 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6049
6050         * gst/elements/gsttypefindelement.c:
6051         (gst_type_find_element_handle_event):
6052         Handle EOS events when doing the transition from
6053         typefind to data passing. This should fix the
6054         infinite loops in short files.
6055
6056 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6057
6058         * gst/gstthread.c: (gst_thread_change_state),
6059         (gst_thread_child_state_change):
6060         Make sure no iteration happens while performing
6061         the state change as it could mess up the internal
6062         consistency of the thread state.
6063
6064 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6065
6066         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6067         (gst_thread_change_state), (gst_thread_child_state_change):
6068         Do not try to grab the iterate lock in the state change method
6069         when we are in the same thread as the iterate or else we
6070         could deadlock. Some other cleanups.
6071
6072 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6073
6074         * configure.ac:
6075           bump nano to cvs
6076
6077 === release 0.8.7 ===
6078
6079 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6080
6081         * configure.ac:
6082         * NEWS:
6083         * RELEASE:
6084         * configure.ac:
6085           releasing 0.8.7, "A Cruise"
6086
6087 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6088
6089         * docs/random/mimetypes:
6090         Add an entry for Sony ATRAC3 audio format with mime-type
6091         used by rmdemux et riff-read
6092
6093 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6094
6095         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6096         Push the buffer store instead of clearing it in case that
6097         the stream is not seekable.
6098
6099 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6100
6101         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6102         (gst_thread_main_loop):
6103         Lock the iteration and the state change so that automatic
6104         negotiation and fixation does not happen at the same time
6105         as the in stream negotiation.
6106
6107 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6108
6109         * configure.ac:
6110           bump nano to cvs
6111
6112 === release 0.8.6 ===
6113
6114 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6115
6116         * configure.ac:
6117         * NEWS:
6118         * RELEASE:
6119         * configure.ac:
6120           releasing 0.8.6, "Narc"
6121
6122 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6123
6124         * configure.ac:
6125           prerel bump
6126
6127 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6128
6129         patch by: Steve Lhomme
6130
6131         * gst/elements/gstfakesrc.c:
6132         * gst/elements/gstidentity.c:
6133         * gst/gstthread.c:
6134           Fix for #153881
6135
6136 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6137
6138         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6139         Fix threadsafety of the crc checking function.
6140
6141 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6142
6143         patch by: Ronald Bultje
6144
6145         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6146         (gst_type_find_element_handle_event),
6147         (gst_type_find_element_chain):
6148         * gst/elements/gsttypefindelement.h:
6149          #153657.
6150          Filter out discont event from seekable sources when typefind
6151          asks them to seek.  Fixes typefind with demuxers for
6152          avi, asf and matroska.
6153
6154 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6155
6156         * docs/gst/gstreamer-sections.txt:
6157         * gst/gstcaps.c:
6158         * gst/gstcaps.h:
6159         * gst/gstpad.c:
6160           Revert preferred caps: (#147789)
6161
6162 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6163
6164         * win32/dirent.c:
6165           fix a memory leak
6166
6167 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6168
6169         * configure.ac:
6170           bump for prerelease
6171
6172 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6173
6174         * docs/Makefile.am:
6175         * docs/manual/elements-api.xml:
6176           restructure so that common stuff is shown first
6177         * docs/manual/init-api.xml:
6178           convert to examples
6179         * docs/manual/manual.xml:
6180         * docs/manuals.mak:
6181         * docs/url.entities:
6182           link to API on the website, possibly override later in build
6183         * examples/manual/.cvsignore:
6184           ignore more
6185         * examples/manual/Makefile.am:
6186           add more examples
6187         * examples/manual/extract.pl:
6188           error out on failure
6189
6190 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6191
6192         * docs/gst/tmpl/gstthread.sgml:
6193         * docs/manual/init-api.xml:
6194         * examples/manual/Makefile.am:
6195           convert two code bits to examples
6196
6197 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6198
6199         * gst/gstelement.c: (gst_element_change_state):
6200           Well, actually, I was about to remove this insane assert when
6201           I noticed Wim already did that. A warning is nice so we can
6202           fix actual ugs (using --g-fatal-warnings and backtraces), so
6203           I added that instead.
6204
6205 2004-09-06  Wim Taymans  <wim@fluendo.com>
6206
6207         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6208         (gst_element_threadsafe_properties_post_run),
6209         (gst_element_set_state), (gst_element_change_state):
6210         Added extra refcounting around various places. 
6211
6212 2004-09-06  Wim Taymans  <wim@fluendo.com>
6213
6214         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6215         Fix debug info.
6216
6217 2004-09-06  Wim Taymans  <wim@fluendo.com>
6218
6219         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6220         (remove_from_group):
6221         Some more debug info.
6222
6223 2004-09-03  Wim Taymans  <wim@fluendo.com>
6224
6225         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6226         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6227         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6228         (gst_fakesrc_get), (gst_fakesrc_change_state):
6229         * gst/elements/gstfakesrc.h:
6230         * gst/elements/gstidentity.c: (gst_identity_class_init),
6231         (gst_identity_init), (gst_identity_chain),
6232         (gst_identity_set_property), (gst_identity_get_property),
6233         (gst_identity_change_state):
6234         * gst/elements/gstidentity.h:
6235         Added datarate properties to limit the datarate.
6236
6237 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6238
6239         * gst/autoplug/gstspider.c: (plugin_init):
6240           don't set a rank. We don't want to autoplug by inserting spiders.
6241
6242 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6243
6244         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6245         (gst_spider_identity_plug):
6246           add a template for spider's sink
6247         * gst/gst.c: (gst_register_core_elements):
6248           queue's rank should be NULL, we don't want spider to add it.
6249
6250 2004-08-18  David Schleef  <ds@schleef.org>
6251
6252         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6253         * docs/libs/Makefile.am: same
6254         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6255         * docs/random/ds/0.9-planning: random additions
6256         * docs/random/ds/0.9-suggested-changes: same
6257         * gst/gstxml.h: remove vestigal GstXMLNs definition
6258
6259         Preferred caps: (#147789)
6260         * docs/gst/gstreamer-sections.txt: Add symbols
6261         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6262         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6263         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6264         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6265         (gst_caps_get_preferred), (gst_caps_set_preferred),
6266         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6267         (gst_caps_use_preferred): Handle caps preferences
6268         * gst/gstcaps.h: Add caps preferences
6269         * gst/gstpad.c: (gst_pad_link_get_preferred),
6270         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6271         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6272         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6273         negotiation.
6274
6275 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6276
6277         * gst/autoplug/gstspideridentity.c:
6278         (gst_spider_identity_request_new_pad):
6279         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6280         (gst_aggregator_init):
6281         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6282         (gst_fakesink_init):
6283         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6284         (gst_fakesrc_init):
6285         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6286         (gst_fdsink_init):
6287         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6288         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6289         (gst_filesink_init):
6290         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6291         (gst_filesrc_init):
6292         * gst/elements/gstidentity.c: (gst_identity_base_init),
6293         (gst_identity_init):
6294         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6295         (gst_multifilesrc_init):
6296         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6297         (gst_pipefilter_init):
6298         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6299         (gst_statistics_init):
6300         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6301         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6302           s/gst_pad_new/&_from_template/
6303           register pad templates in the base_init function
6304           add static pad template definitions
6305
6306 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6307
6308         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6309         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6310         * testsuite/refcounting/pad.c: (main):
6311         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6312           s/gst_pad_new/&_from_template/
6313           prepare deprecation of gst_pad_new
6314
6315 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6316
6317         patch by: Luca Ognibene <skaboy81@virgilio.it>
6318
6319         * gst/gstcaps.c:
6320         * gst/gstelement.c:
6321         * gst/gstpad.c:
6322         * gst/gstxml.c:
6323           fix memleaks.  Fixes #150001
6324
6325 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6326
6327         * docs/random/ds/0.9-suggested-changes:
6328           add notes - mostly about pad templates
6329
6330 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6331
6332         * win32/GStreamer.vcproj:
6333           temporary locale files are .gmo not .mo
6334
6335 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6336
6337         * configure.ac: bump nano to cvs
6338
6339 === release 0.8.5 ===
6340
6341 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6342
6343         * configure.ac:
6344           releasing 0.8.5, "Stuttgart"
6345         * NEWS:
6346         * RELEASE:
6347         * configure.ac:
6348         * docs/random/release:
6349           updates for release
6350
6351 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6352
6353         patch by: Wim Taymans (wim@fluendo.com)
6354
6355         * gst/gstbuffer.c:
6356         * gst/gstindex.h:
6357         * libs/gst/dataprotocol/dataprotocol.c:
6358           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6359
6360 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6361
6362         * Makefile.am:
6363         * win32/MANIFEST:
6364           add win32 dir to the build.  Fixes #149981.
6365
6366 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6367
6368         * configure.ac:
6369           bump libtool versioning
6370         * gst/gststructure.c:
6371           mark function as static
6372         * po/af.po:
6373         * po/az.po:
6374         * po/ca.po:
6375         * po/cs.po:
6376         * po/en_GB.po:
6377         * po/fr.po:
6378         * po/nl.po:
6379         * po/sq.po:
6380         * po/sr.po:
6381         * po/sv.po:
6382         * po/tr.po:
6383         * po/uk.po:
6384           translations update
6385         * win32/README.txt:
6386           trademark protection
6387
6388 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6389
6390         * configure.ac:
6391           fix GST_ORIGIN
6392           set GST_PACKAGE to source, and distinguish between release and other
6393         * tools/gst-inspect.c:
6394           print out plugin an element factory is part of so we see this info
6395
6396 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6397
6398         * docs/gst/gstreamer-sections.txt:
6399         * docs/gst/tmpl/gstbuffer.sgml:
6400         * docs/gst/tmpl/gstschedulerfactory.sgml:
6401           reorder docs a little, make GstBuffer's more sensible.
6402         * gst/gstbuffer.h:
6403           API: added GST_BUFFER_FLAG_DELTA_UNIT
6404         * gst/gstscheduler.c:
6405           comment API addition
6406
6407 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6408
6409         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6410           work with non-regular files that can be mmapped (like /dev/zero)
6411         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6412           get rid of typefinds that require a seek when we can't seek instead
6413           of trying them over and over again
6414         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6415           return non-zero failure value when the pipeline was interrupted or
6416           an error occurred
6417
6418 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6419
6420         * win32/config.h:
6421         * win32/GStreamer.vcproj:
6422           compile and install the locales
6423
6424 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6425
6426         * gst/gstvalue.c:
6427           fix a possible memory leak under Windows
6428
6429 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6430
6431         * win32/GStreamer.vcproj:
6432           fix a memory leak that occured under Windows
6433         * win32/gstreamer.def:
6434           add gst_scheduler_register
6435
6436 2004-08-11  Benjamin Otte  <otte@gnome.org>
6437
6438         * docs/gst/gstreamer-sections.txt:
6439         * gst/gstscheduler.c: (gst_scheduler_register):
6440         * gst/gstscheduler.h:
6441           API:
6442           add gst_scheduler_register shortcut similar to gst_element_register
6443         * gst/schedulers/entryscheduler.c: (plugin_init):
6444         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6445         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6446           use it
6447
6448 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6449
6450         * gst/gstvalue.h:
6451           fix a memory leak that occured under Windows
6452
6453 2004-08-10  Colin Walters  <walters@redhat.com>
6454
6455         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6456         Don't use O_EXCL to open temporary registry.  It will prevent
6457         registry creation if a temporary one already exists, which
6458         is unnecessary.
6459
6460 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6461
6462         * docs/gst/gstreamer-sections.txt:
6463         * docs/gst/tmpl/gstvalue.sgml:
6464           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6465
6466 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6467
6468         * win32/gstbytestream.vcproj:
6469         * win32/gstelements.vcproj:
6470         * win32/gstgetbits.vcproj:
6471         * win32/gst-inspect.vcproj:
6472         * win32/gst-launch.vcproj:
6473         * win32/gstoptimalscheduler.vcproj:
6474         * win32/GStreamer.vcproj:
6475         * win32/gst-register.vcproj:
6476         * win32/gstspider.vcproj:
6477           update the include and lib dirs to fit standard libraries as
6478           described in the Win32 manual
6479
6480 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6481
6482         * win32/config.h:
6483         * win32/gstversion.h:
6484           enable NLS again, push the version number for the coming 0.8.5 release
6485
6486 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6487
6488         * gst/gstvalue.h:
6489           export gst_type_XXX for windows DLLs
6490
6491 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6492
6493         * docs/faq/gst-uninstalled:
6494           fix PKG_CONFIG_PATH and PYTHONPATH
6495         * gst/schedulers/Makefile.am:
6496           cleanup
6497         * libs/gst/bytestream/bytestream.c:
6498           remove newline
6499         * po/LINGUAS:
6500         * po/sq.po:
6501           adding Albanian translation (Laurent Dhima)
6502         * po/cs.po:
6503           updated
6504
6505 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6506
6507         * po/ca.po:
6508         * po/sv.po:
6509           updated translations
6510
6511 2004-08-04  Benjamin Otte  <otte@gnome.org>
6512
6513         * tests/mass_elements.c: (main):
6514           allow specifying src and sink element explicitly, so I can test
6515           videotestsrc instead of fakesrc
6516
6517 2004-08-04  Benjamin Otte  <otte@gnome.org>
6518
6519         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6520         (gst_structure_id_empty_new), (gst_structure_empty_new),
6521         (gst_structure_copy):
6522           add gst_structure_id_empty_new_with_size to allow preallocating
6523           value array sizes. Use this in gst_structure_copy to get rid of
6524           reallocs.
6525           don't do quark=>string=>quark when copying structures
6526
6527 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6528
6529         * docs/manual/win32.xml:
6530         * win32/README.txt:
6531           update documentation with the clean version of dependencies
6532
6533 2004-08-03  Benjamin Otte  <otte@gnome.org>
6534
6535         * gst/schedulers/entryscheduler.c:
6536         (gst_entry_scheduler_remove_element):
6537           fix for GST_DISABLE_DEBUG
6538         * tools/gst-launch.c: (print_tag):
6539           fixes for G_DISABLE_ASSERT
6540
6541 2004-08-03  Benjamin Otte  <otte@gnome.org>
6542
6543         * gst/gst.c: (gst_register_core_elements):
6544           fix for G_DISABLE_ASSERT
6545         * gst/gstinfo.c: (__gst_in_valgrind):
6546           add for GST_DISABLE_DEBUG
6547
6548 2004-08-03  Benjamin Otte  <otte@gnome.org>
6549
6550         * gst/parse/parse.l:
6551           fix for G_DISABLE_ASSERT
6552
6553 2004-08-03  Wim Taymans  <wim@fluendo.com>
6554
6555         * gst/gstbin.c: (gst_bin_get_type),
6556         (gst_bin_child_state_change_func):
6557         * gst/gstthread.c: (gst_thread_change_state):
6558         Backported some debug logging from a reverted patch
6559         Don't try to destroy the thread twice. Added some more
6560         debugging in GstThread. Unlock and signal even if we
6561         are in the thread context.
6562
6563 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6564
6565         * po/uk.po:
6566           updated translation
6567
6568 2004-07-30  David Schleef  <ds@schleef.org>
6569
6570         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6571
6572 2004-07-29  David Schleef  <ds@schleef.org>
6573
6574         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6575         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6576
6577 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6578
6579         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6580         (gst_bin_add_func), (gst_bin_remove_func),
6581         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6582         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6583         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6584         (gst_bin_sync_children_state):
6585         * gst/gstbin.h:
6586         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6587         (gst_thread_change_state):
6588         * testsuite/states/Makefile.am:
6589           revert state change patches as agreed so we can rework them
6590           gradually
6591
6592 2004-07-29  Benjamin Otte  <otte@gnome.org>
6593
6594         * libs/gst/control/Makefile.am:
6595           link to libgstreamer (fixes Debian bug 262019, see
6596           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6597
6598 2004-07-29  Wim Taymans  <wim@fluendo.com>
6599
6600         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6601         (check_from_fraction_convert), (transform_test), (main):
6602         Make the test less pedantic about float roundoff errors.
6603
6604 2004-07-29  Benjamin Otte  <otte@gnome.org>
6605
6606         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6607         (gst_filesrc_srcpad_event):
6608           make seek events to before start/after end of file not fail, but
6609           seek to start/end instead
6610         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6611           add more output
6612
6613 2004-07-29  Benjamin Otte  <otte@gnome.org>
6614
6615         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6616           check that caps are fixed
6617         * gst/gstpad.c: (gst_pad_template_new):
6618           don't try to simplify caps, costs too much time on gst_init
6619         * gst/gstplugin.c: (gst_plugin_add_feature):
6620           G_ERROR if features are added twice
6621         * gst/gsttypefind.c: (gst_type_find_register):
6622         * gst/gstelementfactory.c: (gst_element_register):
6623           don't add features twice
6624         * docs/random/ds/0.9-suggested-changes:
6625           add note about possible gst_init optimization
6626
6627 2004-07-28  David Schleef  <ds@schleef.org>
6628
6629         * testsuite/elements/Makefile.am:
6630         * testsuite/elements/struct_i386.h:
6631         * testsuite/elements/struct_size.c: (main):  A little test
6632         to keep distcheck from working if someone changes a structure
6633         size accidentally.
6634
6635 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6636
6637         * docs/libs/Makefile.am:
6638         * docs/libs/gstreamer-libs-docs.sgml:
6639         * docs/libs/gstreamer-libs-sections.txt:
6640         * docs/libs/tmpl/gstbytestream.sgml:
6641         * docs/libs/tmpl/gstcontrol.sgml:
6642         * docs/libs/tmpl/gstdataprotocol.sgml:
6643         * docs/libs/tmpl/gstgetbits.sgml:
6644         * libs/gst/bytestream/Makefile.am:
6645         * libs/gst/bytestream/bytestream.c:
6646         * libs/gst/bytestream/bytestream.h:
6647         * libs/gst/control/Makefile.am:
6648         * libs/gst/dataprotocol/Makefile.am:
6649         * libs/gst/getbits/Makefile.am:
6650         * libs/gst/getbits/getbits.h:
6651           various doc and style fixes, adding bytestream to libs docs.
6652
6653 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6654
6655         * docs/gst/gstreamer-docs.sgml:
6656         * docs/libs/Makefile.am:
6657         * docs/libs/gstreamer-libs-docs.sgml:
6658         * docs/libs/gstreamer-libs-sections.txt:
6659         * libs/gst/control/dparam.c:
6660           more doc fixes.  gst-libs docs now build the same way as gst.
6661
6662 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6663
6664         * configure.ac:
6665         * testsuite/Makefile.am:
6666         * testsuite/bins/Makefile.am:
6667         * testsuite/caps/Makefile.am:
6668         * testsuite/cleanup/Makefile.am:
6669         * testsuite/clock/Makefile.am:
6670         * testsuite/debug/Makefile.am:
6671         * testsuite/dlopen/Makefile.am:
6672         * testsuite/dynparams/Makefile.am:
6673         * testsuite/elements/.cvsignore:
6674         * testsuite/elements/Makefile.am:
6675         * testsuite/enumcaps/Makefile.am:
6676         * testsuite/enumcaps/enumcaps.c:
6677         * testsuite/ghostpads/Makefile.am:
6678         * testsuite/indexers/Makefile.am:
6679         * testsuite/negotiation/Makefile.am:
6680         * testsuite/parse/Makefile.am:
6681         * testsuite/plugin/Makefile.am:
6682         * testsuite/refcounting/Makefile.am:
6683         * testsuite/schedulers/.cvsignore:
6684         * testsuite/states/Makefile.am:
6685         * testsuite/tags/Makefile.am:
6686         * testsuite/threads/Makefile.am:
6687           fold enumcaps into caps dir
6688           clean up Makefile.am's for testsuite
6689
6690 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6691
6692         * docs/gst/Makefile.am:
6693         * docs/libs/Makefile.am:
6694           clean up docs build.  Fixes needless rebuilding of template files.
6695
6696 2004-07-28  Wim Taymans  <wim@fluendo.com>
6697
6698         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6699         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6700         Make sure that a bin state change tries to keep the children
6701         in sync. 
6702         Added debug logging to the thread.
6703
6704 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6705
6706         * win32/GStreamer.vcproj:
6707         * win32/gstreamer.def:
6708           more exports for the plugins
6709
6710 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6711
6712         * win32/gstgetbits.vcproj:
6713         * win32/gstgetbits.def:
6714         * win32/msvc71.sln:
6715           add support for the getbits plugin
6716
6717 2004-07-27  Wim Taymans  <wim@fluendo.com>
6718
6719         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6720         (gst_value_transform_fraction_double), (_gst_value_initialize):
6721         * testsuite/caps/Makefile.am:
6722         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6723         (check_from_fraction_convert), (transform_test), (main):
6724         Added transform functions between double and fraction.
6725         Added testcase to verify transforms
6726
6727 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6728
6729         * win32/GStreamer.vcproj:
6730           rename GStreamer-0.8.lib to libgstreamer.lib
6731
6732 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6733
6734         * win32/gstelements.vcproj:
6735         * win32/gstoptimalscheduler.vcproj:
6736           fixes for the Release build
6737
6738 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6739
6740         * win32/config.h:
6741           update the version number
6742
6743 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6744
6745         * win32/GStreamer.vcproj:
6746           add gstinterface to the build
6747
6748 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6749
6750         * win32/gstreamer.def:
6751           add many definitions needed by plugins,
6752           GST_CAT_DEFAULT only available in the Debug build ?
6753
6754 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6755
6756         * gst/gstelement.c: (gst_element_set_eos_recursive):
6757           various whitespace fixes.
6758           doc fix, fixes #148497
6759
6760 2004-07-25  Benjamin Otte  <otte@gnome.org>
6761
6762         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6763           don't delay links on the sink elements, it causes unnegotiated
6764           links.
6765         * gst/elements/gsttypefindelement.c:
6766         (gst_type_find_element_base_init):
6767           add our padtemplates, we indeed do have some.
6768         * gst/elements/gsttypefindelement.c:
6769         (gst_type_find_element_handle_event),
6770         (gst_type_find_element_chain):
6771           don't push data when typefinding failed.
6772         * gst/gstpad.c: (gst_pad_link_fixate):
6773           check that no fixate function returns empty caps.
6774         * gst/gstpad.c: (gst_pad_push):
6775           check that the link is negotiated before data gets pushed.
6776         * tools/gst-register.c: (main):
6777           don't assert (fixes #148283)
6778
6779 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6780
6781         * docs/gst/gstreamer-sections.txt:
6782         * docs/gst/tmpl/gstconfig.sgml:
6783           add GST_PLUGIN_EXPORT definition
6784
6785 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6786
6787         * gst/gstplugin.h:
6788         * gst/gstconfig.h.in:
6789         * win32/gstconfig.h:
6790         * win32/gstelements.def:
6791         * win32/gstelements.vcproj:
6792         * win32/gstoptimalscheduler.def:
6793         * win32/gstoptimalscheduler.vcproj:
6794         * win32/gstspider.def:
6795         * win32/gstspider.vcproj:
6796           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6797
6798 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6799
6800         * docs/gst/gstreamer-sections.txt:
6801           remove GST_CAT_DEFAULT because the type has changed
6802
6803 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6804
6805         * win32/gstbytestream.vcproj:
6806         * win32/gstelements.vcproj:
6807         * win32/gst-inspect.vcproj:
6808         * win32/gst-launch.vcproj:
6809         * win32/gstoptimalscheduler.vcproj:
6810         * win32/GStreamer.vcproj:
6811         * win32/gst-register.vcproj:
6812         * win32/gstspider.vcproj:
6813         * win32/msvc71.sln:
6814           Copy the files where needed after building, The testsuite will be
6815           built separately
6816
6817 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6818
6819         * win32/config.h:
6820         * win32/README.txt:
6821         * docs/manual/win32.xml:
6822         Fixed the plugin and GStreamer location
6823
6824 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6825
6826         * win32/gstreamer.def:
6827         More exports for the plugins
6828
6829 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6830
6831         * gst/gstinfo.h:
6832         Marc was right, we need to export literally GST_CAT_DEFAULT
6833
6834 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6835
6836         * win32/config.h:
6837         NLS crashes in gettext, disabled until this is solved
6838
6839 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6840
6841         * win32/gst-inspect.vcproj:
6842         * win32/gst-launch.vcproj:
6843         Should use NLS when available
6844
6845 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6846
6847         * gst/registries/gstxmlregistry.c:
6848         removing the file doesn't seem to be a good idea on Linux
6849
6850 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6851
6852         * gst/registries/gstxmlregistry.c:
6853         Remove the registry before renaming the tempfile (needed for Windows)
6854
6855 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6856
6857         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6858         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6859         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6860         * gst/elements/gstmultifilesrc.h:
6861         Added newmedia property so it generates newmedia events between each
6862         file when property is set, as well as fixed eos handling
6863
6864 2004-07-22  David Schleef  <ds@schleef.org>
6865
6866         * gst/gststructure.c: (gst_structure_id_empty_new),
6867         (gst_structure_empty_new):  Set type field correctly.
6868         * gst/gststructure.h: Check type field correctly.
6869         * testsuite/caps/Makefile.am:
6870         * testsuite/caps/structure.c: (test1), (main): Add a very small
6871         test for structures.
6872
6873 2004-07-22  David Schleef  <ds@schleef.org>
6874
6875         * docs/random/ds/0.9-suggested-changes: more comments
6876         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6877
6878 2004-07-22  Benjamin Otte  <otte@gnome.org>
6879
6880         * gst/gstelementfactory.c: (gst_element_register):
6881           set the factory in the class struct, so gst_element_get_factory
6882           actually works
6883         * gst/parse/grammar.y:
6884           set element to playing when it gets unlocked as we can't rely on the
6885           bin state - all elements in the bin state might still be locked in
6886           NULL)
6887
6888 2004-07-22  Benjamin Otte  <otte@gnome.org>
6889
6890         * gst/gstelement.c: (gst_element_set_state_func):
6891           make this a static function
6892
6893 2004-07-22  Wim Taymans  <wim@fluendo.com>
6894
6895         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6896         (gst_opt_scheduler_pad_link):
6897         fix 147894-2 and the group_link problem.
6898
6899 2004-07-22  Wim Taymans  <wim@fluendo.com>
6900
6901         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6902         (handoff_identity), (main):
6903         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6904         (handoff_identity), (main):
6905         * testsuite/schedulers/Makefile.am:
6906         * testsuite/schedulers/group_link.c: (main):
6907         Show bug in scheduler when linking chain and loop based element 
6908         where the chain based element was not yet in a group.
6909
6910 2004-07-21  Benjamin Otte  <otte@gnome.org>
6911
6912         * gst/.cvsignore:
6913         * gst/autoplug/.cvsignore:
6914         * gst/elements/.cvsignore:
6915         * gst/indexers/.cvsignore:
6916         * libs/gst/bytestream/.cvsignore:
6917         * libs/gst/control/.cvsignore:
6918         * libs/gst/getbits/.cvsignore:
6919         * testsuite/states/.cvsignore:
6920         * testsuite/threads/.cvsignore:
6921           keep this up to date, since I seem to be the only one who cares
6922           about not missing files on commits (editor's note: no you don't,
6923           but feel free to change them at the time you add stuff instead
6924           of later on)
6925
6926 2004-07-21  Benjamin Otte  <otte@gnome.org>
6927
6928         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6929         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6930         (gst_bin_child_state_change_func), (set_kid_state_func),
6931         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6932           make state changes work correctly and reentrant (so removing
6933           elements from bins during state changes of bins doesn't cause
6934           segfaults or even wrong states)
6935           add debugging category and debugging output to print children states
6936         * gst/gstbin.c: (gst_bin_dispose): 
6937           add some assertion checks
6938         * gst/gstbin.h:
6939         * gst/gstbin.c: (gst_bin_sync_children_state):
6940           deprecate this function - it just does gst_bin_set_state (bin,
6941           GST_STATE (bin)) 
6942         * testsuite/threads/queue.c: (main):
6943           don't use gst_bin_sync_children_state anymore
6944         * testsuite/states/Makefile.am:
6945         * testsuite/states/bin.c:
6946           test that the state changes of bins work as expected
6947         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6948           some adjustments to change states correctly, too
6949         * gst/gstthread.c: (gst_thread_change_state):
6950           don't enable/disable "threadsafe" properties, they're unused and
6951           cause random segfaults
6952         * testsuite/threads/Makefile.am:
6953           the queue check randomly passes now, ignore it
6954
6955 2004-07-21  Benjamin Otte  <otte@gnome.org>
6956
6957         * gst/gstpad.c:
6958           check if data is NULL before outputting debug info. (fixes #145100)
6959
6960 2004-07-21  Benjamin Otte  <otte@gnome.org>
6961
6962         * gst/schedulers/entryscheduler.c:
6963         (gst_entry_scheduler_loop_wrapper),
6964         (gst_entry_scheduler_chain_wrapper),
6965         (gst_entry_scheduler_get_wrapper):
6966           reset the state when the cothread starts, so we don't get assertion
6967           failures on restarting of cothreads
6968
6969 2004-07-20  Benjamin Otte  <otte@gnome.org>
6970
6971         * gst/gstelement.c: (gst_element_link_pads_filtered):
6972           use correct sinkpad, if only sinkpad is specified, but not srcpad
6973           (fixes #147889)
6974         * gst/gstelement.c: (gst_element_set_state_func),
6975         (gst_element_change_state): ref/unref the element, signal handlers
6976         could get rid of the element otherwise
6977
6978 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6979
6980         * docs/random/ds/0.9-suggested-changes:
6981           Make note about renaming fixed-list to array.
6982         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6983         (_gst_value_initialize):
6984           Add array intersections.
6985         * testsuite/caps/intersect2.c: (main):
6986           Add test for array intersections.
6987
6988 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6989
6990         * configure.ac: back to cvs
6991
6992 === release 0.8.4 ===
6993
6994 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6995
6996         * configure.ac:
6997           releasing 0.8.4, "Paella"
6998           bump libtool versioning
6999
7000 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7001
7002         * po/LINGUAS:
7003         * po/ca.po:
7004           adding Catalan translation (Jordi Mallach)
7005
7006 2004-07-20  Wim Taymans  <wim@fluendo.com>
7007
7008         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7009         (handoff_identity), (main):
7010         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7011         (handoff_identity), (main):
7012         * testsuite/schedulers/Makefile.am:
7013         Added failing testcase for variant of #147894
7014
7015 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7016
7017         patch by: David Moore
7018
7019         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7020         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7021         (group_migrate_connected):
7022         * testsuite/schedulers/Makefile.am:
7023           fix for #142813 (Deadlock in optimal scheduler)
7024
7025 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7026
7027         patch by: Wim Taymans
7028
7029         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7030         (gst_opt_scheduler_schedule_run_queue),
7031         (gst_opt_scheduler_get_wrapper), (get_group),
7032         (group_migrate_connected):
7033         * testsuite/schedulers/Makefile.am:
7034           fix for #147819 (Add some checks in the opt scheduler)
7035
7036 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7037
7038         patch by: Benjamin Otte
7039
7040         * gst/gstelementfactory.c: (__gst_element_details_set):
7041           fix for #147929: running gst-register in non-utf8 locale can cause
7042           invalid registry
7043
7044 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7045
7046         patch by: Wim Taymans
7047
7048         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7049         (group_has_element), (element_get_reachables_func),
7050         (group_migrate_connected):
7051           fix for #147894 (opt scheduler decoupled elements mismanagement)
7052         * testsuite/schedulers/Makefile.am:
7053           testsuite app now passes
7054
7055 2004-07-19  Wim Taymans  <wim@fluendo.com>
7056
7057         * testsuite/schedulers/147819.c: (handoff_identity1),
7058         (handoff_identity2), (main):
7059         * testsuite/schedulers/Makefile.am:
7060         Added testcase for bug 147819
7061
7062 2004-07-19  Wim Taymans  <wim@fluendo.com>
7063
7064         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7065         (handoff_identity), (main):
7066         * testsuite/schedulers/Makefile.am:
7067         Added testcase for bug 147894
7068
7069 2004-07-16  Wim Taymans  <wim@fluendo.com>
7070
7071         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7072         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7073         * testsuite/schedulers/Makefile.am:
7074         Added testsuite for bug 142183 in its two incarnations. Refcount
7075         is not increased for scheduled elements and threadsafe properties
7076         mutexes are not properly unlocked.
7077
7078 2004-07-16  Wim Taymans  <wim@fluendo.com>
7079
7080         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7081         (create_chain), (destroy_chain), (create_group), (destroy_group),
7082         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7083         (group_dec_link), (gst_opt_scheduler_pad_link),
7084         (group_inc_links_for_element), (group_migrate_connected):
7085         Call group_inc_link with the proper src->sink ordering -- 
7086         break this, and we break sort_chain. patch from wingo for bug
7087         147713.
7088         Partially revert patch 1.89. When adding a loop based element to 
7089         the scheduler, the links to other groups are automatically followed
7090         and incremented. This should not happen because the bin will call
7091         pad_link explicitly for those connection, resulting in them counted 
7092         twice. Results in assertion failure on pipeline cleanup.
7093
7094 2004-07-16  Wim Taymans  <wim@fluendo.com>
7095
7096         * testsuite/schedulers/143777-2.c: (main):
7097         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7098         (main):
7099         * testsuite/schedulers/Makefile.am:
7100         Added cleanup code to testcase 143777-2.
7101         Added testcase to show bug 147713, does not really show the
7102         deadlock as I can't figure out how to trigger it, but it does
7103         demonstrate bad ordering in the scheduler.
7104
7105 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7106
7107         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7108           change strndup to g_strndup.  Fixes #147707
7109
7110 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7111
7112         * po/af.po:
7113         * po/az.po:
7114         * po/cs.po:
7115         * po/en_GB.po:
7116         * po/fr.po:
7117         * po/nl.po:
7118         * po/sr.po:
7119         * po/sv.po:
7120         * po/tr.po:
7121         * po/uk.po:
7122           updated translations
7123
7124 2004-07-16  Benjamin Otte  <otte@gnome.org>
7125
7126         * gst/gstvalue.c: (gst_greatest_common_divisor):
7127           use ints and return ints, fractions only use ints, too, so this
7128           avoids accidently casting multiplications to unsigned
7129         (gst_value_lcopy_fraction): it's ints, not uint32
7130         (gst_value_set_fraction): disallow minint, multiplying and negation
7131           are broken with it
7132         (gst_value_fraction_multiply): fix to make large numbers work and get
7133         rid of the assumption that the multiplication of two ints fits an
7134         int64 - dunno if that's true for all systems
7135         * testsuite/caps/Makefile.am:
7136         * testsuite/caps/fraction-multiply-and-zero.c:
7137         (check_multiplication), (check_equal), (zero_test), (main):
7138           add tests for all the stuff above
7139         * testsuite/caps/value_compare.c: (test1):
7140           fix comment
7141         * tests/.cvsignore:
7142         * testsuite/caps/.cvsignore:
7143         * testsuite/debug/.cvsignore:
7144         * testsuite/dlopen/.cvsignore:
7145         * testsuite/states/.cvsignore:
7146           get up to date
7147
7148 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7149
7150         * docs/manual/bins-api.xml:
7151         * docs/manual/factories.xml:
7152         * docs/manual/helloworld.xml:
7153         * docs/manual/links-api.xml: 
7154           fixes for out of date info, incorrect info and grammar
7155
7156 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7157
7158         * docs/manual/pads.xml:
7159         * docs/manual/pads-api.xml: grammar fix
7160
7161 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7162
7163         * docs/manual/pads-api.xml: typo + grammar fix
7164
7165 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7166
7167         * docs/gst/gstreamer-sections.txt:
7168           add new symbols
7169         * docs/gst/tmpl/gstelement.sgml:
7170         * docs/gst/tmpl/gstpad.sgml:
7171         * docs/gst/tmpl/gsttypes.sgml:
7172         * docs/gst/tmpl/gstvalue.sgml:
7173           update docs
7174         * gst/gststructure.c: (gst_structure_set_valist),
7175         (gst_structure_from_abbr), (gst_structure_to_abbr):
7176         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7177         (gst_greatest_common_divisor), (gst_value_init_fraction),
7178         (gst_value_copy_fraction), (gst_value_collect_fraction),
7179         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7180         (gst_value_get_fraction_numerator),
7181         (gst_value_get_fraction_denominator),
7182         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7183         (gst_value_deserialize_fraction),
7184         (gst_value_transform_fraction_string),
7185         (gst_value_transform_string_fraction),
7186         (gst_value_compare_fraction), (_gst_value_initialize):
7187         * gst/gstvalue.h:
7188           adding GstFraction GValue type, get/set, and multiply
7189         * testsuite/caps/Makefile.am:
7190         * testsuite/caps/fraction.c: (test), (main):
7191         * testsuite/caps/string-conversions.c: (main):
7192         * testsuite/caps/value_compare.c: (test1), (main):
7193           add regression tests for GstFraction
7194
7195 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7196         
7197         * docs/manual/init-api.xml: Grammar fix
7198
7199 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7200
7201         * docs/manual/states.xml: Fix inconsistent information
7202
7203 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7204
7205         * gst/gstelement.c: (gst_element_set_state):
7206         * gst/gstpad.c: (gst_pad_try_set_caps):
7207         * gst/gststructure.c:
7208         * gst/gstthread.c: (gst_thread_child_state_change):
7209         * gst/gstvalue.c: (gst_value_compare_double):
7210         * gst/gstvalue.h:
7211         * testsuite/parse/parse1.c: (main):
7212           debugging additions and style cleanups
7213
7214 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7215
7216         * docs/manual/states.xml: Grammar fix
7217
7218 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7219
7220         * docs/manual/pads.xml: Grammar fix
7221
7222 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7223
7224         * docs/manual/elements.xml: Fixed image reference
7225
7226 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7227
7228         * docs/manual/goals.xml: Grammar fix
7229
7230 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7231
7232         * docs/manual/motivation.xml:
7233         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7234
7235 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7236
7237         * docs/manual/motivation.xml: Fix spelling
7238
7239 2004-07-15  Benjamin Otte  <otte@gnome.org>
7240
7241         * gst/gstelement.h: 
7242           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7243           strings.
7244         * gst/gstelement.c (gst_element_class_init):
7245           GError's are boxed, not objects
7246         * gst/gstmarshal.list:
7247           update list for the fixed error signal
7248
7249 2004-07-14  Andy Wingo  <wingo@pobox.com>
7250
7251         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7252         there all along, but the function wasn't. (guile-gstreamer's build
7253         system uses the address of the function -- I wasn't actually
7254         trying to use this.)
7255
7256 2004-07-14  Andy Wingo  <wingo@pobox.com>
7257
7258         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7259         as gst_pad_proxy_pad_link) just link to every other pad when they
7260         are called. In the case where the graph has cycles, this will mean
7261         that a call to try_set_caps will recurse. Allow this recursion
7262         and return OK, while we wait for the first try_set_caps to give a
7263         proper return value.
7264         (gst_pad_link_call_link_functions): Since this function is the
7265         only one to set the NEGOTIATING flag on a pad, if the flag is set
7266         it means that the link functions have indirectly recursed. If this
7267         happens, error out to avoid infinite recursion and an eventual
7268         SEGV.
7269         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7270         (gst_pad_proxy_getcaps): Intersect the result with the template
7271         caps to ensure that the return value is valid.
7272
7273 2004-07-14  Andy Wingo  <wingo@pobox.com>
7274
7275         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7276         one refcount, the calling function is the owner of the buffer.
7277
7278 2004-07-14  Wim Taymans  <wim@fluendo.com>
7279
7280         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7281         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7282         Fix stupid warning when an element is to be migrated but
7283         is already migrated.
7284
7285 2004-07-14  Wim Taymans  <wim@fluendo.com>
7286
7287         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7288         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7289         Make sure that a single non-loop-based element does not 
7290         end up in a group. This fixes the testsuite again.
7291
7292 2004-07-14  Wim Taymans  <wim@fluendo.com>
7293
7294         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7295         (add_to_group), (merge_groups), (schedule_group),
7296         (gst_opt_scheduler_get_wrapper), (group_elements),
7297         (group_dec_link), (gst_opt_scheduler_pad_link),
7298         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7299         (gst_opt_scheduler_iterate):
7300         move isolated groups to a new chain.
7301         Emit a warning instead of segfaulting in some error cases.
7302         Fix a bug where the link count between groups was not calculated 
7303         correctly. Fixes #144510.
7304
7305 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7306         * gst/elements/gstfilesrc.c:
7307           Binary files support under Windows now OK
7308       
7309 2004-07-13  Benjamin Otte  <otte@gnome.org>
7310
7311           compatibility fixes for Solaris 8/gcc 2.95
7312         * configure.ac:
7313           include libintl libs in LDFLAGS
7314         * gstvalue.c (gst_value_deserialize_buffer):
7315           cast isxdigit stuff to int to silence compiler warning
7316
7317 2004-07-12  Benjamin Otte  <otte@gnome.org>
7318
7319         * gst/gsttypes.h:
7320           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7321           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7322           just causes support madness
7323         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7324           make it work without this
7325         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7326         (gst_file_index_commit):
7327           glib IO channels don't want binary mode
7328         * testsuite/bytestream/filepadsink.c: (main):
7329         * testsuite/bytestream/test1.c: (read_param_file):
7330           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7331
7332 2004-07-12  Benjamin Otte  <otte@gnome.org>
7333
7334         * gst/gstelement.c: (gst_element_class_init),
7335         (gst_element_set_state), (gst_element_set_state_func):
7336           virutalize gst_element_set_state, use set_state member in class
7337           struct that was already added in 0.7 for this.
7338         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7339         (gst_bin_change_state):
7340           make gst_bin_foreach works similar to other foreach functions, plug
7341           memleaks in it. Make functions using it work with the new approach.
7342           Document gst_bin_foreach, so it can be exported if we want to
7343         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7344           use virtualized set_state to make set_state on bins set the state of
7345           all its children.
7346
7347 2004-07-12  Benjamin Otte  <otte@gnome.org>
7348
7349         * configure.ac:
7350           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7351           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7352         * gst/gstpad.c: (gst_pad_alloc_buffer):
7353           allow buffer_alloc functions to return NULL and allocate a normal
7354           buffer in that case
7355
7356 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7357         * gst/elements/gstfilesink.c:
7358         * gst/elements/gstfilesrc.c:
7359         * gst/indexers/gstfileindex.c:
7360         * gst/gsttypes.h:
7361         * testsuite/bytestream/filepadsink.c:
7362         * testsuite/bytestream/test1.c:
7363           Handle binary files under Windows
7364
7365 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7366         * docs/manual/win32.xml:
7367         * win32/config.h:
7368         * win32/gst-register.vcproj:
7369         * win32/gstreamer.def:
7370           Update to another gettext public build
7371
7372 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7373         * gst/gstplugin.c:
7374           Fix an impossible C syntax
7375         * win32/config.h:
7376           Disable i18n under Windows for the moment
7377         * win32/gst-register.vcproj:
7378           Use this configuration
7379
7380 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7381         * docs/manual/quotes.xml:
7382           Keep the quotes file alive
7383         * docs/random/ds/0.9-suggested-changes:
7384           Add the suggestion of including a 'rowstride' as part of video
7385           format caps
7386
7387 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7388
7389         * gst/gstelement.c: (gst_element_set_state),
7390         (gst_element_change_state):
7391           d'oh.  Set PENDING state correctly before forcing bin to change.
7392         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7393         (gst_structure_parse_fixed_list):
7394         * gst/schedulers/gstoptimalscheduler.c:
7395         (gst_opt_scheduler_state_transition):
7396         * testsuite/states/parent.c: (main):
7397           remove comment now that it's fixed.
7398
7399 2004-07-11  Benjamin Otte  <otte@gnome.org>
7400
7401         * gst/gstclock.h:
7402           GST_SECOND shouldn't cause a conversion to unsigned.
7403         * testsuite/clock/.cvsignore:
7404         * testsuite/clock/Makefile.am:
7405         * testsuite/clock/signedness.c: (main):
7406           make sure it never will again
7407
7408 2004-07-11  Andy Wingo  <wingo@pobox.com>
7409
7410         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7411         whose state is higher than the bin state, raise the bin state to
7412         ensure that bin state := highest child state.
7413         
7414 2004-07-11  Andy Wingo  <wingo@pobox.com>
7415
7416         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7417         procedure on the children of a bin. Assumes that the procedure can
7418         change the set of children.
7419         (set_kid_state_func): New static function.
7420         (gst_bin_change_state): Use gst_bin_foreach to call
7421         set_kid_state_func. Fixes a bug: if a child had a state-change
7422         handler that removes it from the bin, there would be a segfault.
7423         Hopefully it should also work in the case where the state-change
7424         handler on one child adds or removes other children. In any case,
7425         fixes should go to gst_bin_foreach.
7426
7427 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7428
7429         * gst/gstelement.c: (gst_element_set_state):
7430           compatibility fix for latest plugins release.  Change loop back
7431           to while {}
7432
7433 2004-07-09  Wim Taymans  <wim@fluendo.com>
7434
7435         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7436         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7437         (gst_thread_main_loop):
7438         Since remove is virtual in GstBin we must not assume the 
7439         elements GList to have anothing useful.
7440         Add some more logging to GstThread and be a bit more paranoid
7441         when resetting the scheduler.
7442         Set the state of the bin to NULL before removing the children.
7443
7444 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7445
7446         * testsuite/threads/Makefile.am:
7447         * testsuite/threads/threadg.c:
7448           added test to check if problem when removing all elements from a
7449           GstThread before setting GstThread state to NULL
7450
7451 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7452
7453         * docs/gst/tmpl/gstelement.sgml:
7454         * docs/gst/tmpl/gsttypes.sgml:
7455         * gst/gstbin.c: (gst_bin_change_state):
7456         * gst/gstelement.c: (gst_element_set_state),
7457         (gst_element_change_state):
7458           rework so that for bins we try to set the state on all children
7459           as well even if the bin is in the correct state already.
7460           change while to do so at least one iteration is done.
7461           For regular elements, we fall back to the previous behaviour for
7462           now since we first need a new plugins release.
7463         * testsuite/states/parent.c: (main):
7464           test for this case
7465           Fixes #123774
7466
7467 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7468
7469         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7470         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7471         (gst_queue_release_locks), (gst_queue_change_state),
7472         (gst_queue_set_property):
7473           add proper lock debugging.  Change dispose to finalize, since
7474           we're freeing mutexes and other stuff which should happen only once.
7475
7476 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7477
7478         * docs/gst/tmpl/gstelement.sgml:
7479         * docs/gst/tmpl/gstplugin.sgml:
7480         * docs/gst/tmpl/gsttypes.sgml:
7481         * docs/pwg/building-state.xml:
7482         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7483         * gst/gstelement.c: (gst_element_change_state):
7484         * gst/gstthread.c: (gst_thread_change_state):
7485           catch wrong state changes in element base class.
7486
7487 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7488
7489         * gst/gstinfo.h:
7490           clean up layout a little.
7491
7492 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7493
7494         * configure.ac:
7495         * testsuite/Makefile.am:
7496         * testsuite/states/Makefile.am:
7497         * testsuite/states/parent.c: (main):
7498           re-enable states testsuite dir.  Add test for state changes and
7499           parent behaviour
7500
7501 2004-07-09  Wim Taymans  <wim@fluendo.com>
7502
7503         * gst/schedulers/gstoptimalscheduler.c:
7504         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7505         (element_get_reachables_func), (element_get_reachables),
7506         (debug_element), (rechain_group), (group_migrate_connected),
7507         (gst_opt_scheduler_pad_unlink):
7508         Do not try to migrate decoupled elements to a new group since
7509         they are not added to groups.
7510
7511 2004-07-08  Benjamin Otte  <otte@gnome.org>
7512
7513         * gst/gstelement.c: (gst_element_error_func):
7514           make reentrant (= allow removing elements in error handler)
7515
7516 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7517
7518         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7519         (gst_pad_send_event), (gst_pad_call_chain_function):
7520           events sent to elements below PAUSED cannot be handled, so
7521           don't try to
7522
7523 2004-07-08  Wim Taymans  <wim@fluendo.com>
7524
7525         * gst/schedulers/gstoptimalscheduler.c:
7526         (chain_recursively_migrate_group), (create_group),
7527         (schedule_group), (gst_opt_scheduler_pad_link),
7528         (group_elements_set_visited), (element_get_reachables_func),
7529         (element_get_reachables), (group_can_reach_group), (debug_element),
7530         (rechain_group), (group_migrate_connected),
7531         (gst_opt_scheduler_pad_unlink):
7532         * testsuite/schedulers/Makefile.am:
7533         Implemented group splitting and rechaining.
7534         Fixes 143777 and 143777-2 in the testsuite.
7535
7536 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7537
7538         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7539           extra debugging
7540         * gst/gstevent.h:
7541         * gst/gstinfo.c: (gst_debug_log_default):
7542           print time nicely.  add thread pointer until someone figures out
7543           a completely portable way of getting at thread id's.
7544         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7545         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7546         (gst_pad_call_chain_function):
7547           extra debugging
7548         * gst/schedulers/gstoptimalscheduler.c:
7549         (get_group_schedule_function), (loop_group_schedule_function),
7550         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7551         (pad_clear_queued), (gst_opt_scheduler_iterate):
7552           rename BUFPEN and friends to DATAPEN since that's what they are.
7553
7554 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7555
7556         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7557         * gst/gstbuffer.h:
7558         * gst/gstpad.c:
7559           cleanups and debugging
7560
7561 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7562
7563         * configure.ac:
7564         * gst/gstvalue.c: (gst_value_compare_enum),
7565         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7566         (gst_value_can_compare), (gst_value_compare):
7567         * testsuite/Makefile.am:
7568         * testsuite/enumcaps/Makefile.am:
7569         * testsuite/enumcaps/enumcaps.c:
7570           Fix enum serialization, deserialization, comparison in caps, add
7571           a test to ensure that this continues working in the future.
7572
7573 2004-07-06  David Schleef  <ds@schleef.org>
7574
7575         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7576         Fix memleak.
7577
7578 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7579
7580         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7581         * gst/gstplugin.h:
7582         * gst/registries/gstxmlregistry.c:
7583         (plugin_times_older_than_recurse), (plugin_times_older_than),
7584         (gst_xml_registry_parse_padtemplate):
7585           only rebuild registry when actual plugins have a newer time than
7586           the registry.  Fixes #145520
7587
7588 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7589
7590         * docs/manual/manual.xml:
7591         * docs/manual/win32.xml:
7592           add chapter on win32 building.  fixes #142422
7593
7594 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7595
7596         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7597
7598         * gst/autoplug/gstspider.c: (gst_spider_init),
7599         (gst_spider_dispose):
7600           fix spider memleaks.  fixes #137863
7601
7602 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7603
7604         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7605
7606         * gst/schedulers/gstoptimalscheduler.c:
7607         (gst_opt_scheduler_pad_unlink):
7608           fix SIGBUS error, fixes #145338
7609
7610 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7611
7612         * gst/gstobject.c: (gst_object_replace):
7613         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7614         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7615           clean up clock lifecycle.  Fixes #109831
7616
7617 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7618
7619         * po/LINGUAS:
7620         * po/cs.po:
7621           added Czech translation (Miloslav Trmac)
7622
7623 2004-07-04  David Schleef  <ds@schleef.org>
7624
7625         * tools/Makefile.am:
7626         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7627
7628 2004-07-04  David Schleef  <ds@schleef.org>
7629
7630         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7631
7632 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7633
7634         * gst/gstbin.c: (gst_bin_restore_thyself):
7635           chain to parent restore so the bins get restored correctly
7636           in the editor
7637
7638 2004-07-03  David Schleef  <ds@schleef.org>
7639
7640         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7641         Actually do something in these functions, like before the big
7642         caps change.  (bug #145137)
7643
7644 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7645
7646         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7647         (gst_element_get_compatible_pad_filtered):
7648         * gst/gstthread.c: (gst_thread_main_loop):
7649           more debugging
7650
7651 2004-07-02  David Schleef  <ds@schleef.org>
7652
7653         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7654         * gst/gstobject.h:
7655         * gst/gstparse.h:
7656         * gst/gsttrace.h:
7657         * gst/gstxml.h:
7658
7659 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7660
7661         * gst/gstpad.c: (gst_pad_check_schedulers),
7662         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7663         (gst_pad_link_prepare):
7664           revert until testsuite is fixed
7665
7666 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7667
7668         * testsuite/Makefile.am:
7669         * testsuite/caps/filtercaps.c: (main):
7670         * testsuite/clock/clock1.c: (main):
7671         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7672           fix some more tests
7673
7674 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7675
7676         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7677         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7678         * testsuite/cleanup/cleanup4.c: (main):
7679           fix testsuite
7680
7681 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7682
7683         * libs/gst/control/control.c:
7684         * libs/gst/control/dparam.c:
7685         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7686         * libs/gst/control/dparammanager.c:
7687         * libs/gst/control/dparammanager.h:
7688         * testsuite/dynparams/Makefile.am:
7689         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7690         (gst_dptest_change_state), (gst_dptest_chain), (main):
7691           fix testcase for dparams
7692           add debugging category
7693
7694 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7695
7696         * testsuite/Rules:
7697           change path
7698
7699 2004-07-02  Benjamin Otte  <otte@gnome.org>
7700
7701         * tests/.cvsignore:
7702         * tests/Makefile.am:
7703         * tests/mass_elements.c: (gst_get_current_time), (main):
7704           add simple benchmark to test various speeds of fakesrc ! identity !
7705           identity ! ... ! fakesink.
7706           Usage: mass_elements [num_identities] [num_buffers]
7707           If not specified they default to 1000.
7708
7709 2004-07-02  Benjamin Otte  <otte@gnome.org>
7710
7711         * gst/gstpad.c: (gst_pad_check_schedulers),
7712         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7713         (gst_pad_link_prepare):
7714           check that pads that get linked belong to the same manager. The old
7715           code allowed linking elements before putting them into bins, so it
7716           worked to link them and then put them in different threads, which
7717           lead to weird behaviour.
7718           Since this effectively disallows linking elements before putting
7719           them in a bin, some applications might not work after this and error
7720           out. If these applications are too critical, we might need to revert
7721           that patch. Please test this before the next release...
7722
7723 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7724
7725         * gst/gstpad.c: (gst_pad_get_caps):
7726           throw an error if the getcaps function does not return a subset of
7727           the template caps.
7728         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7729           make disconts without position info an error in debugging
7730         * tests/spidey_bench.c: (handoff), (main):
7731           don't count first try when averaging
7732
7733 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7734
7735         * gst/gstplugin.c: (gst_plugin_load_file):
7736           figure out problem with dynamic test
7737
7738 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7739
7740         * docs/gst/Makefile.am:
7741           fix docs build
7742
7743 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7744
7745         * po/POTFILES.in:
7746         * po/af.po:
7747         * po/az.po:
7748         * po/en_GB.po:
7749         * po/fr.po:
7750         * po/nl.po:
7751         * po/sr.po:
7752         * po/sv.po:
7753         * po/tr.po:
7754         * po/uk.po:
7755         * tools/gst-register.c: (plugin_added_func), (main):
7756           i18n-ize -register, fix plural
7757
7758 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7759
7760         * gst/elements/gstidentity.c: (gst_identity_class_init),
7761         (gst_identity_init), (gst_identity_chain),
7762         (gst_identity_set_property), (gst_identity_get_property):
7763         * gst/elements/gstidentity.h:
7764           check for perfect stream
7765
7766 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7767
7768         * gst/elements/gstidentity.c: (gst_identity_chain):
7769           print offset_end
7770
7771 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7772
7773         * docs/gst/Makefile.am:
7774         * docs/gst/gstreamer-docs.sgml:
7775           doc fixes
7776
7777 2004-06-24  David Schleef  <ds@schleef.org>
7778
7779         * autogen.sh:  Remove call to env, since the buildbot isn't
7780         broken anymore.
7781
7782 2004-06-24  Wim Taymans  <wim@fluendo.com>
7783
7784         * gst/elements/Makefile.am:
7785         * gst/elements/gstelements.c:
7786         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7787         (gst_multifdsink_class_init), (gst_multifdsink_init),
7788         (gst_multifdsink_add), (gst_multifdsink_remove),
7789         (gst_multifdsink_clear), (gst_multifdsink_chain),
7790         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7791         * gst/elements/gstmultifdsink.h:
7792         Added an element that writes to multiple filedescriptors at once.
7793
7794 2004-06-24  Benjamin Otte  <otte@gnome.org>
7795
7796         * gst/parse/grammar.y:
7797           don't try to link elements before they have been added to bins
7798
7799 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7800
7801         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7802         (gst_file_pad_get_length):
7803         * libs/gst/bytestream/filepad.h:
7804           add 2 new functions
7805
7806 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7807
7808         * docs/gst/gstreamer-sections.txt:
7809         remove from docs, the define that Benjamin removed from gstelement.h
7810
7811 2004-06-22  Benjamin Otte  <otte@gnome.org>
7812
7813         * gst/gstelement.h:
7814           remove define that referenced a nonexisting GstElement struct member
7815
7816 2004-06-20  Benjamin Otte  <otte@gnome.org>
7817
7818         * gst/gstdata.c: (gst_data_is_writable):
7819           whoops, return values were wrong, so writable data was marked as
7820           non-writable and vice versa. (fixes #143953, spotted by Francis
7821           Labonte)
7822           Shows how rarely we need to copy data ;)
7823
7824 2004-06-20  Benjamin Otte  <otte@gnome.org>
7825
7826         * testsuite/schedulers/.cvsignore:
7827         * testsuite/schedulers/Makefile.am:
7828         * testsuite/schedulers/143777-2.c: (main):
7829           add test for opt breakage in bug #143777
7830
7831 2004-06-20  Benjamin Otte  <otte@gnome.org>
7832
7833         * gst/gstpad.c: (gst_pad_call_chain_function):
7834           check for if we were unlinked while inside the chainfunction (fixes
7835           entrygthread having issues with #143777)
7836         * testsuite/schedulers/143777.c: (main):
7837         * testsuite/schedulers/Makefile.am:
7838           add a test for that fix
7839
7840 2004-06-20  Benjamin Otte  <otte@gnome.org>
7841
7842         * gst/gstvalue.c: (gst_value_set_int_range):
7843           test that start is smaller then end
7844         * libs/gst/bytestream/Makefile.am:
7845         * libs/gst/bytestream/filepad.c: 
7846         * libs/gst/bytestream/filepad.h:
7847           add GstFilePad - a pad that behaves like a FILE*
7848         * testsuite/bytestream/.cvsignore:
7849         * testsuite/bytestream/Makefile.am:
7850         * testsuite/bytestream/filepadsink.c: 
7851           test for the GstFilePad
7852
7853 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7854
7855         * gst/elements/gstidentity.c: (gst_identity_class_init),
7856         (gst_identity_init), (gst_identity_set_clock),
7857         (gst_identity_chain), (gst_identity_set_property),
7858         (gst_identity_get_property):
7859         * gst/elements/gstidentity.h:
7860         * gst/gstclock.c: (gst_clock_id_wait):
7861           add a "sync" property to sync to the clock
7862
7863 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7864
7865         * gst/gstelementfactory.c: (gst_element_factory_create):
7866           make the freakin "elementfactory bla has no type" message more
7867           useful. So we actually can do something when someone shows up
7868           complaining about it.
7869
7870 2004-06-15  Johan Dahlin  <johan@gnome.org>
7871
7872         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7873         found. This matches the old behavior better. Thanks to Thomas for
7874         pointing out.
7875
7876 2004-06-14  David Schleef  <ds@schleef.org>
7877
7878         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7879         -fomit-frame-pointer.  Appears to generate correct code in
7880         other cases as well.
7881
7882 2004-06-14  Johan Dahlin  <johan@gnome.org>
7883
7884         * tools/gst-inspect.c (main): Add two new command line options: -a
7885         to print all elements and -n to print the name on each line. Also
7886         fix some error reporting.
7887         (main): Simplify, remove -n and always print names if -a is specified
7888
7889 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7890
7891         * win32/gstconfig.h:
7892         * win32/GSTreamer.vcproj:
7893         * win32/Makefile:
7894         * gst/gstconfig.h.in:
7895         * gst/gst.h:
7896         * gst/gstbin.h:
7897         * gst/gstelement.h:
7898         * gst/gstevent.h:
7899         * gst/gstobject.h:
7900         * gst/gstpad.h:
7901         * docs/gst/gstreamer-sections.txt:
7902         * docs/gst/tmpl/gstconfig.sgml:
7903           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7904
7905 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7906         * docs/gst/gstreamer-sections.txt:
7907         * docs/gst/tmpl/gstconfig.sgml:
7908         Add the GSTREAMER_EXPORT macro to the docs
7909
7910 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7911
7912         * tools/gst-compprep.c: (handle_xmlerror), (main):
7913         Add a check for the version that introduced SetStructuredError to fix
7914         the build on FC1
7915
7916 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7917
7918         * win32/msvc71.sln:
7919         * win32/testsuite/:
7920           prepare to compile the testsuite with MSVC
7921
7922 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7923
7924         * docs/manual/win32.xml:
7925           attempt to transform the Win32 README into an XML doc
7926
7927 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7928
7929         * gst/gst.c:
7930         * gst/gstbin.*:
7931         * gst/config.h.in:
7932         * gst/gstelement.*:
7933         * gst/gstevent.h:
7934         * gst/gstobject.*:
7935         * gst/gstpad.h:
7936         * tools/gst-register.c:
7937         * win32/gstreamer.def:
7938           extern symbols are now exported for the Windows DLL
7939
7940 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7941
7942         * gst/gstinfo.h:
7943           fix a problem to enable/disable DEBUG under MSVC
7944
7945 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7946
7947         * win32/:
7948           enable more debug code in DEBUG build
7949
7950 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7951
7952         * win32/config.h:
7953         * gst/gst-i18n-app.h:
7954           enable NLS under Windows
7955
7956 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7957         * tools/gst-compprep.c: (handle_xmlerror), (main):
7958           Make an error that baffled me a bit clearer
7959
7960 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7961
7962         * gst/gstqueue.c:
7963           don't use g_queue_get_length () because it's 2.4, use ->length
7964
7965 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7966
7967         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7968
7969         * tools/gst-inspect.c: (print_signal_info):
7970           don't free random data twice. (fixes #144185)
7971
7972 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7973
7974         * gst/gstqueue.c:
7975         * gst/gstqueue.h:
7976           fix removing from the wrong queue on event timeout
7977           fix disposing of the event queue by casting correctly
7978           add mutexes for handling the event queue
7979           someone was sleeping when fixing queue last time around :)
7980
7981 2004-06-10  Johan Dahlin  <johan@gnome.org>
7982
7983         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7984         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7985
7986 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7987
7988         * docs/random/gdp:
7989         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7990         * libs/gst/dataprotocol/dataprotocol.c:
7991         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7992         (gst_dp_buffer_from_header):
7993         * libs/gst/dataprotocol/dataprotocol.h:
7994         * libs/gst/dataprotocol/dp-private.h:
7995           rev version to 0.1, add buffer flags and copy them
7996
7997 2004-06-09  Johan Dahlin  <johan@gnome.org>
7998
7999         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8000         the flags from the buffer we're copying.
8001
8002 2004-06-09  Wim Taymans  <wim@fluendo.com>
8003
8004         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8005         * gst/elements/gstidentity.c: (gst_identity_init),
8006         (gst_identity_chain):
8007         Print more buffer info in fakesink.
8008         Make identity output similar to fakesink.
8009
8010 2004-06-07  Daniel Gazard  <dany42@free.fr>
8011
8012         reviewed by Benjamin Otte  <otte@gnome.org>
8013
8014         * configure.ac:
8015           fix cross compiling not working. (fixes #143741)
8016
8017 2004-06-07  Benjamin Otte  <otte@gnome.org>
8018
8019         * gst/gstelement.c: (gst_element_set_time_delay):
8020           add failure check
8021         * gst/gstinfo.h:
8022           put brackets around macro arguments of GST_TIME_ARGS, add note to
8023           move it to correct header in 0.9
8024
8025 2004-06-07  Benjamin Otte  <otte@gnome.org>
8026
8027         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8028         (gst_file_index_load), (_file_index_id_save_entries),
8029         (gst_file_index_commit), (gst_file_index_add_association),
8030         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8031         (gst_file_index_plugin_init):
8032           make debugging use a default category
8033
8034 2004-06-06  David Moore  <dcm@acm.org>
8035
8036         reviewed by Benjamin Otte  <otte@gnome.org>
8037
8038         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8039         (gst_fdsrc_change_state):
8040           reset offset counter when going READY => PAUSED. (fixes #142903)
8041
8042 2004-06-06  ed@catmur.co.uk
8043
8044         reviewed by Benjamin Otte  <otte@gnome.org>
8045
8046         * gst/registries/gstxmlregistry.c:
8047         (gst_xml_registry_rebuild_recurse):
8048           don't rely on g_dir_open to figure out if a file is a directory, use
8049           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8050           directories. (fixes #142850)
8051
8052 2004-06-06  Benjamin Otte  <otte@gnome.org>
8053
8054         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8055           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8056         * libs/gst/bytestream/adapter.c:
8057         * libs/gst/bytestream/adapter.h:
8058           fix copyright in header and typo in debugging category name
8059
8060 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8061
8062         * configure.ac:
8063           bump nano to cvs
8064
8065 === release 0.8.3 ===
8066
8067 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8068
8069         * configure.ac:
8070           update libtool versioning
8071           do a new release
8072         * docs/gst/tmpl/gstelement.sgml:
8073         * docs/gst/tmpl/gsttypes.sgml:
8074         * gst/gstinfo.c: (_gst_debug_init):
8075           put back GST_CAT_DATAFLOW to fix API breakage
8076
8077 2004-06-04  David Schleef  <ds@schleef.org>
8078
8079         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8080
8081 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8082
8083         * configure.ac:
8084           bump nano to cvs
8085
8086 === release 0.8.2 ===
8087
8088 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8089
8090         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8091           check GST_DEBUG environment variable which is parsed the same way
8092           as --gst-debug=
8093
8094 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8095
8096         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8097                             gstmd5sink.c gstshaper.c gsttee.c
8098                             gsttypefindelement.c
8099         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8100
8101           - removing trailing commas at end of enums
8102             it is correct C99 code but C90 compilers would complain
8103             (AIX, Forte, ...)
8104             ('should' fix #143290, at least partially)
8105
8106 2004-05-27  Wim Taymans  <wim@fluendo.com>
8107
8108         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8109         (chain_group_set_enabled), (create_group), (add_to_group),
8110         (merge_groups), (setup_group_scheduler), (group_elements),
8111         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8112         Don't try to follow the pad connections with other groups
8113         when a loop based element is added to the scheduler because
8114         the bin will inform the scheduler about the pad links a little
8115         later.
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),
8121         (setup_group_scheduler), (group_element_set_enabled),
8122         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8123         (gst_opt_scheduler_show):
8124         Elements without a group can do a state change as well, just wait
8125         with the setup of the scheduling function when it is added to a
8126         chain.
8127
8128 2004-05-27  Wim Taymans  <wim@fluendo.com>
8129
8130         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8131         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8132         (merge_groups), (setup_group_scheduler),
8133         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8134         (gst_opt_scheduler_show):
8135         Fixes to maintain internal consistency of the scheduler data
8136         structures. 
8137          - adding an enabled group to a chain should increment the
8138            number of enabled elements in that chain.
8139          - removing an enabled group from a chain could disable the
8140            chain.
8141          - removing a disabled group from a chain could enable the
8142            chain.
8143          - add g_assert when internal inconsistency is detected.
8144          - adding an element to a group could increase the number of
8145            links this group has with other groups.
8146          - merging two groups also merges the chains.
8147          - also show group links in the _show method.
8148            
8149
8150 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8151
8152         * gst/gstcaps.c: (gst_caps_structure_simplify):
8153           don't print error messages when there is no error
8154         * gst/gstvalue.c: (gst_value_compare_int_range):
8155           compare the second value, too
8156         * testsuite/caps/Makefile.am:
8157         * testsuite/caps/random.c: (assert_on_error), (main):
8158           add tests to make sure the two things above are checked for
8159
8160 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8161
8162         * configure.ac:
8163         * libs/gst/dataprotocol/Makefile.am:
8164         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8165         * libs/gst/dataprotocol/dataprotocol.h:
8166           wrap header in GST_ENABLE_NEW.  make code use it
8167
8168 2004-05-23  Johan Dahlin  <johan@gnome.org>
8169
8170         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8171         so verbose and print GstElement signal names all the time.
8172
8173 2004-05-22  David Schleef  <ds@schleef.org>
8174
8175         * gst/registries/gstxmlregistry.c:
8176         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8177         (bug #142957)
8178
8179 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8180
8181         * configure.ac:
8182           scrub cflags for glib2 so gcc doesn't complain when glib is in
8183           /usr/local
8184
8185 2004-05-21  Johan Dahlin  <johan@gnome.org>
8186
8187         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8188         __GNUC__, patch from Brian Cameron, fixes bug #142804
8189
8190 2004-05-20  David Schleef  <ds@schleef.org>
8191
8192         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8193         comparison code.  (bug #142819)
8194
8195 2004-05-20  Wim Taymans  <wim@fluendo.com>
8196
8197         * gst/gstbuffer.c: (gst_buffer_default_copy):
8198         * gst/gstbuffer.h:
8199         Added Comment to a flag.
8200         copy relevant flags in _buffer_copy.
8201
8202 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8203
8204         reviewed by: Wim Taymans <wim at fluendo dot com>
8205
8206         * gst/gstbuffer.h:
8207           add GST_BUFFER_IN_CAPS buffer flag
8208         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8209         (gst_structure_parse_any_list), (gst_structure_parse_list),
8210         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8211         * gst/gstvalue.c: (gst_value_serialize_any_list),
8212         (gst_value_transform_any_list_string),
8213         (gst_value_list_prepend_value), (gst_value_list_append_value),
8214         (gst_value_list_get_size), (gst_value_list_get_value),
8215         (gst_value_transform_list_string),
8216         (gst_value_transform_fixed_list_string),
8217         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8218         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8219         (_gst_value_initialize):
8220         * gst/gstvalue.h:
8221           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8222           < , > as a format.
8223         * testsuite/caps/string-conversions.c: (main):
8224           add regression tests for < >
8225
8226 2004-05-20  Johan Dahlin  <johan@gnome.org>
8227
8228         * docs/gst/Makefile.am (all-local): Re-add
8229
8230 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8231
8232         * docs/gst/Makefile.am:
8233         * docs/gst/gstreamer-docs.sgml:
8234         * docs/libs/Makefile.am:
8235         * docs/libs/gstreamer-libs-docs.sgml:
8236           fix distcheck issues
8237
8238 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8239
8240         * libs/gst/dataprotocol/Makefile.am:
8241           add to autotest
8242
8243 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8244
8245         * libs/gst/dataprotocol/Makefile.am:
8246         * libs/gst/dataprotocol/dataprotocol.c:
8247         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8248         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8249         * libs/gst/dataprotocol/dp-private.h:
8250           use GST macros to read/write fixed length ints
8251           add some more asserts
8252
8253 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8254
8255         * docs/libs/gstreamer-libs-docs.sgml:
8256         * docs/libs/gstreamer-libs-sections.txt:
8257           remove idct and putbits
8258         * configure.ac:
8259         * docs/libs/tmpl/gstdataprotocol.sgml:
8260         * libs/gst/Makefile.am:
8261         * libs/gst/dataprotocol/Makefile.am:
8262         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8263         (buffer_test), (caps_test), (event_test), (main):
8264         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8265         (gst_dp_dump_byte_array), (gst_dp_init),
8266         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8267         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8268         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8269         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8270         (gst_dp_validate_header), (gst_dp_validate_payload),
8271         (gst_dp_validate_packet), (plugin_init):
8272         * libs/gst/dataprotocol/dataprotocol.h:
8273         * libs/gst/dataprotocol/dp-private.h:
8274           add dataprotocol
8275
8276 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8277
8278         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8279           fix int variable deserialization and add a helper so we can actually
8280           debug this.
8281
8282 2004-05-18  David Schleef  <ds@schleef.org>
8283
8284         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8285           argv[0].  Calling yourself is probably not the best way to
8286           construct a test like this, btw.
8287
8288 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8289
8290         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8291           don't claim to be more intelligent than a scheduler when the
8292           scheduler claims the pipeline is stopped
8293         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8294         (safe_cothread_destroy),
8295         (gst_entry_scheduler_remove_all_cothreads),
8296         (gst_entry_scheduler_reset), (_remove_cothread),
8297         (gst_entry_scheduler_state_transition):
8298           hold off cothread destruction if we're not in main cothread
8299         * configure.ac:
8300         * testsuite/Makefile.am:
8301           add new test dir
8302         * testsuite/schedulers/.cvsignore:
8303         * testsuite/schedulers/Makefile.am:
8304           add tests
8305         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8306           check relinking and adding/removing elements from a running pipeline
8307         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8308           check unlinking in a running pipeline
8309         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8310           check unreffing a running pipeline
8311         * testsuite/schedulers/useless_iteration.c: (main):
8312           check iterating a pipeline that contains running threads works
8313
8314 2004-05-18  David Schleef  <ds@schleef.org>
8315
8316         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8317           is false.
8318
8319 2004-05-18  Wim Taymans  <wim@fluendo.com>
8320
8321         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8322         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8323         Fixed an error introduced with patch for 1.63. When setting
8324         a get based element as the entry point in a group, make sure
8325         to mark the group as GET based.
8326
8327 2004-05-18  Wim Taymans  <wim@fluendo.com>
8328
8329         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8330         (setup_group_scheduler), (loop_group_schedule_function),
8331         (gst_opt_scheduler_pad_link):
8332         Added some more debug info and fixed a bug where the group
8333         type was set to LOOP but it was in fact unknown.
8334
8335 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8336
8337         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8338           make resetting scheduler work twice in a row
8339
8340 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8341
8342         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8343         (CREATE_USERIALIZATION), (_gst_value_initialize),
8344         (gst_value_compare_float), (gst_value_serialize_float),
8345         (gst_value_deserialize_float), (gst_value_compare_enum),
8346         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8347           add serialization and comparison functions for long, int64, enum and
8348           float values
8349         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8350           use best serialization function in type hierarchy instead of only a
8351           matching one. This is required for enums to work.
8352         * gst/parse/grammar.y:
8353           use gst_caps_deserialize
8354         * testsuite/parse/Makefile.am:
8355           parse1 now works
8356         * testsuite/parse/parse1.c: (main):
8357           remove aggregator check, aggregator is broken, this test works now
8358           but fails because of bug #138012
8359         * testsuite/parse/parse2.c: (main):
8360           s/xvideosink/xvimagesink - this test looks a lot like we should
8361           disable it
8362
8363 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8364
8365         * gst/gstelement.c: (gst_element_class_init):
8366           whoops, store the signal id correctly
8367         * gst/schedulers/gstbasicscheduler.c:
8368         (gst_basic_scheduler_chain_wrapper):
8369           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8370           chain function isn't linked
8371
8372 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8373         * configure.ac:
8374         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8375         support until we decide where the flags should be used
8376         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8377         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8378         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8379         Output refused caps in the debug info
8380
8381 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8382
8383         * gst/elements/gstidentity.c: (gst_identity_chain):
8384           add duration debug
8385         * gst/gstinfo.c: (gst_debug_log_default):
8386           add timestamp
8387
8388 2004-05-13  Benjamin Otte  <otte@gnome.org>
8389
8390         * gst/gstpipeline.c: (gst_pipeline_dispose),
8391         (gst_pipeline_change_state):
8392           call gst_scheduler_reset on dispose (fixes #141416)
8393
8394 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8395
8396         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8397           compute mapsize correctly
8398         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8399           use correct datatypes when calling a varargs function
8400         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8401           push a DISCONT event as first thing
8402         * gst/gst_private.h:
8403         * gst/gstinfo.c: (_gst_debug_init):
8404           remove GST_DATAFLOW debugging category
8405         * gst/gstbin.c: (gst_bin_iterate):
8406           use GST_SCHEDULING category
8407         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8408         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8409         (gst_pad_call_get_function):
8410           add GST_DATAFLOW to easily track flow of buffers or events.
8411         * gst/gstqueue.c: (gst_queue_get_type),
8412         (gst_queue_handle_pending_events), (gst_queue_chain),
8413         (gst_queue_get), (gst_queue_handle_src_event):
8414           use own static debugging category GST_DATAFLOW for dataflow,
8415           use DEBUG category for showing which path events go, use LOG
8416           category for buffers.
8417
8418 2004-05-10  David Schleef  <ds@schleef.org>
8419
8420         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8421
8422 2004-05-10  David Schleef  <ds@schleef.org>
8423
8424         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8425         symbols, because otherwise we don't know what they are.  Thanks,
8426         the GStreamer team.
8427         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8428
8429 2004-05-10  David Schleef  <ds@schleef.org>
8430
8431         (from Steve Lhomme)
8432         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8433         are deleted.  Fix.
8434         * win32/Makefile.inspect:
8435         * win32/Makefile.launch:
8436         * win32/Makefile.register:
8437
8438 2004-05-10  David Schleef  <ds@schleef.org>
8439
8440         * gst/gstinfo.h: Add missing inline function.
8441         * gst/gsttrace.c: add include
8442         * gst/parse/grammar.y: remove unused code
8443         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8444         more portable.
8445         * tools/gst-register.c: wrap unistd.h
8446         
8447         More additions/fixes from Steve for the MSVC build.
8448         * win32/GStreamer.vcproj:
8449         * win32/Makefile:
8450         * win32/Makefile.inspect:
8451         * win32/Makefile.launch:
8452         * win32/Makefile.register:
8453         * win32/README.txt:
8454         * win32/gst-inspect.vcproj:
8455         * win32/gst-launch.vcproj:
8456         * win32/gst-register.vcproj:
8457         * win32/gstbytestream.def:
8458         * win32/gstbytestream.vcproj:
8459         * win32/gstconfig.h:
8460         * win32/gstelements.def:
8461         * win32/gstelements.vcproj:
8462         * win32/gstenumtypes.c:
8463         * win32/gstenumtypes.h:
8464         * win32/gstoptimalscheduler.def:
8465         * win32/gstoptimalscheduler.vcproj:
8466         * win32/gstreamer.def:
8467         * win32/gstspider.def:
8468         * win32/gstspider.vcproj:
8469         * win32/gstversion.h:
8470         * win32/msvc71.sln:
8471
8472 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8473
8474         * gst/gstelement.c: (gst_element_class_init),
8475         (gst_element_no_more_pads):
8476         * gst/gstelement.h:
8477           add gst_element_no_more_pads and the "no-more-pads" signal
8478
8479 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8480
8481         * gst/gstregistry.c: (gst_registry_add_plugin):
8482           refuse to add plugins when a plugin with same name is already
8483           registered. Fixes a bunch of "How to remove plugins?" issues.
8484           May lead to other problems though, let's test
8485
8486 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8487
8488         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8489         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8490         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8491
8492 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8493
8494         * tests/Makefile.am: fix am16 issue
8495
8496 2004-05-09  Benjamin Otte  <otte@gnome.org>
8497
8498         * libs/gst/bytestream/Makefile.am:
8499           we should indeed add .c files to makefiles or they won't be built
8500           (d'oh)
8501
8502 2004-05-08  Benjamin Otte  <otte@gnome.org>
8503
8504         * gst/gstpad.c: (gst_pad_proxy_fixate):
8505           really reduce the set of caps
8506
8507 2004-05-08  Benjamin Otte  <otte@gnome.org>
8508
8509         * tests/Makefile.am:
8510         * tests/spidey_bench.c: (handoff), (main):
8511           add benchmark to test how long spider needs to create a pipeline
8512
8513 2004-05-08  Benjamin Otte  <otte@gnome.org>
8514
8515         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8516           mark links as unengaged when unnegotiating instead of deactivating.
8517           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8518
8519 2004-05-08  Benjamin Otte  <otte@gnome.org>
8520
8521         * docs/manual/helloworld.xml:
8522           s/audiosink/osssink (patch by Patrick Guimond)
8523
8524 2004-05-07  David Schleef  <ds@schleef.org>
8525
8526         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8527         since it contains important stuff.
8528
8529 2004-05-07  David Schleef  <ds@schleef.org>
8530
8531         * testsuite/caps/caps.c: (test3), (main): A check for appending
8532         ANY caps.
8533
8534 2004-05-07  David Schleef  <ds@schleef.org>
8535
8536         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8537         which may contain commas.  Fixes detection of -Wa,-mregnames
8538
8539 2004-05-06  David Schleef  <ds@schleef.org>
8540
8541         Changes to handle compilers that don't have variadic macro
8542         support.  In particular, glib headers define some inlines
8543         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8544         builds.
8545         * gst/Makefile.am:
8546         * gst/cothreads.c:
8547         * gst/elements/gstfdsink.c:
8548         * gst/elements/gstfdsrc.c:
8549         * gst/elements/gstfilesink.c:
8550         * gst/elements/gstfilesrc.c:
8551         * gst/gst_private.h:
8552         * gst/gstatomic.c:
8553         * gst/gstcaps.c: (gst_caps_append):
8554         * gst/gstcpu.c: (gst_cpuid_i386):
8555         * gst/gstelement.c:
8556         * gst/gsterror.c:
8557         * gst/gstfilter.c:
8558         * gst/gstinfo.h:
8559         * gst/gstprobe.c:
8560         * gst/gstquery.c:
8561         * gst/gstregistry.c:
8562         * gst/gststructure.c:
8563         * gst/gsttaginterface.c:
8564         * gst/gsttrace.c: (gst_trace_new):
8565         * gst/gsttrashstack.c:
8566         * gst/gsturi.c:
8567         * gst/gstvalue.c:
8568         * gst/parse/grammar.y:
8569         * gst/parse/parse.l:
8570         * tools/gst-inspect.c: (main):
8571         * tools/gst-launch.c: (main):
8572         * tools/gst-xmlinspect.c: (PUT_STRING):
8573
8574 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8575
8576         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8577         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8578         * gst/elements/gstfilesrc.h:
8579           send NEW_MEDIA events correctly
8580         * gst/elements/gsttypefindelement.c: (start_typefinding),
8581         (gst_type_find_element_handle_event):
8582           restart typefinding when we get a NEW_MEDIA event
8583         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8584         (gst_bin_dispose):
8585           don't die when someone removes elements in callbacks
8586         * gst/gstelement.c: (gst_element_change_state):
8587           improve debugging
8588         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8589           we need a NEW_MEDIA event to engage a link
8590         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8591           don't g_print debugging stuff
8592         * testsuite/caps/simplify.c: (check_caps):
8593
8594 2004-05-04  Benjamin Otte  <otte@gnome.org>
8595
8596         * gst/parse/grammar.y:
8597           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8598
8599 2004-05-04  Benjamin Otte  <otte@gnome.org>
8600
8601         * testsuite/caps/renegotiate.c: (main):
8602           improve output in error case
8603
8604 2004-05-04  Benjamin Otte  <otte@gnome.org>
8605
8606         * gst/parse/grammar.y:
8607           fix assert to not trigger when there's no error argument
8608         * gst/parse/parse.l:
8609           fix definition of caps to allow more than two structures
8610         * testsuite/caps/Makefile.am:
8611         * testsuite/caps/renegotiate.c: (main):
8612           it's sinesrc and works in that case
8613
8614 2004-05-04  Wim Taymans  <wim@fluendo.com>
8615
8616         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8617         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8618         when removing an element from a group, we always need to
8619         decrement the link count that this group had with other 
8620         groups through the element.
8621         added an extra assert to catch inconsistencies when decrementing
8622         the link count.
8623
8624 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8625
8626         * configure.ac:
8627         * docs/gst/Makefile.am:
8628         * docs/gst/gstreamer-sections.txt:
8629         * docs/gst/tmpl/gstcompat.sgml:
8630         * examples/appreader/Makefile.am:
8631         * examples/cutter/Makefile.am:
8632         * examples/events/Makefile.am:
8633         * examples/helloworld/Makefile.am:
8634         * examples/helloworld2/Makefile.am:
8635         * examples/launch/Makefile.am:
8636         * examples/manual/Makefile.am:
8637         * examples/mixer/Makefile.am:
8638         * examples/pingpong/Makefile.am:
8639         * examples/plugins/Makefile.am:
8640         * examples/queue/Makefile.am:
8641         * examples/queue2/Makefile.am:
8642         * examples/queue3/Makefile.am:
8643         * examples/queue4/Makefile.am:
8644         * examples/retag/Makefile.am:
8645         * examples/thread/Makefile.am:
8646         * examples/typefind/Makefile.am:
8647         * examples/xml/Makefile.am:
8648         * gst/Makefile.am:
8649         * gst/autoplug/Makefile.am:
8650         * gst/elements/Makefile.am:
8651         * gst/gstcompat.h:
8652         * gst/indexers/Makefile.am:
8653         * gst/parse/Makefile.am:
8654         * gst/registries/Makefile.am:
8655         * gst/schedulers/Makefile.am:
8656         * libs/gst/bytestream/Makefile.am:
8657         * libs/gst/control/Makefile.am:
8658         * libs/gst/getbits/Makefile.am:
8659         * po/af.po:
8660         * po/az.po:
8661         * po/en_GB.po:
8662         * po/fr.po:
8663         * po/nl.po:
8664         * po/sr.po:
8665         * po/sv.po:
8666         * po/tr.po:
8667         * po/uk.po:
8668         * tests/Makefile.am:
8669         * tests/bufspeed/Makefile.am:
8670         * tests/instantiate/Makefile.am:
8671         * tests/memchunk/Makefile.am:
8672         * tests/muxing/Makefile.am:
8673         * tests/negotiation/Makefile.am:
8674         * tests/probes/Makefile.am:
8675         * tests/sched/Makefile.am:
8676         * tests/seeking/Makefile.am:
8677         * tests/threadstate/Makefile.am:
8678         * testsuite/caps/Makefile.am:
8679         * testsuite/cleanup/Makefile.am:
8680         * testsuite/dlopen/Makefile.am:
8681         * testsuite/dynparams/Makefile.am:
8682         * testsuite/plugin/Makefile.am:
8683         * testsuite/states/Makefile.am:
8684         * tools/Makefile.am:
8685           reorganize compile/link flags to be consistent
8686           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8687
8688 2004-05-04  David Schleef  <ds@schleef.org>
8689
8690         The "once more, with feeling" check-in.
8691         * testsuite/caps/Makefile.am: dist caps_strings
8692         * testsuite/caps/renegotiate.c: (main): This test triggers a
8693           segfault in the core.  Marking as failing.
8694
8695 2004-05-03  David Schleef  <ds@schleef.org>
8696
8697         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8698           by the build bots.
8699         * testsuite/caps/renegotiate.c: (main): Same.
8700
8701 2004-05-03  David Schleef  <ds@schleef.org>
8702
8703         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8704
8705 2004-05-03  David Schleef  <ds@schleef.org>
8706
8707         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8708           variable to find our source file.
8709
8710 2004-05-03  David Schleef  <ds@schleef.org>
8711
8712         * configure.ac:  Link plugins with libgstreamer and dependent
8713           libraries
8714         * testsuite/caps/Makefile.am:
8715         * testsuite/caps/caps_strings:
8716         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8717           through a file of caps strings and test each one
8718
8719 2004-05-04  Benjamin Otte  <otte@gnome.org>
8720
8721         * libs/gst/bytestream/Makefile.am:
8722         * libs/gst/bytestream/adapter.c: 
8723         * libs/gst/bytestream/adapter.h:
8724           add GstAdapter, similar to bytestream, but doesn't require ugly event
8725           handling or uglier loopbased elements
8726
8727 2004-05-03  David Schleef  <ds@schleef.org>
8728
8729         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8730         * testsuite/caps/erathostenes.c:
8731         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8732
8733 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8734
8735         * docs/pwg/pwg.xml:
8736           remove hardcoded stylesheet path (duh)
8737         * docs/random/release:
8738         * docs/gst/gstreamer-sections.txt:
8739         * gst/Makefile.am:
8740         * gst/gst.h:
8741         * gst/gst_private.h:
8742         * gst/gstcaps.c:
8743         * gst/gstevent.c:
8744         * gst/gstformat.c:
8745         * gst/gstinfo.c:
8746         * gst/gstinfo.h:
8747         * gst/gstinterface.c:
8748         * gst/gstmemchunk.c:
8749         * gst/gstprobe.c:
8750         * gst/gstquery.c:
8751         * gst/gstregistry.c:
8752         * gst/gstregistrypool.c:
8753         * gst/gststructure.c:
8754         * gst/gsttaginterface.c:
8755         * gst/gstthread.c:
8756         * gst/gsttrace.c:
8757         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8758         * gst/gsturi.c:
8759         * gst/gstvalue.c:
8760           deprecate gst_info; remove gstlog.h
8761    
8762
8763 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8764
8765         * Makefile.am:
8766         * po/en_GB.po:
8767         * po/sv.po:
8768         * po/uk.po:
8769           updated translations
8770
8771 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8772
8773         * gst/gstbin.c: (gst_bin_dispose):
8774           better debugging
8775
8776 2004-05-03  Johan Dahlin  <johan@gnome.org>
8777
8778         * gst/schedulers/gstoptimalscheduler.c
8779         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8780         really is a GstElement. Avoids critical when running gst-launch -v
8781         and a oggdemux/decoding pipeline.
8782
8783 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8784
8785         * docs/gst/tmpl/gstpipeline.sgml :
8786         * docs/manual/elements-api.xml :
8787                 doc fix by Patrick Guimond (Protector) from devel ML
8788                 reviewed by ronald
8789
8790 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8791
8792         * docs/gst/Makefile.am :
8793         * docs/libs/Makefile.am :
8794                 apply a patch from Arwed v. Merkatz so that gtk-doc
8795                 generated docs install (same for .devhelp file)
8796                 (fixes part 1 of #138836)
8797
8798 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8799
8800         * docs/faq/dependencies.xml: typo
8801         * docs/faq/getting.xml :
8802             - fix download URL for new gstreamer site
8803             - hide sf.net download page as latest version aren't there
8804             - fix apt URLs
8805             - fill "get via CVS" paragraph (link to dev page on the site)
8806         * docs/faq/general.xml:
8807             hide status tables as they no more exists
8808             change case on plugins license file to reflect reality
8809         * docs/faq/troubleshooting.xml:
8810             remove the wiki question/answer as there is no more wiki
8811
8812 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8813
8814         * gst/gsterror.h:
8815           include the headers needed for declarations used in this header
8816
8817 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8818
8819         * docs/random/uraeus/gstreamer_and_midi.txt :
8820           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8821           (fixes #132288)
8822
8823 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8824
8825         reviewed by Benjamin Otte  <otte@gnome.org>
8826
8827         * gst/schedulers/gthread-cothreads.h:
8828           free allocated data for main cothread, too when destroying context
8829           (fixes #141417)
8830
8831 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8832
8833         * docs/manual/goals.xml : remove duplicated paragraph at end 
8834         of doc page (fixes #141448)
8835
8836 2004-04-29  David Schleef  <ds@schleef.org>
8837
8838         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8839         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8840
8841 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8842
8843         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8844           fix property
8845         * gst/gstcaps.c:
8846           fix doc string
8847         * po/POTFILES.in:
8848           rename typefind source file
8849
8850 2004-04-28  David Schleef  <ds@schleef.org>
8851
8852         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8853         * win32/GStreamer.vcproj:
8854         * win32/Makefile:
8855         * win32/config.h:
8856         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8857         (_trewinddir), (_ttelldir), (_tseekdir):
8858         * win32/dirent.h:
8859         * win32/gst-inspect.vcproj:
8860         * win32/gst-launch.vcproj:
8861         * win32/gst-register.vcproj:
8862         * win32/gstbytestream.vcproj:
8863         * win32/gstelements.vcproj:
8864         * win32/gstoptimalscheduler.vcproj:
8865         * win32/gstspider.vcproj:
8866         * win32/gtchar.h:
8867         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8868         * win32/mman.h:
8869         * win32/mman.inl:
8870         * win32/msvc71.sln:
8871
8872 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8873
8874         * gst/gst.c: (init_post):
8875         * gst/gstinfo.c:
8876           remove useless _gst_progname stuff
8877         * tools/gst-inspect.c: (print_field), (print_caps):
8878           improve caps output
8879
8880 2004-04-28  David Schleef  <ds@schleef.org>
8881
8882         Disable parsing of a lot of files that aren't part of the
8883         exported API.  Move corresponding template files to old/,
8884         waiting for removal when they don't contain anything
8885         interesting.
8886         * docs/gst/Makefile.am:
8887         * docs/gst/gstreamer-sections.txt:
8888         * docs/gst/tmpl/cothreads.sgml:
8889         * docs/gst/tmpl/cothreads_compat.sgml:
8890         * docs/gst/tmpl/gettext.sgml:
8891         * docs/gst/tmpl/gobject2gtk.sgml:
8892         * docs/gst/tmpl/grammar.tab.sgml:
8893         * docs/gst/tmpl/gst-i18n-app.sgml:
8894         * docs/gst/tmpl/gst-i18n-lib.sgml:
8895         * docs/gst/tmpl/gst_private.sgml:
8896         * docs/gst/tmpl/gstaggregator.sgml:
8897         * docs/gst/tmpl/gstarch.sgml:
8898         * docs/gst/tmpl/gstatomic_impl.sgml:
8899         * docs/gst/tmpl/gstbufferstore.sgml:
8900         * docs/gst/tmpl/gstdata_private.sgml:
8901         * docs/gst/tmpl/gstdisksink.sgml:
8902         * docs/gst/tmpl/gstdisksrc.sgml:
8903         * docs/gst/tmpl/gstelementfactory.sgml:
8904         * docs/gst/tmpl/gstextratypes.sgml:
8905         * docs/gst/tmpl/gstfakesink.sgml:
8906         * docs/gst/tmpl/gstfakesrc.sgml:
8907         * docs/gst/tmpl/gstfdsink.sgml:
8908         * docs/gst/tmpl/gstfdsrc.sgml:
8909         * docs/gst/tmpl/gstfilesink.sgml:
8910         * docs/gst/tmpl/gstfilesrc.sgml:
8911         * docs/gst/tmpl/gsthttpsrc.sgml:
8912         * docs/gst/tmpl/gstidentity.sgml:
8913         * docs/gst/tmpl/gstindexfactory.sgml:
8914         * docs/gst/tmpl/gstmarshal.sgml:
8915         * docs/gst/tmpl/gstmd5sink.sgml:
8916         * docs/gst/tmpl/gstmultidisksrc.sgml:
8917         * docs/gst/tmpl/gstmultifilesrc.sgml:
8918         * docs/gst/tmpl/gstpadtemplate.sgml:
8919         * docs/gst/tmpl/gstpipefilter.sgml:
8920         * docs/gst/tmpl/gstschedulerfactory.sgml:
8921         * docs/gst/tmpl/gstsearchfuncs.sgml:
8922         * docs/gst/tmpl/gstshaper.sgml:
8923         * docs/gst/tmpl/gstspider.sgml:
8924         * docs/gst/tmpl/gstspideridentity.sgml:
8925         * docs/gst/tmpl/gststatistics.sgml:
8926         * docs/gst/tmpl/gsttee.sgml:
8927         * docs/gst/tmpl/gsttimecache.sgml:
8928         * docs/gst/tmpl/gsttypefind.sgml:
8929         * docs/gst/tmpl/gsttypefindfactory.sgml:
8930         * docs/gst/tmpl/gstxmlregistry.sgml:
8931         * docs/gst/tmpl/gthread-cothreads.sgml:
8932         * docs/gst/tmpl/old/cothreads.sgml:
8933         * docs/gst/tmpl/old/cothreads_compat.sgml:
8934         * docs/gst/tmpl/old/gettext.sgml:
8935         * docs/gst/tmpl/old/gobject2gtk.sgml:
8936         * docs/gst/tmpl/old/grammar.tab.sgml:
8937         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8938         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8939         * docs/gst/tmpl/old/gst_private.sgml:
8940         * docs/gst/tmpl/old/gstaggregator.sgml:
8941         * docs/gst/tmpl/old/gstarch.sgml:
8942         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8943         * docs/gst/tmpl/old/gstbufferstore.sgml:
8944         * docs/gst/tmpl/old/gstdata_private.sgml:
8945         * docs/gst/tmpl/old/gstdisksink.sgml:
8946         * docs/gst/tmpl/old/gstdisksrc.sgml:
8947         * docs/gst/tmpl/old/gstelementfactory.sgml:
8948         * docs/gst/tmpl/old/gstextratypes.sgml:
8949         * docs/gst/tmpl/old/gstfakesink.sgml:
8950         * docs/gst/tmpl/old/gstfakesrc.sgml:
8951         * docs/gst/tmpl/old/gstfdsink.sgml:
8952         * docs/gst/tmpl/old/gstfdsrc.sgml:
8953         * docs/gst/tmpl/old/gstfilesink.sgml:
8954         * docs/gst/tmpl/old/gstfilesrc.sgml:
8955         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8956         * docs/gst/tmpl/old/gstidentity.sgml:
8957         * docs/gst/tmpl/old/gstindexfactory.sgml:
8958         * docs/gst/tmpl/old/gstmarshal.sgml:
8959         * docs/gst/tmpl/old/gstmd5sink.sgml:
8960         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8961         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8962         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8963         * docs/gst/tmpl/old/gstpipefilter.sgml:
8964         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8965         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8966         * docs/gst/tmpl/old/gstshaper.sgml:
8967         * docs/gst/tmpl/old/gstspider.sgml:
8968         * docs/gst/tmpl/old/gstspideridentity.sgml:
8969         * docs/gst/tmpl/old/gststatistics.sgml:
8970         * docs/gst/tmpl/old/gsttee.sgml:
8971         * docs/gst/tmpl/old/gsttimecache.sgml:
8972         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8973         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8974         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8975         * docs/gst/tmpl/old/types.sgml:
8976         * docs/gst/tmpl/types.sgml:
8977
8978         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8979         gtkdoc-scan doesn't like files with the same name in different
8980         directories.
8981         * gst/elements/Makefile.am:
8982         * gst/elements/gstelements.c:
8983         * gst/elements/gsttypefind.c: 
8984         * gst/elements/gsttypefind.h:
8985         * gst/elements/gsttypefindelement.c:
8986         * gst/elements/gsttypefindelement.h:
8987
8988 2004-04-28  David Schleef  <ds@schleef.org>
8989
8990         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8991         patch (bug #141317):
8992         * gst/gst-i18n-lib.h: Allow disabling gettext.
8993         * gst/gstatomic_impl.h: disable warning when it's dumb.
8994         * gst/gstclock.c: fix include
8995         * gst/gstcompat.h: fix variadic macro
8996         * gst/gstinfo.c: fix include
8997         * gst/gstmacros.h: add defines for inlines on MSVC
8998         * gst/gstplugin.c: fix includes
8999         * gst/gstregistry.c: fix includes
9000         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9001         * gst/gstsystemclock.c: fix include
9002         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9003         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9004         * gst/registries/gstxmlregistry.c:
9005         (gst_xml_registry_parse_element_factory): fix use of non-portable
9006         functions
9007         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9008         * libs/gst/control/dparammanager.h: same
9009
9010 2004-04-28  David Schleef  <ds@schleef.org>
9011
9012         Move a bunch of unused files to old/ with names that are
9013         not case-insensitive-unique.  These files still contain some
9014         useful information that needs to be merged into gstbin.sgml,
9015         etc., so they shouldn't be deleted yet.
9016         * docs/gst/tmpl/GstBin.sgml:
9017         * docs/gst/tmpl/GstBuffer.sgml:
9018         * docs/gst/tmpl/GstCaps.sgml:
9019         * docs/gst/tmpl/GstClock.sgml:
9020         * docs/gst/tmpl/GstCompat.sgml:
9021         * docs/gst/tmpl/GstData.sgml:
9022         * docs/gst/tmpl/GstElement.sgml:
9023         * docs/gst/tmpl/GstEvent.sgml:
9024         * docs/gst/tmpl/GstIndex.sgml:
9025         * docs/gst/tmpl/GstStructure.sgml:
9026         * docs/gst/tmpl/GstTag.sgml:
9027         * docs/gst/tmpl/old/GstBin.sgml:
9028         * docs/gst/tmpl/old/GstBuffer.sgml:
9029         * docs/gst/tmpl/old/GstCaps.sgml:
9030         * docs/gst/tmpl/old/GstClock.sgml:
9031         * docs/gst/tmpl/old/GstCompat.sgml:
9032         * docs/gst/tmpl/old/GstData.sgml:
9033         * docs/gst/tmpl/old/GstElement.sgml:
9034         * docs/gst/tmpl/old/GstEvent.sgml:
9035         * docs/gst/tmpl/old/GstIndex.sgml:
9036         * docs/gst/tmpl/old/GstStructure.sgml:
9037         * docs/gst/tmpl/old/GstTag.sgml:
9038
9039 2004-04-28  David Schleef  <ds@schleef.org>
9040
9041         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9042         (gst_caps_append), (gst_caps_append_structure),
9043         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9044         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9045         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9046         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9047         (gst_caps_intersect), (gst_caps_normalize),
9048         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9049         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9050         * gst/gstcaps.h: use GST_IS_CAPS().
9051
9052 2004-04-26  David Schleef  <ds@schleef.org>
9053
9054         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9055         assembly.  gcc doesn't handle it correctly. (bug #141083)
9056         * gst/gsttrashstack.h: same
9057
9058 2004-04-25  Benjamin Otte  <otte@gnome.org>
9059
9060         * gst/gstelement.c: (gst_element_change_state):
9061           fix assertion to do an int comparison
9062
9063 2004-04-25  Benjamin Otte  <otte@gnome.org>
9064
9065         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9066           better debugging output on error
9067
9068 2004-04-25  Benjamin Otte  <otte@gnome.org>
9069
9070         * gst/gstcaps.c: (gst_caps_subtract):
9071           fix memleak
9072
9073 2004-04-23  Benjamin Otte  <otte@gnome.org>
9074
9075         * gst/gstvalue.c: (gst_value_compare_buffer),
9076         (_gst_value_initialize):
9077           add comparison function for buffers
9078
9079 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9080
9081         * docs/pwg/pwg.xml:
9082           Just found out that this so-called "ima-wav" format is really
9083           just "dvi adpcm" (according to the MS WAV documentation). So
9084           renaming it. We didn't use it yet anyway.
9085
9086 2004-04-23  Benjamin Otte  <otte@gnome.org>
9087
9088         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9089           call gst_caps_is_subset
9090
9091 2004-04-23  Benjamin Otte  <otte@gnome.org>
9092
9093         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9094         (gst_caps_is_subset):
9095           add documentation
9096
9097 2004-04-23  Benjamin Otte  <otte@gnome.org>
9098           
9099         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9100         (gst_caps_structure_subtract), (gst_caps_subtract),
9101         (gst_caps_structure_figure_out_union),
9102         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9103           fix simplifying and subtracting not working correctly with optional
9104           properties
9105           solve assorted problems that make it now simplify ebven more
9106         * docs/gst/tmpl/gstcaps.sgml:
9107         * gst/gstcaps.h:
9108           make gst_caps_do_simplify return a bool to indicate if it simplified
9109         * testsuite/caps/simplify.c: (main):
9110           add more checks. The tests is quite a bit useless right now because
9111           the core is heavily simplifying itself.
9112         * testsuite/caps/caps.h:
9113           fix caps to contain all optional properties
9114
9115 2004-04-22  Benjamin Otte  <otte@gnome.org>
9116
9117         * docs/gst/tmpl/gstcaps.sgml:
9118         * docs/gst/tmpl/gstfilesrc.sgml:
9119         * docs/gst/tmpl/gststructure.sgml:
9120         * docs/gst/tmpl/gstvalue.sgml:
9121           update for recent API changes
9122         * gst/gstcaps.c: (gst_caps_do_simplify):
9123           fix to stop trying with a freed structure
9124         * gst/gstpad.c: (gst_pad_link_fixate):
9125           simplify caps
9126         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9127           remove C++ comment
9128         * gst/gstpad.h:
9129           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9130         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9131         (gst_structure_to_string):
9132           keep the correct type when using lists of ranges
9133         * gst/gstvalue.c: (gst_value_list_prepend_value),
9134         (gst_value_list_append_value):
9135           copy the value before adding to the list (d'oh)
9136         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9137         (gst_value_subtract_int_range_int_range):
9138           handle overflows correctly
9139         * gst/gstvalue.c: (gst_value_subtract_from_list):
9140           fix memleak
9141         * testsuite/caps/caps.h:
9142           add a caps that caused segfaults
9143
9144 2004-04-22  Benjamin Otte  <otte@gnome.org>
9145
9146         * testsuite/refcounting/pad.c: (main):
9147           fix test
9148
9149 2004-04-22  Benjamin Otte  <otte@gnome.org>
9150
9151         * gst/gstcaps.c: (gst_caps_subtract):
9152           allow subtracting ANY and EMPTY from ANY caps
9153
9154 2004-04-22  Benjamin Otte  <otte@gnome.org>
9155
9156         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9157         (gst_caps_union):
9158           only simplify in functions that create new caps. Simplifying in
9159           gst_caps_append breaks tests.
9160
9161 2004-04-22  Benjamin Otte  <otte@gnome.org>
9162
9163         * gst/gstcaps.c: (gst_caps_structure_simplify):
9164           unset GValue after use
9165         * gst/gstcaps.c: (gst_caps_append), 
9166         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9167           use gst_caps_simplify (reduces registry size by 30%)
9168         * gst/gstpad.c: (gst_pad_template_new):
9169           don't allow NULL caps
9170
9171 2004-04-22  Benjamin Otte  <otte@gnome.org>
9172
9173         * docs/gst/gstreamer-sections.txt:
9174           add gst_caps_do_simplify
9175         * gst/gstcaps.c:
9176           add documentation for gst_caps_do_simplify
9177         * gst/gstvalue.h:
9178           fix typo in gst_value_register_subtract_func declaration for gst-doc
9179
9180 2004-04-22  Benjamin Otte  <otte@gnome.org>
9181
9182         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9183           fix bug when converting from empty string.
9184         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9185         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9186           use gst_caps_new_empty to allocate a new caps. Only that function
9187           allocates memory for caps now.
9188         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9189         (gst_caps_remove_structure):
9190           add ability to remove one structure (but not to header yet)
9191         * gst/gstcaps.c: (gst_caps_compare_structures),
9192         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9193         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9194         * gst/gstcaps.h:
9195           add gst_caps_do_simplify that tries to simplify a caps in place.
9196           Deprecate old gst_caps_simplify function.
9197         * testsuite/caps/caps.h:
9198           add caps.h containing a common set of caps to test against.
9199         * testsuite/caps/sets.c: (check_caps), (main):
9200           use it.
9201         * testsuite/caps/.cvsignore:
9202         * testsuite/caps/Makefile.am:
9203         * testsuite/caps/simplify.c: (check_caps), (main):
9204           add test to check correctness and efficency of caps simplification.
9205
9206 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9207
9208         reviewed by Benjamin Otte  <otte@gnome.org>
9209
9210         * gst/gstparse.c: (_gst_parse_escape):
9211           Free the GString used in _gst_parse_escape()
9212
9213 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9214
9215         * gst/gstpad.c: (gst_pad_link_negotiate):
9216           refuse to link if the link is not possible
9217         * configure.ac:
9218         * testsuite/Makefile.am:
9219         * testsuite/negotiation/.cvsignore:
9220         * testsuite/negotiation/Makefile.am:
9221         * testsuite/negotiation/pad_link.c: (main):
9222           add test that checks the above behaviour
9223
9224 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9225
9226         * docs/gst/gstreamer-sections.txt:
9227           add newly added API
9228
9229 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9230
9231         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9232         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9233         (gst_filesrc_open_file), (gst_filesrc_close_file),
9234         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9235         * gst/elements/gstfilesrc.h:
9236           add support for non-regular files (#140734)
9237
9238 2004-04-21  Benjamin Otte  <otte@gnome.org>
9239
9240         * gst/gstpad.c: (gst_pad_link_fixate):
9241           add sophisticated error checking code to see if fixation functions
9242           did their fixation right
9243
9244 2004-04-21  Benjamin Otte  <otte@gnome.org>
9245
9246         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9247           check for ANY caps before appending/unioning
9248         * gst/gstcaps.c: (gst_caps_is_subset),
9249         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9250         (gst_caps_structure_subtract), (gst_caps_subtract):
9251         * gst/gstcaps.h:
9252           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9253           the API. deprecate gst_caps_is_equal_fixed
9254         * gst/gstpad.c: (gst_pad_try_set_caps):
9255         * gst/gstqueue.c: (gst_queue_link):
9256           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9257         * gst/gststructure.c: (gst_structure_get_name_id):
9258         * gst/gststructure.h:
9259           add function gst_structure_get_name_id
9260         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9261         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9262         (gst_value_subtract_int_range_int_range),
9263         (gst_value_subtract_double_double_range),
9264         (gst_value_subtract_double_range_double),
9265         (gst_value_subtract_double_range_double_range),
9266         (gst_value_subtract_from_list), (gst_value_subtract_list),
9267         (gst_value_can_intersect), (gst_value_subtract),
9268         (gst_value_can_subtract), (gst_value_register_subtract_func),
9269         (_gst_value_initialize):
9270         * gst/gstvalue.h:
9271           add support for subtracting values from each other. Note that
9272           subtracting means subtracting as in set theory. Required for caps
9273           stuff above.
9274         * testsuite/caps/.cvsignore:
9275         * testsuite/caps/Makefile.am:
9276         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9277         * testsuite/caps/sets.c: (check_caps), (main):
9278         * testsuite/caps/subtract.c: (check_caps), (main):
9279           add tests for subtraction and equality code.
9280
9281 2004-04-20  David Schleef  <ds@schleef.org>
9282
9283         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9284         * gst/indexers/Makefile.am:
9285         * gst/schedulers/Makefile.am:
9286         * libs/gst/bytestream/Makefile.am:
9287         * libs/gst/control/Makefile.am:
9288         * libs/gst/getbits/Makefile.am:
9289
9290 2004-04-20  David Schleef  <ds@schleef.org>
9291
9292         * common/as-libtool.mak: Fine-tune DLL building.
9293         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9294         (like gst-plugins)
9295         * examples/plugins/Makefile.am: remove plugindir
9296         * gst/autoplug/Makefile.am: DLL building fixes
9297         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9298         Windows.
9299         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9300         * gst/indexers/Makefile.am: DLL building fixes
9301         * gst/schedulers/Makefile.am: DLL building fixes.
9302         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9303         * libs/gst/control/Makefile.am: same
9304         * libs/gst/getbits/Makefile.am: same
9305         * testsuite/Makefile.am: New dlopen directory
9306         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9307         when dlopened.
9308         * testsuite/dlopen/dlopen_gst.c: (main): same
9309         * testsuite/dlopen/loadgst.c: (do_test): same
9310
9311 2004-04-20  David Schleef  <ds@schleef.org>
9312
9313         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9314         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9315
9316 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9317
9318         * gst/gstelement.c: (gst_element_wait),
9319         (gst_element_set_time_delay), (gst_element_change_state):
9320           Use GST_TIME_*
9321
9322 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9323
9324         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9325         (gst_spider_identity_plug):
9326           improve debugging messages
9327         * gst/gstbin.c: (gst_bin_remove_func):
9328           make sure the state_change function is only called with simple state
9329           transitions
9330
9331 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9332
9333         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9334         (gst_fakesink_set_property), (gst_fakesink_chain):
9335         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9336         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9337         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9338         * gst/elements/gstidentity.c: (gst_identity_chain),
9339         (gst_identity_set_property):
9340         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9341         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9342           add warnings to _set_property for unknown arguments
9343           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9344
9345 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9346
9347         * Makefile.am:
9348         * docs/manuals.mak:
9349           add .po file download snippet
9350           fix a bug in the doc makefile
9351
9352 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9353
9354         * Makefile.am:
9355         * po/LINGUAS:
9356         * po/en_GB.po:
9357           Added en_GB translation (Gareth Owen)
9358
9359 2004-04-20  Johan Dahlin  <johan@gnome.org>
9360
9361         * gst/gstpad.c (_invent_event): Clean up
9362
9363 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9364
9365         * testsuite/caps/filtercaps.c: (main):
9366           fix test to test things correctly (caps are complicated)
9367
9368 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9369
9370         * testsuite/caps/Makefile.am:
9371         * testsuite/caps/filtercaps.c: (main):
9372           add test (that doesn't work right now, but should)
9373
9374 2004-04-19  David Schleef  <ds@schleef.org>
9375
9376         * configure.ac: Add test for allowing unaligned access.  Add define
9377         to put in gstconfig.h.
9378         * docs/gst/gstreamer-sections.txt: New symbols
9379         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9380         * docs/gst/tmpl/gstfilesrc.sgml:
9381         * docs/gst/tmpl/gstparse.sgml:
9382         * docs/gst/tmpl/gsttypes.sgml:
9383         * docs/gst/tmpl/gstutils.sgml:
9384         * docs/gst/tmpl/gstvalue.sgml:
9385         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9386         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9387         on most !i386/!powerpc architectures.  From Daniel Gazard
9388         <daniel.gazard@free.fr>.  (bug #140156)
9389         * po/af.po: Check in changes made by gettext.
9390         * po/az.po:
9391         * po/fr.po:
9392         * po/nl.po:
9393         * po/sr.po:
9394         * po/sv.po:
9395
9396 2004-04-20  Benjamin Otte  <otte@gnome.org>
9397
9398         * gst/schedulers/entryscheduler.c: 
9399         (gst_entry_scheduler_yield):
9400           refuse to yield when decoupled elements insist on doing that.
9401           At least it's better than crashing
9402
9403 2004-04-19  David Schleef  <ds@schleef.org>
9404
9405         * docs/libs/Makefile.am: Change sinclude to include
9406         * docs/gst/Makefile.am: same
9407         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9408
9409 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9410
9411         * po/LINGUAS:
9412         * po/uk.po:
9413           Added Ukrainian translation (Maxim V. Dziumanenko)
9414
9415 2004-04-19  Johan Dahlin  <johan@gnome.org>
9416
9417         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9418         checking here, do it before calling the function.
9419         Clean up, use for loops instead of while loops while iterating
9420         over lists.
9421
9422         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9423         in debug message.
9424         (gst_spider_create_and_plug): Improve debug message.
9425         General: Replace while loops which iterates over GLists with for
9426         loops. Which are much cleaner, improves readability, especially
9427         for gst_spider_identity_plug
9428
9429         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9430         fixes bug 140477
9431
9432 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9433
9434         * po/LINGUAS:
9435         * po/tr.po:
9436           Added Turkish translation (Baris Cicek)
9437
9438 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9439
9440         * docs/faq/troubleshooting.xml:
9441           Mention gst-register in the FAQ (fixes 139045).
9442
9443 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9444
9445         * docs/gst/gstreamer-sections.txt:
9446
9447 2004-04-17  Benjamin Otte  <otte@gnome.org>
9448
9449         * gst/gstelement.c: (gst_element_dispose):
9450           simplify
9451         * gst/gstpad.c: (gst_pad_call_chain_function):
9452           don't create loads of events due to bad macro usage
9453
9454 2004-04-16  David Schleef  <ds@schleef.org>
9455
9456         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9457         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9458         * gst/gstvalue.c: (gst_value_serialize_buffer),
9459         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9460         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9461         to indicate types that are fixed wrt caps or not.  Switching to
9462         this function fixes (bug #140298).
9463         * gst/gstvalue.h:
9464
9465 2004-04-16  David Schleef  <ds@schleef.org>
9466
9467         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9468         for GST_UNALIGNED_ACESS, since we essentially know which archs
9469         are ok.
9470
9471 2004-04-17  Benjamin Otte  <otte@gnome.org>
9472
9473         * docs/gst/Makefile.am:
9474           ignore gst/parse directory when building docs (fixes #140205)
9475
9476 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9477
9478         * testsuite/refcounting/mem.c: (vmsize):
9479           do error checking
9480
9481 2004-04-16  Johan Dahlin  <johan@gnome.org>
9482
9483         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9484         and gst_pad_call_get_function.
9485
9486 2004-04-15  David Schleef  <ds@schleef.org>
9487
9488         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9489         checks if we can access unaligned memory.
9490         * configure.ac: Use it.
9491
9492 2004-04-16  Benjamin Otte  <otte@gnome.org>
9493
9494         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9495         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9496         * gst/elements/gstfilesrc.h:
9497           s/seek_happened/need_discont/ and require discont before sending any
9498           data
9499
9500 2004-04-15  David Schleef  <ds@schleef.org>
9501
9502         * gst/gstvalue.c: (gst_value_serialize_buffer),
9503         (gst_value_deserialize_buffer), (_gst_value_initialize):
9504         Register these types as fundamental types. (bug #140015)
9505
9506 2004-04-16  Benjamin Otte  <otte@gnome.org>
9507
9508         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9509         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9510         (gst_pad_pull):
9511           implement enforcing discont events before buffers are passed. This
9512           allows state changes of only some elements and later correctly going
9513           on where they left off (or in short: you can now set audio sinks to
9514           NULL to release the device when the pipeline is paused)
9515         * gst/gstpad.c: (gst_pad_call_chain_function),
9516         (gst_pad_call_get_function):
9517         * gst/gstpad.h:
9518           add gst_pad_call_chain_function and gst_pad_call_get_function for
9519           scheduler interaction. They are required because of the changes
9520           above.
9521         * gst/schedulers/entryscheduler.c: (get_buffer),
9522         (gst_entry_scheduler_chain_wrapper),
9523         (gst_entry_scheduler_get_wrapper),
9524         (gst_entry_scheduler_state_transition),
9525         (gst_entry_scheduler_pad_link):
9526         * gst/schedulers/gstbasicscheduler.c:
9527         (gst_basic_scheduler_chain_wrapper),
9528         (gst_basic_scheduler_src_wrapper),
9529         (gst_basic_scheduler_chainhandler_proxy),
9530         (gst_basic_scheduler_gethandler_proxy),
9531         (gst_basic_scheduler_cothreaded_chain),
9532         (gst_basic_scheduler_chain_elements):
9533         * gst/schedulers/gstoptimalscheduler.c:
9534         (get_group_schedule_function), (pad_clear_queued),
9535         (gst_opt_scheduler_pad_link):
9536           use the new functions instead of calling get/chain-functions
9537           directly.
9538
9539 2004-04-15  David Schleef  <ds@schleef.org>
9540
9541         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9542         * docs/gst/tmpl/gstinfo.sgml: same
9543         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9544         gtk-doc put here.
9545         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9546         * examples/queue/queue.c: (main):  We iterate pipelines, not
9547         bins.  (bug #139996)
9548
9549 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9550
9551         * docs/pwg/advanced-types.xml:
9552           Add MS RLE support. Also document Qt RLE although I have no sample
9553           files for that yet. And document an extra property for ADPCM.
9554
9555 2004-04-15  David Schleef  <ds@schleef.org>
9556
9557         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9558         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9559         Windows.
9560
9561 2004-04-15  David Schleef  <ds@schleef.org>
9562
9563         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9564         symbol names to not conflict with new gstinfo.h symbols.
9565         * gst/gstinfo.h: Add inline functions for all those crazy
9566         compilers that don't know how to handle variadic macros (MSVC).
9567
9568 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9569
9570         * configure.ac: bump nano to 1
9571
9572 === release 0.8.1 ===
9573
9574 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9575
9576         * NEWS:
9577         * RELEASE:
9578         * configure.ac:
9579           releasing 0.8.1, "Snow Brigade"
9580
9581 2004-04-14  David Schleef  <ds@schleef.org>
9582
9583         * testsuite/Makefile.am: define tests_ignore
9584         * testsuite/Rules: Added new tests_ignore, which get compiled,
9585         but not run (generally because they're inconsistent or have
9586         heisenbugs).  Now we can ensure all the .c files compile in
9587         testsuite/.
9588         * testsuite/bins/Makefile.am: define tests_ignore
9589         * testsuite/bytestream/Makefile.am:
9590         * testsuite/caps/Makefile.am:
9591         * testsuite/clock/Makefile.am:
9592         * testsuite/debug/Makefile.am:
9593         * testsuite/debug/global.c: (gst_debug_log_one),
9594         (gst_debug_log_two): Fix compilation problem.
9595         * testsuite/dynparams/Makefile.am:
9596         * testsuite/elements/Makefile.am:
9597         * testsuite/ghostpads/Makefile.am:
9598         * testsuite/indexers/Makefile.am:
9599         * testsuite/parse/Makefile.am:
9600         * testsuite/plugin/Makefile.am:
9601         * testsuite/refcounting/Makefile.am:
9602         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9603         results, because it's not calculated correctly.
9604         * testsuite/refcounting/pad.c: (main): same
9605         * testsuite/states/Makefile.am:
9606         * testsuite/tags/Makefile.am:
9607         * testsuite/threads/Makefile.am:
9608
9609 2004-04-14  David Schleef  <ds@schleef.org>
9610
9611         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9612         generating bad code around the cpu detection asm code.
9613
9614 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9615
9616         * tools/gst-inspect.c: (print_element_info):
9617           print numeric version of rank as well, since we added some - 1
9618           rank values to elements
9619
9620 2004-04-13  David Schleef  <ds@schleef.org>
9621
9622         * configure.ac:  Disable various code when compiling for MinGW.
9623         * gst/elements/Makefile.am:
9624         * gst/elements/gstelements.c:
9625         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9626         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9627         * gst/registries/gstxmlregistry.c: (make_dir):
9628
9629 2004-04-13  David Schleef  <ds@schleef.org>
9630
9631         * gst/Makefile.am:
9632         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9633         assembly.
9634         * gst/gstcpuid_i386.s: remove
9635
9636 2004-04-13  David Schleef  <ds@schleef.org>
9637
9638         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9639         seems to think it needs to be done.
9640         * docs/gst/tmpl/gstfakesink.sgml:
9641         * docs/gst/tmpl/gstfakesrc.sgml:
9642         * docs/gst/tmpl/gstfdsink.sgml:
9643         * docs/gst/tmpl/gstfdsrc.sgml:
9644         * docs/gst/tmpl/gstfilesink.sgml:
9645         * docs/gst/tmpl/gstfilesrc.sgml:
9646         * docs/gst/tmpl/gstidentity.sgml:
9647         * docs/gst/tmpl/gstmd5sink.sgml:
9648         * docs/gst/tmpl/gstmultifilesrc.sgml:
9649         * docs/gst/tmpl/gstpipefilter.sgml:
9650         * docs/gst/tmpl/gstshaper.sgml:
9651         * docs/gst/tmpl/gstspider.sgml:
9652         * docs/gst/tmpl/gstspideridentity.sgml:
9653         * docs/gst/tmpl/gststatistics.sgml:
9654         * docs/gst/tmpl/gsttee.sgml:
9655         * docs/gst/tmpl/gsttypefind.sgml:
9656         * docs/gst/tmpl/gstutils.sgml:
9657
9658 2004-04-13  David Schleef  <ds@schleef.org>
9659
9660         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9661         and to build DLLs on Windows.
9662         * gst/Makefile.am:
9663         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9664         (gst_filesrc_open_file):
9665         * gst/schedulers/Makefile.am:
9666
9667 2004-04-13  David Schleef  <ds@schleef.org>
9668
9669         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9670         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9671         fixating lists.
9672
9673 2004-04-12  David Schleef  <ds@schleef.org>
9674
9675         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9676         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9677         to using it.
9678         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9679         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9680         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9681         * gst/gststructure.c: (gst_structure_set_valist),
9682         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9683         support for buffers.
9684         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9685         intended to be const.
9686         * gst/gsttag.h: same
9687         * gst/gstvalue.c: (gst_value_serialize_buffer),
9688         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9689         to (de)serialize buffers.
9690         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9691         * testsuite/caps/string-conversions.c: (main):
9692         * testsuite/caps/value_serialize.c: add new test
9693
9694 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9695
9696         * docs/pwg/advanced-types.xml:
9697           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9698
9699 2004-04-11  Benjamin Otte  <otte@gnome.org>
9700
9701         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9702           rename categories to basic_*
9703         * gst/schedulers/gstbasicscheduler.c: 
9704         (gst_basic_scheduler_chain_wrapper),
9705         (gst_basic_scheduler_chainhandler_proxy),
9706         (gst_basic_scheduler_gethandler_proxy),
9707         (gst_basic_scheduler_eventhandler_proxy):
9708           debugging category fixes - put common stuff in log category
9709         * gst/schedulers/gstbasicscheduler.c: 
9710         (gst_basic_scheduler_chain_elements):
9711           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9712           active and linking two active chains
9713
9714 2004-04-10  Benjamin Otte  <otte@gnome.org>
9715
9716         * docs/pwg/intro-preface.xml:
9717           fix dead links and remove reference to Wiki
9718
9719 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9720
9721         * gst/schedulers/gstbasicscheduler.c:
9722           make sure we can switch back to the main function if we're still in
9723           the main function (supposed to fix #139617)
9724         * gst/schedulers/gthread-cothreads.h:
9725           don't throw an error when switching to the same cothread
9726
9727 2004-04-09  Benjamin Otte  <otte@gnome.org>
9728
9729         * gst/gstbin.c: (gst_bin_get_type):
9730         * gst/gstclock.c: (gst_clock_get_type):
9731         * gst/gstindex.c: (gst_index_get_type):
9732         * gst/gstobject.c: (gst_object_get_type),
9733         (gst_signal_object_get_type):
9734         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9735         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9736         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9737         * gst/gstqueue.c: (gst_queue_get_type):
9738         * gst/gstregistry.c: (gst_registry_get_type):
9739         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9740         * gst/gstthread.c: (gst_thread_get_type):
9741           don't use memchunks for these objects, use malloc instead
9742
9743 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9744
9745         * docs/gst/.cvsignore:
9746         * docs/gst/Makefile.am:
9747         * docs/gst/gstreamer-sections.txt:
9748         * docs/gst/tmpl/gstaggregator.sgml:
9749         * docs/gst/tmpl/gstbuffer.sgml:
9750         * docs/gst/tmpl/gstclock.sgml:
9751         * docs/gst/tmpl/gstelement.sgml:
9752         * docs/gst/tmpl/gstfakesink.sgml:
9753         * docs/gst/tmpl/gstfakesrc.sgml:
9754         * docs/gst/tmpl/gstfdsink.sgml:
9755         * docs/gst/tmpl/gstfdsrc.sgml:
9756         * docs/gst/tmpl/gstfilesink.sgml:
9757         * docs/gst/tmpl/gstfilesrc.sgml:
9758         * docs/gst/tmpl/gstidentity.sgml:
9759         * docs/gst/tmpl/gstindex.sgml:
9760         * docs/gst/tmpl/gstinfo.sgml:
9761         * docs/gst/tmpl/gstmd5sink.sgml:
9762         * docs/gst/tmpl/gstmultifilesrc.sgml:
9763         * docs/gst/tmpl/gstpad.sgml:
9764         * docs/gst/tmpl/gstpipefilter.sgml:
9765         * docs/gst/tmpl/gstpipeline.sgml:
9766         * docs/gst/tmpl/gstpluginfeature.sgml:
9767         * docs/gst/tmpl/gstqueue.sgml:
9768         * docs/gst/tmpl/gstregistry.sgml:
9769         * docs/gst/tmpl/gstscheduler.sgml:
9770         * docs/gst/tmpl/gstshaper.sgml:
9771         * docs/gst/tmpl/gstspider.sgml:
9772         * docs/gst/tmpl/gstspideridentity.sgml:
9773         * docs/gst/tmpl/gststatistics.sgml:
9774         * docs/gst/tmpl/gstsystemclock.sgml:
9775         * docs/gst/tmpl/gsttee.sgml:
9776         * docs/gst/tmpl/gstthread.sgml:
9777         * docs/gst/tmpl/gsttypefind.sgml:
9778         * docs/gst/tmpl/gstutils.sgml:
9779           further doc build fixes
9780
9781 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9782
9783         * docs/gst/Makefile.am:
9784           make docs exit on scanning problems
9785           fix nonsrcdir build issues
9786         * docs/gst/gstreamer-sections.txt:
9787           adding stuff from -unused
9788         * gst/gstqueue.h:
9789           create GstQueueSize
9790         * gst/schedulers/cothreads_compat.h:
9791           fix cothread warnings
9792
9793 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9794
9795         * docs/gst/gstreamer-sections.txt:
9796           remove defines deprecated by Benjamin
9797
9798 2004-04-07  Benjamin Otte  <otte@gnome.org>
9799
9800         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9801           when the buffer is complete, don't check if other buffers are needed
9802         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9803           check that the offset is >0 so we don't try to read before the
9804           beginning of the file
9805         * gst/gstpad.c: (gst_pad_set_pad_template):
9806           sink the template, so we don't end up with 130k pad templates
9807
9808 2004-04-06  Benjamin Otte  <otte@gnome.org>
9809
9810         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9811           don't ref the element, adding already reffed it. And we didn't unref
9812           it later anyway... (huge memleak when you used many spider elements)
9813         * gst/gstelement.c: (gst_element_base_class_finalize):
9814         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9815         (gst_element_register):
9816         * gst/gsturi.c: (gst_element_make_from_uri):
9817           use gst_object_(un)ref instead of g_object(un)ref
9818
9819 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9820
9821         * gst/gstbuffer.h:
9822           remove macro that wouldn't work anymore because struct member has
9823           been removed.
9824         * gst/schedulers/entryscheduler.c: (schedule_forward):
9825           fix segfault for unconnected pads
9826         
9827 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9828
9829         reviewed by David Schleef <ds@schleef.org>
9830
9831         * gst/gstinfo.h:
9832           *_FORMAT modifiers should require putting a % in front of them for
9833           consistency reasons.
9834
9835 2004-04-05  Colin Walters  <walters@redhat.com>
9836
9837         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9838         space.
9839
9840 2004-04-05  Benjamin Otte  <otte@gnome.org>
9841
9842         * configure.ac:
9843         * gst/Makefile.am:
9844         * gst/gst_private.h:
9845         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9846           add support for detecting if GStreamer runs inside valgrind.
9847           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9848           print a big message in valgrind that GStreamer has detected it's
9849           running inside and might now use different code.
9850         * gst/gstmemchunk.c: (populate), (free_area),
9851         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9852         (gst_mem_chunk_free):
9853           flag memchunks for valgrind, so it can detect leaking of chunks.
9854           This allows detecting leaks of GstBuffer and GstEvent correctly
9855           inside valgrind.
9856
9857 2004-04-05  David Schleef  <ds@schleef.org>
9858
9859         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9860           jensgr@gmx.net (Jens Granseuer)
9861
9862 2004-04-05  David Schleef  <ds@schleef.org>
9863
9864         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9865         (gst_buffer_default_free), (gst_buffer_default_copy),
9866         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9867         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9868         structures in one place.
9869
9870 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9871
9872         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9873           (GST_TIME_FORMAT, GST_TIME_ARGS)
9874
9875 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9876
9877         * testsuite/elements/Makefile.am:
9878           disable test until it stops breaking make distcheck
9879
9880 2004-04-05  Johan Dahlin  <johan@gnome.org>
9881
9882         * po/sv.po: Updated translation
9883
9884 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9885
9886         * gst/gstplugin.c: (gst_plugin_load_file):
9887           fix segfault for when original plugin was loaded statically
9888
9889 2004-04-05  Benjamin Otte  <otte@gnome.org>
9890
9891         * testsuite/debug/category.c: (main):
9892         * testsuite/debug/commandline.c: (main):
9893         * testsuite/debug/output.c: (main):
9894           fix tests to work again with debugging enabled
9895
9896 2004-04-05  Benjamin Otte  <otte@gnome.org>
9897
9898         * gst/schedulers/gstbasicscheduler.c:
9899         (gst_basic_scheduler_pad_link):
9900           fix to work with recent scheduling changes
9901
9902 2004-04-05  Benjamin Otte  <otte@gnome.org>
9903
9904         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9905         prepareChangeLog doesn't work when cvs indents):
9906           don't throw an error when no element can be scheduled, there's too
9907           many weird reasons why it doesn't work. Return STOPPED instead.
9908           decoupled elemts' schedulability doesn't depend on bufpens.
9909
9910 2004-04-04  Benjamin Otte  <otte@gnome.org>
9911
9912         * gst/schedulers/gstbasicscheduler.c:
9913         (gst_basic_scheduler_pad_select):
9914           fix uninitialized variable warnings
9915
9916 2004-04-04  Benjamin Otte  <otte@gnome.org>
9917
9918         * gst/gstpad.c: (gst_pad_collect_valist):
9919           fix uninitialized variable warning
9920         * gst/schedulers/entryscheduler.c: (schedule_forward):
9921           fix shadowed variable
9922
9923 2004-04-04  Benjamin Otte  <otte@gnome.org>
9924
9925         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9926         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9927         (gst_pad_select):
9928         * gst/gstpad.h:
9929         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9930         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9931         * gst/gstscheduler.h:
9932           implement gst_pad_collect as replacement for gst_pad_select.
9933           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9934           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9935           new pad_select, lock and unlock calls.
9936         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9937         * gst/cothreads.h:
9938         * gst/schedulers/cothreads_compat.h:
9939         * gst/schedulers/gthread-cothreads.h:
9940           remove unused cothread_lock and cothread_unlock calls
9941         * gst/schedulers/entryscheduler.c:
9942         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9943         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9944         (gst_entry_scheduler_pad_select):
9945           update to new API
9946         * gst/schedulers/gstbasicscheduler.c:
9947         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9948         (gst_basic_scheduler_pad_select):
9949           remove useless lock and unlock calls, update pad_select to new API
9950           (untested)
9951         * gst/schedulers/gstoptimalscheduler.c:
9952         (gst_opt_scheduler_class_init):
9953           remove useless select, lock and unlock function calls
9954         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9955           use gst_pad_collect instead of gst_pad_select
9956
9957 2004-04-04  Benjamin Otte  <otte@gnome.org>
9958
9959         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9960         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9961         (schedule_next_element), (print_entry):
9962           add can_schedule_pad to handle element states.
9963           add schedule_forward to select the correct entry to schedule next
9964
9965 2004-04-03  Benjamin Otte  <otte@gnome.org>
9966
9967         * gst/schedulers/entryscheduler.c: 
9968           remove unused variable, fix error inside Rb, fix compile warning in
9969           unreachable code
9970
9971 2004-04-03  Benjamin Otte  <otte@gnome.org>
9972
9973         * gst/schedulers/entryscheduler.c:
9974           completely revamp the inner workings, so it's a lot easier to
9975           understand and extend
9976
9977 2004-04-03  Andy Wingo  <wingo@pobox.com>
9978
9979         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9980         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9981         This allows better introspection of pipeline topology.
9982         (add_to_chain): Don't do trickery to put loop elements first;
9983         rather, queue a chain sort by marking the chain as dirty.
9984         (remove_from_chain): Mark the chain dirty.
9985         (sort_chain): New function. Sorts the group list so that terminal
9986         sinks are first. This means elements on the sink side will be
9987         preferentially sscheduled before elements on the src side of the
9988         pipeline.
9989         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9990         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9991         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9992         (group_inc_link): Change argument and variable names to match the
9993         new link structure member names (src and sink).
9994         (group_dec_link): Add some description
9995
9996 2004-04-03  Benjamin Otte  <otte@gnome.org>
9997
9998         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9999         * gst/gstinfo.h:
10000         * testsuite/debug/category.c: (main):
10001         * testsuite/debug/commandline.c: (main):
10002         * testsuite/debug/output.c: (main):
10003         * testsuite/debug/printf_extension.c: (main):
10004           fix to successfully build and test with --disable-gst-debug
10005           configure switch (fixes #138705)
10006
10007 2004-04-03  Benjamin Otte  <otte@gnome.org>
10008
10009         * docs/pwg/building-boiler.xml:
10010           add cvs login line and s/anonymous/anoncvs/
10011
10012 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10013
10014         reviewed by Benjamin Otte  <otte@gnome.org>
10015
10016         * gst/gststructure.c: (gst_structure_free):
10017           memleak fix: free fields array (partial fix for #134839)
10018
10019 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10020
10021         * docs/random/ds/0.9-suggested-changes:
10022           Add a note to change handoff use in fakesrc to be usable in
10023           a more generic way (fakesrc should be renamed to appsrc or so).
10024         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10025           Change signal type to scope, so we can fill the buffer in the
10026           handoff handler (that's the whole use of this signal...).
10027
10028 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10029
10030         * docs/pwg/other-ntoone.xml:
10031           Document muxers and n-to-1 elements.
10032
10033 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10034
10035         * gst/registries/gstxmlregistry.c
10036         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10037         determine if a file is a G_MODULE. The old one discards paths
10038         containing "so" somewhere in the middle. My home directory is
10039         called "soto". Go figure...
10040
10041 2004-03-31  David Schleef  <ds@schleef.org>
10042
10043         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10044         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10045         * gst/gstbuffer.h:
10046
10047 2004-03-31  David Schleef  <ds@schleef.org>
10048
10049         * gst/gstvalue.c: (gst_value_union_int_int_range),
10050         (gst_value_union_int_range_int_range), (gst_value_can_union),
10051         (gst_value_union), (_gst_value_initialize):  Add some union
10052         implementations.  We didn't have any previously.
10053         * testsuite/caps/Makefile.am:
10054         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10055         (gst_audioscale_getcaps), (test_caps), (main): A little test
10056         that is the same as the caps manipulation in audioscale.
10057
10058 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10059
10060         * docs/faq/general.xml:
10061           add entry about "does gst support format X?"
10062
10063 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10064
10065         * gst/gstthread.c:
10066           fix docs
10067         * gst/gstutils.h:
10068           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10069
10070 2004-03-30  Benjamin Otte  <otte@gnome.org>
10071
10072         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10073           set the offset of the buffer to the requested offset
10074         * gst/elements/gsttypefind.c: (stop_typefinding):
10075           revert patch 1.18 (which I unfortunately don't know the reason for).
10076           This is needed to allow downstream elements to seek. Otherwise
10077           typefind might overwrite a previous seek by downstream elements.
10078           This lead to errors with id3tag and typefind on some mp3s.
10079         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10080         (gst_entry_scheduler_iterate):
10081           be more verbose when debugging
10082
10083 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10084
10085         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10086           make sure we don't get NULL strings
10087
10088 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10089
10090         * gst/gstcaps.c:
10091         * gst/gstelement.c:
10092         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10093         * gst/gstindex.c: (gst_index_resolver_get_type),
10094         (gst_index_get_type), (gst_index_factory_get_type):
10095         * gst/gstinfo.c:
10096         * gst/gstpad.c:
10097         * gst/gstplugin.c:
10098         * gst/gsturi.c: (gst_uri_handler_get_type):
10099         * gst/gstvalue.c:
10100           first batch of documentation fixes
10101
10102 2004-03-29  David Schleef  <ds@schleef.org>
10103
10104         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10105         * docs/gst/gstreamer-docs.sgml:  More hacking
10106         * docs/gst/gstreamer-sections.txt:
10107         * docs/gst/tmpl/cothreads_compat.sgml:
10108         * docs/gst/tmpl/gstcaps.sgml:
10109         * docs/gst/tmpl/gstclock.sgml:
10110         * docs/gst/tmpl/gstelement.sgml:
10111         * docs/gst/tmpl/gstevent.sgml:
10112         * docs/gst/tmpl/gstpad.sgml:
10113         * docs/gst/tmpl/gstutils.sgml:
10114         * docs/gst/tmpl/gstxml.sgml:
10115         * docs/gst/tmpl/gthread-cothreads.sgml:
10116         * docs/random/ds/0.9-suggested-changes:
10117         * gst/elements/gstfakesink.h: doc fixes
10118         * gst/elements/gstfakesrc.h: doc fixes
10119         * gst/gstcaps.c: doc fixes
10120         * gst/gstcaps.h: doc fixes
10121         * gst/gstelement.c: doc fixes
10122         * gst/gstelement.h: doc fixes
10123         * gst/gstindex.c: doc fixes
10124         * gst/gstinfo.c: doc fixes
10125         * gst/gstpad.c: doc fixes
10126         * gst/gstpad.h: doc fixes
10127         * gst/gstplugin.c: doc fixes
10128         * gst/gsttypefind.h: doc fixes
10129         * gst/gsturi.c: doc fixes
10130         * gst/gstvalue.c: doc fixes
10131
10132 2004-03-29  Colin Walters  <walters@redhat.com>
10133
10134         * gst/registries/gstxmlregistry.c (get_time)
10135         (plugin_times_older_than_recurse):
10136         Use the result of stat to determine whether a path is a file,
10137         so we don't attempt to opendir() files.
10138
10139 2004-03-29  Benjamin Otte  <otte@gnome.org>
10140
10141         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10142           print caps in debugging output when setting caps failed
10143         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10144         (schedule_next_element), (get_buffer), (run_chainhandler),
10145         (element_may_start), (gst_entry_scheduler_chain_handler),
10146         (gst_entry_scheduler_get_handler),
10147         (gst_entry_scheduler_state_transition),
10148         (gst_entry_scheduler_pad_link):
10149           make this scheduler a testcase for mandatory
10150           discont-before-first-buffer which is needed if we want to allow apps
10151           to release the sound device.
10152           add SCHED_ASSERT macro to print scheduler state before an assertion
10153           triggers.
10154
10155 2004-03-29  Benjamin Otte  <otte@gnome.org>
10156
10157         * COPYING:
10158           replace by LGPL (former COPYING.LIB). The core is completely
10159           licensed LGPL.
10160         * COPYING.LIB:
10161           remove
10162
10163 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10164
10165         * po/af.po:
10166         * po/sv.po:
10167           updated Afrikaans and Swedish
10168
10169 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10170
10171         * po/LINGUAS:
10172         * po/az.po:
10173           adding Azerbaijani (Mətin Əmirov)
10174
10175 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10176
10177         * gst/gstelement.h: 
10178         * gst/gstelement.c (gst_element_set_time_delay): New function for
10179         setting element time taking into account a hardware buffering
10180         delay.
10181         (gst_element_set_time): Now just an invocation of
10182         gst_element_set_time_delay.
10183         * gst/gstclock.h: 
10184         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10185         allowing to set event times in the future.
10186         (gst_clock_get_event_time): Now just an invocation of
10187         gst_clock_get_event_time_delay.
10188
10189 2004-03-28  Benjamin Otte  <otte@gnome.org>
10190
10191         * gst/gstbin.c: (gst_bin_set_element_sched),
10192         (gst_bin_unset_element_sched):
10193           don't add decoupled elements to schedulers - otherwise it's
10194           impossible to control if a link to a decoupled element was already
10195           removed from a scheduler or not.
10196         * gst/schedulers/cothreads_compat.h:
10197         * gst/schedulers/gthread-cothreads.h:
10198           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10199           is no "unused" warning.
10200         * gst/schedulers/Makefile.am:
10201         * gst/schedulers/entryscheduler.c:
10202           add new scheduler, based on ideas from talking to David and Martin.
10203           It's supposed to be small and correct. Currently it's also slow (but
10204           it's not noticable)
10205         * examples/retag/retag.c: (main):
10206         * testsuite/bytestream/test1.c: (main):
10207           fix missing NULLs at end of variadic functions
10208         * testsuite/elements/.cvsignore:
10209           update
10210
10211 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10212
10213         * gst/gstevent.h:
10214         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10215
10216 2004-03-25  David Schleef  <ds@schleef.org>
10217
10218         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10219         * docs/gst/tmpl/gstaggregator.sgml:
10220         * docs/gst/tmpl/gstautoplugfactory.sgml:
10221         * docs/gst/tmpl/gstbin.sgml:
10222         * docs/gst/tmpl/gstbuffer.sgml:
10223         * docs/gst/tmpl/gstbufferstore.sgml:
10224         * docs/gst/tmpl/gstfakesink.sgml:
10225         * docs/gst/tmpl/gstfakesrc.sgml:
10226         * docs/gst/tmpl/gstmd5sink.sgml:
10227         * docs/gst/tmpl/gstreamer-unused.sgml:
10228         * docs/gst/tmpl/gstsearchfuncs.sgml:
10229         * docs/gst/tmpl/gstshaper.sgml:
10230         * docs/gst/tmpl/gstspider.sgml:
10231         * docs/gst/tmpl/gsttee.sgml:
10232         * docs/gst/tmpl/gstutils.sgml:
10233         * docs/gst/tmpl/gstvalue.sgml:
10234         * docs/gst/tmpl/gstxml.sgml:
10235         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10236         and we don't support it.
10237         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10238         (gst_use_threads), (gst_has_threads): same
10239         * gst/gstthreaddummy.c: same
10240         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10241         * gst/autoplug/gstspider.h: same
10242         * gst/elements/gstaggregator.h: Remove bogus function from header
10243         * gst/elements/gstfakesink.h: same
10244         * gst/elements/gstfakesrc.h: same
10245         * gst/elements/gstmd5sink.h: same
10246         * gst/elements/gstshaper.h: same
10247         * gst/elements/gsttee.h: same
10248         * gst/gstbin.c: doc fixes
10249         * gst/gstbin.h: Remove unused definition.
10250         * gst/gstbuffer.c: doc fixes
10251         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10252         * gst/gstfilter.c: doc fixes
10253         * gst/gsttag.c: doc fixes
10254         * gst/gstvalue.c: doc fixes
10255
10256 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10257
10258         * docs/pwg/advanced-types.xml:
10259           Document typefinding.
10260         * docs/pwg/other-oneton.xml:
10261           Document one-to-n elements, demuxers and parsers.
10262
10263 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10264
10265         reviewed by: David Schleef  <ds@schleef.org>
10266
10267         * configure.ac: Check bison version (bug #127838)
10268
10269 2004-03-25  David Schleef  <ds@schleef.org>
10270
10271         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10272         * docs/gst/gstreamer-sections.txt:
10273         * docs/gst/tmpl/gstautoplug.sgml:
10274         * docs/gst/tmpl/gststaticautoplug.sgml:
10275         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10276         * docs/gst/tmpl/gstutils.sgml:
10277         * docs/gst/tmpl/gstxml.sgml:
10278
10279 2004-03-24  David Schleef  <ds@schleef.org>
10280
10281         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10282         manual being such complete crap, that I decided to do major
10283         hacking of it.  This checkin replaces any fine tuning that
10284         may have been done previously, with the benefit of actually
10285         being complete for much of the API that was changed since
10286         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10287         * docs/gst/gstreamer-sections.txt:
10288         * docs/gst/tmpl/GstBin.sgml:
10289         * docs/gst/tmpl/GstBuffer.sgml:
10290         * docs/gst/tmpl/GstCaps.sgml:
10291         * docs/gst/tmpl/GstClock.sgml:
10292         * docs/gst/tmpl/GstCompat.sgml:
10293         * docs/gst/tmpl/GstData.sgml:
10294         * docs/gst/tmpl/GstElement.sgml:
10295         * docs/gst/tmpl/GstEvent.sgml:
10296         * docs/gst/tmpl/GstIndex.sgml:
10297         * docs/gst/tmpl/GstStructure.sgml:
10298         * docs/gst/tmpl/GstTag.sgml:
10299         * docs/gst/tmpl/cothreads.sgml:
10300         * docs/gst/tmpl/cothreads_compat.sgml:
10301         * docs/gst/tmpl/gettext.sgml:
10302         * docs/gst/tmpl/grammar.tab.sgml:
10303         * docs/gst/tmpl/gst-i18n-app.sgml:
10304         * docs/gst/tmpl/gst-i18n-lib.sgml:
10305         * docs/gst/tmpl/gst.sgml:
10306         * docs/gst/tmpl/gst_private.sgml:
10307         * docs/gst/tmpl/gstaggregator.sgml:
10308         * docs/gst/tmpl/gstarch.sgml:
10309         * docs/gst/tmpl/gstatomic.sgml:
10310         * docs/gst/tmpl/gstatomic_impl.sgml:
10311         * docs/gst/tmpl/gstbin.sgml:
10312         * docs/gst/tmpl/gstbuffer.sgml:
10313         * docs/gst/tmpl/gstbufferstore.sgml:
10314         * docs/gst/tmpl/gstcaps.sgml:
10315         * docs/gst/tmpl/gstclock.sgml:
10316         * docs/gst/tmpl/gstcompat.sgml:
10317         * docs/gst/tmpl/gstconfig.sgml:
10318         * docs/gst/tmpl/gstcpu.sgml:
10319         * docs/gst/tmpl/gstdata.sgml:
10320         * docs/gst/tmpl/gstdata_private.sgml:
10321         * docs/gst/tmpl/gstelement.sgml:
10322         * docs/gst/tmpl/gstenumtypes.sgml:
10323         * docs/gst/tmpl/gsterror.sgml:
10324         * docs/gst/tmpl/gstevent.sgml:
10325         * docs/gst/tmpl/gstfakesink.sgml:
10326         * docs/gst/tmpl/gstfakesrc.sgml:
10327         * docs/gst/tmpl/gstfilesink.sgml:
10328         * docs/gst/tmpl/gstfilter.sgml:
10329         * docs/gst/tmpl/gstindex.sgml:
10330         * docs/gst/tmpl/gstinfo.sgml:
10331         * docs/gst/tmpl/gstinterface.sgml:
10332         * docs/gst/tmpl/gstlog.sgml:
10333         * docs/gst/tmpl/gstmacros.sgml:
10334         * docs/gst/tmpl/gstmarshal.sgml:
10335         * docs/gst/tmpl/gstmd5sink.sgml:
10336         * docs/gst/tmpl/gstmultifilesrc.sgml:
10337         * docs/gst/tmpl/gstobject.sgml:
10338         * docs/gst/tmpl/gstpad.sgml:
10339         * docs/gst/tmpl/gstparse.sgml:
10340         * docs/gst/tmpl/gstpipeline.sgml:
10341         * docs/gst/tmpl/gstplugin.sgml:
10342         * docs/gst/tmpl/gstpluginfeature.sgml:
10343         * docs/gst/tmpl/gstqueue.sgml:
10344         * docs/gst/tmpl/gstreamer-unused.sgml:
10345         * docs/gst/tmpl/gstregistry.sgml:
10346         * docs/gst/tmpl/gstregistrypool.sgml:
10347         * docs/gst/tmpl/gstscheduler.sgml:
10348         * docs/gst/tmpl/gstsearchfuncs.sgml:
10349         * docs/gst/tmpl/gstshaper.sgml:
10350         * docs/gst/tmpl/gstspider.sgml:
10351         * docs/gst/tmpl/gstspideridentity.sgml:
10352         * docs/gst/tmpl/gststructure.sgml:
10353         * docs/gst/tmpl/gstsystemclock.sgml:
10354         * docs/gst/tmpl/gsttag.sgml:
10355         * docs/gst/tmpl/gsttaginterface.sgml:
10356         * docs/gst/tmpl/gsttee.sgml:
10357         * docs/gst/tmpl/gstthread.sgml:
10358         * docs/gst/tmpl/gsttrace.sgml:
10359         * docs/gst/tmpl/gsttrashstack.sgml:
10360         * docs/gst/tmpl/gsttypefind.sgml:
10361         * docs/gst/tmpl/gsttypes.sgml:
10362         * docs/gst/tmpl/gsturi.sgml:
10363         * docs/gst/tmpl/gsturitype.sgml:
10364         * docs/gst/tmpl/gstutils.sgml:
10365         * docs/gst/tmpl/gstvalue.sgml:
10366         * docs/gst/tmpl/gstversion.sgml:
10367         * docs/gst/tmpl/gstxml.sgml:
10368         * docs/gst/tmpl/gstxmlregistry.sgml:
10369         * docs/gst/tmpl/gthread-cothreads.sgml:
10370         * docs/gst/tmpl/types.sgml:
10371
10372 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10373
10374         * docs/pwg/other-sink.xml:
10375         * docs/pwg/other-source.xml:
10376           Documentation on how to write source and sink elements. Other
10377           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10378           manager, autoplugger) are all still pending.
10379
10380 2004-03-25  Benjamin Otte  <otte@gnome.org>
10381
10382         * testsuite/elements/Makefile.am:
10383         * testsuite/elements/gst-compprep-check:
10384           add check to make sure gst-compprep works
10385         * testsuite/elements/gst-inspect-check.in:
10386           improve initialization output
10387         * testsuite/Makefile.am:
10388         * testsuite/gst-inspect-check:
10389           remove old file
10390
10391 2004-03-24  David Schleef  <ds@schleef.org>
10392
10393         * testsuite/elements/Makefile.am:
10394         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10395         to the testsuite.
10396
10397 2004-03-24  Benjamin Otte  <otte@gnome.org>
10398
10399         * libs/gst/control/dparam.c: (gst_dparam_attach),
10400         (gst_dparam_detach):
10401         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10402           fix lvalue casts for real
10403
10404 2004-03-24  Benjamin Otte  <otte@gnome.org>
10405
10406         * gst/schedulers/gstbasicscheduler.c:
10407         (gst_basic_scheduler_src_wrapper):
10408         * gst/schedulers/gstoptimalscheduler.c:
10409         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10410         (pad_clear_queued), (gst_opt_scheduler_add_element),
10411         (gst_opt_scheduler_remove_element):
10412           fix GStreamer to not have issues with lvalue casts anymore (fixes
10413           #136841)
10414
10415 2004-03-24  Benjamin Otte  <otte@gnome.org>
10416
10417         * gst/gstelement.c:
10418           add documentation about a gobject quirk where the object hasn't the
10419           correct class pointer set on initialization
10420         * gst/schedulers/gstbasicscheduler.c:
10421         (gst_basic_scheduler_src_wrapper):
10422           make sure to not run into an infinite loop
10423
10424 2004-03-22  Benjamin Otte  <otte@gnome.org>
10425
10426         * gst/gstutils.c: (gst_util_dump_mem):
10427         * gst/gstutils.h:
10428           first argument of gst_util_dump_mem should be const
10429
10430 2004-03-22  Johan Dahlin  <johan@gnome.org>
10431
10432         * gst/gstvalue.h: Clean up a little bit.
10433
10434 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10435
10436         reviewed by Benjamin Otte  <otte@gnome.org>
10437
10438         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10439         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10440         (gst_aggregator_class_init), (gst_aggregator_init):
10441         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10442         (gst_filesrc_dispose), (gst_filesrc_set_location):
10443         * gst/elements/gstidentity.c: (gst_identity_finalize),
10444         (gst_identity_class_init), (gst_identity_chain):
10445         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10446         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10447         (gst_statistics_class_init):
10448         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10449         (gst_tee_get_property):
10450           clean up used memory in this elements correctly on teardown (closes
10451           #137279)
10452
10453 2004-03-20  Colin Walters  <walters@redhat.com>
10454
10455         * gst/registries/gstxmlregistry.c:
10456         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10457         registry saving atomic.
10458
10459 2004-03-20  Colin Walters  <walters@redhat.com>
10460
10461         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10462         Just use
10463         access() instead of actually creating and deleting files.
10464
10465 2004-03-18  David Schleef  <ds@schleef.org>
10466
10467         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10468         (bug #137625)
10469
10470 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10471
10472         * po/sv.po: updated translation (Christian Rose)
10473
10474 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10475
10476         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10477         (gst_filesink_get_query_types), (_do_init),
10478         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10479           return FALSE silently
10480         * po/af.po: updated translation (Petri Jooste)
10481
10482 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10483
10484         * Makefile.am:
10485         * configure.ac:
10486           dist common properly
10487         * po/af.po:
10488         * po/fr.po:
10489         * po/nl.po:
10490         * po/sr.po:
10491         * po/sv.po:
10492           refreshing translations
10493
10494 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10495
10496         * po/LINGUAS:
10497         * po/sv.po:
10498         * po/af.po:
10499           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10500
10501 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10502
10503         * Makefile.am: use common/release.mak
10504
10505 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10506
10507         * docs/faq/gst-uninstalled:
10508           adding gst-monkeysaudio to the list of possible plugin dirs
10509
10510 2004-03-16  David Schleef  <ds@schleef.org>
10511
10512         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10513         (gst_init_check_with_popt_table):  Fix some gettext strings to
10514         make them easier to translate.  Required making the strings
10515         non-const.
10516
10517 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10518
10519         * configure.ac: bump nano to 1
10520
10521 === release 0.8.0 ===
10522
10523 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10524
10525         * configure.ac: release 0.8.0, "Executive Slacks"
10526
10527 2004-03-16  Johan Dahlin  <johan@gnome.org>
10528
10529         * gst/schedulers/gstoptimalscheduler.c
10530         (gst_opt_scheduler_pad_unlink): Remove double ;,
10531         spotted by Scott Wheeler
10532
10533 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10534
10535         * configure.ac: bump libtool version
10536
10537 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10538
10539         * gst/gstcaps.h:
10540         * gst/gststructure.h:
10541           add reserved padding
10542
10543 2004-03-15  Benjamin Otte  <otte@gnome.org>
10544
10545         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10546           set the first parameter for select call correctly.
10547           (fixes #137230)
10548
10549 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10550
10551         * *.c,*.h: don't mix tabs and spaces
10552
10553 2004-03-15  Johan Dahlin  <johan@gnome.org>
10554
10555         * gst/schedulers/gstoptimalscheduler.c
10556         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10557         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10558
10559         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10560         
10561 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10562
10563         * testsuite/Rules:
10564           fix gst-register rules
10565
10566 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10567
10568         * testsuite/Rules:
10569           use versioned gst-register
10570
10571 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10572
10573         * docs/libs/gstreamer-libs-sections.txt:
10574           remove </SUBSECTION>
10575         * gst/gstplugin.c:
10576         * gst/gstregistry.c: (gst_registry_add_plugin):
10577         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10578         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10579           add debugging and fix some comment blocks
10580
10581 2004-03-15  Johan Dahlin  <johan@gnome.org>
10582
10583         * *.h: Revert indent changes.
10584         
10585 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10586
10587         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10588           g_error_free the g_error
10589         * tools/gst-feedback-m.m:
10590           check for other versions of gstreamer
10591         * tools/gst-indent:
10592           use sh, not bash
10593
10594 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10595
10596         * tools/gst-register.c: do not spill paths when registries are not
10597           writable, until we fix the "user running gst-register" case.
10598
10599 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10600
10601         * *.c, *.h: commit of gst-indent run on core
10602
10603 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10604
10605         * tools/gst-indent:
10606         * tools/Makefile.am:
10607           add our indentation style as a script
10608
10609 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10610
10611         * po/sr.po:
10612         * po/LINGUAS:
10613           added Serbian translation
10614
10615 2004-03-13  Benjamin Otte  <otte@gnome.org>
10616
10617         * gst/gstelement.c:
10618           add documentation note about gst_element_found_tags_for_pad not
10619           being usable in getfunctions. (see #137042)
10620
10621 2004-03-12  David Schleef  <ds@schleef.org>
10622
10623         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10624         change API right now!  Readd gst_caps_is_simple() macro.
10625         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10626         uninitialized variable.  I'd bet this caused crashes.
10627         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10628
10629 2004-03-12  Johan Dahlin  <johan@gnome.org>
10630
10631         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10632         * gst/gstcaps.h: Clean up
10633
10634         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10635         _gst_caps_initalize()
10636
10637         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10638         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10639
10640         * gst/gststructure.c (gst_structure_get_type): Ditto
10641
10642         * gst/gststructure.h: Ditto
10643         
10644 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10645
10646         * gst/gstqueue.c: (gst_queue_init):
10647           Reset default max. values in queues. Reason is simply to avoid
10648           braindead use. If you want wider values, use the properties. The
10649           default is supposed to always work. Wider values would make this
10650           beast a memory hog by default (250 full-PAL RGB32 video frames?
10651           That's 440 MB! No thank you).
10652
10653 2004-03-10  David Schleef  <ds@schleef.org>
10654
10655         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10656         were found.  (bug #136793)
10657
10658 2004-03-10  Johan Dahlin  <johan@gnome.org>
10659
10660         * gst/schedulers/gstoptimalscheduler.c
10661         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10662         links to elements within the same group, so we can finally remove
10663         that annoying warning. Refactor the code a little bit
10664         (group_dec_links_for_element): Split out
10665
10666 2004-03-09  David Schleef  <ds@schleef.org>
10667
10668         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10669         (bug #134863)
10670
10671 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10672
10673         * configure.ac: first bug fix due to major/minor bump
10674
10675 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10676
10677         * configure.ac: bump nano to 1
10678
10679 === release 0.7.6 ===
10680
10681 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10682
10683         * NEWS:
10684         * RELEASE:
10685         * configure.ac:
10686           releasing 0.7.6, "Almost"
10687         * po/fr.po:
10688         * po/nl.po:
10689         * tools/Makefile.am:
10690         * tools/gst-feedback-m.m:
10691           unversioned source
10692
10693 2004-03-09  Johan Dahlin  <johan@gnome.org>
10694
10695         Reviewed by: Thomas Vander Stichele
10696
10697         * gst/gstelement.c (gst_element_class_init): register second
10698         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10699         language bindings can (de)marshall correctly.
10700
10701         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10702
10703         * gst/gsterror.c (gst_g_error_get_type): New function
10704
10705         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10706         with VOID:OBJECT,OBJECT,STRING 
10707
10708 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10709
10710         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10711         Free a leaked g_timer on early returns.
10712
10713 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10714
10715         * docs/pwg/advanced-types.xml:
10716           Add cinepak description.
10717
10718 2004-03-07  David Schleef  <ds@schleef.org>
10719
10720         * docs/random/mimetypes:  Added cinepak description
10721
10722 2004-03-07  Andy Wingo  <wingo@pobox.com>
10723
10724         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10725
10726         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10727         there are no links to other groups when a group is destroyed.
10728         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10729         removed from a group, make sure the link count to elements linked
10730         to other pads is appropriately decremented. This really fixes
10731         #135672.
10732
10733         The 1.60->1.61 patch has been reapplied in light of this fix.
10734
10735         * gst/gstelement.c (gst_element_dispose): Really protect against
10736         multiple invocations this time.
10737
10738 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10739
10740         * docs/gst/gstreamer-sections.txt:
10741         * docs/gst/tmpl/gsttag.sgml:
10742           remove some deprecated functions, document some existing ones
10743         * gst/gsttag.c: (gst_tag_get_flag):
10744         * gst/gsttag.h:
10745           add accessor function
10746
10747 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10748
10749         * docs/gst/gstreamer-sections.txt:
10750         * docs/gst/tmpl/gsttag.sgml:
10751         * docs/gst/tmpl/gstxml.sgml:
10752         * gst/gsttag.c: (gst_tag_get_flag):
10753         * gst/gsttag.h:
10754
10755 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10756
10757         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10758         leak
10759
10760 2004-03-05  David Schleef  <ds@schleef.org>
10761
10762         * REQUIREMENTS: Add bison and flex.
10763         * configure.ac: Fix comment about bison.
10764         * docs/random/ds/0.9-suggested-changes: yer ma
10765         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10766
10767 2004-03-05  Benjamin Otte  <otte@gnome.org>
10768
10769         * gst/gstelement.c: (gst_element_error_full):
10770           revert recent recursive state changing commit - messing with other
10771           elements' states is evil and should be done by apps only.
10772
10773 2004-03-05  Benjamin Otte  <otte@gnome.org>
10774
10775         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10776           check for empty intersection instead of NULL caps
10777         (gst_element_get_compatible_pad_filtered):
10778           remove old workaround that is only a bug nowadays
10779
10780 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10781
10782         * gst/gstelement.c: (gst_element_error_full):
10783           make elements try to recursively change state to PAUSED on all
10784           parents after an error to suppress ensuing warnings
10785         * gst/parse/grammar.y:
10786           make it check if it was able to sync the state, and throw an error
10787           if not, so stuff like
10788           oggdemux ! vorbisdec ! osssink gets caught
10789
10790 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10791
10792         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10793           it contains lib64; use AS_AC_EXPAND to handle it properly
10794
10795 2004-03-05  David Schleef  <ds@schleef.org>
10796
10797         * gst/gstcpuid_i386.s:  Remove unused code
10798         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10799         (gst_getbits_newbuf): Remove MMX code
10800         * libs/gst/getbits/getbits.h: Remove MMX code
10801
10802 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10803
10804         * debian/.cvsignore:
10805         * debian/README.Debian:
10806         * debian/changelog:
10807         * debian/control:
10808         * debian/control.in:
10809         * debian/copyright:
10810         * debian/gstreamer-core-libs-dev.files:
10811         * debian/gstreamer-core-libs.files:
10812         * debian/gstreamer-core.files:
10813         * debian/gstreamer-core.postinst:
10814         * debian/gstreamer-core.postrm:
10815         * debian/gstreamer-doc.files:
10816         * debian/gstreamer-doc.links:
10817         * debian/gstreamer-doc.lintian:
10818         * debian/gstreamer-runtime.files:
10819         * debian/gstreamer-runtime.manpages:
10820         * debian/gstreamer-runtime.postinst:
10821         * debian/gstreamer-runtime.postrm:
10822         * debian/gstreamer-tools.files:
10823         * debian/gstreamer-tools.manpages:
10824         * debian/libgstreamer-dev.files:
10825         * debian/libgstreamer0.4.1.files:
10826         * debian/libgstreamerVERSION.files:
10827         * debian/rules:
10828         Debian package info not maintained here.
10829
10830 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10831
10832         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10833         * gst/gstbin.c: (gst_bin_class_init):
10834         * gst/gstelement.c: (gst_element_class_init):
10835         * gst/gstindex.c: (gst_index_class_init):
10836         * gst/gstobject.c: (gst_object_class_init),
10837         (gst_signal_object_class_init):
10838         * gst/gstpad.c: (gst_pad_template_class_init):
10839         * gst/gstregistry.c: (gst_registry_class_init):
10840         * gst/gsturi.c: (gst_uri_handler_base_init):
10841         * gst/gstxml.c: (gst_xml_class_init):
10842         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10843         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10844           make all signal names use dashes instead of underscore
10845
10846 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10847
10848         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10849
10850 2004-03-03  Benjamin Otte  <otte@gnome.org>
10851
10852         * gst/schedulers/gstoptimalscheduler.c:
10853           revert last commit by Andy Wingo. It causes segfaults on unreffing
10854           in Rhythmbox. (see bug #135672)
10855
10856 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10857
10858         * po/fr.po: fix typo
10859
10860 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10861
10862         * tools/gst-inspect.c: (main): 
10863         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10864
10865 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10866
10867         * configure.ac:
10868           get GLIB_ONLY and POPT flags for the nonversioned binaries
10869         * tools/Makefile.am:
10870           use them
10871
10872 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10873
10874         * gst/gst.c: (init_post):
10875           change so that GST_REGISTRY now is where the global registry gets
10876           saved, since that is where plugins now get attached to first, and
10877           spilled over to the user registry.  Note that in the case of using
10878           GST_REGISTRY env var, we don't want to affect any real registries
10879           beyond the one given by this var, and thus we don't set a user
10880           registry to spill to.  So make sure GST_REGISTRY is writable.
10881
10882 2004-03-01  David Schleef  <ds@schleef.org>
10883
10884         * AUTHORS:  Added some names.  Add yourself if you're missing.
10885
10886 2004-03-01  David Schleef  <ds@schleef.org>
10887
10888         * MAINTAINERS: Add
10889
10890 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10891
10892         * configure.ac:
10893           remove whitespace
10894         * docs/gst/tmpl/gstbuffer.sgml:
10895         * docs/gst/tmpl/gstdata.sgml:
10896         * docs/gst/tmpl/gstreamer-unused.sgml:
10897         * docs/gst/tmpl/gstxml.sgml:
10898           doc update
10899         * docs/manuals.mak:
10900           add a FIXME
10901         * docs/pwg/intro-preface.xml:
10902         * docs/pwg/pwg.xml:
10903           remove GNOME
10904         * gst/gst.c: (init_post):
10905           try GST_PLUGIN_PATH paths for the _global_registry first
10906         * gst/gstelement.h:
10907           add the error message as well, otherwise (null) debug info doesn't
10908           make much sense
10909         * tools/gst-register.c: (main):
10910           spill paths to next registry if this registry is not writable
10911         * po/fr.po:
10912         * po/nl.po:
10913           translation updates
10914
10915 2004-03-01  Johan Dahlin  <johan@gnome.org>
10916
10917         * gst/gstbuffer.c (_gst_buffer_initialize): 
10918         * gst/gstdata.c (gst_data_get_type): 
10919         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10920         instead of ref, since some applications that uses GBoxed
10921         routines depends on a function that actually returns a copy.
10922
10923 2004-02-27  Benjamin Otte  <otte@gnome.org>
10924
10925         * gst/gstbuffer.h:
10926           remove gst_buffer_free, use gst_data_unref
10927         * gst/gstdata.c: (gst_data_get_type):
10928           use refcounting in GstData GBoxed registration
10929         * gst/gstdata.h:
10930           remove gst_data_free, use gst_data_unref
10931
10932 2004-02-27  Johan Dahlin  <johan@gnome.org>
10933
10934         * gst/gstdata.c (gst_data_get_type): New function, register
10935         GstData as a GBoxed type.
10936
10937         * gst/gstdata.h (GST_TYPE_DATA): New macro
10938
10939 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10940
10941         * Makefile.am:
10942         * gstreamer.spec.in:
10943           put back RELEASE
10944         * gst/Makefile.am:
10945           clean up non-disting of built files
10946         * testsuite/debug/commandline.c:
10947           test fix for option rename
10948
10949 2004-02-26  David Schleef  <ds@schleef.org>
10950
10951         * configure.ac:  We don't really need glib-2.3.  Also remove
10952         some unneeded checks for library functions.
10953         * gst/Makefile.am:  Instead, we need to not dist files created
10954         by glib-genmarshal.
10955
10956 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10957
10958         * configure.ac:
10959           bump glib required version to 2.3.0 for g_value_takes_boxed
10960
10961  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10962
10963         * common/m4/gst-docs.m4
10964         change flavour text from enable to disable as enable is our default
10965         closes bug Bug 135304
10966
10967 === release 0.7.5 ===
10968  
10969  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10970  
10971         * NEWS:
10972           instate NEWS file
10973         * Makefile.am:
10974         * gstreamer.spec.in:
10975         * RELEASE:
10976           put back release
10977         * configure.ac:
10978         * docs/random/release:
10979           more updates
10980
10981 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10982
10983         * gst/gsttag.c: (_gst_tag_initialize):
10984         * po/fr.po:
10985         * po/nl.po:
10986           remove hyphen from codec tags
10987
10988 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10989
10990         * gst/parse/Makefile.am:
10991           fix dependency so that a make from a clean build works the first
10992           time
10993
10994 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10995
10996         * docs/random/release:
10997           update release strategy
10998         * po/fr.po:
10999           auto-update po file
11000         * po/nl.po:
11001           update dutch translation
11002
11003 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11004
11005         * docs/manual/debugging.xml:
11006         fix manual for new debugging system
11007
11008 2004-02-25  Andy Wingo  <wingo@pobox.com>
11009
11010         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11011         gst_pad_link_prepare. Please email the list with specific reasons
11012         for reverting.
11013
11014 2004-02-24  Andy Wingo  <wingo@pobox.com>
11015
11016         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11017         invocations.
11018
11019         * gst/schedulers/gstoptimalscheduler.c:
11020         I added a mess of prototypes at the top of the file by way of
11021         documentation. Some of the operations on chains and groups were
11022         re-organized.
11023
11024         (create_group): Added a type argument so if the group is enabled,
11025         the setup_group_scheduler knows what to do.
11026         (group_elements): Added a type argument here, too, to be passed on
11027         to create_group.
11028         (group_element_set_enabled): If an unlinked PLAYING element is
11029         added to a bin, we have to create a new group to hold the element,
11030         and this function will be called before the group is added to the
11031         chain. Thus we have a valid case for group->chain==NULL. Instead
11032         of calling chain_group_set_enabled, just set the flag on the group
11033         (the chain's status will be set when the group is added to it).
11034         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11035         Setup the group scheduler when the group is enabled, not
11036         specifically when an element goes PAUSED->PLAYING. This means
11037         PLAYING elements can be added, linked, and scheduled into a
11038         PLAYING pipeline, as was intended.
11039         (add_to_group): Don't ref the group twice. I don't know when this
11040         double-ref got in here. Removing it has the potential to cause
11041         segfaults if other parts of the scheduler are buggy. If you find
11042         that the scheduler is segfaulting for you, put in an extra ref
11043         here and see if that hacks over the underlying issue. Of course,
11044         then find out what code is unreffing a group it doesn't own...
11045         (create_group): Make the extra refcount floating, and remove it
11046         after adding the element. This means that...
11047         (unref_group): Destroy when the refcount reaches 0, not 1, like
11048         every other refcounted object in the known universe.
11049         (remove_from_group): When a group becomes empty, set it to be not
11050         active, and remove it from its chain. Don't unref it again,
11051         there's no floating reference any more.
11052         (destroy_group): We have to remove the group from the chain in
11053         remove_from_group (rather than here) to break refcounting cycles
11054         (the chain always has a ref on the group). So assert that
11055         group->chain==NULL.
11056         (ref_group_by_count): Removed, it was commented out anyway.
11057         (merge_chains): Use the remove_from_chain and add_to_chain
11058         primitives to do the reparenting, instead of rolling our own
11059         implementation.
11060         (add_to_chain): The first non-disabled group in the chain's group
11061         list will be the entry point for the chain. Because buffers can
11062         accumulate in loop elements' peer bufpens, we preferentially
11063         schedule loop groups before get groups to avoid unnecessary
11064         execution of get-based groups when the bufpens are already full.
11065         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11066         (get_group_schedule_function): Ditto.
11067         (loop_group_schedule_function): Ditto.
11068         (gst_opt_scheduler_loop_wrapper): Ditto.
11069         (gst_opt_scheduler_iterate): Ditto.
11070
11071         I understand the opt scheduler now, yippee!
11072
11073         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11074         (gst_pad_get_name, gst_pad_set_chain_function) 
11075         (gst_pad_set_get_function, gst_pad_set_event_function) 
11076         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11077         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11078         (gst_pad_set_query_function, gst_pad_get_query_types) 
11079         (gst_pad_get_query_types_default) 
11080         (gst_pad_set_internal_link_function) 
11081         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11082         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11083         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11084         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11085         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11086         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11087         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11088         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11089         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11090         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11091         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11092         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11093         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11094         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11095         argument checks, and some doc fixes.
11096
11097         (gst_pad_custom_new_from_template): Um, does anyone
11098         use these functions? Actually make a custom pad instead of a
11099         normal one.
11100         (gst_pad_try_set_caps): Transpose some checks.
11101         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11102         the pad is in negotiation.
11103         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11104         
11105         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11106
11107         * gst/gstelement.h: 
11108         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11109         on the list.
11110
11111 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11112
11113         * gst/gstbin.c: (gst_bin_add):
11114           add error for not being able to add elements
11115
11116 2004-02-22  Julien MOUTTE <julien@moutte.net>
11117
11118         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11119         audio-codec and video-codec.
11120
11121 2004-02-22  Benjamin Otte  <otte@gnome.org>
11122
11123         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11124
11125         * autogen.sh:
11126           replace test -e with test -x for mkinstalldirs to be more portable.
11127           (fixes #134816)
11128
11129 2004-02-22  Benjamin Otte  <otte@gnome.org>
11130
11131         * gst/gstpad.c:
11132           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11133           too noisy
11134         * gst/gsttag.c: (_gst_tag_initialize):
11135         * gst/gsttag.h:
11136           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11137         * libs/gst/control/dparam.c: (gst_dparam_attach):
11138         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11139           check that types for attached dparams match
11140
11141 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11142
11143         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11144         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11145         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11146           fix errors
11147
11148 2004-02-20  Andy Wingo  <wingo@pobox.com>
11149
11150         * gst/gstbin.c:
11151         * gst/gstbuffer.c:
11152         * gst/gstplugin.c:
11153         * gst/registries/gstxmlregistry.c: 
11154         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11155
11156         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11157         (gst_element_add_pad): DEBUG->INFO, some fixes.
11158         (gst_element_get_compatible_pad_template): Just see if the
11159         templates' caps intersect, not if one is a strict subset of the
11160         other. This conforms more to what gst_pad_link_intersect() does.
11161         (gst_element_class_add_pad_template): Don't memcpy the pad
11162         template, just ref it.
11163         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11164
11165         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11166         (gst_pad_link_filtered): Debug changes.
11167         (gst_pad_link_prepare): New function, consolidated from
11168         can_link_filtered and link_filtered.
11169
11170         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11171         look more like that of the functions in gstelement.c
11172
11173         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11174         object, and return the empty string if object is NULL.
11175
11176         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11177         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11178         LOG, not DEBUG. We still get flex info on debug.
11179
11180         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11181         debug string more verbose.
11182         (plugin_times_older_than): DEBUG->LOG.
11183
11184 2004-02-20  Julien MOUTTE <julien@moutte.net>
11185
11186         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11187         will emit found_tag for each stream they demux with the codec.
11188
11189 2004-02-20  Benjamin Otte  <otte@gnome.org>
11190
11191         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11192           copy navigation event correctly. Check freeing tag lists. 
11193         * gst/gstthread.c: (gst_thread_change_state):
11194           don't abort() on state changing mess - it might happen because of
11195           bugs.
11196         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11197           use boxed functions
11198         * gst/gstvalue.h:
11199           fix GST_VALUE_HOLDS_CAPS
11200
11201 2004-02-19  David Schleef  <ds@schleef.org>
11202
11203         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11204         and use it for GST_FUNCTION.  (bug #134750)
11205
11206 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11207
11208         * po/fr.po:
11209         * po/nl.po:
11210           updating translations
11211
11212 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11213
11214         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11215
11216 2004-02-18  kost@imn.htwk-leipzig.de
11217
11218         reviewed by: David Schleef  <ds@schleef.org>
11219
11220         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11221         for libgstcontrol.
11222
11223 2004-02-18  David Schleef  <ds@schleef.org>
11224
11225         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11226         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11227         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11228         * tools/gst-inspect.c: (print_element_info): Support dumping of
11229         double dparam information.
11230
11231 2004-02-17  David Schleef  <ds@schleef.org>
11232
11233         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11234         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11235         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11236         Use GST_TYPE_CAPS in signal prototype.
11237         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11238         Convert GST_TYPE_CAPS to boxed.
11239         * gst/gstelement.c: (gst_element_class_init):
11240         Use GST_TYPE_TAG_LIST in signal prototype.
11241         * gst/gstindex.c: (gst_index_class_init):
11242         * gst/gstindex.h:
11243         Add GST_TYPE_INDEX_ENTRY type.
11244         * gst/gstmarshal.list:
11245         Add necessary marshal types.
11246         * gst/gstpad.c: (gst_real_pad_class_init),
11247         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11248         (gst_pad_recover_caps_error):
11249         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11250         * gst/gststructure.c: (_gst_structure_initialize),
11251         (gst_structure_copy), (_gst_structure_copy_conditional):
11252         * gst/gststructure.h:
11253         Convert GST_TYPE_STRUCTURE to boxed.
11254         * gst/gsttag.c: (gst_tag_list_get_type):
11255         * gst/gsttag.h:
11256         Add GST_TYPE_TAG_LIST type.
11257
11258 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11259
11260         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11261         to what we agreed with david.
11262         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11263
11264 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11265
11266         * po/nl.po: update translation
11267
11268 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11269
11270         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11271           throw an error if spider is trying to play a mime type there is
11272           no decoder for
11273         * po/POTFILES.in:
11274           add gst/autoplug/gstspider.c for translation
11275
11276 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11277
11278         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11279         silently when the pad is negotiating.
11280
11281 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11282
11283         * docs/faq/Makefile.am:
11284           add script to run gstreamer uninstalled 
11285         * docs/faq/faq.xml:
11286         * docs/faq/developing.xml:
11287         * docs/faq/gst-uninstalled:
11288           extract script to run gstreamer uninstalled
11289         * docs/manuals.mak:
11290           add EXTRA_SOURCES variable for Makefile.am's to set to
11291           use additional SOURCE files for the doc build
11292
11293 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11294
11295         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11296
11297 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11298
11299         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11300         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11301         an error was thrown by osssink. Basically a state change failure for
11302         an element in a different scheduling group was considered as
11303         successful, which means that caps nego was going on and weird stuff
11304         happened. Like I wrote in the comment there, if someone wants to
11305         revert that please drop me a mail explaining why because I really see
11306         no point in keeping that broken behaviour there.
11307         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11308         be empty, we then return NULL which will trigger a nice error when 
11309         pulling from the pad.
11310
11311 2004-02-13  David Schleef  <ds@schleef.org>
11312
11313         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11314         (gst_dparam_get_property), (gst_dparam_set_property),
11315         (gst_dparam_do_update_default):
11316         * libs/gst/control/dparam.h:
11317         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11318         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11319         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11320         (gst_dpsmooth_do_update_double):
11321         * libs/gst/control/dparam_smooth.h:
11322         * libs/gst/control/dparammanager.c:
11323         (gst_dpman_inline_direct_update):
11324         Add support for double dparams.
11325
11326 2004-02-13  David Schleef  <ds@schleef.org>
11327
11328         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11329         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11330
11331 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11332
11333         reviewed by: David Schleef  <ds@schleef.org>
11334
11335         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11336         (gst_fdsrc_init), (gst_fdsrc_set_property),
11337         (gst_fdsrc_get_property), (gst_fdsrc_get):
11338         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11339         and sends an EOS event if file descriptor reading times out.
11340
11341 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11342
11343         * configure.ac:
11344           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11345
11346 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11347
11348         * configure.ac: pass required libxml version as argument
11349         (bug reported by Christophe Fergeau)
11350
11351 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11352   
11353         * docs/gst/gstreamer-docs.sgml:
11354         * docs/gst/tmpl/gstxml.sgml:
11355         * docs/libs/gstreamer-libs-docs.sgml:
11356           version API docs
11357
11358 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11359
11360         * gst/gstinfo.c:
11361         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11362         (gst_registry_pool_feature_filter):
11363         * gst/gstthread.c: (gst_thread_class_init):
11364         * gst/gstvalue.c:
11365           add includes exposed by building without libxml
11366         * gst/indexers/Makefile.am:
11367           do not build fileindex when LOADSAVE disabled; we should have
11368           a better libxml check later since fileindex depends on xml, not
11369           LOADSAVE or REGISTRY
11370         * libs/gst/control/Makefile.am:
11371           link with m
11372         * tools/Makefile.am:
11373           fix wrong source code for gst-xmlinspect
11374
11375 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11376
11377         * configure.ac:
11378           fix gcov help output
11379           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11380         * docs/random/release:
11381           some updated releasing notes
11382         * gstreamer.spec.in:
11383           more updates
11384
11385 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11386
11387         * docs/faq/faq.xml:
11388         * docs/manual/manual.xml:
11389         * docs/pwg/pwg.xml:
11390         * docs/pwg/titlepage.xml:
11391           put version in documentation
11392
11393 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11394
11395         * tools/Makefile.am: fix man page installation
11396
11397 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11398
11399         * configure.ac:
11400           don't check for libxml when load/save and registry disabled (#105844)
11401         * gstreamer.spec.in:
11402           sync with fedora candidate spec
11403
11404 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11405
11406         * po/fr.po:
11407         * po/nl.po:
11408           replace multidisksrc with multifilesrc
11409
11410 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11411
11412         * po/POTFILES.in:
11413           update to multidisksrc => multifilesrc file renaming (#134145)
11414
11415 2004-02-11  David Schleef  <ds@schleef.org>
11416
11417         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11418         * docs/gst/tmpl/gstpadtemplate.sgml: same
11419         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11420         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11421         fixing dance.
11422         * gst/gstutils.c: Remove disabled code that uses GstProps.
11423         * gst/registries/gstxmlregistry.h: same
11424         * docs/random/ds/0.9-suggested-changes: random notes
11425
11426 2004-02-11  kost@imn.htwk-leipzig.de
11427
11428         reviewed by: David Schleef  <ds@schleef.org>
11429
11430         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11431         initialisation of clock (bug #134128)
11432
11433 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11434
11435         * configure.ac:
11436         * gst/elements/Makefile.am:
11437         * gst/elements/gstelements.c:
11438         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11439         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11440         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11441         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11442         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11443         * gst/elements/gstmultifilesrc.h:
11444           rename multidisksrc to multifilesrc (part of #122200)
11445
11446 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11447
11448         * docs/manuals.mak:
11449           fix automake complaints
11450         * gst-element-check.m4:
11451           fix unquotedness
11452
11453 2004-02-11  David Schleef  <ds@schleef.org>
11454
11455         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11456         * gst/gstatomic_impl.h: Disable sparc implementation.
11457
11458 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11459
11460         * gst-element-check.m4:
11461           fix underquoted macros as reported by automake 1.8.x (#133800)
11462         * configure.ac:
11463           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11464           by autopoint (fixes #132996)
11465
11466 2004-02-10  Andy Wingo  <wingo@pobox.com>
11467
11468         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11469         way to do inheritance.
11470         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11471         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11472         Routine docs.
11473         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11474         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11475         doc.
11476         (gst_pad_unlink, gst_pad_is_linked): Docs.
11477         (gst_pad_renegotiate): A brief description of capsnego.
11478         (gst_pad_try_set_caps): Document.
11479         (gst_pad_try_set_caps_nonfixed): Document.
11480         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11481         (gst_pad_set_parent): Deprecated (although not out of the API).
11482         (gst_pad_get_parent): Deprecated, although many plugins use this.
11483         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11484         are private and will go away in 0.9.
11485         (gst_pad_perform_negotiate): Doc.
11486         (gst_pad_link_unnegotiate): I think this is meant to be static.
11487         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11488         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11489         (gst_pad_get_peer): Doc updates.
11490         (gst_pad_caps_change_notify): Doc.
11491         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11492         (gst_ghost_pad_new): Doc fixes.
11493
11494         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11495         (gst_object_check_uniqueness): 
11496
11497         * gst/gstelement.c (gst_element_add_pad) 
11498         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11499         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11500         (gst_element_get_static_pad, gst_element_get_pad_list) 
11501         (gst_element_class_get_pad_template_list) 
11502         (gst_element_class_get_pad_template): Work on the docs.
11503         (gst_element_get_pad_template_list): Uses the class method.
11504         (gst_element_get_compatible_pad_template): Docs, and consolidate
11505         some test conditions. 
11506         (gst_element_get_pad_from_template): New static function.
11507         (gst_element_request_compatible_pad): Docs, and work with
11508         non-request compatible templates. 
11509         (gst_element_get_compatible_pad_filtered): Docs and remove
11510         redundant checks.
11511         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11512         (gst_element_link_filtered, gst_element_link_many) 
11513         (gst_element_link, gst_element_link_pads) 
11514         (gst_element_unlink_many): Docs.
11515
11516 2004-02-05  Andy Wingo  <wingo@pobox.com>
11517
11518         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11519         s/pointer/boxed/.
11520
11521         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11522
11523         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11524         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11525         with the type=GST_TYPE_CAPS. This allows language bindings to know
11526         what kind of data they're dealing with.
11527
11528         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11529         to NULL when g_value_init is called. GstCaps, which rolls its own
11530         type implementation, now does the same instead of allocating empty
11531         caps.
11532         (_gst_caps_initialize, _gst_caps_collect_value,
11533         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11534         table methods. This allows G_VALUE_COLLECT to work.
11535
11536 2004-02-05  Andy Wingo  <wingo@pobox.com>
11537
11538         * configure.ac:
11539         * testsuite/Makefile.am (SUBDIRS): 
11540         * testsuite/ghostpads/Makefile.am: 
11541         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11542
11543         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11544         These two routines are the only ones that set
11545         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11546         pad template. They should be made static, depending on ABI needs.
11547         (gst_real_pad_dispose): Handle the case of ghost pads without a
11548         parent. Assert after dealing with ghost pads that the ghost pad
11549         list is empty.
11550         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11551         set after creation.
11552         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11553         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11554         functions. set_property will call add_ghost_pad/remove_ghost_pad
11555         as appropriate.
11556         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11557
11558         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11559         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11560         (gst_element_remove_pad): Handle ghost pads as well.
11561         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11562         depending on API-stability needs).
11563
11564 2004-02-05  Andy Wingo  <wingo@pobox.com>
11565
11566         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11567         of course they're const
11568
11569 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11570
11571         * tools/Makefile.am:
11572         * tools/gst-feedback:
11573         * tools/gst-feedback-0.7:
11574           make gst-feedback versioned too for consistency
11575
11576 2004-02-11  David Schleef  <ds@schleef.org>
11577
11578         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11579         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11580
11581 2004-02-10  Julien MOUTTE <julien@moutte.net>
11582
11583         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11584         the structure does not contain a valid tag list. Adding a safety check
11585         to remove a noisy warning in that case.
11586
11587 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11588
11589         * gst/gst.c: fix name to be in line with others
11590
11591 2004-02-09  Julien MOUTTE <julien@moutte.net>
11592
11593         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11594         not shout that loud when len is 0. Just return 0 silently.
11595
11596 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11597
11598         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11599         because data_unref has one and I prefer the debug to be symetric.
11600         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11601         were refed when added to the queue and unrefed only once when the queue
11602         was flushed. Now the flush handler unref the buffers two times : first
11603         unref for the ref added when pushing in the queue's tail and second
11604         unref to destroy the flushed buffer.
11605
11606 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11607
11608         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11609
11610 2004-02-06  David Schleef  <ds@schleef.org>
11611
11612         * docs/random/ds/0.9-suggested-changes: Random ramblings
11613         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11614         to int before printing.
11615         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11616         * gst/parse/parse.l: same.  See bug #129600
11617
11618 2004-02-06  David Schleef  <ds@schleef.org>
11619
11620         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11621         (gst_index_add_entry), (gst_index_add_associationv),
11622         (gst_index_add_association): Add gst_index_add_associationv()
11623         and clean up gst_index_add_association(). #127133
11624
11625 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11626
11627         * autogen.sh: check out common with right tag if CVS/Tag exists
11628
11629 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11630
11631         * testsuite/ghostpads/ghostpads.c: (main):
11632           fix testsuite from segfaulting
11633
11634 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11635
11636         * Makefile.am: add release target
11637         * configure.ac: bump nano to 1
11638         * docs/random/release:
11639
11640 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11641
11642         * gst/gstcaps.h:
11643         * gst/gstelement.c: (gst_element_base_class_init),
11644         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11645         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11646         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11647         (gst_real_pad_dispose):
11648         * gst/gststructure.c: (gst_structure_free),
11649         (gst_structure_from_string):
11650           put reverted patch back in
11651         * gst/gstelement.c: (gst_element_remove_pad):
11652           free explicit caps if they're set
11653         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11654           copy the structure when fixating
11655
11656 2004-02-05  David Schleef  <ds@schleef.org>
11657
11658         * gst/gstmarshal.list:
11659         * gst/gstpad.c: (gst_real_pad_class_init),
11660         (_gst_real_pad_fixate_accumulator):
11661         Revert POINTER->BOXED change in signal marshaller.
11662
11663 === release 0.7.4 ===
11664                                                                                 
11665 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11666                                                                                 
11667         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11668         * configure.ac: changed for release
11669
11670 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11671
11672         * gstreamer.spec.in:
11673           bump required version of gtk-doc
11674
11675 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11676
11677         * gst/gstcaps.h:
11678         * gst/gstelement.c: (gst_element_base_class_init),
11679         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11680         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11681         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11682         (gst_real_pad_dispose):
11683         * gst/gststructure.c: (gst_structure_free),
11684         (gst_structure_from_string):
11685           revert patch that breaks applications, reapply after release
11686           to get this fixed properly
11687
11688 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11689
11690         * gst/gsttag.c: (_gst_tag_initialize):
11691         * gst/gsttag.h:
11692           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11693
11694 2004-02-04  David Schleef  <ds@schleef.org>
11695
11696         Fix some memleaks:
11697         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11698         (gst_spider_plug_from_srcpad):
11699         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11700
11701 2004-02-04  David Schleef  <ds@schleef.org>
11702
11703         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11704         a GstRealPad before accessing its structure members.
11705
11706 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11707
11708         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11709         (gst_clock_get_speed):
11710         * gst/gstclock.h:
11711           reset padding, remove unused fields
11712
11713 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11714
11715         * gst/autoplug/gstspideridentity.c:
11716         (gst_spider_identity_sink_loop_type_finding):
11717           use get_allowed_caps, not get_caps (fixes #132519)
11718         * gst/elements/gsttypefind.c: (stop_typefinding):
11719           use correct order when sending buffers and seeking
11720
11721 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11722
11723         * configure.ac:
11724         * gst/gstelement.h:
11725         * gst/gstpad.h:
11726         * gst/gstqueue.h:
11727           upgrade libtool CURRENT, reset padding
11728
11729 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11730
11731         * configure.ac:
11732           bump to prerelease
11733           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11734
11735 2004-02-04  David Schleef  <ds@schleef.org>
11736
11737         * docs/random/ds/0.9-suggested-changes: random notes
11738         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11739         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11740         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11741         expansion.
11742         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11743         (gst_filesink_get_query_types): same
11744         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11745         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11746         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11747         to use new GST_PTR_FORMAT.
11748         * gst/gstelement.h: deprecate function factory macros
11749         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11750         These are our last variadic macros that can't be replaced with
11751         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11752         attempting to deprecate gst_element_clock_wait().
11753         * gst/gstevent.h: same
11754         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11755         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11756         * gst/gstpad.h: deprecate function factory macros similar to above.
11757
11758 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11759
11760         * configure.ac:
11761         * tools/Makefile.am:
11762         * tools/gst-run.c: (popt_callback), (hash_print_key),
11763         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11764         (get_candidates), (main):
11765           add new source file to generate non-versioned wrapper binaries
11766           for our tools.
11767
11768 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11769
11770         * gst/gstevent.c: (_gst_event_free):
11771           actually break; inside the switch statement
11772         * gst/parse/grammar.y:
11773           fix memleak where GValues weren't unset
11774
11775 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11776
11777         * gst/gststructure.c: (gst_structure_from_string):
11778           fix huge memleak
11779         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11780         (new_entry), (gst_type_find_element_chain):
11781         * gst/gstelement.c: (gst_element_base_class_init),
11782         (gst_element_class_set_details):
11783         * gst/gstpad.c: (gst_pad_can_link_filtered):
11784           fix smaller memleaks
11785         * gst/gstpad.c: (gst_real_pad_dispose):
11786           check that explicit caps are gone
11787         * gst/gststructure.c: (gst_structure_free):
11788           actually free the structure
11789         * gst/gstelement.c: (gst_element_clear_pad_caps):
11790           unset explicit caps
11791
11792 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11793
11794         * tools/Makefile.am:
11795           use AM_CFLAGS since all the CFLAGS are the same
11796           use AM_LDFAGS
11797
11798 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11799
11800         * docs/manual/gnome.xml:
11801           expand example a little
11802         * gst/gst.c: (gst_init_with_popt_table),
11803         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11804           make sure popt option displays are done with right textdomain
11805           use GstPoptOption type
11806         * gst/gst.h:
11807           create GstPoptOption type
11808
11809 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11810
11811         * gst/gsterror.c: (_gst_stream_errors_init):
11812         * gst/gsterror.h:
11813           adding error type for no codec
11814         * po/POTFILES.in:
11815           add gst-inspect
11816         * po/nl.po:
11817           update dutch translation
11818         * tools/gst-inspect.c: (print_element_list), (main):
11819           do proper internationalization
11820         * tools/gst-launch.c: (idle_func):
11821           remove commented out function call
11822
11823 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11824
11825         * docs/README:
11826           add some error fixing notes
11827         * docs/gst/gstreamer-sections.txt:
11828           remove double entries
11829         * docs/gst/tmpl/gstbin.sgml:
11830         * docs/gst/tmpl/gstclock.sgml:
11831           remove override
11832         * docs/gst/tmpl/gstelement.sgml:
11833         * docs/gst/tmpl/gstindex.sgml:
11834         * docs/gst/tmpl/gstobject.sgml:
11835         * docs/gst/tmpl/gstpadtemplate.sgml:
11836         * docs/gst/tmpl/gstreamer-unused.sgml:
11837         * docs/gst/tmpl/gsttag.sgml:
11838         * docs/gst/tmpl/gstthread.sgml:
11839         * docs/gst/tmpl/gstxml.sgml:
11840         * gst/gsttag.h:
11841           sync header prototypes with c decls
11842         * gst/gsttaginterface.c:
11843           fix doc headers
11844
11845 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11846
11847         * gst/parse/Makefile.am:
11848         * gst/gstobject.h:
11849           get rid of gstmarshal.h dependency. It's not needed.
11850         * gst/gst.h:
11851         * gst/elements/gstfakesink.c:
11852         * gst/elements/gstfakesrc.c:
11853         * gst/elements/gstidentity.c:
11854         * gst/gstbin.c:
11855         * gst/gstelement.c:
11856         * gst/gstindex.c:
11857         * gst/gstobject.c:
11858         * gst/gstpad.c:
11859         * gst/gstthread.c:
11860         * gst/gstxml.c:
11861         * libs/gst/control/dparam.c:
11862         * libs/gst/control/dparammanager.c:
11863           include gstmarshal.h.
11864         Fixes #132045
11865
11866 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11867
11868         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11869         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11870         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11871         * gst/elements/gstfilesrc.h:
11872           don't ref the filesrc when creating mmaped buffers. Don't keep a
11873           list of not-yet-destroyed buffers.
11874         * gst/gstbuffer.h:
11875           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11876
11877 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11878
11879         * gst/gst.c: (init_pre):
11880           remove textdomain
11881
11882 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11883
11884         * docs/pwg/advanced-events.xml:
11885         * docs/pwg/advanced-scheduling.xml:
11886         * docs/pwg/intro-basics.xml:
11887         * docs/pwg/other-manager.xml:
11888         * docs/pwg/other-nton.xml:
11889         * docs/pwg/other-ntoone.xml:
11890         * docs/pwg/other-oneton.xml:
11891         * docs/pwg/pwg.xml:
11892           All sort of documentation... Forgot what. Point is that I want this
11893           in before I leave. The 'other-*' will be the last section and will
11894           explain issues specific to these type of elements.
11895
11896 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11897
11898         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11899         (gst_filesrc_get_read):
11900           set all the values on buffers that we can
11901
11902 2004-02-02  David Schleef  <ds@schleef.org>
11903
11904         Change usage of isblah() to g_ascii_isblah() to be more locale
11905         independent.  (#133076)
11906         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11907         * gst/gstutils.c:
11908         * gst/parse/parse.l:
11909
11910 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11911
11912         reviewed by: David Schleef  <ds@schleef.org>
11913
11914         Fix memory leaks:
11915         * gst/gstcaps.c: (gst_caps_to_string):
11916         * gst/registries/gstxmlregistry.c:
11917         (gst_xml_registry_add_path_list_func),
11918         (gst_xml_registry_parse_padtemplate):
11919
11920 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11921
11922         * gst/gstelement.c: (gst_element_default_error):
11923           suffix error messages with period
11924
11925 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11926
11927         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11928         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11929         * gst/gsterror.c: (gst_error_get_message):
11930           Suffix with dots
11931         * po/fr.po:
11932         * po/nl.po:
11933           Update translation files
11934
11935 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11936
11937         * gst/autoplug/gstspideridentity.c:
11938         (gst_spider_identity_sink_loop_type_finding):
11939         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11940         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11941         (gst_filesink_close_file), (gst_filesink_handle_event),
11942         (gst_filesink_chain):
11943         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11944         (gst_filesrc_get_read), (gst_filesrc_open_file):
11945         * gst/elements/gstidentity.c: (gst_identity_chain):
11946         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11947         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11948         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11949         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11950         * gst/gsterror.c: (_gst_core_errors_init),
11951         (_gst_library_errors_init), (_gst_resource_errors_init),
11952         (_gst_stream_errors_init), (gst_error_get_message):
11953         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11954         (gst_pad_recover_caps_error), (gst_pad_pull):
11955         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11956         * gst/schedulers/gstbasicscheduler.c:
11957         (gst_basic_scheduler_chainhandler_proxy),
11958         (gst_basic_scheduler_gethandler_proxy),
11959         (gst_basic_scheduler_cothreaded_chain):
11960           Suffix error messages with period.
11961           Use (NULL) instead of NULL
11962
11963 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11964
11965         * docs/gst/tmpl/gstelement.sgml:
11966         * docs/gst/tmpl/gstxml.sgml:
11967         * gst/gstelement.c: (gst_element_error_full):
11968           add element path to error
11969
11970 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11971
11972         * docs/random/mimetypes:
11973           update raw int/float info
11974         * gst/gsttag.c: (_gst_tag_initialize):
11975         * gst/gsttag.h:
11976           add GST_TAG_ENCODER
11977
11978 2004-01-30  David Schleef  <ds@schleef.org>
11979
11980         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11981           missing (#132991)
11982
11983 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11984
11985         reviewed by Benjamin Otte 
11986           parts of the patch submitted in bug #113913
11987
11988         * configure.ac:
11989           use AC_C_INLINE. Use = instead of == with test
11990         * examples/plugins/example.c:
11991         * gst/autoplug/gstspideridentity.c:
11992         * gst/elements/gstfdsrc.c:
11993         * gst/elements/gstfilesrc.c:
11994         * gst/elements/gstidentity.c:
11995         * gst/elements/gstmultidisksrc.c:
11996         * gst/elements/gststatistics.c:
11997         * gst/gstelement.c:
11998         * gst/gstobject.c:
11999         * gst/gstpad.c:
12000         * gst/gstpipeline.c:
12001         * gst/gstthread.c:
12002           don't end enums with a comma
12003         * gst/gstindex.c: (gst_index_compare_func):
12004           do explicit casting to gint
12005         * gst/gsttrace.c: (gst_trace_text_flush):
12006           #define strsize as a macro
12007
12008 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12009
12010         * docs/README:
12011         * docs/gst/gstreamer-docs.sgml:
12012         * docs/gst/gstreamer-sections.txt:
12013         * docs/gst/tmpl/gstelement.sgml:
12014         * docs/gst/tmpl/gsterror.sgml:
12015         * docs/gst/tmpl/gstinterface.sgml:
12016         * docs/gst/tmpl/gstreamer-unused.sgml:
12017         * docs/gst/tmpl/gststructure.sgml:
12018         * docs/gst/tmpl/gsttag.sgml:
12019         * docs/gst/tmpl/gsttaginterface.sgml:
12020         * docs/gst/tmpl/gstvalue.sgml:
12021         make sure all API ends up in the built docs
12022         * gst/gstinterface.c:
12023         * gst/gststructure.c: (gst_structure_id_set_value),
12024         (gst_structure_set_value), (gst_structure_id_get_value):
12025         * gst/gststructure.h:
12026         * gst/gstvalue.h:
12027         sync .h with .c declarations
12028
12029 2004-01-30  Julien Moutte  <julien@moutte.net>
12030
12031         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12032         Ronald will fix riffread.
12033
12034 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12035
12036         * docs/pwg/advanced-interfaces.xml:
12037           Added tuner interface docs.
12038
12039 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12040
12041         * docs/random/mimetypes:
12042           correct Theora information
12043         * gst/gstelement.h:
12044           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12045
12046 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12047
12048         * gst/gstelement.c: (gst_element_error_full):
12049         * gst/gstelement.h:
12050           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12051
12052 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12053
12054         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12055         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12056         again and even before DISCONT.
12057         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12058         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12059         bytestream so that it's not stopping to fill the bytestream if events
12060         different than EOS or DISCONT are received. Instead it process them so
12061         that they go downstream.
12062
12063 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12064
12065         * docs/gst/tmpl/gstelement.sgml:
12066         * docs/gst/tmpl/gstreamer-unused.sgml:
12067         * docs/gst/tmpl/gstxml.sgml:
12068         * gst/autoplug/gstspideridentity.c:
12069         (gst_spider_identity_sink_loop_type_finding):
12070         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12071         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12072         (gst_filesink_close_file), (gst_filesink_handle_event),
12073         (gst_filesink_chain):
12074         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12075         (gst_filesrc_get_read), (gst_filesrc_open_file):
12076         * gst/elements/gstidentity.c: (gst_identity_chain):
12077         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12078         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12079         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12080         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12081         * gst/gstelement.h:
12082         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12083         (gst_pad_recover_caps_error), (gst_pad_pull):
12084         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12085         * gst/schedulers/gstbasicscheduler.c:
12086         (gst_basic_scheduler_chainhandler_proxy),
12087         (gst_basic_scheduler_gethandler_proxy),
12088         (gst_basic_scheduler_cothreaded_chain):
12089           gst_element_error -> GST_ELEMENT_ERROR
12090
12091 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12092
12093         * docs/Makefile.am:
12094         * docs/gst/tmpl/gstelement.sgml:
12095         * docs/gst/tmpl/gstxml.sgml:
12096         * docs/manuals.mak:
12097         * docs/pwg/advanced-request.xml:
12098         * docs/pwg/advanced-scheduling.xml:
12099         * docs/pwg/advanced-tagging.xml:
12100           fix non-validating docbook using CDATA
12101           make sure make check-local gets run first to check if it validates
12102
12103 2004-01-29  Julien MOUTTE <julien@moutte.net>
12104
12105         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12106         handling (up and downstream).
12107         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12108         my_filter thing.
12109
12110 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12111
12112         * docs/pwg/advanced-tagging.xml:
12113           Add docs about tag writing.
12114
12115 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12116
12117         * docs/pwg/advanced-tagging.xml:
12118           Add a part about tag reading and application signalling... Tag
12119           writing still needs to be documented.
12120         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12121           We can set file locations in READY, too.
12122
12123 2004-01-29  Julien MOUTTE <julien@moutte.net>
12124
12125         * docs/random/ds/element-checklist: Adding some notes about src
12126         events.
12127
12128 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12129
12130         * docs/random/mimetypes:
12131           Update docs to point to correct elements for various mimetypes, and
12132           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12133           <stephane.loeuillet@tiscali.fr>.
12134
12135 2004-01-28  David Schleef  <ds@schleef.org>
12136
12137         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12138
12139 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12140
12141         * docs/random/mimetypes:
12142           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12143           undefined"
12144         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12145           make it only work in NULL.
12146         * gst/gstcaps.c:
12147           don't posion NULL caps
12148         * gst/gstelement.c: (gst_element_set_time):
12149           add debugging statement
12150         * gst/gstelement.c: (gst_element_emit_found_tag),
12151         (gst_element_found_tag_func), (gst_element_found_tags):
12152         * gst/gstelement.h:
12153           These functions take const taglists
12154         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12155           fix memleak
12156         * gst/gstpad.c: (gst_pad_event_default):
12157           make more effort on handling discont and clocks, g_warn if everything
12158           fails
12159         * gst/gststructure.c: (gst_structure_remove_fields),
12160         (gst_structure_remove_fields_valist):
12161         * gst/gststructure.h:
12162           add gst_structure_remove_fields(_valist)
12163         * gst/gsttag.c:
12164           fix doc glitch
12165
12166 2004-01-28  David Schleef  <ds@schleef.org>
12167
12168         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12169         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12170         Fix memory leakage of gst_caps_to_string().
12171
12172         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12173         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12174         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12175         (gst_spider_identity_sink_loop_type_finding):
12176         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12177         (find_suggest):
12178         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12179         (gst_pad_set_explicit_caps):
12180         * gst/parse/grammar.y:
12181
12182 2004-01-28  David Schleef  <ds@schleef.org>
12183
12184         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12185         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12186         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12187         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12188         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12189         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12190         (gst_debug_log_default), (_gst_info_printf_extension),
12191         (_gst_info_printf_extension_arginfo):  Add printf extension.
12192         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12193         * gst/gststructure.c: (gst_structure_to_string),
12194         (_gst_structure_parse_value): Use gst_value_deserialize() and
12195         remove old code.
12196         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12197         (gst_value_deserialize_boolean), (gst_strtoi),
12198         (gst_value_deserialize_int), (gst_value_deserialize_double),
12199         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12200         a bunch of deserialize functions and gst_value_deserialize.
12201         * gst/gstvalue.h: er, _de_serialize, not unserialize
12202         * testsuite/caps/string-conversions.c: (main): We don't currently
12203         handle (float) in caps, so convert these to (double).
12204         * testsuite/debug/Makefile.am: Add new test for the printf extension
12205         * testsuite/debug/printf_extension.c: (main): same
12206
12207 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12208
12209         * docs/random/company/time:
12210           Add some docs about clocking and time
12211
12212 2004-01-28  Julien MOUTTE <julien@moutte.net>
12213
12214         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12215
12216 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12217
12218         * docs/pwg/advanced-clock.xml:
12219         * docs/pwg/advanced-dparams.xml:
12220         * docs/pwg/advanced-events.xml:
12221         * docs/pwg/advanced-interfaces.xml:
12222         * docs/pwg/advanced-midi.xml:
12223         * docs/pwg/advanced-request.xml:
12224         * docs/pwg/advanced-scheduling.xml:
12225         * docs/pwg/advanced-tagging.xml:
12226         * docs/pwg/advanced-types.xml:
12227         * docs/pwg/appendix-checklist.xml:
12228         * docs/pwg/building-boiler.xml:
12229         * docs/pwg/building-chainfn.xml:
12230         * docs/pwg/building-filterfactory.xml:
12231         * docs/pwg/building-pads.xml:
12232         * docs/pwg/building-props.xml:
12233         * docs/pwg/building-signals.xml:
12234         * docs/pwg/building-state.xml:
12235         * docs/pwg/building-testapp.xml:
12236         * docs/pwg/intro-basics.xml:
12237         * docs/pwg/intro-preface.xml:
12238         * docs/pwg/other-autoplugger.xml:
12239         * docs/pwg/other-sink.xml:
12240         * docs/pwg/other-source.xml:
12241         * docs/pwg/titlepage.xml:
12242           fix up id's
12243
12244 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12245
12246         * docs/95NonPath:
12247         * docs/HACKING:
12248         * docs/README:
12249         * docs/building-the-docs-on-debian:
12250           collect relevant bits of doc info
12251
12252 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12253
12254         * docs/pwg/advanced_tagging.xml:
12255           Half-assed commit so Thomas can re-arrange document IDs here to be
12256           consistent, too.
12257
12258 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12259
12260         * docs/manual/autoplugging.xml:
12261         * docs/manual/bins-api.xml:
12262         * docs/manual/bins.xml:
12263         * docs/manual/buffers-api.xml:
12264         * docs/manual/buffers.xml:
12265         * docs/manual/clocks.xml:
12266         * docs/manual/components.xml:
12267         * docs/manual/cothreads.xml:
12268         * docs/manual/debugging.xml:
12269         * docs/manual/dparams-app.xml:
12270         * docs/manual/dynamic.xml:
12271         * docs/manual/elements-api.xml:
12272         * docs/manual/elements.xml:
12273         * docs/manual/factories.xml:
12274         * docs/manual/gnome.xml:
12275         * docs/manual/goals.xml:
12276         * docs/manual/helloworld.xml:
12277         * docs/manual/helloworld2.xml:
12278         * docs/manual/init-api.xml:
12279         * docs/manual/intro.xml:
12280         * docs/manual/links-api.xml:
12281         * docs/manual/links.xml:
12282         * docs/manual/manual.xml:
12283         * docs/manual/motivation.xml:
12284         * docs/manual/pads-api.xml:
12285         * docs/manual/pads.xml:
12286         * docs/manual/plugins-api.xml:
12287         * docs/manual/plugins.xml:
12288         * docs/manual/programs.xml:
12289         * docs/manual/queues.xml:
12290         * docs/manual/quotes.xml:
12291         * docs/manual/schedulers.xml:
12292         * docs/manual/states-api.xml:
12293         * docs/manual/states.xml:
12294         * docs/manual/threads.xml:
12295         * docs/manual/typedetection.xml:
12296         * docs/manual/xml.xml:
12297           use chapter, part, section or misc as id starts for all bits
12298
12299 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12300
12301         * docs/gst/gstreamer-sections.txt:
12302           Fix up TITLE of the sections
12303
12304 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12305
12306         * docs/pwg/advanced_interfaces.xml:
12307           Add documentation on propertyprobing.
12308         * docs/pwg/advanced_events.xml:
12309         * docs/pwg/advanced_tagging.xml:
12310         * docs/pwg/building_boiler.xml:
12311         * docs/pwg/building_filterfactory.xml:
12312         * docs/pwg/pwg.xml:
12313           Move filterfactory and tagging into their own chapter, add a chapter
12314           on events. all these are empty placeholders that will be filled in
12315           some day.
12316
12317 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12318
12319         * docs/pwg/advanced_interfaces.xml:
12320           Docs for mixer interface. Also a check for website uploading.
12321
12322 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12323
12324         * docs/HACKING:
12325         * docs/Makefile.am:
12326         * docs/faq/Makefile.am:
12327         * docs/gst/Makefile.am:
12328         * docs/gst/tmpl/gstelement.sgml:
12329         * docs/gst/tmpl/gstplugin.sgml:
12330         * docs/gst/tmpl/gstreamer-unused.sgml:
12331         * docs/libs/Makefile.am:
12332         * docs/manual/Makefile.am:
12333         * docs/manuals.mak:
12334         * docs/pwg/Makefile.am:
12335         * docs/upload.mak:
12336           Separate out upload target and make it similar for
12337           both docbook and gtk-doc docs
12338
12339 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12340
12341         * docs/manuals.mak:
12342           Fix upload target to work with freedesktop
12343
12344 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12345
12346         * docs/pwg/advanced_types.xml:
12347           Add notes on creating your own types.
12348         * docs/pwg/building_boiler.xml:
12349         * docs/pwg/building_pads.xml:
12350         * docs/pwg/building_state.xml:
12351           Add some stuff about how to retrieve values from structures, how
12352           that relates to types and change layout slightly again to be almost
12353           perfect.
12354
12355 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12356
12357         * docs/pwg/advanced_dparams.xml:
12358         * docs/pwg/advanced_scheduling.xml:
12359           Change index layout slightly.
12360
12361 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12362
12363         * docs/pwg/advanced_clock.xml:
12364         * docs/pwg/advanced_interfaces.xml:
12365         * docs/pwg/advanced_midi.xml:
12366           General placeholders for now.
12367         * docs/pwg/advanced_request.xml:
12368           Explanation about sometimes and request pads.
12369         * docs/pwg/advanced_scheduling.xml:
12370           Concept of bytestream, loopfunctions and schedulers.
12371         * docs/pwg/building_boiler.xml:
12372           Add something about plugin-init.
12373
12374 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12375
12376         * docs/pwg/building_pads.xml:
12377           Fix broken docbook
12378
12379 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12380
12381         * docs/pwg/advanced_interfaces.xml:
12382         * docs/pwg/pwg.xml:
12383           Add as a placeholder for future filling-in.
12384         * docs/pwg/basics_autoplugging.xml:
12385         * docs/pwg/basics_buffers.xml:
12386         * docs/pwg/basics_elements.xml:
12387         * docs/pwg/basics_events.xml:
12388         * docs/pwg/basics_plugins.xml:
12389         * docs/pwg/basics_types.xml:
12390           Remove, because unused (this is all in intro_basics.xml).
12391         * docs/pwg/building_signals.xml:
12392           Short intro to signals + reference to GObject docs - we really
12393           shouldn't go into these sort of things to deply because we don't
12394           use them that extensively anyway.
12395         * docs/pwg/building_state.xml:
12396           Explanation of states. Benjamin, please check.
12397         * docs/pwg/building_testapp.xml:
12398           Put everything in one page - putting only a few lines of content
12399           per page doesn't really make sense.
12400
12401           Time to get into the advanced topics. ;).
12402
12403 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12404
12405         * docs/pwg/advanced_types.xml:
12406           Finish documenting the current state of mimetypes.
12407         * docs/pwg/building_boiler.xml:
12408         * docs/pwg/building_chainfn.xml:
12409         * docs/pwg/building_pads.xml:
12410         * docs/pwg/building_props.xml:
12411         * docs/pwg/building_testapp.xml:
12412           Start documenting the "how to build a simple audio filter" part
12413           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12414           states and (maybe?) a short introduction to capsnego in the chapter
12415           on pads (building_pads.xml). Capsnego should probably be explained
12416           fully in advanced_capsnego.xml or so.
12417
12418 2004-01-26  David Schleef  <ds@schleef.org>
12419
12420         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12421         * gst/gstpad.h: Add new function to allow element to (somewhat)
12422         specify non-fixed caps on a pad.
12423         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12424         that I added a few weeks ago.
12425
12426 2004-01-26  David Schleef  <ds@schleef.org>
12427
12428         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12429           making try_set_caps() work with non-fixed caps.
12430
12431 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12432
12433         * docs/pwg/advanced_types.xml:
12434         * docs/pwg/intro_basics.xml:
12435         * docs/pwg/intro_preface.xml:
12436         * docs/pwg/pwg.xml:
12437         * docs/pwg/titlepage.xml:
12438           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12439           in here (docs/random/mimetypes), and will from there on work on both
12440           updating outdated parts and adding missing parts.
12441           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12442
12443 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12444
12445         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12446           policy is set
12447
12448 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12449
12450         * gst/gstelement.h:
12451           remove gst_element_factory_get_version. It doesn't exist anymore.
12452         * gst/gstplugin.c:
12453         * gst/gstplugin.h:
12454           remove gst_plugin_set_name and change gst_plugin_get_longname to
12455           gst_plugin_get_description to match code.
12456         * gst/gsterror.h:
12457           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12458         * gst/gstpad.c: (gst_pad_try_set_caps):
12459           make it work with nonfixed caps.
12460           Note that even in the nonfixed case the link function of the pad
12461           that tries to set caps isn't called.
12462
12463 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12464
12465         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12466           fix bug where buffer was not assembled correctly
12467         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12468           silence by default
12469         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12470           only seek if there's no more buffers that could work without seeking
12471
12472 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12473
12474         * gst/gsttag.c: (_gst_tag_initialize):
12475         * gst/gsttag.h:
12476           Add application tag (for encoding/muxing app).
12477
12478 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12479
12480         * autogen.sh:
12481           make autopoint force, and libtoolize not copy
12482         * common/m4/as-docbook.m4:
12483           added docbook xml catalog setup check
12484         * common/m4/gst-doc.m4:
12485           use docbook check
12486
12487 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12488
12489         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12490         * gst/gsttag.h:
12491           add GstTagFlag
12492
12493 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12494
12495         * docs/gst/gstreamer-sections.txt:
12496         * docs/gst/tmpl/gst.sgml:
12497         * docs/gst/tmpl/gstbuffer.sgml:
12498         * docs/gst/tmpl/gstclock.sgml:
12499         * docs/gst/tmpl/gstelement.sgml:
12500         * docs/gst/tmpl/gstreamer-unused.sgml:
12501         * docs/gst/tmpl/gstxml.sgml:
12502           sync latest API changes to docs
12503
12504 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12505
12506         * gst/gstpluginfeature.c:
12507           fix doc snippet
12508         * tools/gst-inspect.c: (print_element_list):
12509           fix output of typefind
12510           add GPL header
12511         * tools/gst-launch.c:
12512           add GPL header
12513
12514 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12515
12516         * gst/elements/Makefile.am:
12517         * gst/elements/gstelements.c:
12518         * gst/elements/gsttypefindelement.c:
12519         * gst/elements/gsttypefindelement.h:
12520         * po/POTFILES.in:
12521         * po/fr.po:
12522         * po/nl.po:
12523           renamed gsttypefindelement to gsttypefind, conserving CVS history
12524
12525 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12526
12527         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12528         * gst/gsttag.h:
12529           add some tags used in ogg as well
12530           fix _ in replaygain tags
12531
12532 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12533
12534         * gst/gsterror.h:
12535           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12536
12537 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12538
12539         * gst/gstelement.c: (gst_element_error_full):
12540         * gst/gstelement.h:
12541           change _extended to _full
12542
12543 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12544
12545         reviewed by: <delete if not using a buddy>
12546
12547         * docs/gst/tmpl/gst.sgml:
12548         * docs/gst/tmpl/gstbuffer.sgml:
12549         * docs/gst/tmpl/gstclock.sgml:
12550         * docs/gst/tmpl/gstelement.sgml:
12551         * docs/gst/tmpl/gstreamer-unused.sgml:
12552         * docs/gst/tmpl/gstxml.sgml:
12553         * gst/gstelement.c: (gst_element_error_full):
12554         * gst/gstelement.h:
12555
12556 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12557
12558         * gst/gstelement.h: fix _gst_element_error_printf prototype
12559
12560 2004-01-20  David Schleef  <ds@schleef.org>
12561
12562         * gst/gststructure.c: (gst_structure_to_string):
12563         Convert function to use gst_value_serialize().
12564         * gst/gstvalue.c: (gst_value_serialize_list),
12565         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12566         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12567         (gst_value_serialize_int), (gst_value_serialize_double),
12568         (gst_string_wrap), (gst_value_serialize_string),
12569         (gst_value_serialize), (gst_value_deserialize):
12570         * gst/gstvalue.h:
12571         Add implementations for serialize.
12572
12573 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12574
12575         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12576         we want to keep that one in the future or change xvidenc.c to use 
12577         another error.
12578
12579 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12580
12581         * gst/gstelement.c: (_gst_element_error_printf):
12582         * gst/gstelement.h:
12583           privatise function
12584
12585 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12586
12587         * docs/random/error:
12588           doc explaining error system
12589         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12590           cleanup
12591
12592 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12593
12594         * gst/gst-i18n-app.h:
12595         * gst/gst-i18n-lib.h:
12596           remove inclusion of config.h
12597         * po/POTFILES.in:
12598         * po/nl.po:
12599           add gst/gstelement.c
12600
12601 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12602
12603         * po/nl.po: updated Dutch translation
12604
12605 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12606
12607         * gst/gsterror.c: (_gst_core_errors_init),
12608         (_gst_library_errors_init), (_gst_resource_errors_init),
12609         (_gst_stream_errors_init):
12610         remove ending punctuation dots
12611
12612 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12613
12614         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12615         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12616         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12617         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12618         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12619         use GST_ERROR_SYSTEM
12620
12621 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12622
12623         * gst/gstelement.c: (gst_element_error_printf),
12624         (gst_element_error_extended):
12625         * gst/gstelement.h:
12626           add a helper printf function so we can have NULL values passed.
12627
12628 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12629
12630         * gst/gstelement.h:
12631           add G_STMT macros to gst_element_error, which isn't strictly
12632           necessary but people tell me to anyway.
12633
12634 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12635
12636         * gst/Makefile.am:
12637         * gst/autoplug/gstspideridentity.c:
12638         (gst_spider_identity_sink_loop_type_finding):
12639         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12640         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12641         (gst_filesink_close_file), (gst_filesink_handle_event),
12642         (gst_filesink_chain):
12643         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12644         (gst_filesrc_map_region), (gst_filesrc_get_read),
12645         (gst_filesrc_open_file):
12646         * gst/elements/gstidentity.c: (gst_identity_chain):
12647         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12648         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12649         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12650         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12651         * gst/gst.h:
12652         * gst/gst_private.h:
12653         * gst/gstelement.c: (gst_element_class_init),
12654         (gst_element_default_error), (gst_element_error_func),
12655         (gst_element_error_extended):
12656         * gst/gstelement.h:
12657         * gst/gsterror.c: (_gst_core_errors_init),
12658         (_gst_library_errors_init), (_gst_resource_errors_init),
12659         (_gst_stream_errors_init), (gst_error_get_message):
12660         * gst/gsterror.h:
12661         * gst/gstinfo.c: (_gst_debug_init):
12662         * gst/gstmarshal.list:
12663         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12664         (gst_pad_recover_caps_error), (gst_pad_pull):
12665         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12666         * gst/schedulers/gstbasicscheduler.c:
12667         (gst_basic_scheduler_chainhandler_proxy),
12668         (gst_basic_scheduler_gethandler_proxy),
12669         (gst_basic_scheduler_cothreaded_chain):
12670         * po/POTFILES.in:
12671         * po/fr.po:
12672         * po/nl.po:
12673           change error signal
12674           add error categories
12675
12676 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12677
12678         * gst/gsttag.c: (_gst_tag_initialize):
12679         * gst/gsttag.h:
12680         Add replaygain tag
12681
12682 2004-01-18  Colin Walters  <walters@verbum.org>
12683
12684         * examples/retag/retag.c: Call gst_init before processing
12685         program args.  Add g_assert to _link_many call.
12686
12687 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12688
12689         * gst/gstpad.c: (gst_pad_alloc_buffer):
12690           Return a newly allocated buffer when the pad has no peer.
12691
12692 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12693
12694         * gst/gstclock.c: (gst_clock_get_time):
12695           make it compile with gcc 2.95 again.
12696           Patch by Scott Wheeler
12697
12698 2004-01-15  David Schleef  <ds@schleef.org>
12699
12700         * gst/gstcaps.h:
12701         Added gst_caps_is_simple() macro.
12702         * testsuite/caps/caps.c: (test1):
12703         * testsuite/caps/intersect2.c: (main):
12704         * testsuite/caps/intersection.c: (main):
12705         Fixes to make 'make check' work again after removing
12706         gst_caps_is_chained().
12707
12708 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12709
12710         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12711         and additions to the MIDI document.
12712
12713 2004-01-15  David Schleef  <ds@schleef.org>
12714
12715         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12716         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12717         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12718
12719 2004-01-15  David Schleef  <ds@schleef.org>
12720
12721         * gst/gstqueue.c:
12722         * gst/gstqueue.h:
12723         Fix the spelling of "treshold" and make min_threshold actually
12724         affect the queue.
12725
12726 2004-01-15  David Schleef  <ds@schleef.org>
12727
12728         * gst/gstcaps.c:
12729         Add lots of documentation.
12730         * gst/gstcaps.h:
12731         Deprecate a few functions.
12732         * gst/gstpad.c:
12733         Removed use of deprecated functions.
12734
12735 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12736
12737         * gst/gstpad.c: (gst_pad_is_linked):
12738         * gst/gstpad.h:
12739           implement gst_pad_is_linked
12740         * gst/gstelement.h:
12741           reserve space for initiate_state_change
12742
12743 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12744
12745         * gst/autoplug/gstspideridentity.c:
12746         (gst_spider_identity_sink_loop_type_finding):
12747           break infinite loop by just returning instead of looping
12748         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12749           set event time difference correctly. Set it to 1 second instead
12750           of 100ms to be more tolerant
12751         * gst/gstelement.c: (gst_element_set_time):
12752           add debugging output
12753
12754 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12755
12756         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12757           query if buffers are inside the pool, ignore events
12758
12759 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12760
12761         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12762         (gst_clock_set_speed), (gst_clock_set_active),
12763         (gst_clock_is_active), (gst_clock_reset),
12764         (gst_clock_handle_discont):
12765         * gst/gstclock.h:
12766           deprecate old interface and disable functions that aren't in use
12767           anymore.
12768         * gst/gstelement.h:
12769         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12770         (gst_element_set_time), (gst_element_adjust_time):
12771           add concept of "element time" and functions to get/set this time.
12772         * gst/gstelement.c: (gst_element_change_state):
12773           update element time correctly.
12774         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12775           This is a debug message, not a g_critical.
12776         * gst/gstpad.c: (gst_pad_event_default):
12777           handle discontinuous events right with element time.
12778         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12779           update to clocking fixes.
12780           set clocks on elements in READY=>PAUSED. The old behaviour caused
12781           a wrong element time on the first element that started playing.
12782         * gst/schedulers/gstbasicscheduler.c:
12783         (gst_basic_scheduler_class_init):
12784         * gst/schedulers/gstoptimalscheduler.c:
12785         (gst_opt_scheduler_class_init):
12786           remove code that just implements the default behaviour.
12787         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12788           update to use new clocking functions
12789         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12790         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12791           update to test new element time.
12792         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12793           use _get_allowed_caps instead of _get_caps. This catches filtered
12794           caps correctly.
12795         * testsuite/debug/commandline.c:
12796           update for new GST_DEBUG syntax.
12797         * testsuite/threads/Makefile.am:
12798           disable a test that only works sometimes.
12799
12800 2004-01-13  Julien MOUTTE <julien@moutte.net>
12801
12802         * po/LINGUAS: Adding fr.
12803         * po/fr.po: Adding french translation.
12804
12805 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12806
12807         * gst/parse/grammar.y:
12808         * po/POTFILES.in:
12809         * po/nl.po:
12810         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12811           translate parsing error messages
12812
12813 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12814
12815         * po/POTFILES.in: adding gst-launch
12816         * po/nl.po: updated translation, all 99 strings translated
12817         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12818         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12819           fix strings for translation
12820
12821 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12822
12823         * gst/gst.c:
12824           - capitalize beginnings of popt options
12825           - fix strings for translation
12826           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12827
12828 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12829
12830         * po/README: add some notes on how to update translations
12831
12832 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12833
12834         * ABOUT-NLS: removed, is autogenerated from autopoint
12835         * autogen.sh: add autopoint stuff
12836         * configure.ac: fix up gettext stuff
12837         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12838         * gst/elements/gsttypefindelement.c: add header include
12839         * gst/gettext.h: add header, copy from system-installed header
12840         * gst/gst-i18n-app.h: to be included by each app having translations
12841         * gst/gst-i18n-lib.h: to be included by each lib having translations
12842         * gst/gst.c: (init_pre): fix up gettext calls
12843         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12844         * po/LINGUAS: the new way to specify translations present
12845         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12846         * po/Makevars: the variables filled in for GStreamer
12847         * po/POTFILES.in: added new files with translations
12848         * po/de.po: has new strings
12849         * po/nl.po: readded, has new strings
12850
12851 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12852
12853         * gst/gsttag.c: fix some strings marked for translation
12854
12855 2004-01-13  Iain <iain@prettypeople.org>
12856
12857         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12858         group when we add an element to it, cos we unref it when we remove one
12859
12860 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12861
12862         * testsuite/debug/commandline.c: (debug_not_reached):
12863         * testsuite/debug/output.c: (check_message):
12864           fix testsuite
12865
12866 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12867
12868         * examples/cutter/.cvsignore:
12869         * examples/helloworld/.cvsignore:
12870         * examples/launch/.cvsignore:
12871         * examples/manual/.cvsignore:
12872         * examples/mixer/.cvsignore:
12873         * examples/pingpong/.cvsignore:
12874         * examples/plugins/.cvsignore:
12875         * examples/queue/.cvsignore:
12876         * examples/queue2/.cvsignore:
12877         * examples/queue3/.cvsignore:
12878         * examples/queue4/.cvsignore:
12879         * examples/retag/.cvsignore:
12880         * examples/thread/.cvsignore:
12881         * examples/typefind/.cvsignore:
12882         * examples/xml/.cvsignore:
12883         * gst/.cvsignore:
12884         * gst/autoplug/.cvsignore:
12885         * gst/elements/.cvsignore:
12886         * gst/indexers/.cvsignore:
12887         * gst/parse/.cvsignore:
12888         * gst/registries/.cvsignore:
12889         * gst/schedulers/.cvsignore:
12890         * libs/gst/bytestream/.cvsignore:
12891         * libs/gst/control/.cvsignore:
12892         * libs/gst/getbits/.cvsignore:
12893         * tests/.cvsignore:
12894         * tests/bufspeed/.cvsignore:
12895         * tests/instantiate/.cvsignore:
12896         * tests/memchunk/.cvsignore:
12897         * tests/muxing/.cvsignore:
12898         * tests/sched/.cvsignore:
12899         * tests/seeking/.cvsignore:
12900         * tests/threadstate/.cvsignore:
12901         * testsuite/.cvsignore:
12902         * testsuite/caps/.cvsignore:
12903         * testsuite/cleanup/.cvsignore:
12904         * testsuite/dynparams/.cvsignore:
12905         * testsuite/plugin/.cvsignore:
12906         * tools/.cvsignore:
12907           update - this is huge, because it includes *.bb, *.bbg and *.da files
12908           which are generated for gcov.
12909
12910 2004-01-11  David Schleef  <ds@schleef.org>
12911
12912         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12913         a function to parse integers in ways that strto[u]l() does not.
12914
12915 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12916
12917         * tools/gst-inspect.c: (print_caps):
12918           improve output of caps a bit
12919
12920 2004-01-11  David Schleef  <ds@schleef.org>
12921
12922         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12923         inherit correct flags (READONLY and DONTKEEP).
12924
12925 2004-01-11  David Schleef  <ds@schleef.org>
12926
12927         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12928         (gst_filesrc_map_region):
12929         * gst/gstbuffer.c: (_gst_buffer_initialize),
12930         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12931         (gst_buffer_new), (gst_buffer_create_sub),
12932         (gst_buffer_is_span_fast), (gst_buffer_span):
12933         * gst/gstbuffer.h:
12934         Change GstBuffer private structure element names. (all files)
12935         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12936         (gst_queue_link):
12937         * gst/gstqueue.h:
12938         Implement getcaps/pad_link functions that handle the case where
12939         there are data in the queue.
12940
12941 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12942
12943         * gst/elements/gstbufferstore.c:
12944           initialize debugging structure correctly
12945         * gst/elements/gsttee.c: (gst_tee_set_property):
12946           g_object_notify when property was changed
12947         * gst/elements/gsttypefindelement.c:
12948         (gst_type_find_element_change_state):
12949           clear caps correctly
12950
12951 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12952
12953         * gst/gstqueue.c: (gst_queue_init):
12954           Use better defaults for when a queue should block. This
12955           gets rid of jerky playback for quite a few files.
12956           It takes more memory.
12957
12958 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12959
12960         (gst_xml_registry_parse_padtemplate):
12961           make critical message slightly more useful
12962
12963 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12964
12965         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12966         (gst_debug_message_get), (gst_debug_log_default):
12967         * gst/gstinfo.h:
12968           Change gst_debug_log(_valist) to take a const format string.
12969           Change prototype of log function and functions using those to 
12970           take a GstDebugMessage instead of a string that requires using
12971           gst_debug_message_get.
12972
12973 2004-01-08  David Schleef  <ds@schleef.org>
12974
12975         * Makefile.am:
12976         * configure.ac:
12977         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12978         and -ftest-coverage, which allows gcov to show information about
12979         testsuite coverage.
12980
12981 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12982
12983         * gst/gstutils.h:
12984           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12985           GST_PARENT_CALL_WITH_DEFAULT
12986         * gst/elements/gstaggregator.c: 
12987         * gst/elements/gstbufferstore.c: 
12988         * gst/elements/gstfakesink.c: 
12989         * gst/elements/gstfakesrc.c: 
12990         * gst/elements/gstfdsink.c: 
12991         * gst/elements/gstfdsrc.c: 
12992         * gst/elements/gstfilesink.c: 
12993         * gst/elements/gstfilesrc.c: 
12994         * gst/elements/gstidentity.c: 
12995         * gst/elements/gstmd5sink.c: 
12996         * gst/elements/gstmultidisksrc.c:
12997         * gst/elements/gstpipefilter.c: 
12998         * gst/elements/gstshaper.c:
12999         * gst/elements/gststatistics.c:
13000         * gst/elements/gsttee.c:
13001         * gst/elements/gsttypefindelement.c:
13002           use them.
13003
13004 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13005
13006         * docs/gst/gstreamer-docs.sgml: remove props
13007         * docs/gst/gstreamer-sections.txt: remove props
13008         * docs/gst/tmpl/gst.sgml:
13009         * docs/gst/tmpl/gstbin.sgml:
13010         * docs/gst/tmpl/gstbuffer.sgml:
13011         * docs/gst/tmpl/gstcaps.sgml:
13012         * docs/gst/tmpl/gstclock.sgml:
13013         * docs/gst/tmpl/gstelement.sgml:
13014         * docs/gst/tmpl/gstindex.sgml:
13015         * docs/gst/tmpl/gstobject.sgml:
13016         * docs/gst/tmpl/gstpad.sgml:
13017         * docs/gst/tmpl/gstpadtemplate.sgml:
13018         * docs/gst/tmpl/gstreamer-unused.sgml:
13019         * docs/gst/tmpl/gstthread.sgml:
13020         * docs/gst/tmpl/gstxml.sgml:
13021           sync with code reorganization
13022
13023 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13024
13025         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13026         Make the 'Could not find compatible pad' message more informative.
13027
13028 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13029                                                                                 
13030         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13031           Fix for if we pass NULL as property to location.
13032         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13033         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13034           Fix for instantiate-test (see below).
13035         * gst/gststructure.c: (_gst_structure_parse_value):
13036           Fix compile error on gcc-2.96.
13037         * configure.ac:
13038         * tests/Makefile.am:
13039         * tests/instantiate/Makefile.am:
13040         * tests/instantiate/create.c: (create_all_elements), (main):
13041           Add a test that instantiates all elements. This makes it easy to
13042           track dead code for old API/design (like setting event functions
13043           on sink pads and so on).
13044
13045 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13046
13047         * gst/gstcaps.c: (gst_caps_append_structure):
13048           Move the poisoning to allow a NULL structure
13049         * gst/gstevent.c: (_gst_event_free):
13050           When freeing a navigation event, free the structure
13051           also
13052
13053 2004-01-04  David Schleef  <ds@schleef.org>
13054
13055         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13056         Remove usage of gst_pad_proxy_fixate.
13057         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13058         (gst_caps_split_one), (gst_caps_replace):
13059         Add poisoning code.
13060         * gst/gstmarshal.list:
13061         Add pointer__pointer for fixate signal
13062         * gst/gstpad.c: (gst_real_pad_class_init),
13063         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13064         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13065         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13066         Add poisoning code. Add fixate signal on RealPad. Change
13067         set_explicit_caps() to take const GstCaps, like try_set_caps().
13068         * gst/gstpad.h:
13069         * testsuite/caps/Makefile.am:
13070         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13071
13072 2004-01-03  David Schleef  <ds@schleef.org>
13073
13074         * gst/elements/gsttypefindelement.c:
13075         (gst_type_find_element_have_type), (gst_type_find_element_init):
13076         Use gst_pad_use_explicit_caps for src pad.
13077         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13078         before using it.
13079
13080 2004-01-03  David Schleef  <ds@schleef.org>
13081
13082         * gst/gstelement.c: (gst_element_link_pads_filtered),
13083         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13084         that linking was successful.
13085         * gst/gstpad.c: (gst_pad_link_free),
13086         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13087         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13088         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13089         GstPadLinkReturn correctly between functions, and don't fail
13090         when DELAYED is used (DELAYED is very important).  Better
13091         cleanup on unlinking and unnegotiation.  Should fix some spider
13092         bugs.
13093
13094 2004-01-02  David Schleef  <ds@schleef.org>
13095
13096         * gst/gstelement.c: (gst_element_class_init),
13097         (gst_element_base_class_init): ->padtemplates should be cleared
13098         in base_init, since we need to have a fresh list for every
13099         class.  (Alternately, we chould copy the list and share the
13100         actual pad templates (not the list), but that would require
13101         changing every plugin to move pad template registration from
13102         base_init to class_init.)
13103
13104 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13105
13106         * gst/gstelement.c: (gst_element_class_add_pad_template):
13107           Refuse registering a pad template if another pad template
13108           with the same name already exists (#114715).
13109
13110 2004-01-02  David Schleef  <ds@schleef.org>
13111
13112         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13113         (gst_caps_is_equal_fixed): Add new function.
13114         * gst/gstcaps.h: ditto.
13115         * gst/gstpad.c: (gst_real_pad_class_init),
13116         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13117         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13118         check new caps against existing caps -- if they're the same, return
13119         OK without renegotiating.  caps-nego-failed signal fixed so that
13120         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13121         to save an extra caps copy.  Don't complete negotiation if a pad
13122         link function returns DELAYED.
13123
13124 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13125
13126         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13127           Fix wrong g_return_if_fail
13128
13129 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13130
13131         * gst/gstbin.c: (gst_bin_class_init):
13132         Change the marshalling of element_added/element_removed
13133         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13134         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13135
13136 2004-01-01  David Schleef  <ds@schleef.org>
13137
13138         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13139         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13140         (gst_pad_use_explicit_caps):
13141         * gst/gstpad.h:
13142         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13143         to use an internal getcaps and link fuction so that negotiation
13144         always results in the explicitly set caps.
13145         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13146         are particularly useful for decoders.
13147
13148 2003-12-31  David Schleef  <ds@schleef.org>
13149
13150         * gst/elements/gstidentity.c: (gst_identity_class_init),
13151         (gst_identity_init), (gst_identity_chain),
13152         (gst_identity_set_property), (gst_identity_get_property):
13153         * gst/elements/gstidentity.h:
13154         * gst/gstqueue.c: (gst_queue_init):
13155           Negotiation fixes.
13156
13157 2003-12-31  David Schleef  <ds@schleef.org>
13158
13159         * gst/gstcaps.c: (gst_caps_intersect),
13160         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13161           Implement gst_caps_normalize().
13162         * testsuite/caps/normalisation.c: (main):
13163           Add an additional test
13164
13165 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13166
13167         * gst/gstqueue.c: (gst_queue_init):
13168           use gst_pad_proxy_getcaps()
13169
13170 2003-12-31  David Schleef  <ds@schleef.org>
13171
13172         * gst/elements/gstshaper.c: (gst_shaper_link):
13173         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13174         * gst/gstqueue.c: (gst_queue_link):
13175           Negotiation fixes.
13176
13177 2003-12-31  David Schleef  <ds@schleef.org>
13178
13179         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13180         * gst/gstpad.h: Add functions that are useful as default pad
13181         link and fixate functions for elements.
13182
13183 2003-12-30  David Schleef  <ds@schleef.org>
13184
13185         * gst/gstpad.c: (gst_pad_link_try):
13186           Fix segfault when attempting to return to old caps
13187
13188 2003-12-29  David Schleef  <ds@schleef.org>
13189
13190         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13191         (gst_caps_structure_simplify), (gst_caps_simplify):
13192         * gst/gstcaps.h:
13193           Add simplify function
13194         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13195         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13196         * gst/gstpad.h:
13197           Copy over srcnotify, sinknotify when calling old pad_link
13198           functions.  Add new is_negotiated() function.
13199         * gst/gststructure.c: (gst_structure_copy):
13200           Fix an incredibly stupid bug that should have been noticed
13201           weeks ago.  _copy() returned the argument, not the new copy.
13202
13203 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13204
13205         * gst/gstcaps.c: (gst_caps_append):
13206           add sanity checks
13207         * gst/gstcaps.h: (gst_caps_debug):
13208           remove, it doesn't exist anymore.
13209         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13210         (gst_element_threadsafe_properties_post_run):
13211           make debugging messages not clutter up THREAD debug category
13212         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13213         (gst_element_change_state):
13214           update to new caps API
13215         * gst/gstinterface.c: (gst_implements_interface_cast):
13216           don't put vital code in g_return_if_fail
13217         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13218         (gst_pad_link_filtered):
13219           add pst_pad_try_link and use it.
13220         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13221           implement correctly, deprecate first one.
13222         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13223           add and implement.
13224         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13225           implement.
13226         (gst_pad_get_negotiated_caps):
13227           add and implement. Make GST_PAD_CAPS call this function.
13228         (gst_pad_get_caps):
13229           remove unneeded check..
13230         (gst_pad_recover_caps_error):
13231           disable, always return FALSE.
13232         (gst_real_pad_dispose):
13233           don't free caps and appfilter anymore, they're unused.
13234         * gst/gstpad.h:
13235           Reflect changes mentioned above.
13236         * gst/gstsystemclock.c: (gst_system_clock_wait):
13237           Make 'clock is way behind' a debugging message.
13238         * gst/gstthread.c: (gst_thread_change_state):
13239           Fix debugging message
13240
13241 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13242
13243         * gst/gstinfo.h:
13244           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13245         * docs/gst/tmpl/gstreamer-unused.sgml:
13246           removed all traces of cvs conflicts
13247
13248 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13249
13250         * configure.ac:
13251         * gst/schedulers/cothreads_compat.h:
13252         * libs/Makefile.am:
13253           remove last instances of wingo cothread usage
13254
13255 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13256
13257         * gst/gstplugin.c:
13258         * gst/gstversion.h.in:
13259         * gst/parse/grammar.y:
13260           change comment block from /** to /* when not gtk-doc comments
13261
13262 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13263
13264         * gst/gst.c: whitespace and doc style fixes
13265
13266 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13267
13268         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13269
13270 2003-12-24  Colin Walters  <walters@verbum.org>
13271
13272         * gst/elements/gsttypefindelement.c:
13273           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13274           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13275           Don't double-free caps.
13276
13277 2003-12-23  David Schleef  <ds@schleef.org>
13278
13279         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13280           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13281           Many little fixes and additions of debug statements to
13282           get rhythmbox working.
13283
13284 2003-12-23  Colin Walters  <walters@verbum.org>
13285
13286         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13287         Use GST_PAD_LINK_SUCCESSFUL.
13288
13289 2003-12-23  David Schleef  <ds@schleef.org>
13290
13291         * gst/elements/gstaggregator.c:
13292         * gst/elements/gsttee.c:
13293           Use gst_pad_proxy_getcaps().
13294         * gst/gstpad.c:
13295         * gst/gstpad.h:
13296           Add gst_pad_proxy_getcaps(), which filter elements can use
13297           as a generic getcaps implementation.
13298           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13299           was advertised.
13300
13301 2003-12-23  David Schleef  <ds@schleef.org>
13302
13303         * gst/gstpad.c:
13304           Rearrange/rewrite much of the pad negotiation code, since it
13305           resembled pasta.  This actually changes the way some
13306           negotiation works, since the previous code was inconsistent
13307           depending on how it was invoked.  Add (internal) structure
13308           GstPadLink, which is used to hold some information (more in
13309           the future) about the link between two pads.  Fixes a number
13310           of bugs, including random lossage of filter caps when the
13311           initial negotiation is delayed.  A few functions are still
13312           unimplemented.
13313         * gst/gstpad.h:
13314           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13315           these when testing GstPadLinkReturn values instead of comparing
13316           directly.
13317
13318 2003-12-23  David Schleef  <ds@schleef.org>
13319
13320         * gst/gstvalue.c: 
13321         * gst/gstvalue.h:
13322           Rearrange lots of code.  Change registration of compare function
13323           into registration of compare/serialize/deserialize functions.
13324           Doesn't include implementation of gst_value_[de]serialize(),
13325           but that should be easy.
13326
13327 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13328
13329         * docs/gst/gstreamer-sections.txt:
13330         * docs/gst/tmpl/gstprops.sgml: removed
13331         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13332           David removed props and caps code, so let's remove their docs as well.
13333           Removed all no longer existing symbols from gstreamer-sections.txt
13334           
13335 2003-12-22  Colin Walters  <walters@verbum.org>
13336
13337         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13338           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13339           of tags directly.
13340
13341 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13342
13343         * gst/elements/gstelements.c:
13344           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13345         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13346           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13347           gst_caps (peer).
13348
13349 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13350
13351         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13352         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13353         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13354         (gst_spider_identity_sink_loop_type_finding):
13355         * gst/autoplug/gstspideridentity.h:
13356           Fix autoplugging in spider element, so it works with new caps.
13357           This was mainly caused by identifying empty caps incorrectly.
13358
13359 2003-12-22  David Schleef  <ds@schleef.org>
13360
13361         * gststructure.c, gstvalue.c, gstvalue.h: Add
13362           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13363           using g_value_copy()
13364
13365 2003-12-21  David Schleef  <ds@schleef.org>
13366
13367         * many, many files: Merge CAPS branch.  This includes:
13368           - implemention of GstValue and several GstValue types
13369           - implemention of GstStructure
13370           - entire rewrite of GstCaps
13371           - removal of GstProps
13372           - many changes to GstPad to compensate for new caps paradigm
13373           - removal of GstBufferpool
13374         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13375         gstvalue.h, gst/gstcaps[2]*.[ch]:
13376           - rename gstcaps2.[ch] to gstcaps.[ch]
13377
13378 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13379
13380         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13381         (gst_queue_chain), (gst_queue_handle_src_event):
13382           implement timeout for sending events. Workaround for if the
13383           pipeline on this queue is not passing any data.
13384
13385 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13386                                                                                 
13387         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13388         * moved CVS to freedesktop.org
13389