Removed plugable schedulers.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-18  Wim Taymans  <wim@fluendo.com>
2
3         * check/elements/gstfakesrc.c: (GST_START_TEST):
4         * configure.ac:
5         * gst/Makefile.am:
6         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
7         (init_popt_callback):
8         * gst/gst.h:
9         * gst/gst_private.h:
10         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
11         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
12         * gst/gstbin.h:
13         * gst/gstbus.h:
14         * gst/gstconfig.h.in:
15         * gst/gstelement.c: (gst_element_class_init),
16         (gst_element_set_base_time), (gst_element_get_base_time),
17         (iterator_fold_with_resync), (gst_element_change_state),
18         (gst_element_dispose), (gst_element_get_bus):
19         * gst/gstelement.h:
20         * gst/gstelementfactory.h:
21         * gst/gsterror.c: (_gst_core_errors_init):
22         * gst/gsterror.h:
23         * gst/gstevent.h:
24         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
25         * gst/gstindex.c:
26         * gst/gstinfo.c: (_gst_debug_init):
27         * gst/gstmessage.c: (_gst_message_copy):
28         * gst/gstmessage.h:
29         * gst/gstminiobject.h:
30         * gst/gstobject.c:
31         * gst/gstobject.h:
32         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
33         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
34         * gst/gstpad.h:
35         * gst/gstparse.h:
36         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
37         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
38         (gst_pipeline_get_last_stream_time):
39         * gst/gstpipeline.h:
40         * gst/gstpluginfeature.h:
41         * gst/gstquery.h:
42         * gst/gstscheduler.c:
43         * gst/gstscheduler.h:
44         * gst/gststructure.h:
45         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
46         (gst_task_finalize), (gst_task_func), (gst_task_create),
47         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
48         (gst_task_stop), (gst_task_pause):
49         * gst/gsttask.h:
50         * gst/gsttypefind.h:
51         * gst/gsttypes.h:
52         * gst/registries/gstlibxmlregistry.c: (load_feature),
53         (gst_xml_registry_load), (gst_xml_registry_save_feature):
54         * gst/registries/gstxmlregistry.c:
55         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
56         * gst/schedulers/threadscheduler.c:
57         * libs/gst/control/dparammanager.h:
58         * tools/gst-inspect.c: (print_element_list),
59         (print_plugin_features), (print_element_features):
60         * tools/gst-xmlinspect.c: (print_element_list),
61         (print_plugin_info), (main):
62         Removed plugable schedulers.
63         Removed Scheduler/Manager from elements.
64         Removed gsttypes.h, rearranged includes.
65         Removed dependency pad<->element, element<>pipeline, and
66         various others,  fix includes.
67         implement gst_pad_get_parent() with gst_object_get_parent()
68         Make GstTask sefcontained.
69         Fix _get_state() on GstBin, it did not return ASYNC with a 0
70         timeout.
71         Fix endless loop in iterator_fold_with_resync.
72
73
74 2005-07-18  Wim Taymans  <wim@fluendo.com>
75
76         * gst/Makefile.am:
77         * gst/gstarch.h:
78         Remove old file.
79
80 2005-07-18  Wim Taymans  <wim@fluendo.com>
81
82         * gst/Makefile.am:
83         No more cothreads.h
84
85 2005-07-18  Wim Taymans  <wim@fluendo.com>
86
87         * gst/cothreads.c:
88         * gst/cothreads.h:
89         Let's remove these.
90
91 2005-07-18  Wim Taymans  <wim@fluendo.com>
92
93         * docs/design/part-dynamic.txt:
94         * docs/design/part-events.txt:
95         * docs/design/part-seeking.txt:
96         Some more docs in the works.
97
98         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
99         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
100         (gst_base_transform_setcaps), (gst_base_transform_get_size),
101         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
102         (gst_base_transform_handle_buffer),
103         (gst_base_transform_sink_activate_push),
104         (gst_base_transform_src_activate_pull),
105         (gst_base_transform_set_passthrough),
106         (gst_base_transform_is_passthrough):
107         Refcounting fixes.
108
109         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
110         Cleanups.
111
112         * gst/gstevent.c: (gst_event_finalize):
113         Set SRC to NULL.
114
115         * gst/gstutils.c: (gst_element_unlink),
116         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
117         (gst_pad_proxy_setcaps):
118         * gst/gstutils.h:
119         Add _get_parent_element() to get a pads parent as an element.
120
121 2005-07-18  Wim Taymans  <wim@fluendo.com>
122
123         * check/gst/gstbin.c: (GST_START_TEST):
124         Remove bogus test.
125
126 2005-07-18  Wim Taymans  <wim@fluendo.com>
127
128         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
129         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
130         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
131         (gst_base_sink_event), (gst_base_sink_do_sync),
132         (gst_base_sink_chain), (gst_base_sink_loop),
133         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
134         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
135         Refcounting fixes.
136         Fix logic for returning ASYNC when not prerolled.
137
138 2005-07-18  Wim Taymans  <wim@fluendo.com>
139
140         * gst/gstqueue.c: (gst_queue_handle_sink_event):
141         Fix nasty refcount bug.
142
143 2005-07-16 Philippe Khalaf <burger@speedy.org>
144         * gst/elements/gstfdsrc.c:
145         * gst/elements/gstfdsrc.h:
146         * gst/elements/gstelements.c:
147         * gst/elements/Makefile.am:
148         Ported fdsrc to 0.9.
149
150 2005-07-16  Wim Taymans  <wim@fluendo.com>
151
152         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
153         (gst_base_sink_do_sync):
154         Fix compile error.
155
156 2005-07-16  Wim Taymans  <wim@fluendo.com>
157
158         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
159         (gst_base_sink_event), (gst_base_sink_get_times),
160         (gst_base_sink_do_sync), (gst_base_sink_change_state):
161         * gst/base/gstbasesink.h:
162         Store and use discont values when syncing buffers as described
163         in design docs.
164         
165         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
166         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
167         (gst_base_src_activate_push):
168         Push discont event when starting.
169
170         * gst/elements/gstidentity.c: (gst_identity_transform):
171         Small cleanups.
172
173         * gst/gstbin.c: (gst_bin_change_state):
174         Small cleanups in base_time  distribution.
175
176         * gst/gstelement.c: (gst_element_set_base_time),
177         (gst_element_get_base_time), (gst_element_change_state):
178         * gst/gstelement.h:
179         Added methods for the base_time of the element.
180         Some MT fixes.
181
182         * gst/gstpipeline.c: (gst_pipeline_send_event),
183         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
184         (gst_pipeline_get_last_stream_time):
185         * gst/gstpipeline.h:
186         MT fixes.
187         Handle seeking as described in design doc, remove stream_time
188         hack.
189         Cleanups clock and stream_time selection code. Added accessors
190         for the stream_time.
191         
192
193 2005-07-16  Andy Wingo  <wingo@pobox.com>
194
195         * gst/gsterror.c (_gst_core_errors_init): Use the magic word..
196
197 2005-07-16  Wim Taymans  <wim@fluendo.com>
198
199         * check/gst/gstbin.c: (GST_START_TEST):
200         Make elements silent as the deep_notify refs the
201         parent, which might make the test fail.
202
203         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
204         Don't hold the lock for too long.
205
206 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
207
208         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
209           Don't unref the caps we passed to gst_caps_make_writable() after
210           passing them. gst_caps_make_writable() will do that for us.
211
212 2005-07-15  Andy Wingo  <wingo@pobox.com>
213
214         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
215         (#157311).
216
217         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
218         own marshalling function for the handoff signal. Properly type the
219         buffer as a buffer. Fixes some warnings. Should do a more general
220         solution.
221         (gst_identity_class_init): Plug into the right marshaller.
222
223 2005-07-15  Wim Taymans  <wim@fluendo.com>
224
225         * docs/design/part-TODO.txt:
226         * docs/design/part-clocks.txt:
227         * docs/design/part-element-sink.txt:
228         * docs/design/part-events.txt:
229         * docs/design/part-gstpipeline.txt:
230         Updated docs, mostly DISCONT related.
231
232 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
233
234         * docs/pwg/building-pads.xml:
235           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
236
237 2005-07-15  Andy Wingo  <wingo@pobox.com>
238
239         * tools/gst-typefind.c: Update, add copyright block.
240
241         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
242         Normalize and truncate caps before fixation.
243
244         * gst/gstcaps.h:
245         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
246         discards all but the first structure from its argument.
247
248 2005-07-15  Wim Taymans  <wim@fluendo.com>
249
250         * gst/base/gstbasetransform.c: (gst_base_transform_init),
251         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
252         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
253         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
254         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
255         (gst_base_transform_chain), (gst_base_transform_change_state),
256         (gst_base_transform_set_passthrough),
257         (gst_base_transform_is_passthrough):
258         * gst/base/gstbasetransform.h:
259         Make passthrough work using the bufferpools.
260         Changed API a bit, subclasses have to write into a buffer
261         provided by the base class.
262         More debug info in nego functions.
263         
264         * gst/elements/gstidentity.c: (gst_identity_init),
265         (gst_identity_transform):
266         Port to new base class.
267
268 2005-07-15  Wim Taymans  <wim@fluendo.com>
269
270         * gst/gstmessage.c: (gst_message_new_state_changed):
271         * tools/gst-launch.c: (event_loop), (main):
272         Totally dump messages in -launch with the -m option.
273         Fix message name for State messages,
274
275 2005-07-14  Wim Taymans  <wim@fluendo.com>
276
277         * gst/base/gstbasesrc.c: (gst_base_src_loop):
278         Post error messages on errors.
279
280 2005-07-14  Wim Taymans  <wim@fluendo.com>
281
282         * gst/gstcaps.c: (gst_caps_do_simplify):
283         Remove debug info.
284
285         * gst/gsterror.h:
286         Define error for stream stopped.
287
288         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
289         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
290         Do proper return values.
291
292         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
293         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
294         (gst_pad_get_range):
295         Better return values.
296
297         * gst/gstpad.h:
298         Reorganise return values, add macro to check for fatal errors.
299
300         * gst/gstqueue.c: (gst_queue_chain):
301         Return proper GstFlowReturn values,
302
303 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
304
305         * docs/gst/gstreamer-sections.txt:
306         * docs/gst/gstreamer.types:
307         * docs/gst/tmpl/gst.sgml:
308         * docs/gst/tmpl/gstbasesink.sgml:
309         * docs/gst/tmpl/gstbasesrc.sgml:
310         * docs/gst/tmpl/gstbasetransform.sgml:
311         * docs/gst/tmpl/gstbin.sgml:
312         * docs/gst/tmpl/gstbuffer.sgml:
313         * docs/gst/tmpl/gstcaps.sgml:
314         * docs/gst/tmpl/gstclock.sgml:
315         * docs/gst/tmpl/gstcompat.sgml:
316         * docs/gst/tmpl/gstconfig.sgml:
317         * docs/gst/tmpl/gstelement.sgml:
318         * docs/gst/tmpl/gstelementdetails.sgml:
319         * docs/gst/tmpl/gstelementfactory.sgml:
320         * docs/gst/tmpl/gstenumtypes.sgml:
321         * docs/gst/tmpl/gsterror.sgml:
322         * docs/gst/tmpl/gstevent.sgml:
323         * docs/gst/tmpl/gstfakesink.sgml:
324         * docs/gst/tmpl/gstfakesrc.sgml:
325         * docs/gst/tmpl/gstfilesink.sgml:
326         * docs/gst/tmpl/gstfilesrc.sgml:
327         * docs/gst/tmpl/gstfilter.sgml:
328         * docs/gst/tmpl/gstformat.sgml:
329         * docs/gst/tmpl/gstghostpad.sgml:
330         * docs/gst/tmpl/gstimplementsinterface.sgml:
331         * docs/gst/tmpl/gstindex.sgml:
332         * docs/gst/tmpl/gstindexfactory.sgml:
333         * docs/gst/tmpl/gstinfo.sgml:
334         * docs/gst/tmpl/gstiterator.sgml:
335         * docs/gst/tmpl/gstmacros.sgml:
336         * docs/gst/tmpl/gstmemchunk.sgml:
337         * docs/gst/tmpl/gstminiobject.sgml:
338         * docs/gst/tmpl/gstobject.sgml:
339         * docs/gst/tmpl/gstpad.sgml:
340         * docs/gst/tmpl/gstpadtemplate.sgml:
341         * docs/gst/tmpl/gstparse.sgml:
342         * docs/gst/tmpl/gstpipeline.sgml:
343         * docs/gst/tmpl/gstplugin.sgml:
344         * docs/gst/tmpl/gstpluginfeature.sgml:
345         * docs/gst/tmpl/gstquery.sgml:
346         * docs/gst/tmpl/gstqueue.sgml:
347         * docs/gst/tmpl/gstregistry.sgml:
348         * docs/gst/tmpl/gstregistrypool.sgml:
349         * docs/gst/tmpl/gstscheduler.sgml:
350         * docs/gst/tmpl/gstschedulerfactory.sgml:
351         * docs/gst/tmpl/gststructure.sgml:
352         * docs/gst/tmpl/gstsystemclock.sgml:
353         * docs/gst/tmpl/gsttaglist.sgml:
354         * docs/gst/tmpl/gsttagsetter.sgml:
355         * docs/gst/tmpl/gsttrace.sgml:
356         * docs/gst/tmpl/gsttrashstack.sgml:
357         * docs/gst/tmpl/gsttypefind.sgml:
358         * docs/gst/tmpl/gsttypefindfactory.sgml:
359         * docs/gst/tmpl/gsttypes.sgml:
360         * docs/gst/tmpl/gsturihandler.sgml:
361         * docs/gst/tmpl/gsturitype.sgml:
362         * docs/gst/tmpl/gstutils.sgml:
363         * docs/gst/tmpl/gstvalue.sgml:
364         * docs/gst/tmpl/gstversion.sgml:
365         * docs/gst/tmpl/gstxml.sgml:
366         * docs/libs/tmpl/gstcontrol.sgml:
367         * docs/libs/tmpl/gstdataprotocol.sgml:
368         * docs/libs/tmpl/gstdparam.sgml:
369         * docs/libs/tmpl/gstdplinint.sgml:
370         * docs/libs/tmpl/gstdpman.sgml:
371         * docs/libs/tmpl/gstdpsmooth.sgml:
372         * docs/libs/tmpl/gstgetbits.sgml:
373         * docs/libs/tmpl/gstunitconvert.sgml:
374         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
375         (gst_push_src_base_init), (gst_push_src_class_init),
376         (gst_push_src_init), (gst_push_src_create):
377         * gst/base/gstpushsrc.h:
378         * gst/elements/gstelements.c:
379         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
380         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
381         (gst_fake_sink_init), (gst_fake_sink_set_property),
382         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
383         (gst_fake_sink_event), (gst_fake_sink_preroll),
384         (gst_fake_sink_render), (gst_fake_sink_change_state):
385         * gst/elements/gstfakesink.h:
386         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
387         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
388         (gst_fake_src_base_init), (gst_fake_src_class_init),
389         (gst_fake_src_init), (gst_fake_src_event_handler),
390         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
391         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
392         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
393         (gst_fake_src_create_buffer), (gst_fake_src_create),
394         (gst_fake_src_start), (gst_fake_src_stop):
395         * gst/elements/gstfakesrc.h:
396         * gst/elements/gstfilesink.c: (_do_init),
397         (gst_file_sink_base_init), (gst_file_sink_class_init),
398         (gst_file_sink_init), (gst_file_sink_dispose),
399         (gst_file_sink_set_location), (gst_file_sink_set_property),
400         (gst_file_sink_get_property), (gst_file_sink_open_file),
401         (gst_file_sink_close_file), (gst_file_sink_query),
402         (gst_file_sink_event), (gst_file_sink_render),
403         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
404         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
405         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
406         * gst/elements/gstfilesink.h:
407         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
408         (gst_file_src_class_init), (gst_file_src_init),
409         (gst_file_src_finalize), (gst_file_src_set_location),
410         (gst_file_src_set_property), (gst_file_src_get_property),
411         (gst_file_src_map_region), (gst_file_src_map_small_region),
412         (gst_file_src_create_mmap), (gst_file_src_create_read),
413         (gst_file_src_create), (gst_file_src_is_seekable),
414         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
415         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
416         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
417         (gst_file_src_uri_handler_init):
418         * gst/elements/gstfilesrc.h:
419           more autistic cleanliness in functions/names/defines
420
421 2005-07-13  Andy Wingo  <wingo@pobox.com>
422
423         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
424         source couldn't negotiate.
425
426         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
427         connections again.
428
429         * gst/gstutils.h:
430         * gst/gstutils.c (gst_element_link_pads_filtered): New old
431         function. I am channeling Hades. Put your boots on suckers!!!
432
433 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
434
435         * testsuite/caps/Makefile.am:
436         * testsuite/caps/value_compare.c:
437         * testsuite/caps/value_intersect.c:
438         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
439           move two testsuite apps over to the check dir
440
441 2005-07-12  Wim Taymans  <wim@fluendo.com>
442
443         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
444         Added more debug info in the negotiate process.
445
446         * gst/gstmessage.h:
447         Prepare for segment playback.
448
449         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
450         Better debugging.
451
452         * gst/gstutils.c:
453         Some more docs.
454
455         * tools/gst-launch.c: (main):
456         NULL pipeline on errors.
457
458 2005-07-12  Andy Wingo  <wingo@pobox.com>
459
460         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
461         not it comes from a malloc region. Make sure our copy gets freed.
462
463 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
464
465         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
466         * check/gst/gstmessage.c: (GST_START_TEST):
467         * check/gst/gststructure.c: (GST_START_TEST),
468         (gst_structure_suite), (main):
469           more testing
470         * gst/gstelement.c: (gst_element_message_full):
471           clean up GError and debug string now that they get copied
472         * gst/gstmessage.c: (gst_message_new_error),
473         (gst_message_new_warning), (gst_message_parse_error),
474         (gst_message_parse_warning):
475           use GST_TYPE_G_ERROR for structure_new, and take copies of
476           arguments, so that we don't mess up refcounting
477
478 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
479
480         * check/Makefile.am:
481           add per-test valgrind targets
482         * check/gst-libs/gdp.c: (GST_START_TEST),
483         (gst_data_protocol_suite), (main):
484           clean up
485
486 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
487
488         * check/Makefile.am:
489           instate more valgrindable tests
490         * check/elements/gstfakesrc.c: (chain_func), (event_func),
491         (GST_START_TEST), (fakesrc_suite):
492         * check/gst/gstpad.c: (GST_START_TEST):
493         * check/gst/gststructure.c: (GST_START_TEST):
494           fix test leaks
495         * docs/gst/tmpl/gstminiobject.sgml:
496         * gst/gstpad.c: (gst_pad_finalize):
497           fix the static mutex leak
498
499 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
500
501         * check/Makefile.am:
502           add two more tests for valgrinding
503         * check/gst/gstvalue.c: (GST_START_TEST):
504           test refcount of deserialized buffer, found a leak
505         * docs/gst/gstreamer-docs.sgml:
506         * docs/gst/gstreamer-sections.txt:
507         * docs/gst/gstreamer.types:
508         * docs/gst/tmpl/gstminiobject.sgml:
509           add miniobject to docs
510         * gst/gstminiobject.c:
511           add some docs
512         * gst/gstvalue.c: (gst_value_deserialize_buffer),
513         (gst_string_unwrap):
514           fix a hard-to-find invalid write for one of the tests
515           fix a leak for deserialized buffers
516
517 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
518
519         * docs/pwg/advanced-events.xml:
520         * docs/pwg/advanced-request.xml:
521         * docs/pwg/advanced-scheduling.xml:
522         * docs/pwg/appendix-porting.xml:
523         * docs/pwg/building-boiler.xml:
524         * docs/pwg/intro-preface.xml:
525         * docs/pwg/other-ntoone.xml:
526           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
527           of example code and explanation for pad activation, loop() and
528           getrange() functions and a bit more. Remove old comments pointing
529           to loop-functions.
530         * examples/pwg/Makefile.am:
531           Add loop/getrange examples.
532
533 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
534
535         * configure.ac:
536           check for valgrind binary + some fixes
537         * check/gst.supp:
538           valgrind suppressions for the tests
539         * check/Makefile.am:
540           add a valgrind: target that valgrinds the unit tests
541         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
542         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
543         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
544         * check/gst/gstghostpad.c:
545           added some cleanup
546         * check/gst/gstdata.c:
547           removed
548         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
549         (thread_unref), (gst_mini_object_suite), (main):
550           added
551         * gst/gst.c: (gst_deinit):
552         * gst/gst.h:
553           add a method to clean up.
554         * gst/gstsystemclock.c: (gst_system_clock_dispose),
555         (gst_system_clock_obtain):
556           allow for disposing the system clock.
557         * tools/gst-launch.c: (main):
558           deinit
559
560 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
561
562         * docs/gst/tmpl/gstbasesrc.sgml:
563         * docs/gst/tmpl/gstfakesrc.sgml:
564         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
565         (gst_base_src_init), (gst_base_src_set_property),
566         (gst_base_src_get_property), (gst_base_src_get_range),
567         (gst_base_src_start):
568         * gst/base/gstbasesrc.h:
569           add num-buffers property
570         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
571         (gst_fakesrc_init), (gst_fakesrc_set_property),
572         (gst_fakesrc_get_property), (gst_fakesrc_create),
573         (gst_fakesrc_start):
574           remove num-buffers property
575
576 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
577
578         * docs/gst/gstreamer-sections.txt:
579         * docs/gst/tmpl/gstbasesink.sgml:
580         * docs/gst/tmpl/gstbasesrc.sgml:
581         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
582         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
583         (gst_base_sink_finalize), (gst_base_sink_set_clock),
584         (gst_base_sink_set_property), (gst_base_sink_get_property),
585         (gst_base_sink_handle_object), (gst_base_sink_event),
586         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
587         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
588         (gst_base_sink_loop), (gst_base_sink_deactivate),
589         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
590         (gst_base_sink_change_state):
591         * gst/base/gstbasesink.h:
592         * gst/base/gstbasesrc.h:
593         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
594         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
595         (gst_filesink_init):
596           more macro splitting
597
598 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
599
600         * gst/gstelement.c: (gst_element_get_bus):
601           add debug
602         * tools/gst-launch.c: (check_intr), (event_loop):
603           fix bus leaks
604
605 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
606
607         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
608           fix a caps leak
609
610 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
611
612         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
613         (gst_base_src_finalize):
614           add finalize method and clean up properly
615         * gst/gstpipeline.c: (gst_pipeline_dispose):
616           add debug
617
618 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
619
620         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
621         (gst_bin_suite):
622           add more things to check
623         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
624         * gst/gstelement.c:
625           more debug
626
627 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
628
629         * check/elements/gstfakesrc.c: (chain_func), (event_func),
630         (GST_START_TEST), (fakesrc_suite):
631         * check/gst-libs/gdp.c: (GST_START_TEST):
632         * check/gst/gst.c: (GST_START_TEST):
633         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
634         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
635         * check/gst/gstbus.c: (GST_START_TEST):
636         * check/gst/gstcaps.c: (GST_START_TEST):
637         * check/gst/gstdata.c: (GST_START_TEST):
638         * check/gst/gstelement.c: (GST_START_TEST):
639         * check/gst/gstghostpad.c: (GST_START_TEST):
640         * check/gst/gstiterator.c: (GST_START_TEST):
641         * check/gst/gstmessage.c: (GST_START_TEST):
642         * check/gst/gstobject.c: (GST_START_TEST):
643         * check/gst/gstpad.c: (GST_START_TEST):
644         * check/gst/gststructure.c: (GST_START_TEST):
645         * check/gst/gstsystemclock.c: (GST_START_TEST),
646         (gst_systemclock_suite):
647         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
648         * check/gst/gstvalue.c: (GST_START_TEST):
649         * check/pipelines/cleanup.c: (GST_START_TEST):
650         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
651         * check/states/sinks.c: (GST_START_TEST):
652         * check/gstcheck.c: (gst_check_init):
653         * check/gstcheck.h:
654           add debugging category
655           use GST_START_TEST now, so we add a debug line
656
657 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
658
659         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
660           add test for state change message on a bin
661         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
662           add another test
663         * gst/gstbin.c: (gst_bin_init):
664         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
665         * gst/gstelement.c: (gst_element_post_message),
666         (gst_element_set_state):
667         * gst/gstelementfactory.c: (gst_element_factory_create):
668         * gst/gstmessage.c: (gst_message_new):
669         * gst/gstscheduler.c:
670           various debugging additions and cleanups
671
672 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
673
674         * check/Makefile.am:
675         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
676         (main):
677           adding tests for elements
678         * gst/gstelement.c: (gst_element_dispose):
679
680 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
681
682         * gst/registries/gstlibxmlregistry.c: (load_feature):
683           plug more leaks.  A simple gst_init() now is leakfree, yay.
684
685 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
686
687         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
688         (gst_xml_registry_load):
689           plug another memleak
690
691 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
692
693         * configure.ac:
694           use GST_SET_ERROR_CFLAGS
695         * docs/faq/cvs.xml:
696           change to ERROR_CFLAGS
697
698 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
699
700         * configure.ac:
701           make GST_ERROR_CFLAGS overridable and re-enable Werror
702         * docs/faq/cvs.xml:
703           add a note about error CFLAGS
704         * docs/gst/tmpl/gstfakesrc.sgml:
705         * gst/elements/gstfakesrc.c:
706           comment out some unused code
707         * gst/gst.c: (split_and_iterate):
708         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
709         (load_feature):
710           plug some memleaks
711
712 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
713
714         * common/Makefile.am:
715         * common/gtk-doc.mak:
716         * docs/gst/Makefile.am:
717           factor out gtk-doc.mak
718
719 2005-07-07  Wim Taymans  <wim@fluendo.com>
720
721         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
722         (gst_thread_scheduler_dispose):
723         Unlock the STREAM_LOCK completely.
724
725 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
726
727         * check/Makefile.am:
728         * check/elements/.cvsignore:
729         * check/elements/gstfakesrc.c: (chain_func), (event_func),
730         (START_TEST), (fakesrc_suite), (main):
731         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
732         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
733         (gst_fakesrc_create), (gst_fakesrc_start):
734         * gst/elements/gstfakesrc.h:
735           adding a first element test
736
737 2005-07-07  Andy Wingo  <wingo@pobox.com>
738
739         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
740         debug message.
741
742 2005-07-07  Wim Taymans  <wim@fluendo.com>
743
744         * gst/gstquery.c:
745         * gst/gstquery.h:
746         Remove old types
747
748 2005-07-07  Wim Taymans  <wim@fluendo.com>
749
750         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
751         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
752         Allow subclasses to implement their own negotiation.
753
754 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
755
756         * docs/design/part-gstbin.txt:
757         * docs/design/part-gstpipeline.txt:
758           Update design notes to reflect the movement of
759           responsibility for bus handling from GstPipeline to
760           GstBin
761
762 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
763
764         * configure.ac:
765           Remove unnecessary queue2/3/4 examples.
766
767 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
768
769         * examples/Makefile.am:
770         * examples/helloworld/helloworld.c: (event_loop), (main):
771         * examples/queue/queue.c: (event_loop), (main):
772         * examples/queue2/queue2.c: (main):
773           Update a couple of the examples to work again.
774
775         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
776         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
777          Spelling corrections and extra debug.
778         
779         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
780         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
781         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
782         * gst/gstbin.h:
783         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
784         (gst_pipeline_change_state):
785         * gst/gstpipeline.h:
786           Move the bus handler for children to the GstBin, and create a
787           separate bus for receiving messages from children to the one the
788           bus sends 'upwards' on.
789
790 2005-07-06  Wim Taymans  <wim@fluendo.com>
791
792         * gst/base/README:
793         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
794         (gst_base_sink_handle_object), (gst_base_sink_loop),
795         (gst_base_sink_change_state):
796         * gst/base/gstbasesink.h:
797         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
798         (gst_base_src_init), (gst_base_src_setcaps),
799         (gst_base_src_getcaps), (gst_base_src_loop),
800         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
801         (gst_base_src_start), (gst_base_src_change_state):
802         * gst/base/gstbasesrc.h:
803         Make basesrc negotiate.
804         Handle the case where preroll fails in basesink.
805         Update README.
806
807 2005-07-06  Wim Taymans  <wim@fluendo.com>
808
809         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
810         Implement the fixate function.
811         Clean up acceptcaps.
812
813 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
814
815         * docs/pwg/building-filterfactory.xml:
816         * docs/pwg/pwg.xml:
817           Remove never-written filter-factory chapter; I'll add the various
818           base classes to part 4 ("other element types") later on.
819
820 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
821
822         * docs/pwg/advanced-negotiation.xml:
823         * docs/pwg/building-boiler.xml:
824         * docs/pwg/building-pads.xml:
825         * docs/pwg/pwg.xml:
826         * examples/pwg/Makefile.am:
827           Add a chapter on caps negotiation, simplify the original code
828           samples a bit w.r.t. caps negotiation, add link to the advanced
829           section. Add a bunch of examples showing different use cases of
830           different types of caps negotiation. Upstream renegotiation isn't
831           fully documented yet since nobody knows how that works.
832
833 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
834
835         * check/gst/gstpad.c:
836         * check/gstcheck.c:
837         * gst/gstpad.c: (gst_pad_get_internal_links_default):
838           if pad has no parent, return NULL as list of internal links
839
840 2005-07-05  Andy Wingo  <wingo@pobox.com>
841
842         * gst/elements/gstfilesrc.c:
843         * gst/elements/gstfakesrc.c: 
844         * gst/base/gstpushsrc.c:
845         * gst/base/gstbasesrc.h: 
846         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
847         
848 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
849
850         * Makefile.am:
851           better report generation target (lcov needs a patch)
852
853 2005-07-05  Andy Wingo  <wingo@pobox.com>
854
855         * gst/elements, testsuite: Null if we got it...
856
857 2005-07-05  Wim Taymans  <wim@fluendo.com>
858
859         * configure.ac:
860         * libs/gst/dataprotocol/Makefile.am:
861         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
862         * libs/gst/dataprotocol/dataprotocol.h:
863         * pkgconfig/Makefile.am:
864         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
865         * pkgconfig/gstreamer-dataprotocol.pc.in:
866         Ported dataprotol to 0.9. 
867         Added pkgconfig files.
868
869 2005-07-05  Andy Wingo  <wingo@pobox.com>
870
871         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
872         Default to returning TRUE for the case when tranform_caps returns
873         a fixed caps, like for identity or volume.
874
875         * check/gst/gstbus.c (pound_bus_with_messages): 
876         * check/gst/gstmessage.c (START_TEST): 
877         * check/pipelines/simple_launch_lines.c (got_handoff): Application
878         message API change.
879
880         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
881         logic weaks here: always run transform_caps, trying passthrough
882         operation only if the original caps intersects with the transform.
883
884         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
885         source and sink caps.
886
887         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
888         Intersect the peer caps with the pad template before going into
889         transform_caps.
890         (gst_base_transform_transform_caps): More debugging.
891
892         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
893         src argument.
894
895 2005-07-04  Edward Hervey  <edward@fluendo.com>
896
897         * gst/gstutils.c:
898         * gst/gstutils.h:
899         (gst_pad_add_*_probe): now returns the signal id for better wrapping
900         in bindings.
901
902 2005-07-04  Andy Wingo  <wingo@pobox.com>
903
904         * check/gst/gstpad.c: Only set explicit caps on pads.
905
906 2005-07-01  Andy Wingo  <wingo@pobox.com>
907
908         * tests/network-clock.scm: Commentary update.
909
910         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
911         Didn't really make sense, not implementable with basetransform,
912         etc.
913         (gst_identity_transform): Unref inbuf via make_writable. Feeble
914         attempt at implementing the sync property, needs an unlock method.
915
916         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
917         New func, by default returns the same caps (the identity
918         transformation).
919         (gst_base_transform_getcaps): Uses transform_caps to return
920         something sensible.
921         (gst_base_transform_setcaps): Complicated logic to get caps on
922         both pads, even if they are different, and to call set_caps once
923         for every time both pads get their caps set.
924         (gst_base_transform_handle_buffer): Give the ref to the transform
925         function. Allows in-place modification of the buffer.
926
927         * gst/base/gstbasetransform.h (transform_caps): New class method.
928         Given caps on one side, what can I do on the other.
929         (set_caps): Take two caps, one for each side of the element.
930
931         * gst/gstpad.h:
932         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
933         caps in place. This is safe because we can check the mutability of
934         the caps, and a good idea because fixate functions are just called
935         as a matter of last resort. (Not actually implemented.)
936         (gst_pad_set_caps): If the caps we're setting is actually the same
937         as the existing pad caps, just update the pointer without calling
938         setcaps. Assert that caps is either NULL or fixed, as per the
939         docs.
940
941         * gst/gstghostpad.c: Update for fixate changes.
942
943 2005-07-02  Andy Wingo  <wingo@pobox.com>
944
945         * gst/gstcaps.c:
946         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
947         two refcounts makes it immutable, which is enough. Doc more.
948
949 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
950
951         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
952           Put the mini_object into GValue as a mini_object,
953           not a gpointer, since that's how we declared
954           the signal.
955
956 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
957
958         * examples/pwg/Makefile.am:
959           Fix buildbot again.
960
961 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
962
963         * docs/pwg/building-testapp.xml:
964           Add extra check.
965         * examples/pwg/Makefile.am:
966           Fix buildbot.
967
968 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
969
970         * configure.ac:
971         * examples/Makefile.am:
972         * examples/pwg/Makefile.am:
973         * examples/pwg/extract.pl:
974           Enable building the PWG examples.
975         * docs/pwg/advanced-interfaces.xml:
976           Add URI interface stub.
977         * docs/pwg/advanced-types.xml:
978         * docs/pwg/other-autoplugger.xml:
979         * docs/pwg/appendix-porting.xml:
980         * docs/pwg/pwg.xml:
981           Add porting guide (mostly stubs), remove autoplugging (see ADM).
982         * docs/pwg/building-boiler.xml:
983         * docs/pwg/building-chainfn.xml:
984         * docs/pwg/building-pads.xml:
985         * docs/pwg/building-props.xml:
986         * docs/pwg/building-state.xml:
987         * docs/pwg/building-testapp.xml:
988           Update the building-*.xml parts for 0.9 changes. All examples
989           code blocks compile in examples/pwg/*.
990
991 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
992
993         * docs/manual/advanced-autoplugging.xml:
994         * docs/manual/appendix-checklist.xml:
995         * docs/manual/appendix-integration.xml:
996         * docs/manual/highlevel-components.xml:
997           Fix playbin/decodebin examples, update docs a bit, mention bus
998           instead of signals in various places, mention kmplayer and
999           kaffeine since they have a working GStreamer backend in the KDE
1000           section.
1001
1002 2005-06-30  Wim Taymans  <wim@fluendo.com>
1003
1004         * CHANGES-0.9:
1005         * docs/design/draft-ghostpads.txt:
1006         * docs/design/draft-push-pull.txt:
1007         * docs/design/draft-query.txt:
1008         * docs/design/part-TODO.txt:
1009         * docs/design/part-query.txt:
1010         Added CHANGES-0.9 doc, updated status of other docs.
1011         
1012         * gst/gstquery.h:
1013         Remove "hmm" macro
1014
1015 2005-06-30  Wim Taymans  <wim@fluendo.com>
1016
1017         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1018         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1019         (gst_base_sink_change_state):
1020         * gst/base/gstbasesink.h:
1021         Some tweaks, only EOS and a buffer complete a preroll.
1022
1023 2005-06-30  Andy Wingo  <wingo@pobox.com>
1024
1025         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1026         activate_push down to the internal pad as well.
1027
1028 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1029
1030         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1031
1032         * gst/gsttaginterface.c:
1033           Some documentation fixes (#307394 and #307397).
1034
1035 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1036
1037         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1038
1039         * gst/gstvalue.c: (gst_value_intersect_list):
1040           Fix memleak (#309125).
1041
1042 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1043
1044         * docs/manual/advanced-dataaccess.xml:
1045           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1046         * docs/manual/basics-pads.xml:
1047           Add reference for filtered caps to above chapter.
1048
1049 2005-06-30  Wim Taymans  <wim@fluendo.com>
1050
1051         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1052         (gst_bin_change_state):
1053         Probes are gone.
1054         Lame attempt at making the state change function a bit
1055         more readable.
1056
1057 2005-06-30  Wim Taymans  <wim@fluendo.com>
1058
1059         * docs/design/part-clocks.txt:
1060         * docs/design/part-element-sink.txt:
1061         * docs/design/part-events.txt:
1062         * docs/design/part-preroll.txt:
1063         * docs/design/part-states.txt:
1064         Some more tweeks and additions to the docs.
1065
1066 2005-06-30  Wim Taymans  <wim@fluendo.com>
1067
1068         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1069         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1070         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1071         (gst_pad_check_pull_range), (gst_pad_get_range),
1072         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1073         * gst/gstpad.h:
1074         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1075         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1076         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1077         (gst_pad_remove_buffer_probe):
1078         Removed atomic operations, use existing LOCK.
1079         Move exception handling out of main code path.
1080
1081 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1082
1083         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1084         (silly_return_true_function), (gst_pad_class_init),
1085         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1086         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1087         (gst_pad_send_event):
1088           Fix accumulator, add default value by using _emitv() instead
1089           of _emit() for signal emission.
1090
1091 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1092
1093         * docs/manual/advanced-dataaccess.xml:
1094         * examples/manual/Makefile.am:
1095           Add probe example.
1096         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1097           Make work (??).
1098
1099 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1100
1101         * gst/elements/gstfilesink.c: (gst_filesink_render):
1102           Simplify code so that we don't have to handle short
1103           writes and return GST_FLOW_ERROR if an error occured.
1104
1105 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1106
1107         * docs/gst/gstreamer-docs.sgml:
1108           Remove probes more.
1109
1110 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1111
1112         * docs/gst/gstreamer-sections.txt:
1113         * docs/gst/tmpl/gstpad.sgml:
1114         * docs/gst/tmpl/gstprobe.sgml:
1115         * gst/Makefile.am:
1116         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1117         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1118         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1119         (gst_pad_push_event), (gst_pad_send_event):
1120         * gst/gstpad.h:
1121         * gst/gstutils.c: (gst_pad_add_data_probe),
1122         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1123         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1124         (gst_pad_remove_buffer_probe):
1125         * gst/gstutils.h:
1126           Remove old probes, add new g-signal-based probes and some utility
1127           functions.
1128
1129 2005-06-29  Edward Hervey  <edward@fluendo.com>
1130
1131         * gst/gstelementfactory.c:
1132         * gst/gstutils.h:
1133         * gst/gstutils.c:
1134         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1135         the definition to the header file.
1136
1137 2005-06-29  Andy Wingo  <wingo@pobox.com>
1138
1139         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1140         plugins from the source directory.
1141
1142 2005-06-29  Wim Taymans  <wim@fluendo.com>
1143
1144         * docs/gst/tmpl/gstbuffer.sgml:
1145         * docs/gst/tmpl/gstclock.sgml:
1146         Some fixings for blantently wrong text.
1147
1148 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1149
1150         * check/Makefile.am:
1151         * gst/gst.c: (add_path_func), (init_pre):
1152         * gst/gstregistry.c: (gst_registry_add_path):
1153           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1154           only scan the GST_PLUGIN_PATH locations, and not add
1155           system locations
1156
1157 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1158
1159         * docs/gst/gstreamer-sections.txt:
1160         * docs/gst/tmpl/gstbasesrc.sgml:
1161         * gst/gstelement.c:
1162         * gst/gstelement.h:
1163         * gst/gstevent.c:
1164         * gst/gstutils.c:
1165           doc fixes
1166
1167 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1168
1169         * docs/manual/advanced-autoplugging.xml:
1170           Fix autoplugging example.
1171
1172 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1173
1174         * docs/manual/advanced-autoplugging.xml:
1175         * docs/manual/mime-world.fig:
1176           Try to get autoplugging working, fix type detection. Fix text
1177           in hello-world image.
1178
1179 2005-06-29  Wim Taymans  <wim@fluendo.com>
1180
1181         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1182         (gst_base_sink_change_state):
1183         Small debug line.
1184
1185         * gst/gstclock.h:
1186         map SIGNAL and BROADCAST to the right function.
1187
1188         * gst/gstobject.h:
1189         Remove redundant braces.
1190
1191         * gst/gstpad.c: (gst_pad_set_caps):
1192         Don't call setcaps function when reseting caps to NULL.
1193
1194         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1195         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1196         (gst_system_clock_id_unschedule):
1197         Use BROADCAST as this is what we do.
1198
1199 2005-06-29  Wim Taymans  <wim@fluendo.com>
1200
1201         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1202         We are actually prerolling before commiting the state
1203         change. 
1204
1205 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1206
1207         * docs/manual/advanced-clocks.xml:
1208         * docs/manual/advanced-interfaces.xml:
1209         * docs/manual/advanced-metadata.xml:
1210         * docs/manual/advanced-position.xml:
1211         * docs/manual/advanced-schedulers.xml:
1212         * docs/manual/advanced-threads.xml:
1213         * docs/manual/appendix-porting.xml:
1214         * docs/manual/basics-bins.xml:
1215         * docs/manual/basics-bus.xml:
1216         * docs/manual/basics-elements.xml:
1217         * docs/manual/basics-helloworld.xml:
1218         * docs/manual/basics-pads.xml:
1219         * docs/manual/highlevel-components.xml:
1220         * docs/manual/manual.xml:
1221         * docs/manual/thread.fig:
1222           Update (until threads/scheduling) Application Development Manual;
1223           remove GstThread, add GstBus, add simple porting checklist, add
1224           documentation for tag writing, clocks, make all examples until this
1225           part compile and run.
1226         * examples/manual/Makefile.am:
1227           Update from changes to Application Development Manual; add bus
1228           example, remove thread example.
1229
1230 2005-06-28  Wim Taymans  <wim@fluendo.com>
1231
1232         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1233         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1234         (gst_bus_source_dispatch):
1235         Add debugging messages.
1236         Make internal methods static.
1237         Handle the case where the bus is flushed in the handler.
1238         
1239         * gst/gstelement.c: (gst_element_get_bus):
1240         Fix refcount in _get_bus();
1241
1242         * gst/gstpipeline.c: (gst_pipeline_change_state),
1243         (gst_pipeline_get_clock_func):
1244         Clock refcounting fixes.
1245         Handle the case where preroll timed out more gracefully.
1246         
1247         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1248         Clean up the internal thread in dispose. This is needed
1249         for subclasses that actually get disposed.
1250         
1251         * gst/schedulers/threadscheduler.c:
1252         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1253         (gst_thread_scheduler_dispose):
1254         Free thread pool in dispose.
1255
1256 2005-06-28  Andy Wingo  <wingo@pobox.com>
1257
1258         * tests/network-clock-utils.scm (debug, print-event): New utils.
1259
1260         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1261         (*packet-loss*): Unified loss probability.
1262         (network-time): Report out-of-band events.
1263
1264         * tests/plot-data: Add support for out-of-band events. Hack it
1265         into this script instead of passing it down the pipe; should fix
1266         this later.
1267
1268 2005-06-28  Wim Taymans  <wim@fluendo.com>
1269
1270         * docs/gst/gstreamer.types:
1271         * docs/gst/tmpl/gstbasesrc.sgml:
1272         * docs/gst/tmpl/gstpad.sgml:
1273         Docs fixes.
1274
1275 2005-06-28  Wim Taymans  <wim@fluendo.com>
1276
1277         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1278         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1279         (gst_proxy_pad_do_fixatecaps):
1280         Correctly proxy the check_pull_range function.
1281
1282 2005-06-28  Andy Wingo  <wingo@pobox.com>
1283
1284         * tests/network-clock.scm: Removed need for slib.
1285         
1286 2005-06-28  Wim Taymans  <wim@fluendo.com>
1287
1288         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1289         (gst_basesink_preroll_queue_flush):
1290         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1291         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1292         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1293         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1294         (gst_proxy_pad_set_property):
1295         * gst/gstpad.c:
1296         * gst/gstpad.h:
1297         * gst/gstqueue.c: (gst_queue_init):
1298         The deprecated pad loop function is removed now.
1299
1300 2005-06-28  Andy Wingo  <wingo@pobox.com>
1301
1302         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1303         New parameters, simulate network packet loss.
1304
1305         * tests/network-clock-utils.scm: Initialize the RNG.
1306
1307 2005-06-28  Wim Taymans  <wim@fluendo.com>
1308
1309         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1310         (gst_basesink_event), (gst_basesink_deactivate):
1311         Flushing the preroll queue always needs to unlock the waiters.
1312
1313 2005-06-28  Edward Hervey  <edward@fluendo.com>
1314
1315         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1316         Wheen a seek was successful on a pipeline, set the stream_time to the
1317         seek offset in order to have a synchronized stream_time.
1318
1319 2005-06-28  Wim Taymans  <wim@fluendo.com>
1320
1321         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1322         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1323         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1324         (gst_proxy_pad_do_fixatecaps):
1325         Call wrapper function instead of just calling the function
1326         pointers. This takes care of any locking and whatmore.
1327
1328 2005-06-28  Wim Taymans  <wim@fluendo.com>
1329
1330         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1331         (gst_pad_pull_range):
1332         * gst/gstpad.h:
1333         CONNECTED -> LINKED.
1334
1335 2005-06-28  Andy Wingo  <wingo@pobox.com>
1336
1337         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1338         source-munging commit!!!
1339
1340         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1341         (gst_object_sink): Take gpointer arguments, not GstObject --
1342         avoids casts. Like GLib.
1343
1344         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1345         activate.
1346
1347 2005-06-27  Andy Wingo  <wingo@pobox.com>
1348
1349         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1350         remaining buffer.
1351
1352         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1353         returns a sorted copy of the trace list.
1354         (gst_alloc_trace_print_live): New API, only prints traces with
1355         live objects. Sort the list.
1356         (gst_alloc_trace_print_all): Sort the list.
1357         (gst_alloc_trace_print): Align columns.
1358
1359         * gst/elements/gstttypefindelement.c:
1360         * gst/elements/gsttee.c:
1361         * gst/base/gstbasesrc.c:
1362         * gst/base/gstbasesink.c:
1363         * gst/base/gstbasetransform.c:
1364         * gst/gstqueue.c: Adapt for pad activation changes.
1365
1366         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1367         sched.
1368         (gst_pipeline_dispose): Drop ref on sched.
1369
1370         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1371         (gst_pad_activate_default): Push mode by default.
1372         (pre_activate_switch, post_activate_switch): New stubs, things to
1373         do before and after switching activation modes on pads.
1374         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1375         the pad's activate function to choose which mode to activate.
1376         Shortcut on deactivation and call the right function directly.
1377         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1378         mode.
1379         (gst_pad_activate_push): New API, same for push mode.
1380         (gst_pad_set_activate_function) 
1381         (gst_pad_set_activatepull_function) 
1382         (gst_pad_set_activatepush_function): Setters for new API.
1383
1384         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1385         Trace all miniobjects.
1386         (gst_mini_object_make_writable): Unref the arg if we copy, like
1387         gst_caps_make_writable.
1388
1389         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1390
1391         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1392         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1393         Adapt for new pad API.
1394
1395         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1396
1397         * gst/gstelement.h:
1398         * gst/gstelement.c (gst_element_iterate_src_pads) 
1399         (gst_element_iterate_sink_pads): New API functions.
1400         
1401         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1402         should fold into gstiterator.c in some form.
1403         (gst_element_pads_activate): Simplified via use of fold and
1404         delegation of decisions to gstpad->activate.
1405
1406         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1407         help in debugging.
1408
1409         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1410         class once in init, like gstmessage. Didn't run into this issue
1411         but it seems correct. Don't initialize a trace, gstminiobject does
1412         that.
1413
1414         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1415         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1416         to the bus.
1417         (assert_live_count): New util function, uses alloc traces to check
1418         cleanup.
1419
1420         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1421         To be modified when unlink drops the internal pad.
1422
1423 2005-06-27  Wim Taymans  <wim@fluendo.com>
1424
1425         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1426         (gst_bin_change_state):
1427         Cleanup the get_state() function a little, make sure it
1428         iterates the same set of elements.
1429         Added stub iterate_state_order().
1430
1431 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1432
1433         * docs/gst/gstreamer-docs.sgml:
1434         * docs/gst/gstreamer-sections.txt:
1435         * docs/gst/gstreamer.types:
1436         * docs/gst/tmpl/gstbasesink.sgml:
1437         * docs/gst/tmpl/gstbasesrc.sgml:
1438         * docs/gst/tmpl/gstbasetransform.sgml:
1439         * docs/gst/tmpl/gstelement.sgml:
1440         * docs/gst/tmpl/gstiterator.sgml:
1441         * gst/base/gstbasesrc.c:
1442         * gst/base/gstbasesrc.h:
1443         * gst/base/gstbasetransform.h:
1444         * gst/gstelement.c:
1445         * gst/gstiterator.h:
1446           adding basetransform and iterator docs
1447
1448 2005-06-27  Andy Wingo  <wingo@pobox.com>
1449
1450         * docs/design/part-activation.txt: Notes on how activation should
1451         work -- not quite implemented yet.
1452
1453 2005-06-25  Wim Taymans  <wim@fluendo.com>
1454
1455         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1456         At least get the chain function correct, needs more
1457         fixing.
1458
1459 2005-06-25  Wim Taymans  <wim@fluendo.com>
1460
1461         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1462         (gst_basesink_handle_object), (gst_basesink_event),
1463         (gst_basesink_do_sync), (gst_basesink_handle_event),
1464         (gst_basesink_change_state):
1465         * gst/gsttask.h:
1466         Right, two problems here: ghostpads don't take locks and
1467         glib _rec_mutex_lock_full() with depth==0 still locks.
1468         Catch illegal locking and g_warn them.
1469
1470 2005-06-25  Wim Taymans  <wim@fluendo.com>
1471
1472         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1473         Have to check for completion now...
1474
1475 2005-06-25  Wim Taymans  <wim@fluendo.com>
1476
1477         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1478         (gst_basesink_handle_object), (gst_basesink_event),
1479         (gst_basesink_do_sync), (gst_basesink_handle_event),
1480         (gst_basesink_change_state):
1481         * gst/gstpad.h:
1482         Unlock STREAM_LOCK whatever the recursion was.
1483
1484 2005-06-25  Wim Taymans  <wim@fluendo.com>
1485
1486         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1487         (gst_basesink_preroll_queue_empty),
1488         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1489         (gst_basesink_event), (gst_basesink_do_sync),
1490         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1491         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1492         (gst_basesink_change_state):
1493         Reworked the base sink, handle event and buffer serialisation
1494         correctly and removed possible deadlock.
1495         Handle EOS correctly.
1496
1497 2005-06-25  Wim Taymans  <wim@fluendo.com>
1498
1499         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1500         (gst_pipeline_change_state):
1501         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1502         Allow elements to post EOS in the state change function.
1503         Fix up -launch, make it exit the poll loop when the
1504         pipeline actually changed state.
1505         Fix up warning parsing in -launch.
1506
1507 2005-06-25  Wim Taymans  <wim@fluendo.com>
1508
1509         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1510         (gst_tee_sink_activate):
1511         Core takes STREAM_LOCK for us now.
1512
1513 2005-06-25  Wim Taymans  <wim@fluendo.com>
1514
1515         * gst/gstelement.c: (gst_element_get_state_func),
1516         (gst_element_set_state):
1517         * gst/gstelement.h:
1518         * gst/gstmessage.c: (gst_message_parse_error),
1519         (gst_message_parse_warning):
1520         Keep track of current target state while performing a state
1521         change so that subclasses can do something interesting.
1522         Fix parsing of warning/error messages when GError is NULL.
1523
1524 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1525
1526         * docs/gst/Makefile.am:
1527         * docs/gst/gstreamer-docs.sgml:
1528         * docs/gst/gstreamer-sections.txt:
1529         * docs/gst/gstreamer.types:
1530         * docs/gst/tmpl/gstbasesink.sgml:
1531         * docs/gst/tmpl/gstbasesrc.sgml:
1532         * docs/gst/tmpl/gstbin.sgml:
1533         * docs/gst/tmpl/gstcompat.sgml:
1534         * docs/gst/tmpl/gstfakesink.sgml:
1535         * docs/gst/tmpl/gstfakesrc.sgml:
1536         * docs/gst/tmpl/gstfilesink.sgml:
1537         * docs/gst/tmpl/gstfilesrc.sgml:
1538         * docs/gst/tmpl/gstindex.sgml:
1539         * docs/manual/appendix-quotes.xml:
1540         * gst/base/gstbasesrc.h:
1541         * gst/elements/gstfakesrc.h:
1542         * gst/gstmessage.h:
1543           start pulling in base classes and elements in our docs
1544
1545 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1546
1547         * docs/gst/Makefile.am:
1548         * docs/libs/Makefile.am:
1549           fixed make distcheck with gtk-doc 1.3
1550
1551 2005-06-23  Wim Taymans  <wim@fluendo.com>
1552
1553         * gst/gstelement.c: (gst_element_get_state_func),
1554         (gst_element_set_state), (gst_element_change_state):
1555         When the state did not change, also report NO_PREROLL
1556         when it matters.
1557
1558 2005-06-23  Wim Taymans  <wim@fluendo.com>
1559
1560         * gst/gstpad.c: (gst_pad_event_default):
1561         * gst/gstqueue.c: (gst_queue_loop):
1562         No unsafe task pausing please.
1563
1564 2005-06-23  Wim Taymans  <wim@fluendo.com>
1565
1566         * gst/schedulers/threadscheduler.c:
1567         (gst_thread_scheduler_task_start),
1568         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1569         Ref the task before pushing it on the threadpool. This
1570         makes sure that we have a ref when the threadfunction is
1571         actually called.
1572
1573 2005-06-23  Andy Wingo  <wingo@pobox.com>
1574
1575         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1576         offset is greater than the file's size.
1577
1578         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1579         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1580         * gst/gstobject.c (gst_object_class_init): Make the class lock
1581         recursive. Wim won't let me drop deep_notify. Decodebin works
1582         again, whoopdy doo.
1583
1584         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1585         internal pad, and hacks accordingly. Doesn't do it on the target
1586         pad because we change its caps. Probably catches all cases of
1587         interest tho.
1588         (gst_ghost_pad_set_property): Connect to notify::caps as
1589         appropritate.
1590
1591         * tests/network-clock.scm (plot-simulation): Pipe data to the
1592         elite python skript.
1593
1594         * tests/network-clock-utils.scm (define-parameter): New macro,
1595         defines a parameter that can be set via the command line.
1596         (set-parameter!, parse-parameter-arguments): Command line args
1597         parser.
1598
1599         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1600         stdin.
1601
1602 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1603
1604         * gst/elements/gsttypefindelement.c:
1605         (gst_type_find_element_handle_event):
1606           Don't restart typefinding on a discont.
1607         * gst/gstelement.c: (gst_element_set_state):
1608           Debug spelling fix.
1609         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1610           Allow changing mode of an active pad.
1611           Debug output fixes.
1612         * gst/registries/gstlibxmlregistry.c: (load_feature):
1613           Don't cast a static pad template to a normal pad template.
1614
1615 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1616
1617         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1618         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1619           remove gst_strtoll completely, since it didn't actually do
1620           anything more than what g_ascii_strtoull already does.
1621           check for range errors when deserializing
1622           do a cast for the unsigned cases; but further fixing needs
1623           a decision on what the interpretation of "(int)" and
1624           deserialization should be for values that fall outside the
1625           type's boundaries (ie, refuse, or interpret as casting)
1626
1627 2005-06-23  Wim Taymans  <wim@fluendo.com>
1628
1629         * check/Makefile.am:
1630         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1631         * docs/design/part-live-source.txt:
1632         * docs/design/part-states.txt:
1633         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1634         (gst_basesrc_set_live), (gst_basesrc_is_live),
1635         (gst_basesrc_get_range), (gst_basesrc_activate),
1636         (gst_basesrc_change_state):
1637         * gst/base/gstbasesrc.h:
1638         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1639         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1640         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1641         * gst/gstelement.c: (gst_element_get_state_func),
1642         (gst_element_set_state):
1643         * gst/gstelement.h:
1644         * gst/gsttypes.h:
1645         * tools/gst-launch.c: (event_loop), (main):
1646         Added support for live sources and other elements that
1647         cannot do preroll.
1648         Updated design docs, added live-source design doc.
1649         Implemented live source functionality in basesrc
1650         Fix error condition in _bin_get_state()
1651         Implement live source handling in -launch.
1652         Added check for live sources.
1653         Fixed case in GstBin where elements were changed state
1654         multiple times.
1655
1656
1657 2005-06-23  Andy Wingo  <wingo@pobox.com>
1658
1659         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1660         borken refcounting.
1661
1662         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1663         gst_caps_replace takes care of this for us.
1664
1665         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1666         gst_pad_set_caps on the target, not just its setcaps() function.
1667
1668         * tests/network-clock.scm: 
1669         * tests/network-clock-utils.scm: A network clock simulator.
1670         Something of an algorithmic testbed before doing something in C.
1671
1672 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1673
1674         * check/Makefile.am:
1675         * check/gst/capslist.h:
1676           copy over from 0.8, and add two with bitmasks specified with
1677           (int) 0xFF...
1678         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1679           add test to parse everything from capslist.h
1680         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
1681         (main):
1682           add test for structure deserialization
1683         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1684           add tests for deserialization of strings to int types
1685         * gst/gststructure.c: (gst_structure_nth_field_name):
1686         * gst/gststructure.h:
1687           add a way to get the name of a field referenced by index
1688         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1689           instead of checking if the resulting long long lies between
1690           min and max, we check if the long long would fit into
1691           a number of bytes for the final type.
1692           This fixes cases where a string represents 2^32 - 1, which
1693           when cast to int would be the (valid) -1, but is bigger than
1694           G_MAXINT
1695
1696 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1697
1698         * gst/parse/grammar.y:
1699           add a log line for type deserialization
1700
1701 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1702
1703         * check/gst/gstvalue.c: (START_TEST):
1704         * gst/gstvalue.c: (gst_value_deserialize):
1705           return long long, not int, so gint64 deserialization actually
1706           works.  Is there any flag that makes the compiler check this ?
1707           Fixes #308559
1708
1709 2005-06-22  Wim Taymans  <wim@fluendo.com>
1710
1711         * gst/gstbuffer.h:
1712         Added convenience macros for setting buffers in GValue.
1713
1714 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1715
1716         * check/gst/.cvsignore:
1717         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1718           add a test deserializing int64, and comment part out because
1719           it fails, yay !
1720
1721 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1722
1723         * check/Makefile.am:
1724         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
1725         * testsuite/Makefile.am:
1726         * testsuite/caps/Makefile.am:
1727         * testsuite/caps/value_serialize.c:
1728         * testsuite/test_gst_init.c:
1729           move a value_serialize test over
1730
1731 2005-06-20  Wim Taymans  <wim@fluendo.com>
1732
1733         * gst/gstpad.c:
1734         Small doc updates.
1735         
1736         * gst/gstvalue.c: (gst_value_compare_buffer),
1737         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
1738         (gst_value_compare_flags), (gst_value_serialize_flags),
1739         (gst_value_deserialize_flags), (_gst_value_initialize):
1740         Fix serialisation of buffers, they are not boxed types anymore
1741
1742 2005-06-20  Wim Taymans  <wim@fluendo.com>
1743
1744         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1745         Testcase to show error in buffer-on-caps serialisation.
1746
1747 2005-06-20  Andy Wingo  <wingo@pobox.com>
1748
1749         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
1750         will be adding to later.
1751
1752         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
1753         if its socks fill with rocks.
1754         (gst_system_clock_obtain): Set the name on object construction.
1755         Avoid double-checked locking.
1756
1757 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
1758
1759         * gst/gsturi.c: (gst_element_make_from_uri):
1760           Fix potential endless loop.
1761
1762 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1763
1764         * check/Makefile.am:
1765           add gsttag
1766         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
1767         (main):
1768           move over from testsuite dir and clean up
1769         * configure.ac:
1770         * gst/gsttag.c:
1771         * testsuite/Makefile.am:
1772         * testsuite/tags/.cvsignore:
1773         * testsuite/tags/Makefile.am:
1774         * testsuite/tags/merge.c:
1775           remove testsuite/tags
1776
1777 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1778
1779         * docs/gst/gstreamer-sections.txt:
1780         * docs/gst/tmpl/gstenumtypes.sgml:
1781         * win32/gstenumtypes.c:
1782           clean up documentation build a little
1783
1784 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1785
1786         * check/gstcheck.h:
1787           add macros for checking refcounts on objects and caps
1788         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
1789           add some more unit tests
1790         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1791         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
1792           fix leaked refcounts (I hope :)) so unittest works
1793         * gst/gstpad.h:
1794           whitespace removal
1795
1796 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1797
1798         * configure.ac: back to HEAD
1799
1800 === release 0.9.1 ===
1801
1802 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1803
1804         * NEWS:
1805         * RELEASE:
1806           updated
1807
1808 2005-06-17  Andy Wingo  <wingo@pobox.com>
1809
1810         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
1811         assert; it's always possible that the pad gets deactivated in
1812         between the checks in gstpad.c and the implementation. Rely on
1813         finish_preroll() to return a FLUSHING or similar instead of on the
1814         assert.
1815         
1816         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
1817         clock and post an EOS message if we come out of finish_preroll in
1818         the playing state.
1819
1820 2005-06-16  David Schleef  <ds@schleef.org>
1821
1822         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
1823         (gst_capsfilter_set_property): Allow NULL as possible value
1824         for filter_caps property, indicating GST_CAPS_ANY.
1825
1826 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1827
1828         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
1829           fix debug output
1830         * gst/schedulers/Makefile.am:
1831           use libgst prefix
1832         * gstreamer.spec.in:
1833           fix spec for it
1834
1835 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1836
1837         * gstreamer.spec.in:
1838           clean up
1839
1840 2005-06-08  Andy Wingo  <wingo@pobox.com>
1841
1842         * gst/gstutils.c: RPAD fixes all around.
1843         (gst_element_link_pads): Refcounting fixes.
1844
1845         * tools/gst-inspect.c:
1846         * tools/gst-xmlinspect.c:
1847         * parse/grammar.y:
1848         * gst/base/gsttypefindhelper.c:
1849         * gst/base/gstbasesink.c:
1850         * gst/gstqueue.c: RPAD fixes.
1851
1852         * gst/gstghostpad.h:
1853         * gst/gstghostpad.c: New ghost pad implementation as full proxy
1854         pads. The tricky thing is they provide both source and sink
1855         interfaces, since they proxy the internal pad for the external
1856         pad, and vice versa. Implement with lower-level ProxyPad objects,
1857         with the interior proxy pad as a child of the exterior ghost pad.
1858         Should write a doc on this.
1859         
1860         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
1861         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
1862         gst_object API.
1863         
1864         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
1865         pads are real pads. No ghost pads in this file. Not documenting
1866         the myriad s/RPAD/PAD/ and REALIZE fixes.
1867         (gst_pad_class_init): Add properties for "direction" and
1868         "template". Both are construct-only, so they can't change during
1869         the life of the pad. Fixes properly deriving from GstPad.
1870         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
1871         derived objects, just set properties when creating the objects via
1872         g_object_new.
1873         (gst_pad_get_parent): Implement as a function, return NULL if the
1874         parent is not an element.
1875         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
1876         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
1877         
1878         * gst/gstobject.c (gst_object_class_init): Make name a construct
1879         property. Don't set it in the object init.
1880
1881         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
1882         with UNKNOWN direction.
1883         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
1884         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
1885         (gst_element_remove_pad): Remove ghost-pad special cases.
1886         (gst_element_pads_activate): Remove rpad cruft.
1887
1888         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
1889         catch the pad's-parent-not-an-element case.
1890
1891         * gst/gst.h: Include gstghostpad.h.
1892
1893         * gst/gst.c (init_post): No more real, ghost pads.
1894
1895         * gst/Makefile.am: Add gstghostpad.[ch].
1896
1897         * check/Makefile.am:
1898         * check/gst/gstbin.c:
1899         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
1900         into a bin creates ghost pads, and that the refcounts are right.
1901         Partly moved from gstbin.c.
1902
1903 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1904
1905         * check/gst-libs/.cvsignore:
1906         * check/gst/.cvsignore:
1907         * check/pipelines/.cvsignore:
1908           ignore more
1909         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
1910         (START_TEST), (cleanup_suite), (main):
1911           add some tests related to cleanup after running pipelines
1912
1913 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1914
1915         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
1916           add a testsuite for GstBuffer
1917
1918 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1919
1920         * gst/gstminiobject.h:
1921           add defines for accessing the refcount
1922
1923 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
1924
1925         * Makefile.am: added support for html unit test coverage reports
1926
1927 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
1928
1929         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
1930           Free existing caps if the capsfilter changes. Add a FIXME about
1931           setting those caps on the pads.
1932
1933         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
1934           Before adding a ghost pad to a parent bin, check that there isn't
1935           already one for the element on the bin. Prevents infinite recursion
1936           when using decodebin in parse pipelines. Andy says he'll rewrite the
1937           way this works anyway, so ignore the hack.
1938
1939 2005-06-02  Andy Wingo  <wingo@pobox.com>
1940
1941         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
1942         file size, pass it on to the type find helper.
1943
1944         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
1945         segment_start and segment_end properly according to the seek
1946         method. Segment_end is still a bit flaky because offset can be
1947         negative for CUR and END cases, but it takes -1 as an "unset"
1948         value.
1949
1950 2005-06-02  Wim Taymans  <wim@fluendo.com>
1951
1952         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
1953         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
1954         (gst_basesink_activate):
1955         * gst/base/gstbasesink.h:
1956         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1957         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1958         (gst_pad_query), (gst_pad_start_task):
1959         * gst/gstpad.h:
1960         * gst/gstqueue.c: (gst_queue_bufferalloc),
1961         (gst_queue_handle_sink_event), (gst_queue_chain):
1962         Bufferalloc: return GstFlowReturn to more accuratly report
1963         why allocation failed.
1964
1965 2005-06-02  Wim Taymans  <wim@fluendo.com>
1966
1967         * gst/gstpipeline.c: (gst_pipeline_send_event):
1968         Take snapshot of state without blocking.
1969
1970 2005-06-02  Wim Taymans  <wim@fluendo.com>
1971
1972         * docs/design/part-TODO.txt:
1973         * docs/design/part-caps.txt:
1974         * docs/design/part-clocks.txt:
1975         * docs/design/part-negotiation.txt:
1976         * docs/design/part-preroll.txt:
1977         Small doc updates 
1978
1979 2005-05-30  Wim Taymans  <wim@fluendo.com>
1980
1981         * gst/elements/gstidentity.c: (gst_identity_event),
1982         (gst_identity_transform), (gst_identity_get_property):
1983         Protect last_message property as it is accessed from
1984         multiple threads.
1985
1986 2005-05-30  Wim Taymans  <wim@fluendo.com>
1987
1988         * gst/gstelement.c: (gst_element_init),
1989         (gst_element_pads_activate), (gst_element_change_state):
1990         Slicker pad activation code.
1991
1992 2005-05-30  Wim Taymans  <wim@fluendo.com>
1993
1994         * gst/Makefile.am:
1995         * gst/gstelement.h:
1996         * gst/gstelementfactory.h:
1997         * gst/gsttypes.h:
1998         Move elementfactory methods to separate .h file.
1999
2000 2005-05-30  Wim Taymans  <wim@fluendo.com>
2001
2002         * docs/design/part-overview.txt:
2003         * gst/gstsystemclock.h:
2004         Small typo fixes, doc updates.
2005
2006 2005-05-30  Wim Taymans  <wim@fluendo.com>
2007
2008         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2009         (init_popt_callback):
2010         Remove cpu-opt flag.
2011
2012 2005-05-30  Wim Taymans  <wim@fluendo.com>
2013
2014         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2015         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2016         * gst/gstbuffer.h:
2017         Avoid typechecking in places where not needed.
2018         Added accessor for malloc_data.
2019
2020 2005-05-30  Wim Taymans  <wim@fluendo.com>
2021
2022         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2023         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2024         (gst_pad_configure_sink), (gst_pad_configure_src),
2025         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2026         (gst_pad_start_task):
2027         Propagate errors from _set_caps() in configure_src/sink
2028         functions instead of returning TRUE.
2029         FLUSH events can travel up and downstream
2030
2031
2032 2005-05-30  Wim Taymans  <wim@fluendo.com>
2033
2034         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2035         (gst_basesink_activate):
2036         Handle EOS in preroll.
2037
2038 2005-05-30  Wim Taymans  <wim@fluendo.com>
2039
2040         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2041         (gst_queue_loop), (gst_queue_handle_src_event):
2042         Remove old pieces of code
2043         Flushing the queue in an upstream event is a very bad idea.
2044
2045 2005-05-26  Andy Wingo  <wingo@pobox.com>
2046
2047         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2048         gst_value_set_mini_object so as to add a ref on the object (which
2049         will be removed when the value is unset).
2050
2051         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2052         arg type in ::handoff.
2053
2054         * gst/gstelement.c (gst_element_change_state): Also deactivate
2055         pads in READY->NULL, just in case the element didn't make it to
2056         PAUSED. Wingo tested, Wim approved.
2057
2058 2005-05-26  Wim Taymans  <wim@fluendo.com>
2059
2060         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2061         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2062         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2063         A flushing pad cannot be used to alloc_buffer from.
2064
2065 2005-05-26  Wim Taymans  <wim@fluendo.com>
2066
2067         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2068         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2069         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2070         (gst_bus_create_watch), (gst_bus_add_watch_full):
2071         * gst/gstbus.h:
2072         Implement a real GSource and use g_main_context_wakeup() to
2073         signal new messages instead of the socketpair.
2074
2075 2005-05-25  Wim Taymans  <wim@fluendo.com>
2076
2077         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2078         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2079         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2080         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2081         (gst_pad_send_event), (gst_pad_start_task):
2082         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2083         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2084         (gst_queue_sink_activate), (gst_queue_src_activate),
2085         (gst_queue_change_state):
2086         * gst/gstqueue.h:
2087         Fix state changes for non sinks. We now change sinks, then elements
2088         with unconnected srcpads, then the rest.
2089         More efficient queue unlocking in flush and state changes.
2090         Set the pad activate mode even if it does not have an activate
2091         function.
2092
2093 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2094
2095         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2096           Don't go in pull mode for non-seekable sources.
2097         * gst/elements/gsttypefindelement.h:
2098         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2099         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2100         (free_entry), (stop_typefinding),
2101         (gst_type_find_element_handle_event), (find_peek),
2102         (gst_type_find_element_chain), (do_pull_typefind),
2103         (gst_type_find_element_change_state):
2104           Allow typefinding (w/o seeking) in push-mode, simplified version
2105           of what was in 0.8.
2106         * gst/gstutils.c: (gst_buffer_join):
2107         * gst/gstutils.h:
2108           gst_buffer_join() from 0.8.
2109
2110 2005-05-25  Wim Taymans  <wim@fluendo.com>
2111
2112         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2113         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2114         (gst_pad_send_event), (gst_pad_start_task):
2115         Disable attempt at mode switching until it is figured out.
2116
2117 2005-05-25  Wim Taymans  <wim@fluendo.com>
2118
2119         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2120         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2121         (gst_basesink_finish_preroll), (gst_basesink_chain),
2122         (gst_basesink_loop), (gst_basesink_activate),
2123         (gst_basesink_change_state):
2124         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2125         (gst_basesrc_get_range), (gst_basesrc_loop),
2126         (gst_basesrc_activate):
2127         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2128         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2129         (gst_real_pad_init), (gst_real_pad_set_property),
2130         (gst_real_pad_get_property), (gst_pad_set_active),
2131         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2132         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2133         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2134         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2135         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2136         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2137         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2138         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2139         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2140         (gst_pad_stop_task):
2141         * gst/gstpad.h:
2142         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2143         (gst_queue_loop), (gst_queue_src_activate):
2144         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2145         (gst_task_get_state):
2146         * gst/gsttask.h:
2147         * gst/schedulers/threadscheduler.c:
2148         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2149         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2150         in task function.
2151         Remove ACTIVE pad flag, use FLUSHING everywhere
2152         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2153         functions.
2154         Add locks around IS_FLUSHING when reading.
2155         Take STREAM lock in chain(), get_range() functions so plugins
2156         don't need to take it anymore.
2157         
2158
2159
2160 2005-05-25  Wim Taymans  <wim@fluendo.com>
2161
2162         * tools/gst-launch.c: (event_loop):
2163         Unref message after using its contents instead of
2164         before.
2165
2166 2005-05-24  Wim Taymans  <wim@fluendo.com>
2167
2168         * docs/design/draft-ghostpads.txt:
2169         * docs/design/draft-push-pull.txt:
2170         * docs/design/draft-query.txt:
2171         * docs/design/part-overview.txt:
2172         Docs updates, added general overview doc.
2173
2174 2005-05-21  David Schleef  <ds@schleef.org>
2175
2176         * docs/gst/tmpl/old/GstBin.sgml:
2177         * docs/gst/tmpl/old/GstBuffer.sgml:
2178         * docs/gst/tmpl/old/GstCaps.sgml:
2179         * docs/gst/tmpl/old/GstClock.sgml:
2180         * docs/gst/tmpl/old/GstCompat.sgml:
2181         * docs/gst/tmpl/old/GstData.sgml:
2182         * docs/gst/tmpl/old/GstElement.sgml:
2183         * docs/gst/tmpl/old/GstEvent.sgml:
2184         * docs/gst/tmpl/old/GstIndex.sgml:
2185         * docs/gst/tmpl/old/GstStructure.sgml:
2186         * docs/gst/tmpl/old/GstTag.sgml:
2187         * docs/gst/tmpl/old/cothreads.sgml:
2188         * docs/gst/tmpl/old/cothreads_compat.sgml:
2189         * docs/gst/tmpl/old/gettext.sgml:
2190         * docs/gst/tmpl/old/gobject2gtk.sgml:
2191         * docs/gst/tmpl/old/grammar.tab.sgml:
2192         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2193         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2194         * docs/gst/tmpl/old/gst_private.sgml:
2195         * docs/gst/tmpl/old/gstaggregator.sgml:
2196         * docs/gst/tmpl/old/gstarch.sgml:
2197         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2198         * docs/gst/tmpl/old/gstbufferstore.sgml:
2199         * docs/gst/tmpl/old/gstdata_private.sgml:
2200         * docs/gst/tmpl/old/gstdisksink.sgml:
2201         * docs/gst/tmpl/old/gstdisksrc.sgml:
2202         * docs/gst/tmpl/old/gstelementfactory.sgml:
2203         * docs/gst/tmpl/old/gstextratypes.sgml:
2204         * docs/gst/tmpl/old/gstfakesink.sgml:
2205         * docs/gst/tmpl/old/gstfakesrc.sgml:
2206         * docs/gst/tmpl/old/gstfdsink.sgml:
2207         * docs/gst/tmpl/old/gstfdsrc.sgml:
2208         * docs/gst/tmpl/old/gstfilesink.sgml:
2209         * docs/gst/tmpl/old/gstfilesrc.sgml:
2210         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2211         * docs/gst/tmpl/old/gstidentity.sgml:
2212         * docs/gst/tmpl/old/gstindexfactory.sgml:
2213         * docs/gst/tmpl/old/gstmarshal.sgml:
2214         * docs/gst/tmpl/old/gstmd5sink.sgml:
2215         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2216         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2217         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2218         * docs/gst/tmpl/old/gstpipefilter.sgml:
2219         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2220         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2221         * docs/gst/tmpl/old/gstshaper.sgml:
2222         * docs/gst/tmpl/old/gstspider.sgml:
2223         * docs/gst/tmpl/old/gstspideridentity.sgml:
2224         * docs/gst/tmpl/old/gststatistics.sgml:
2225         * docs/gst/tmpl/old/gsttee.sgml:
2226         * docs/gst/tmpl/old/gsttimecache.sgml:
2227         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2228         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2229         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2230         * docs/gst/tmpl/old/types.sgml:
2231           I didn't intend to add these or check them in.
2232
2233 2005-05-19  David Schleef  <ds@schleef.org>
2234
2235         * configure.ac: Use -no-common everywhere.  In a sane world, it
2236           would be the default in libtool, because without it, you can't
2237           build DLLs on Windows.
2238         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2239         * docs/gst/gstreamer-sections.txt:
2240         * docs/gst/tmpl/gstcpu.sgml:
2241         * docs/gst/tmpl/gstdata.sgml:
2242         * docs/gst/tmpl/gstthread.sgml:
2243
2244 2005-05-19  David Schleef  <ds@schleef.org>
2245
2246         * gst/gstminiobject.c: (gst_value_set_mini_object),
2247         (gst_value_take_mini_object), (gst_value_get_mini_object):
2248         * gst/gstminiobject.h: Add GValue set/get functions.
2249
2250 2005-05-19  Wim Taymans  <wim@fluendo.com>
2251
2252         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2253         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2254         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2255         * gst/gstbuffer.h:
2256         * gst/gstbus.c: (gst_bus_post):
2257         * gst/gstelement.c: (gst_element_get_random_pad):
2258         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2259         Make subbufer unref the parent in finalize.
2260         some more debugging info.
2261
2262
2263 2005-05-19  Wim Taymans  <wim@fluendo.com>
2264
2265         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2266         (gst_basesink_init), (gst_basesink_finalize),
2267         (gst_basesink_activate), (gst_basesink_change_state):
2268         Don't free preroll queue too early.
2269
2270 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2271
2272         * gst/Makefile.am:
2273         * gst/ROADMAP:
2274           Hi, I'm outdated. Please shoot me.
2275
2276 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2277
2278         * gst/gstpipeline.c: (gst_pipeline_send_event):
2279           Do not access variables after they have been deleted.
2280
2281 2005-05-19  Wim Taymans  <wim@fluendo.com>
2282
2283         * tools/gst-inspect.c: (print_plugin_features):
2284         A plugin feature does unfortunatly not use the
2285         object name yet...
2286
2287 2005-05-18  Wim Taymans  <wim@fluendo.com>
2288
2289         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2290         Port _span() functions to new subbuffers.
2291
2292 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2293
2294         * gst/gstbin.c: (gst_bin_add_func):
2295           Fix clock settery in bins when adding kids after the clock has
2296           been selected.
2297
2298 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2299
2300         * gst/elements/gstidentity.c: (gst_identity_class_init):
2301           Workaround until signals support GstMiniObject.
2302
2303 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2304
2305         * gst/gstbuffer.c:
2306         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2307
2308 2005-05-18  Wim Taymans  <wim@fluendo.com>
2309
2310         * gst/base/Makefile.am:
2311         * gst/base/gstadapter.c: (gst_adapter_base_init),
2312         (gst_adapter_class_init), (gst_adapter_init),
2313         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2314         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2315         (gst_adapter_flush), (gst_adapter_available),
2316         (gst_adapter_available_fast):
2317         * gst/base/gstadapter.h:
2318         Ported and added adapter to the base classes.
2319
2320 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2321
2322         * gst/gst.c:
2323         * gst/gstmessage.c:
2324           Make sure the class is reffed/unreffed once before threads can be
2325           used.  Fixes #304551.
2326
2327 2005-05-17  Wim Taymans  <wim@fluendo.com>
2328
2329         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2330         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2331         * gst/gstminiobject.c: (gst_mini_object_get_type),
2332         (gst_mini_object_free):
2333         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2334         (gst_pad_push), (gst_pad_push_event):
2335         * gst/gstqueue.c: (gst_queue_change_state):
2336         Don't queue buffers in basesink when we are flushing.
2337         Unref buffer when flushing in basesink.
2338         Flush queue when going to READY
2339         Unref buffer when _push() returns an error.
2340         Don't free MiniObject instance when refcount is incremented
2341         in _finalize() so that we can recover objects.
2342
2343 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2344
2345         * docs/manual/advanced-schedulers.xml:
2346         * docs/manual/appendix-checklist.xml:
2347         * docs/pwg/advanced-clock.xml:
2348         * docs/pwg/advanced-interfaces.xml:
2349         * docs/pwg/advanced-request.xml:
2350         * docs/pwg/advanced-types.xml:
2351         * docs/pwg/intro-preface.xml:
2352         * examples/plugins/example.c: (gst_example_get_type),
2353         (gst_example_class_init), (gst_example_chain),
2354         (gst_example_set_property), (gst_example_get_property),
2355         (gst_example_change_state), (plugin_init):
2356         * examples/plugins/example.h:
2357           small doc fixes
2358
2359 2005-05-17  Wim Taymans  <wim@fluendo.com>
2360
2361         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2362         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2363         * gst/gstqueue.c: (gst_queue_change_state):
2364         Clear queue when going to READY.
2365         Remove IN_SETCAPS flag too.
2366
2367 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2368
2369         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2370           Remove implicit cast from gboolean to GstElementStateReturn;
2371           make sure we still return failure in paused => ready case if
2372           the parent class fails to change state and our own stop 
2373           vfunc succeeds.
2374
2375 2005-05-17  Wim Taymans  <wim@fluendo.com>
2376
2377         * tools/gst-launch.c: (event_loop):
2378         Message was unreffed too soon.
2379
2380 2005-05-16  Andy Wingo  <wingo@pobox.com>
2381
2382         * gst/gstbin.c (sink_iterator_filter): Err... um...
2383
2384         * check/gst/gstbin.c (test_ghost_pads): New test for the
2385         ghosting-if-elements-not-in-same-bin behavior.
2386
2387 2005-05-16  David Schleef  <ds@schleef.org>
2388
2389         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2390         accessing refcount directly.
2391
2392 2005-05-15  David Schleef  <ds@schleef.org>
2393
2394         * check/Makefile.am: remove GstData checks
2395         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2396         * gst/Makefile.am: add miniobject, remove data
2397         * gst/gst.h: add miniobject, remove data
2398         * gst/gstdata.c: remove
2399         * gst/gstdata.h: remove
2400         * gst/gstdata_private.h: remove
2401         * gst/gsttypes.h: remove GstEvent and GstMessage
2402         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2403         * gst/gstmarshal.list: change BOXED -> OBJECT
2404
2405         Implement GstMiniObject.
2406         * gst/gstminiobject.c:
2407         * gst/gstminiobject.h:
2408
2409         Modify to be subclasses of GstMiniObject.
2410         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2411         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2412         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2413         (gst_subbuffer_get_type), (gst_subbuffer_init),
2414         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2415         (gst_buffer_span):
2416         * gst/gstbuffer.h:
2417         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2418         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2419         (_gst_event_copy), (gst_event_new):
2420         * gst/gstevent.h:
2421         * gst/gstmessage.c: (_gst_message_initialize),
2422         (gst_message_get_type), (gst_message_class_init),
2423         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2424         (gst_message_new), (gst_message_new_error),
2425         (gst_message_new_warning), (gst_message_new_tag),
2426         (gst_message_new_state_changed), (gst_message_new_application):
2427         * gst/gstmessage.h:
2428         * gst/gstprobe.c: (gst_probe_perform),
2429         (gst_probe_dispatcher_dispatch):
2430         * gst/gstprobe.h:
2431         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2432         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2433         (_gst_query_copy), (gst_query_new):
2434
2435         Update elements for GstData -> GstMiniObject changes
2436         * gst/gstquery.h:
2437         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2438         (gst_queue_chain), (gst_queue_loop):
2439         * gst/elements/gstbufferstore.c:
2440         (gst_buffer_store_add_buffer_func),
2441         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2442         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2443         (gst_fakesink_render):
2444         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2445         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2446         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2447         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2448         (gst_filesrc_create_read):
2449         * gst/elements/gstidentity.c: (gst_identity_class_init):
2450         * gst/elements/gsttypefindelement.c:
2451         (gst_type_find_element_src_event), (free_entry_buffers),
2452         (gst_type_find_element_handle_event):
2453         * libs/gst/dataprotocol/dataprotocol.c:
2454         (gst_dp_header_from_buffer):
2455         * libs/gst/dataprotocol/dataprotocol.h:
2456         * libs/gst/dataprotocol/dp-private.h:
2457
2458 2005-05-15  David Schleef  <ds@schleef.org>
2459
2460         * gst/elements/gstelements.c: Don't include headers that were
2461         just removed.
2462
2463 2005-05-15  David Schleef  <ds@schleef.org>
2464
2465         * gst/elements/Makefile.am: Remove some elements that don't
2466         need to be in the core (or even exist at all).
2467         * gst/elements/gstaggregator.c:
2468         * gst/elements/gstaggregator.h:
2469         * gst/elements/gstmd5sink.c:
2470         * gst/elements/gstmd5sink.h:
2471         * gst/elements/gstmultifilesrc.c:
2472         * gst/elements/gstmultifilesrc.h:
2473         * gst/elements/gstpipefilter.c:
2474         * gst/elements/gstpipefilter.h:
2475         * gst/elements/gstshaper.c:
2476         * gst/elements/gstshaper.h:
2477         * gst/elements/gststatistics.c:
2478         * gst/elements/gststatistics.h:
2479         * po/POTFILES.in: Remove above files.
2480
2481 2005-05-14  Andy Wingo  <wingo@pobox.com>
2482
2483         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2484         so as to get the refs right.
2485         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2486         unreffing objects that don't pass the filter.
2487
2488         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2489         gst_element_set_bus.
2490         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2491         normal cases, this will destroy the bus.
2492
2493         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2494         object.
2495
2496         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2497         has no sinks.
2498
2499 2005-05-13  Andy Wingo  <wingo@pobox.com>
2500
2501         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2502         gst_pad_link, call pad_link_maybe_ghosting,
2503         (pad_link_maybe_ghosting): Links pads, making sure that the
2504         elements being linked are in the same bin.
2505         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2506         Helpers for pad_link_maybe_ghosting.
2507
2508 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2509
2510         * configure.ac:
2511           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2512
2513 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2514
2515         * docs/design/part-element-source.txt:
2516           Mention GstPushSrc
2517
2518 2005-05-12  Wim Taymans  <wim@fluendo.com>
2519
2520         * gst/base/gstbasesink.c: (gst_basesink_init),
2521         (gst_basesink_activate):
2522         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2523         (gst_basesrc_is_seekable):
2524         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2525         (bin_element_is_sink), (gst_bin_change_state):
2526         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2527         * gst/gstelement.h:
2528         Identify sinks by their flag to avoid overly complicated
2529         checks (fow now).
2530         Do state changes even for elements not reachable from the
2531         sinks.
2532         BaseSink is a sink now :)
2533         Some more debugging info in the basesrc.
2534
2535
2536 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2537
2538         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2539           Implement _query on a bin, similar to _send_event.
2540
2541 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2542
2543         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2544           Discont event offset format should be GST_FORMAT_BYTES,
2545           not GST_FORMAT_TIME.
2546
2547 2005-05-12  Wim Taymans  <wim@fluendo.com>
2548
2549         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2550         Same fix as Ronald's but without the signal. 
2551
2552 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2553
2554         * gst/gstutils.c: (gst_element_query_position):
2555           No, an element is not a pad.
2556
2557 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2558
2559         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2560         (gst_bin_get_state):
2561           If a child is removed from a bin while we remove the child from
2562           the bin and while we're retrieving its state, signal this to the
2563           get_state function so we abort the wait (instead of waiting for
2564           a timeout) and can immediately re-iterate over all other elements.
2565
2566 2005-05-12  Wim Taymans  <wim@fluendo.com>
2567
2568         * gst/base/Makefile.am:
2569         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2570         (gst_basesrc_start):
2571         * gst/base/gstbasesrc.h:
2572         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2573         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2574         (gst_pushsrc_init), (gst_pushsrc_create):
2575         * gst/base/gstpushsrc.h:
2576         Added is_seekable to BaseSrc
2577         Added simple PushSrc.
2578
2579 2005-05-11  Wim Taymans  <wim@fluendo.com>
2580
2581         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2582         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2583         (gst_element_link_pads), (gst_element_query_position),
2584         (gst_element_query_convert), (intersect_caps_func),
2585         (gst_pad_query_position), (gst_pad_query_convert):
2586         Fix refcounting in utils function.
2587         No point in trying to activate a pad when it's added, it could
2588         be added from the state change function and then we deadlock, the
2589         element has to decide what to do.
2590
2591 2005-05-10  Andy Wingo  <wingo@pobox.com>
2592
2593         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2594         *all* the arguments.
2595
2596         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2597         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2598         lock (according to the docs -- if this is wrong change the docs).
2599
2600         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2601         flush messages in the NULL state.
2602
2603         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2604         message immediately and return.
2605         (gst_bus_set_flushing): New function. If a bus is flushing, it
2606         flushes out any queued messages and immediately unrefs new
2607         messages. This is so when an element goes to NULL, all of the
2608         unhandled messages coming from it can be freed, and their
2609         references to the element dropped. In other words: message source
2610         ref considered harmful :P
2611
2612         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2613         we're finished with it.
2614
2615         * gst/gstmessage.c (gst_message_new_state_changed): 
2616
2617 2005-05-10  Wim Taymans  <wim@fluendo.com>
2618
2619         * gst/gstvalue.c: (gst_value_compare_flags),
2620         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2621         (_gst_value_initialize):
2622         Added flags serialize/deserialize/compare code.
2623
2624 2005-05-09  Andy Wingo  <wingo@pobox.com>
2625
2626         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2627         Intersect the peer's caps with our caps.
2628
2629 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2630
2631         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2632         * gst/elements/gsttypefindelement.c: (find_peek):
2633           Handle negative offsets better. Fixes decodebin.
2634
2635 2005-05-09  Wim Taymans  <wim@fluendo.com>
2636
2637         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2638         (gst_base_transform_event):
2639         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2640         Implement accept_caps.
2641         Fix silly lock/unlock mismatch in base class.
2642
2643 2005-05-09  Wim Taymans  <wim@fluendo.com>
2644
2645         * docs/design/draft-push-pull.txt:
2646         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2647         * gst/elements/gstfilesink.c: (gst_filesink_init),
2648         (gst_filesink_query):
2649         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2650         (gst_type_find_handle_src_query), (find_element_get_length):
2651         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2652         * gst/gstelement.h:
2653         * gst/gstmessage.c:
2654         * gst/gstmessage.h:
2655         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2656         (gst_real_pad_get_caps_unlocked),
2657         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2658         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2659         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2660         (gst_real_pad_dispose), (gst_real_pad_finalize),
2661         (gst_pad_load_and_link), (gst_pad_save_thyself),
2662         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2663         (gst_pad_check_pull_range), (gst_pad_pull_range),
2664         (gst_pad_template_get_type), (gst_pad_template_class_init),
2665         (gst_pad_template_init), (gst_pad_template_dispose),
2666         (name_is_valid), (gst_static_pad_template_get),
2667         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2668         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2669         (gst_pad_get_element_private), (gst_pad_start_task),
2670         (gst_pad_pause_task), (gst_pad_stop_task),
2671         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2672         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2673         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
2674         (gst_ghost_pad_new):
2675         * gst/gstpad.h:
2676         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
2677         (gst_query_new_position), (gst_query_set_position),
2678         (gst_query_parse_position), (gst_query_new_convert),
2679         (gst_query_set_convert), (gst_query_parse_convert):
2680         * gst/gstquery.h:
2681         * gst/gstqueryutils.c:
2682         * gst/gstqueryutils.h:
2683         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2684         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2685         (gst_queue_handle_src_query):
2686         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2687         (gst_element_query_position), (gst_element_query_convert),
2688         (intersect_caps_func), (gst_pad_query_position),
2689         (gst_pad_query_convert):
2690         * gst/gstutils.h:
2691         * tools/gst-inspect.c: (print_pad_info):
2692         * tools/gst-xmlinspect.c: (print_element_info):
2693         Remove old query functions. Ported old code.
2694         Added position/convert helper functions to gstutils.
2695         Reordered gstpad.c code, grouping relevant things.
2696         Remove gst_message_new(), always need to speficy a specific
2697         message.
2698
2699
2700 2005-05-09  Andy Wingo  <wingo@pobox.com>
2701
2702         * gst/gstiterator.h: Add some includes.
2703
2704         * gst/gstqueryutils.h: Include more headers.
2705
2706         * gst/gstpad.h:
2707         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
2708         some uses of gst_pad_query.
2709
2710         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
2711         NULL out parameters.
2712         (gst_query_new_position): New proc, allocates a new position
2713         query.
2714
2715         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
2716         gstqueryutils.c to the build.
2717
2718         * gst/gststructure.c (gst_structure_set_valist): Implement with
2719         the generic G_VALUE_COLLECT.
2720         
2721 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
2722
2723         * gst/Makefile.am: (gst_headers):
2724         Added gstqueryutils.h to the list of headers to install, that was
2725         a 'nachty' move wingo :)
2726
2727 2005-05-06  Andy Wingo  <wingo@pobox.com>
2728
2729         * gst/gstquery.h
2730         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
2731         GstData, init a memchunk.
2732         (standard_definitions): Add a few query types, deprecate a few.
2733         (gst_query_get_type): New proc.
2734         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
2735         implementation.
2736         (gst_query_new_application, gst_query_get_structure): New public
2737         procs.
2738
2739         * docs/design/draft-query.txt: Removed LINKS from the query types,
2740         because all the rest can be dispatched to other pads -- seemed
2741         ugly to have a query that couldn't be dispatched. internal_links
2742         is fine as a pad method.
2743
2744         * gst/gstpad.h: Add query2 as a pad method, add the new functions
2745         in gstpad.c, but maintain binary compatibility for the moment.
2746         Will fix before 0.9 is out.
2747
2748         * gst/gstqueryutils.c: 
2749         * gst/gstqueryutils.h: New files, implement 3 methods for each
2750         query type: parse_query, parse_response, and set. Probably need an
2751         allocator as well.
2752
2753         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
2754
2755         * gst/elements/gstfilesink.c (gst_filesink_query2):
2756         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
2757         query_types, and formats methods.
2758
2759         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
2760         (gst_pad_set_query2_function): New functions.
2761         (gst_real_pad_init): Set query2_default as the default query2
2762         function. Basically just dispatches to internally linked pads.
2763
2764         Needs review!
2765         
2766         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
2767         without using the atomic operations. Only one thread can possibly
2768         be accessing the data at this point. Changed so as to avoid
2769         gst_atomic operations.
2770
2771 2005-05-06  Wim Taymans  <wim@fluendo.com>
2772
2773         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
2774         Also set caps if we use the fallback buffer alloc.
2775
2776 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
2777
2778         * docs/gst/Makefile.am:
2779         * docs/gst/gstreamer-docs.sgml:
2780         * docs/gst/gstreamer-sections.txt:
2781         * docs/gst/tmpl/gstatomic.sgml:
2782         * docs/gst/tmpl/gstmemchunk.sgml:
2783         * testsuite/elements/struct_i386.h:
2784         * win32/GStreamer.vcproj:
2785         * win32/Makefile:
2786           Purge GstAtomic stuff from docs and win32 makefiles as well
2787
2788 2005-05-06  Wim Taymans  <wim@fluendo.com>
2789
2790         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
2791         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
2792         * gst/gstpad.c: (gst_pad_peer_get_caps):
2793         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2794         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2795         (gst_queue_src_activate), (gst_queue_change_state):
2796         * gst/gstqueue.h:
2797         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2798         (intersect_caps_func):
2799         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
2800         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
2801         Some fixes for the peer_get_caps() change.
2802
2803 2005-05-06  Wim Taymans  <wim@fluendo.com>
2804
2805         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2806         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
2807         (gst_basesink_activate):
2808         Actually do something with error codes returned from the push
2809         functions.
2810
2811 2005-05-06  Wim Taymans  <wim@fluendo.com>
2812
2813         * docs/design/part-element-sink.txt:
2814         * docs/design/part-element-source.txt:
2815         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2816         (gst_basesink_event), (gst_basesink_activate):
2817         * gst/base/gstbasesink.h:
2818         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
2819         (gst_basesrc_activate):
2820         * gst/base/gstbasesrc.h:
2821         * gst/gstelement.c: (gst_element_pads_activate):
2822         Some more documentation.
2823         Fixed scheduling decision in _pads_activate().
2824
2825 2005-05-05  Andy Wingo  <wingo@pobox.com>
2826
2827         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
2828         the test suite.
2829
2830 2005-05-05  Wim Taymans  <wim@fluendo.com>
2831
2832         * gst/base/Makefile.am:
2833         * gst/base/gstbasesink.h:
2834         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2835         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
2836         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
2837         (gst_collectpads_class_init), (gst_collectpads_init),
2838         (gst_collectpads_finalize), (gst_collectpads_new),
2839         (gst_collectpads_set_function), (gst_collectpads_add_pad),
2840         (find_pad), (gst_collectpads_remove_pad),
2841         (gst_collectpads_is_active), (gst_collectpads_collect),
2842         (gst_collectpads_collect_range), (gst_collectpads_start),
2843         (gst_collectpads_stop), (gst_collectpads_peek),
2844         (gst_collectpads_pop), (gst_collectpads_available),
2845         (gst_collectpads_read), (gst_collectpads_flush),
2846         (gst_collectpads_chain):
2847         * gst/base/gstcollectpads.h:
2848         * gst/elements/Makefile.am:
2849         * gst/elements/gstelements.c:
2850         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2851         (gst_fakesink_get_times), (gst_fakesink_event),
2852         (gst_fakesink_preroll), (gst_fakesink_render):
2853         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2854         (gst_filesink_init), (gst_filesink_set_location),
2855         (gst_filesink_open_file), (gst_filesink_close_file),
2856         (gst_filesink_pad_query), (gst_filesink_event),
2857         (gst_filesink_render), (gst_filesink_change_state):
2858         * gst/elements/gstfilesink.h:
2859         Added object to help in making collect pad based elements.
2860         Ported filesink.
2861         Make event function in sink baseclass return gboolean.
2862
2863 2005-05-05  Wim Taymans  <wim@fluendo.com>
2864
2865         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
2866         (gst_bin_get_by_name):
2867         * gst/gstbuffer.h:
2868         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
2869         (gst_clock_finalize):
2870         * gst/gstdata.c: (gst_data_replace):
2871         * gst/gstdata.h:
2872         * gst/gstelement.c: (gst_element_request_pad),
2873         (gst_element_pads_activate):
2874         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
2875         (gst_object_unref):
2876         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2877         (gst_pad_set_checkgetrange_function),
2878         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
2879         (gst_pad_check_pull_range), (gst_pad_pull_range),
2880         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2881         (gst_pad_pause_task), (gst_pad_stop_task):
2882         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2883         (gst_element_request_pad), (gst_pad_proxy_getcaps):
2884         Fix name lookup in GstBin.
2885         Added _data_replace() function and _buffer_replace()
2886         Use finalize method to clean up clock.
2887         Fix refcounting on request pads.
2888         Fix pad schedule mode error.
2889         Some more object refcounting debug info,
2890
2891
2892 2005-05-04  Andy Wingo <wingo@pobox.com>
2893
2894         * check/Makefile.am:
2895         * docs/gst/tmpl/gstatomic.sgml:
2896         * docs/gst/tmpl/gstplugin.sgml:
2897         * gst/base/gstbasesink.c: (gst_basesink_activate):
2898         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
2899         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
2900         (gst_basesrc_query), (gst_basesrc_set_property),
2901         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
2902         (gst_basesrc_activate):
2903         * gst/base/gstbasesrc.h:
2904         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
2905         (gst_base_transform_src_activate):
2906         * gst/elements/gstelements.c:
2907         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2908         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2909         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2910         * gst/elements/gsttypefindelement.c: (find_element_get_length),
2911         (gst_type_find_element_checkgetrange),
2912         (gst_type_find_element_activate):
2913         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
2914         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
2915         (gst_caps_load_thyself):
2916         * gst/gstelement.c: (gst_element_pads_activate),
2917         (gst_element_save_thyself), (gst_element_restore_thyself):
2918         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
2919         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
2920         * gst/gstpad.h:
2921         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
2922         (gst_xml_parse_file), (gst_xml_parse_memory),
2923         (gst_xml_get_element), (gst_xml_make_element):
2924         * gst/indexers/gstfileindex.c: (gst_file_index_load),
2925         (_file_index_id_save_xml), (gst_file_index_commit):
2926         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
2927         (read_enum), (load_pad_template), (load_feature), (load_plugin),
2928         (load_paths):
2929         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
2930         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
2931         * tools/gst-complete.c: (main):
2932         * tools/gst-compprep.c: (main):
2933         * tools/gst-inspect.c: (print_element_properties_info):
2934         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
2935         * tools/gst-xmlinspect.c: (print_element_properties):
2936         GCC 4 fixen.
2937         
2938 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
2939
2940         * gst/gstplugin.c: (gst_plugin_check_module),
2941         (gst_plugin_check_file), (gst_plugin_load_file):
2942             apply patch from #172526 to make register work on MacOSX
2943
2944 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2945
2946         * docs/gst/tmpl/gstconfig.sgml:
2947         * gst/gstconfig.h.in:
2948           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
2949         * testsuite/debug/printf_extension.c: (main):
2950           Do not use GST_PTR_FORMAT on pointers to types with
2951           sizeof < sizeof(gpointer).  Fixes test on 64-bit
2952         * testsuite/elements/property.h:
2953           use correct printf format
2954
2955 2005-05-02  Wim Taymans  <wim@fluendo.com>
2956
2957         * docs/design/draft-push-pull.txt:
2958         * docs/design/draft-query.txt:
2959         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
2960         (gst_basesrc_start):
2961         Added draft for new query API.
2962         Added draft for better selecting scheduling methods.
2963         Make basesrc ignore length if the subclass does not support
2964         it.
2965
2966 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2967
2968         * gst/Makefile.am:
2969           possible fixes for automake-1.5 - _LIBADD is reserved
2970
2971 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2972
2973         * docs/faq/Makefile.am:
2974         * docs/manual/Makefile.am:
2975         * docs/manuals.mak:
2976         * docs/pwg/Makefile.am:
2977         * gst/Makefile.am:
2978           possible fixes for automake-1.5
2979
2980 2005-04-28  Wim Taymans  <wim@fluendo.com>
2981
2982         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2983         (gst_basesink_pad_getcaps), (gst_basesink_init),
2984         (gst_basesink_do_sync):
2985         * gst/gstclock.c: (gst_clock_entry_new):
2986         * gst/gstevent.c: (gst_event_discont_get_value):
2987         * gst/gstpipeline.c: (pipeline_bus_handler),
2988         (gst_pipeline_change_state):
2989         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
2990         Better debugging of clocking info.
2991         Allow NULL values when getting discont values.
2992
2993 2005-04-27  Wim Taymans  <wim@fluendo.com>
2994
2995         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2996         * check/gst/gstpad.c: (gst_pad_suite):
2997         Increase timeout for checks.
2998
2999 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3000
3001         * check/Makefile.am:
3002           fix the broken rule for cleanup.  Apparently this rule is
3003           only needed on FC2, so maybe this warrants further autotool
3004           inspection.
3005
3006 2005-04-26  Wim Taymans  <wim@fluendo.com>
3007
3008         * gst/gsttrashstack.h:
3009         Ooohh. a nasty one! After having a failed pop() from the stack,
3010         it's possible that the stack is empty. In that case, don't
3011         follow the NULL pointer.
3012
3013 2005-04-25  Wim Taymans  <wim@fluendo.com>
3014
3015         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3016         (gst_pad_set_checkgetrange_function),
3017         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3018         (gst_pad_check_pull_range), (gst_pad_pull_range),
3019         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3020         (gst_pad_pause_task), (gst_pad_stop_task):
3021         * gst/gstplugin.c: (gst_plugin_load):
3022         * gst/gstplugin.h:
3023         Remove gst_library_load as it does more harm than good with
3024         the new g_module flags.
3025         Revert bogus caps template check in pad linking, pad caps
3026         are important when linking not the template, which is more
3027         general than the current caps.
3028
3029 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3030
3031         * gst/autoplug/.cvsignore:
3032         * gst/autoplug/Makefile.am:
3033         * gst/autoplug/gstsearchfuncs.c:
3034         * gst/autoplug/gstsearchfuncs.h:
3035         * gst/autoplug/gstspider.c:
3036         * gst/autoplug/gstspider.h:
3037         * gst/autoplug/gstspideridentity.c:
3038         * gst/autoplug/gstspideridentity.h:
3039         * gst/autoplug/spidertest.c:
3040           Die, spider, die.
3041
3042 2005-04-25  Wim Taymans  <wim@fluendo.com>
3043
3044         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3045         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3046         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3047         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3048         * gst/gstpad.h:
3049         Added stubs for unimplemented functions. 
3050
3051 2005-04-24  David Schleef  <ds@schleef.org>
3052
3053         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3054         please fix.
3055
3056 2005-04-24  David Schleef  <ds@schleef.org>
3057
3058         Convert everything from GstAtomicInt to g_atomic_int_*, and
3059         remove gstatomic.
3060         * gst/Makefile.am:
3061         * gst/gstatomic.c:
3062         * gst/gstatomic.h:
3063         * gst/gstatomic_impl.h:
3064         * gst/gstbuffer.c:
3065         * gst/gstcaps.c:
3066         * gst/gstcaps.h:
3067         * gst/gstclock.c:
3068         * gst/gstclock.h:
3069         * gst/gstdata.c:
3070         * gst/gstdata.h:
3071         * gst/gstdata_private.h:
3072         * gst/gstevent.c:
3073         * gst/gstinfo.c:
3074         * gst/gstinfo.h:
3075         * gst/gstmessage.c:
3076         * gst/gstobject.c:
3077         * gst/gstobject.h:
3078         * gst/gststructure.c:
3079         * gst/gststructure.h:
3080         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3081         * gst/gstutils.h:
3082
3083 2005-04-24  David Schleef  <ds@schleef.org>
3084
3085         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3086         make the regressions tests work.  Remove some code that is no
3087         longer true.
3088         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3089         Disable warning for pads without templates.
3090
3091 2005-04-24  David Schleef  <ds@schleef.org>
3092
3093         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3094         functions that handle filtered links.
3095         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3096         removed functions.
3097         * gst/gstutils.c: Fix/remove utility functions that handle
3098         filtered caps.
3099         * gst/gstutils.h:
3100         * gst/gstvalue.c: Add serialization/deserialization of caps
3101         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3102         requires fixing so that the filter caps notation creates
3103         a capsfilter element and sets the filter_caps property.  I
3104         think everyone probably wants to keep the shorthand notation.
3105         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3106         * docs/gst/tmpl/gstpad.sgml:
3107
3108         * gst/elements/gstelements.c: Register capsfilter element.
3109         * gst/Makefile.am: fix spacing
3110         * docs/random/ds/0.9-suggested-changes: random
3111
3112 2005-04-23  David Schleef  <ds@schleef.org>
3113
3114         * gst/elements/Makefile.am:
3115         * gst/elements/gstcapsfilter.c: New element that acts like an
3116         identity, but filters caps.  Will eventually replace filtered
3117         caps in pad linking.
3118         * gst/gstutils.c: (gst_element_create_all_pads): New function
3119         to create all the ALWAYS pads that are registered with an
3120         element class.  This functionality should eventually be
3121         merged in with GstElement initialization.
3122         * gst/gstutils.h:
3123         * testsuite/trigger/README: part of trigger test code that should
3124         have been checked in a long time ago.
3125
3126 2005-04-23  David Schleef  <ds@schleef.org>
3127
3128         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3129         needed with new versions of libtool (nobody will confirm this),
3130         and hard to carry around.
3131         * gst/autoplug/Makefile.am:
3132         * gst/base/Makefile.am:
3133         * gst/elements/Makefile.am:
3134         * gst/indexers/Makefile.am:
3135         * gst/schedulers/Makefile.am:
3136         * libs/gst/bytestream/Makefile.am:
3137         * libs/gst/control/Makefile.am:
3138         * libs/gst/dataprotocol/Makefile.am:
3139         * libs/gst/getbits/Makefile.am:
3140
3141 2005-04-21  Wim Taymans  <wim@fluendo.com>
3142
3143         * docs/design/draft-push-pull.txt:
3144         * docs/design/part-MT-refcounting.txt:
3145         * docs/design/part-TODO.txt:
3146         * docs/design/part-caps.txt:
3147         * docs/design/part-events.txt:
3148         * docs/design/part-gstbus.txt:
3149         * docs/design/part-gstpipeline.txt:
3150         * docs/design/part-messages.txt:
3151         * docs/design/part-push-pull.txt:
3152         * docs/design/part-query.txt:
3153         Some more docs.
3154
3155 2005-04-21  Wim Taymans  <wim@fluendo.com>
3156
3157         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3158         (gst_message_new), (gst_message_new_error),
3159         (gst_message_new_warning), (gst_message_new_tag),
3160         (gst_message_new_state_changed), (gst_message_new_application),
3161         (gst_message_get_structure):
3162         * gst/gstmessage.h:
3163         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3164         (gst_structure_copy_conditional):
3165         Use parent refcount in GstMessage to ensure GstStructure
3166         consistency.
3167         Cleaned up headers a bit.
3168         
3169
3170 2005-04-20  Wim Taymans  <wim@fluendo.com>
3171
3172         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3173         (gst_basesink_pad_getcaps), (gst_basesink_init),
3174         (gst_basesink_chain_unlocked):
3175         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3176         (gst_type_find_helper):
3177         * gst/elements/gsttypefindelement.c:
3178         (gst_type_find_element_have_type), (gst_type_find_element_init),
3179         (stop_typefinding), (gst_type_find_element_handle_event),
3180         (find_suggest), (gst_type_find_element_chain),
3181         (gst_type_find_element_checkgetrange),
3182         (gst_type_find_element_getrange), (do_typefind),
3183         (gst_type_find_element_activate):
3184         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3185         (gst_buffer_default_free), (gst_buffer_default_copy),
3186         (gst_buffer_set_caps):
3187         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3188         (gst_caps_replace):
3189         * gst/gstmessage.c: (gst_message_new),
3190         (gst_message_new_state_changed):
3191         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3192         (gst_pad_set_checkgetrange_function),
3193         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3194         (gst_pad_set_caps), (gst_pad_check_pull_range),
3195         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3196         * gst/gstpad.h:
3197         * gst/gsttypefind.c: (gst_type_find_register):
3198         Make gst_caps_replace() work like other _replace() functions.
3199         Use _caps_replace() where possible.
3200         Make sure _message_new() initialises its field.
3201         Add gst_static_pad_template_get_caps()
3202
3203
3204 2005-04-18  Andy Wingo  <wingo@pobox.com>
3205
3206         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3207         on the peer, not the pad. I think that was a typo. Pass an extra
3208         arg to see if random access is possible. Activate the pads as
3209         PULL_RANGE if possible.
3210
3211         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3212
3213         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3214         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3215         to PROP_....
3216
3217 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3218
3219         * docs/faq/using.xml:
3220           Add note on gstreamer-properties (#154996).
3221
3222 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3223
3224         * docs/random/bbb/optional-properties:
3225           Some analysis on optional properties.
3226
3227 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3228
3229         * docs/gst/tmpl/gstelementfactory.sgml:
3230         * gst/gstelement.h:
3231         * gst/gstelementfactory.c: (gst_element_factory_init),
3232         (gst_element_factory_cleanup), (gst_element_register),
3233         (__gst_element_factory_add_static_pad_template),
3234         (gst_element_factory_get_static_pad_templates),
3235         (gst_element_factory_can_src_caps),
3236         (gst_element_factory_can_sink_caps):
3237         * gst/registries/Makefile.am:
3238         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3239         (gst_xml_registry_class_init), (gst_xml_registry_init),
3240         (gst_xml_registry_new), (gst_xml_registry_set_property),
3241         (gst_xml_registry_get_property), (get_time), (make_dir),
3242         (gst_xml_registry_get_perms_func),
3243         (plugin_times_older_than_recurse), (plugin_times_older_than),
3244         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3245         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3246         (add_to_char_array), (read_string), (read_uint), (read_enum),
3247         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3248         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3249         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3250         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3251         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3252         (gst_xml_registry_rebuild):
3253         * gst/registries/gstlibxmlregistry.h:
3254         * tools/gst-compprep.c: (main):
3255         * tools/gst-inspect.c: (print_pad_templates_info):
3256         * tools/gst-xmlinspect.c: (print_element_info):
3257           Use libxml2 for registry parsing, use staticpadtemplates in
3258           elementfactories. Makes gst_init() +/- 10x faster.
3259
3260 2005-04-12  Wim Taymans  <wim@fluendo.com>
3261
3262         * gst/base/Makefile.am:
3263         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3264         (gst_basesink_pad_getcaps), (gst_basesink_init),
3265         (gst_basesink_event), (gst_basesink_change_state):
3266         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3267         (gst_basesrc_init), (gst_basesrc_query),
3268         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3269         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3270         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3271         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3272         (gst_basesrc_stop), (gst_basesrc_activate),
3273         (gst_basesrc_change_state):
3274         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3275         (helper_find_suggest), (gst_type_find_helper):
3276         * gst/base/gsttypefindhelper.h:
3277         * gst/elements/Makefile.am:
3278         * gst/elements/gstelements.c:
3279         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3280         (gst_fakesink_get_times), (gst_fakesink_event),
3281         (gst_fakesink_preroll), (gst_fakesink_render):
3282         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3283         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3284         (gst_fakesrc_get_property), (gst_fakesrc_create),
3285         (gst_fakesrc_start), (gst_fakesrc_stop):
3286         * gst/elements/gstfakesrc.h:
3287         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3288         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3289         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3290         (gst_filesrc_create_read), (gst_filesrc_create),
3291         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3292         (gst_filesrc_start):
3293         * gst/elements/gsttypefindelement.c:
3294         (gst_type_find_element_have_type), (gst_type_find_element_init),
3295         (start_typefinding), (stop_typefinding), (push_buffer_store),
3296         (gst_type_find_element_handle_event),
3297         (gst_type_find_element_chain),
3298         (gst_type_find_element_checkgetrange),
3299         (gst_type_find_element_getrange), (do_typefind),
3300         (gst_type_find_element_activate),
3301         (gst_type_find_element_change_state):
3302         * gst/elements/gsttypefindelement.h:
3303         * gst/gstpipeline.c: (pipeline_bus_handler):
3304         Added typefind helper.
3305         Small preroll fix in the base sink.
3306         Disable typefind code in basesrc.
3307         Crude port of typefindelement.
3308         Fakesrc cleanups.
3309
3310
3311 2005-04-11  Wim Taymans  <wim@fluendo.com>
3312
3313         * check/gst/gstbus.c: (gstbus_suite):
3314         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3315         * check/gstcheck.h:
3316           Fix up the timeout so that the test does not fail.
3317
3318 2005-04-06  Wim Taymans  <wim@fluendo.com>
3319
3320         * gst/base/README:
3321         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3322         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3323         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3324         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3325         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3326         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3327         (gst_basesrc_stop), (gst_basesrc_activate),
3328         (gst_basesrc_change_state), (basesrc_find_peek),
3329         (basesrc_find_suggest), (gst_basesrc_type_find):
3330         * gst/base/gstbasesrc.h:
3331         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3332         (gst_filesrc_class_init), (gst_filesrc_init),
3333         (gst_filesrc_finalize), (gst_filesrc_set_location),
3334         (gst_filesrc_set_property), (gst_filesrc_get_property),
3335         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3336         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3337         (gst_filesrc_create_read), (gst_filesrc_create),
3338         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3339         * gst/elements/gstfilesrc.h:
3340         * gst/gstelement.c: (gst_element_get_state_func),
3341         (gst_element_lost_state), (gst_element_pads_activate):
3342         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3343         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3344         (gst_pad_pull_range):
3345         * gst/gstpad.h:
3346         More work on the generic source base class, implement seeking,
3347         query.
3348         Make filesrc extend the base source class.
3349         Added gst_pad_set_checkgetrange_function to GstPad.
3350
3351 2005-04-06  Andy Wingo  <wingo@pobox.com>
3352
3353         * pkgconfig/gstreamer-base.pc.in:
3354         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3355
3356         * pkgconfig/Makefile.am:
3357         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3358
3359 2005-04-04  Wim Taymans  <wim@fluendo.com>
3360
3361         * gst/base/Makefile.am:
3362         * gst/base/README:
3363         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3364         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3365         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3366         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3367         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3368         (gst_basesrc_base_init), (gst_basesrc_class_init),
3369         (gst_basesrc_init), (gst_basesrc_get_formats),
3370         (gst_basesrc_get_query_types), (gst_basesrc_query),
3371         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3372         (gst_basesrc_set_property), (gst_basesrc_get_property),
3373         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3374         (gst_basesrc_loop), (gst_basesrc_activate),
3375         (gst_basesrc_change_state):
3376         * gst/base/gstbasesrc.h:
3377         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3378         (gst_fakesrc_class_init), (gst_fakesrc_init),
3379         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3380         (gst_fakesrc_get_property), (gst_fakesrc_create):
3381         * gst/elements/gstfakesrc.h:
3382         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3383         (gst_filesrc_open_file), (gst_filesrc_loop),
3384         (gst_filesrc_activate), (filesrc_find_peek),
3385         (gst_filesrc_type_find):
3386         Made base source class, make fakesrc extend it.
3387         Add comments to basesink class.
3388         Some filesrc cleanup.
3389
3390 2005-03-31  David Schleef  <ds@schleef.org>
3391
3392         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3393         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3394         expected to link against libgstreamer.
3395         * gst/base/Makefile.am: link against libgstreamer
3396         * gst/elements/Makefile.am: same
3397
3398 2005-03-31  Andy Wingo  <wingo@pobox.com>
3399
3400         * tests/instantiate/Makefile.am:
3401         * tests/instantiate/caps.c: Add test to test speed of caps copy
3402         and free.
3403
3404         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3405         GMemChunk to be fair.
3406
3407         * gst/gsttrashstack.h: Remove warning about using the fallback
3408         trash stack implementation, it's still faster than malloc.
3409
3410 2005-03-30  Andy Wingo  <wingo@pobox.com>
3411
3412         * tests/complexity.c: Add a copyright.
3413
3414 2005-03-31  Wim Taymans  <wim@fluendo.com>
3415
3416         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3417         (gst_base_transform_class_init), (gst_base_transform_init),
3418         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3419         (gst_base_transform_get_property),
3420         (gst_base_transform_sink_activate),
3421         (gst_base_transform_src_activate),
3422         (gst_base_transform_change_state):
3423         * gst/base/gstbasetransform.h:
3424         * gst/elements/gstidentity.c: (gst_identity_class_init),
3425         (gst_identity_event), (gst_identity_check_perfect),
3426         (gst_identity_transform), (gst_identity_start),
3427         (gst_identity_stop):
3428         Added start/stop methods to transform base class so subclasses 
3429         don't need to deal with state changes even.
3430
3431 2005-03-31  Wim Taymans  <wim@fluendo.com>
3432
3433         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3434         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3435         * gst/gstevent.h:
3436         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3437         (gst_pad_pull_range):
3438         Added rate to the discont event to prepare for variable speed
3439         and reverse playback.
3440
3441 2005-03-29  David Schleef  <ds@schleef.org>
3442
3443         * configure.ac:
3444         * testsuite/trigger/Makefile.am:
3445         * testsuite/trigger/trigger.c: A little example program to show
3446         how trigger-based elements can work.
3447
3448 2005-03-29  Wim Taymans  <wim@fluendo.com>
3449
3450         * gst/base/Makefile.am:
3451         * gst/base/README:
3452         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3453         (gst_basesink_base_init), (gst_basesink_class_init),
3454         (gst_basesink_pad_getcaps), (gst_basesink_init),
3455         (gst_basesink_activate), (gst_basesink_change_state):
3456         * gst/base/gstbasesink.h:
3457         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3458         (gst_base_transform_base_init), (gst_base_transform_finalize),
3459         (gst_base_transform_class_init), (gst_base_transform_init),
3460         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3461         (gst_base_transform_event), (gst_base_transform_getrange),
3462         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3463         (gst_base_transform_set_property),
3464         (gst_base_transform_get_property),
3465         (gst_base_transform_sink_activate),
3466         (gst_base_transform_src_activate),
3467         (gst_base_transform_change_state):
3468         * gst/base/gstbasetransform.h:
3469         * gst/elements/gstidentity.c: (gst_identity_finalize),
3470         (gst_identity_class_init), (gst_identity_init),
3471         (gst_identity_event), (gst_identity_check_perfect),
3472         (gst_identity_transform), (gst_identity_set_property),
3473         (gst_identity_get_property), (gst_identity_change_state):
3474         * gst/elements/gstidentity.h:
3475         * gst/gstelement.c: (gst_element_get_state_func),
3476         (gst_element_lost_state), (gst_element_pads_activate):
3477         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3478         (gst_pad_check_pull_range), (gst_pad_pull_range):
3479         * gst/gstpad.h:
3480         Simplify pad activation.
3481         Added function to check if pull_range can be performed.
3482         Error out when pulling inactive or flushing pads.
3483         Removed const from refcounted types as it does not make sense.
3484         Simplify pad templates in basesink
3485         Added base class for simple 1-to-1 transforms.
3486         Make identity subclass the base transform.
3487
3488 2005-03-29  Andy Wingo  <wingo@pobox.com>
3489
3490         * docs/libs/gstreamer-libs-overrides.txt: 
3491         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3492         really don't understand what's going on, but like whatever. I want
3493         green buildbot!
3494
3495         * docs/gst/Makefile.am:
3496         * docs/libs/Makefile.am: Dist the overrides files.
3497
3498         * check/Makefile.am (clean-local): Remove .libs directories.
3499
3500         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3501         elements to EXTRA_DIST, so po/ files are happy.
3502
3503         * po/POTFILES.in: Er, remove it here.
3504
3505         * po/POTFILES: Remove gstspider.c.
3506
3507         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3508
3509         * docs/libs/gstreamer-libs-docs.sgml: 
3510         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3511         bytestream.
3512
3513         * tests/complexity.c (main): Set the length of the preroll queue
3514         on the sinks to prevent a lockup.
3515
3516         * libs/gst/dataprotocol/Makefile.am: 
3517         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3518         the same as the one in check/gst-libs/gdp.c.
3519
3520         * po/, docs/gst/: Commit automatic changes to docs and po files.
3521
3522         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3523         the versioned libgstbase.
3524
3525         * check/Makefile.am: Depend on an unversioned gst-register, seems
3526         to make autoconf happier.
3527
3528         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3529
3530 2005-03-28  Wim Taymans  <wim@fluendo.com>
3531
3532         * configure.ac:
3533         * docs/design/part-gstelement.txt:
3534         * docs/design/part-negotiation.txt:
3535         * docs/design/part-preroll.txt:
3536         * docs/design/part-scheduling.txt:
3537         * docs/design/part-states.txt:
3538         * gst/Makefile.am:
3539         * gst/base/Makefile.am:
3540         * gst/base/README:
3541         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3542         (gst_basesink_base_init), (gst_basesink_class_init),
3543         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3544         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3545         (gst_basesink_set_pad_functions),
3546         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3547         (gst_basesink_set_property), (gst_basesink_get_property),
3548         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3549         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3550         (gst_basesink_preroll_queue_push),
3551         (gst_basesink_preroll_queue_empty),
3552         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3553         (gst_basesink_event), (gst_basesink_get_times),
3554         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3555         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3556         (gst_basesink_loop), (gst_basesink_activate),
3557         (gst_basesink_change_state):
3558         * gst/base/gstbasesink.h:
3559         * gst/elements/Makefile.am:
3560         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3561         (gst_fakesink_class_init), (gst_fakesink_init),
3562         (gst_fakesink_set_property), (gst_fakesink_get_property),
3563         (gst_fakesink_get_times), (gst_fakesink_event),
3564         (gst_fakesink_preroll), (gst_fakesink_render),
3565         (gst_fakesink_change_state):
3566         * gst/elements/gstfakesink.h:
3567         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3568         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3569         * gst/gstelement.c: (gst_element_add_pad),
3570         (gst_element_get_state_func), (gst_element_abort_state),
3571         (gst_element_commit_state), (gst_element_lost_state),
3572         (gst_element_set_state), (gst_element_pads_activate):
3573         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3574         * gst/gstpipeline.c: (gst_pipeline_send_event),
3575         (gst_pipeline_change_state):
3576         Added state change code.
3577         Added/updated docs.
3578         Added sink base class, make fakesink extend the base class.
3579         Small cleanups in GstPipeline.
3580
3581 2005-03-26  David Schleef  <ds@schleef.org>
3582
3583         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3584         is broken and should be implemented in a different library.
3585         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3586         * gst/gst.h: remove gstcpu.h
3587         * gst/gstcpu.c: remove
3588         * gst/gstcpu.h: remove
3589         * gst/Makefile.am.future: Remove this file.  It's ancient.
3590
3591 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3592
3593         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3594         (gst_bin_send_event):
3595           Add default event/set_manager handlers. The set_manager handler
3596           takes care that the manager is distributed over kids that were
3597           already in the bin before the manager was set. The event handler
3598           is a utility virtual function that sends the event over all sinks,
3599           so that gst_element_send_event (bin, event); has the expected
3600           behaviour.
3601         * gst/gstpad.c: (gst_pad_event_default):
3602           Re-install default event handling for discontinuities, so that
3603           seeking works without requiring hacks in applications or extra
3604           code in sinks.
3605         * gst/gstpipeline.c: (gst_pipeline_class_init),
3606         (gst_pipeline_send_event):
3607           Half hack, half utility: set a pipeline to PAUSED for seek events,
3608           since that is the only way we can guarantee a/v sync. Means that
3609           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3610           and it "just works".
3611
3612 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3613
3614         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3615           Lock/unlock mismatch.
3616
3617 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3618
3619         * docs/faq/gst-uninstalled:
3620           add gst-plugins-base
3621         * docs/gst/Makefile.am:
3622           don't error out until docs are fixed
3623         * docs/gst/gstreamer.types:
3624           remove thread
3625
3626 2005-03-22  Wim Taymans  <wim@fluendo.com>
3627
3628         * check/Makefile.am:
3629         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3630         * gst/gststructure.c: (gst_structure_set_valist),
3631         (gst_structure_copy_conditional):
3632         Activated more tests.
3633         Added message test.
3634         Added G_TYPE_POINTER to GstStructure.
3635         
3636
3637 2005-03-22  Wim Taymans  <wim@fluendo.com>
3638
3639         * docs/design/part-TODO.txt:
3640         * docs/design/part-events.txt:
3641         * docs/design/part-gstbin.txt:
3642         * docs/design/part-gstbus.txt:
3643         * docs/design/part-gstpipeline.txt:
3644         * docs/design/part-messages.txt:
3645         * gst/gstbus.c:
3646         * gst/gstmessage.c:
3647         Docs updates
3648
3649 2005-03-21  Wim Taymans  <wim@fluendo.com>
3650
3651         * gst/gstbus.c: (gst_bus_post):
3652         Fix copy-and-paste error.
3653
3654 2005-03-21  Wim Taymans  <wim@fluendo.com>
3655
3656         * check/Makefile.am:
3657         * gst/Makefile.am:
3658         * gst/elements/Makefile.am:
3659         * gst/elements/gstelements.c:
3660         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3661         (gst_fakesink_event), (gst_fakesink_chain):
3662         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3663         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3664         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3665         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3666         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3667         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3668         (gst_fakesrc_loop), (gst_fakesrc_activate),
3669         (gst_fakesrc_change_state):
3670         * gst/elements/gstfakesrc.h:
3671         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3672         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
3673         (gst_filesrc_open_file), (gst_filesrc_loop),
3674         (gst_filesrc_activate), (gst_filesrc_change_state),
3675         (filesrc_find_peek), (filesrc_find_suggest),
3676         (gst_filesrc_type_find):
3677         * gst/elements/gstidentity.c: (gst_identity_finalize),
3678         (gst_identity_class_init), (gst_identity_init),
3679         (gst_identity_proxy_getcaps), (identity_queue_push),
3680         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
3681         (gst_identity_getrange), (gst_identity_chain),
3682         (gst_identity_sink_loop), (gst_identity_src_loop),
3683         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
3684         (gst_identity_set_property), (gst_identity_get_property),
3685         (gst_identity_change_state):
3686         * gst/elements/gstidentity.h:
3687         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
3688         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
3689         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
3690         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
3691         (gst_tee_sink_activate):
3692         * gst/elements/gsttee.h:
3693         * gst/gst.c: (gst_register_core_elements), (init_post):
3694         * gst/gst.h:
3695         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
3696         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
3697         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
3698         (gst_bin_change_state):
3699         * gst/gstbin.h:
3700         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
3701         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
3702         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
3703         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
3704         (gst_bus_set_sync_handler), (gst_bus_create_watch),
3705         (bus_watch_callback), (bus_watch_destroy),
3706         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
3707         (poll_timeout), (gst_bus_poll):
3708         * gst/gstbus.h:
3709         * gst/gstcaps.h:
3710         * gst/gstdata.h:
3711         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3712         (gst_element_post_message), (gst_element_message_full),
3713         (gst_element_get_state_func), (gst_element_get_state),
3714         (gst_element_abort_state), (gst_element_commit_state),
3715         (gst_element_lost_state), (gst_element_set_state),
3716         (gst_element_pads_activate), (gst_element_change_state),
3717         (gst_element_dispose), (gst_element_set_manager_func),
3718         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
3719         (gst_element_set_manager), (gst_element_get_manager),
3720         (gst_element_set_bus), (gst_element_get_bus),
3721         (gst_element_set_scheduler), (gst_element_get_scheduler):
3722         * gst/gstelement.h:
3723         * gst/gstevent.c: (gst_event_new_segment_seek),
3724         (gst_event_new_flush):
3725         * gst/gstevent.h:
3726         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
3727         (_gst_message_free), (gst_message_get_type), (gst_message_new),
3728         (gst_message_new_eos), (gst_message_new_error),
3729         (gst_message_new_warning), (gst_message_new_tag),
3730         (gst_message_new_state_changed), (gst_message_new_application),
3731         (gst_message_get_structure), (gst_message_parse_tag),
3732         (gst_message_parse_state_changed), (gst_message_parse_error),
3733         (gst_message_parse_warning):
3734         * gst/gstmessage.h:
3735         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
3736         (gst_real_pad_set_property), (gst_pad_set_active),
3737         (gst_pad_is_active), (gst_pad_set_blocked_async),
3738         (gst_pad_set_blocked), (gst_pad_is_blocked),
3739         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
3740         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
3741         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
3742         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
3743         (gst_pad_link_filtered), (gst_pad_relink_filtered),
3744         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
3745         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
3746         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
3747         (gst_pad_set_caps), (gst_pad_configure_sink),
3748         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
3749         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
3750         (gst_real_pad_dispose), (gst_real_pad_finalize),
3751         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
3752         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3753         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
3754         * gst/gstpad.h:
3755         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
3756         (pipeline_bus_handler), (gst_pipeline_change_state),
3757         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
3758         * gst/gstpipeline.h:
3759         * gst/gstprobe.h:
3760         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
3761         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
3762         (gst_queue_link_src), (gst_queue_bufferalloc),
3763         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
3764         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
3765         (gst_queue_loop), (gst_queue_handle_src_event),
3766         (gst_queue_handle_src_query), (gst_queue_src_activate),
3767         (gst_queue_change_state):
3768         * gst/gstqueue.h:
3769         * gst/gstscheduler.c: (gst_scheduler_init),
3770         (gst_scheduler_dispose), (gst_scheduler_create_task),
3771         (gst_scheduler_factory_create):
3772         * gst/gstscheduler.h:
3773         * gst/gststructure.c: (gst_structure_get_type),
3774         (gst_structure_copy_conditional):
3775         * gst/gststructure.h:
3776         * gst/gsttaginterface.h:
3777         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
3778         (gst_task_init), (gst_task_dispose), (gst_task_create),
3779         (gst_task_get_state), (gst_task_start), (gst_task_stop),
3780         (gst_task_pause):
3781         * gst/gsttask.h:
3782         * gst/gstthread.c:
3783         * gst/gstthread.h:
3784         * gst/gsttypes.h:
3785         * gst/schedulers/Makefile.am:
3786         * gst/schedulers/cothreads_compat.h:
3787         * gst/schedulers/entryscheduler.c:
3788         * gst/schedulers/faircothreads.c:
3789         * gst/schedulers/faircothreads.h:
3790         * gst/schedulers/fairscheduler.c:
3791         * gst/schedulers/gstbasicscheduler.c:
3792         * gst/schedulers/gstoptimalscheduler.c:
3793         * gst/schedulers/gthread-cothreads.h:
3794         * gst/schedulers/threadscheduler.c:
3795         (gst_thread_scheduler_task_get_type),
3796         (gst_thread_scheduler_task_class_init),
3797         (gst_thread_scheduler_task_init),
3798         (gst_thread_scheduler_task_start),
3799         (gst_thread_scheduler_task_stop),
3800         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
3801         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
3802         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
3803         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
3804         (plugin_init):
3805         * libs/gst/Makefile.am:
3806         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
3807         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
3808         (gst_file_pad_parent_set):
3809         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3810         (gst_dp_event_from_packet):
3811         * tests/complexity.c: (main):
3812         * tests/mass_elements.c: (main):
3813         * testsuite/states/locked.c: (message_received), (main):
3814         * testsuite/states/parent.c: (main):
3815         * tools/gst-inspect.c: (print_element_flag_info),
3816         (print_implementation_info), (print_pad_info):
3817         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
3818         (main):
3819         * tools/gst-md5sum.c: (event_loop), (main):
3820         * tools/gst-typefind.c: (main):
3821         * tools/gst-xmlinspect.c: (print_element_info):
3822         Next big merge.
3823         Added GstBus for mainloop integration.
3824         Added GstMessage for sending notifications on the bus.
3825         Added GstTask as an abstraction for pipeline entry points.
3826         Removed GstThread.
3827         Removed Schedulers.
3828         Simplified GstQueue for multithreaded core.
3829         Made _link threadsafe, removed old capsnego.
3830         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
3831         Added pad blocking functions.
3832         Reworked scheduling functions in GstPad to prepare for
3833         scheduling updates soon.
3834         Moved events out of data stream.
3835         Simplified GstEvent types.
3836         Added return values to push/pull.
3837         Removed clocking from GstElement.
3838         Added prototypes for state change function for next merge.
3839         Removed iterate from bins and state change management.
3840         Fixed some elements, disabled others for now.
3841         Fixed -inspect and -launch.
3842         Added check for GstBus.
3843
3844 2005-03-10  Wim Taymans  <wim@fluendo.com>
3845
3846         * docs/design/part-MT-refcounting.txt:
3847         * docs/design/part-clocks.txt:
3848         * docs/design/part-gstelement.txt:
3849         * docs/design/part-gstobject.txt:
3850         * docs/design/part-standards.txt:
3851         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3852         (gst_bin_remove_func), (gst_bin_remove):
3853         * gst/gstbin.h:
3854         * gst/gstbuffer.c:
3855         * gst/gstcaps.h:
3856         * testsuite/clock/clock1.c: (main):
3857         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
3858         (main):
3859         * testsuite/dlopen/loadgst.c: (do_test):
3860         * testsuite/refcounting/bin.c: (add_remove_test1),
3861         (add_remove_test2), (main):
3862         * testsuite/refcounting/element.c: (main):
3863         * testsuite/refcounting/element_pad.c: (main):
3864         * testsuite/refcounting/pad.c: (main):
3865         * tools/gst-launch.c: (sigint_handler_sighandler):
3866         * tools/gst-typefind.c: (main):
3867         Doc updates.
3868         Added doc about clock.
3869         removed gst_bin_iterate_recurse_up(), marked methods
3870         for removal.
3871         Fix more testsuites.
3872
3873 2005-03-09  Wim Taymans  <wim@fluendo.com>
3874
3875         * gst/gstpad.c: (gst_pad_get_direction),
3876         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
3877         (gst_pad_collect_valist):
3878         * testsuite/bins/interface.c: (main):
3879         * testsuite/caps/audioscale.c: (test_caps):
3880         * testsuite/caps/caps.c: (test1), (test2), (test3):
3881         * testsuite/caps/deserialize.c: (main):
3882         * testsuite/caps/enumcaps.c: (main):
3883         * testsuite/caps/filtercaps.c: (main):
3884         * testsuite/caps/intersect2.c: (main):
3885         * testsuite/caps/random.c: (main):
3886         * testsuite/caps/renegotiate.c: (my_fixate), (main):
3887         * testsuite/caps/sets.c: (check_caps):
3888         * testsuite/caps/simplify.c: (check_caps), (main):
3889         * testsuite/caps/subtract.c: (check_caps):
3890         Fix _pad_get_direction wrt ghostpads.
3891         Fix caps testsuite.
3892
3893 2005-03-09  Wim Taymans  <wim@fluendo.com>
3894
3895         * check/Makefile.am:
3896         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
3897         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
3898         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
3899         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
3900         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
3901         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
3902         (gst_bin_remove), (gst_bin_iterate_recurse_up),
3903         (bin_element_is_sink), (gst_bin_iterate_sinks),
3904         (gst_bin_iterate_all_by_interface):
3905         * gst/gstbin.h:
3906         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
3907         (gst_element_change_state), (gst_element_dispose),
3908         (gst_element_finalize), (gst_element_set_loop_function):
3909         * gst/gstelement.h:
3910         * gst/gstiterator.c: (find_custom_fold_func):
3911         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3912         (gst_pad_collectv), (gst_pad_collect_valist),
3913         (gst_pad_template_new):
3914         * gst/gstpipeline.c: (gst_pipeline_class_init),
3915         (gst_pipeline_dispose), (gst_pipeline_set_property),
3916         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
3917         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
3918         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
3919         * gst/gstutils.h:
3920         * gst/schedulers/entryscheduler.c:
3921         * gst/schedulers/gstbasicscheduler.c:
3922         (gst_basic_scheduler_cothreaded_chain),
3923         (gst_basic_scheduler_chain_add_element):
3924         * testsuite/bins/interface.c: (main):
3925         Added GstBin test.
3926         Added GstSystemClock test.
3927         Implemented clock distribution code in GstBin.
3928         Implemented iterate sinks method for future use.
3929         Rearranged gstelement.h
3930         Fix GstIterator comparison bug.
3931         Moved some code to GstPipeline, mostly clocking related.
3932
3933 2005-03-09  Wim Taymans  <wim@fluendo.com>
3934
3935         * configure.ac:
3936         * gst/gst_private.h:
3937         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3938         (gst_bin_remove_func), (gst_bin_remove),
3939         (gst_bin_get_by_name_recurse_up):
3940         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
3941         (gst_clock_id_compare_func), (gst_clock_id_wait),
3942         (gst_clock_id_wait_async), (gst_clock_init),
3943         (gst_clock_adjust_unlocked), (gst_clock_get_time):
3944         * gst/gstelement.h:
3945         * gst/gstinfo.c: (_gst_debug_init):
3946         * gst/gstobject.h:
3947         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3948         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
3949         * gst/gstpad.h:
3950         Bump version number, we're now 0.9.0
3951         Add future debugging category.
3952         Fix NULL _unref() in _get_by_name_recurse_up
3953         Rearrange gstpad.h.
3954         Update some docs.
3955
3956 2005-03-08  Wim Taymans  <wim@fluendo.com>
3957
3958         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
3959         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3960         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3961         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
3962         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
3963         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
3964         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
3965         * gst/elements/gstidentity.c: (gst_identity_class_init):
3966         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
3967         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
3968         * gst/elements/gstshaper.c: (gst_shaper_class_init):
3969         * gst/elements/gststatistics.c: (gst_statistics_class_init):
3970         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
3971         (gst_tee_link):
3972         * gst/gstelement.c: (gst_element_class_init),
3973         (gst_element_base_class_init), (gst_element_init),
3974         (gst_element_get_random_pad), (gst_element_wait_state_change),
3975         (gst_element_change_state), (gst_element_dispose),
3976         (gst_element_finalize), (gst_element_set_loop_function):
3977         * gst/gstelement.h:
3978         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
3979         * gst/gstthread.c: (gst_thread_class_init),
3980         (gst_thread_release_children_locks), (gst_thread_change_state):
3981         * gst/schedulers/gstbasicscheduler.c:
3982         (gst_basic_scheduler_loopfunc_wrapper),
3983         (gst_basic_scheduler_chain_wrapper),
3984         (gst_basic_scheduler_src_wrapper),
3985         (gst_basic_scheduler_remove_element):
3986         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3987         Remove threadsafe properties. Fix elements because GObject
3988         complains when installing a property before declaring a
3989         set/get_property handler.
3990         Rearrange gstelement.h file, use STATE macros for state locks.
3991         Free mutexes in the finalize method instead of dispose.
3992
3993 2005-03-08  Wim Taymans  <wim@fluendo.com>
3994
3995         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3996         * gst/gstthread.c: (gst_thread_release_children_locks):
3997         Added parentage check.
3998         Fix build og GstThread again.
3999
4000 2005-03-08  Wim Taymans  <wim@fluendo.com>
4001
4002         * docs/design/part-MT-refcounting.txt:
4003         * docs/design/part-conventions.txt:
4004         * docs/design/part-gstobject.txt:
4005         * docs/design/part-relations.txt:
4006         * docs/design/part-standards.txt:
4007         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4008         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4009         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4010         (gst_bin_iterate_all_by_interface):
4011         * gst/gstbuffer.h:
4012         * gst/gstclock.h:
4013         * gst/gstelement.c: (gst_element_class_init),
4014         (gst_element_change_state), (gst_element_set_loop_function):
4015         * gst/gstelement.h:
4016         * gst/gstiterator.c:
4017         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4018         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4019         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4020         (gst_object_set_parent), (gst_object_unparent),
4021         (gst_object_check_uniqueness):
4022         * gst/gstobject.h:
4023         Docs updates, clean up some headers.
4024
4025 2005-03-07  Wim Taymans  <wim@fluendo.com>
4026
4027         * check/.cvsignore:
4028         * check/Makefile.am:
4029         * check/gst-libs/.cvsignore:
4030         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4031         * check/gst/.cvsignore:
4032         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4033         (START_TEST), (gstbus_suite), (main):
4034         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4035         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4036         (gst_data_suite), (main):
4037         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4038         (add_fold_func), (gstiterator_suite), (main):
4039         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4040         (thread_name_object), (thread_name_object_default),
4041         (gst_object_name_compare), (gst_object_suite), (main):
4042         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4043         (gst_pad_suite), (main):
4044         * check/gstcheck.c: (gst_check_log_message_func),
4045         (gst_check_log_critical_func), (gst_check_init):
4046         * check/gstcheck.h:
4047         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4048         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4049         Added checks.
4050
4051 2005-03-07  Wim Taymans  <wim@fluendo.com>
4052
4053         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4054         (gst_list_iterator_next), (gst_list_iterator_resync),
4055         (gst_list_iterator_free), (gst_iterator_new_list),
4056         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4057         (gst_iterator_free), (gst_iterator_push), (filter_next),
4058         (filter_resync), (filter_uninit), (filter_free),
4059         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4060         (gst_iterator_foreach), (find_custom_fold_func),
4061         (gst_iterator_find_custom):
4062         * gst/gstiterator.h:
4063         Added missing files.
4064
4065 2005-03-07  Wim Taymans  <wim@fluendo.com>
4066
4067         * Makefile.am:
4068         * configure.ac:
4069         * docs/design/part-MT-refcounting.txt:
4070         * docs/design/part-conventions.txt:
4071         * docs/design/part-gstobject.txt:
4072         * docs/design/part-relations.txt:
4073         * examples/mixer/mixer.c: (main):
4074         * examples/thread/thread.c: (eos), (main):
4075         * gst/Makefile.am:
4076         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4077         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4078         (gst_spider_plug_from_srcpad):
4079         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4080         (gst_spider_identity_change_state),
4081         (gst_spider_identity_sink_loop_type_finding):
4082         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4083         * gst/elements/gstidentity.c: (gst_identity_init):
4084         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4085         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4086         * gst/elements/gsttypefindelement.c: (free_entry):
4087         * gst/gst.c:
4088         * gst/gst.h:
4089         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4090         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4091         (gst_bin_set_index), (gst_bin_set_element_sched),
4092         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4093         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4094         (gst_bin_iterate_elements), (iterate_child_recurse),
4095         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4096         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4097         (compare_interface), (gst_bin_get_by_interface),
4098         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4099         * gst/gstbin.h:
4100         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4101         (gst_buffer_default_free), (gst_buffer_default_copy),
4102         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4103         (gst_buffer_create_sub):
4104         * gst/gstbuffer.h:
4105         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4106         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4107         (gst_caps_unref), (gst_static_caps_get),
4108         (gst_caps_remove_and_get_structure), (gst_caps_append),
4109         (gst_caps_append_structure), (gst_caps_remove_structure),
4110         (gst_caps_copy_nth), (gst_caps_set_simple),
4111         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4112         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4113         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4114         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4115         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4116         (gst_caps_structure_figure_out_union),
4117         (gst_caps_switch_structures), (gst_caps_do_simplify),
4118         (gst_caps_replace), (gst_caps_from_string),
4119         (gst_caps_copy_conditional):
4120         * gst/gstcaps.h:
4121         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4122         (_gst_clock_id_free), (gst_clock_id_unref),
4123         (gst_clock_id_compare_func), (gst_clock_id_wait),
4124         (gst_clock_id_wait_async), (gst_clock_class_init),
4125         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4126         (gst_clock_get_time), (gst_clock_set_time_adjust),
4127         (gst_clock_set_property), (gst_clock_get_property):
4128         * gst/gstclock.h:
4129         * gst/gstcompat.h:
4130         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4131         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4132         * gst/gstdata.h:
4133         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4134         (gst_element_requires_clock), (gst_element_provides_clock),
4135         (gst_element_set_clock), (gst_element_clock_wait),
4136         (gst_element_wait), (gst_element_set_time_delay),
4137         (gst_element_is_indexable), (gst_element_add_pad),
4138         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4139         (pad_compare_name), (gst_element_get_static_pad),
4140         (gst_element_request_pad), (gst_element_get_request_pad),
4141         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4142         (gst_element_class_get_pad_template_list),
4143         (gst_element_class_get_pad_template), (gst_element_error_func),
4144         (gst_element_get_random_pad), (gst_element_get_event_masks),
4145         (gst_element_send_event), (gst_element_seek),
4146         (gst_element_get_query_types), (gst_element_query),
4147         (gst_element_get_formats), (gst_element_convert),
4148         (gst_element_is_locked_state), (gst_element_set_locked_state),
4149         (gst_element_sync_state_with_parent), (gst_element_change_state),
4150         (gst_element_finalize), (gst_element_yield),
4151         (gst_element_interrupt), (gst_element_set_scheduler),
4152         (gst_element_get_scheduler), (gst_element_set_loop_function):
4153         * gst/gstelement.h:
4154         * gst/gstevent.h:
4155         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4156         (gst_format_get_by_nick), (gst_format_get_details),
4157         (gst_format_iterate_definitions):
4158         * gst/gstformat.h:
4159         * gst/gstindex.c: (gst_index_gtype_resolver):
4160         * gst/gstinfo.c:
4161         * gst/gstinfo.h:
4162         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4163         (gst_mem_chunk_free):
4164         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4165         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4166         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4167         (gst_object_dispatch_properties_changed),
4168         (gst_object_set_name_default), (gst_object_set_name),
4169         (gst_object_get_name), (gst_object_set_name_prefix),
4170         (gst_object_get_name_prefix), (gst_object_set_parent),
4171         (gst_object_get_parent), (gst_object_unparent),
4172         (gst_object_check_uniqueness), (gst_object_save_thyself),
4173         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4174         (gst_object_set_property), (gst_object_get_property),
4175         (gst_object_get_path_string):
4176         * gst/gstobject.h:
4177         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4178         (gst_real_pad_init), (gst_real_pad_get_property),
4179         (gst_pad_custom_new), (gst_pad_get_direction),
4180         (gst_pad_set_active), (gst_pad_is_active),
4181         (gst_pad_set_event_function), (gst_pad_is_linked),
4182         (gst_pad_link_free), (gst_pad_link_intersect),
4183         (gst_pad_link_fixate), (gst_pad_set_caps),
4184         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4185         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4186         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4187         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4188         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4189         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4190         (gst_pad_realize), (gst_pad_get_allowed_caps),
4191         (gst_real_pad_dispose), (gst_real_pad_finalize),
4192         (gst_pad_collectv), (gst_pad_collect_valist),
4193         (gst_pad_template_dispose), (gst_pad_template_new),
4194         (gst_pad_get_internal_links):
4195         * gst/gstpad.h:
4196         * gst/gstpipeline.c: (gst_pipeline_dispose),
4197         (gst_pipeline_change_state):
4198         * gst/gstpipeline.h:
4199         * gst/gstplugin.c:
4200         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4201         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4202         * gst/gstpluginfeature.h:
4203         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4204         * gst/gstquery.c: (_gst_query_type_initialize),
4205         (gst_query_type_register), (gst_query_type_get_by_nick),
4206         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4207         * gst/gstquery.h:
4208         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4209         * gst/gstscheduler.c: (gst_scheduler_add_element),
4210         (gst_scheduler_factory_create):
4211         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4212         (gst_structure_free), (gst_structure_set_name),
4213         (gst_structure_id_set_value), (gst_structure_set_value),
4214         (gst_structure_set_valist), (gst_structure_remove_field),
4215         (gst_structure_remove_fields),
4216         (gst_structure_remove_fields_valist),
4217         (gst_structure_remove_all_fields), (gst_structure_foreach),
4218         (gst_structure_map_in_place),
4219         (gst_caps_structure_fixate_field_nearest_int),
4220         (gst_caps_structure_fixate_field_nearest_double):
4221         * gst/gststructure.h:
4222         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4223         (gst_system_clock_init), (gst_system_clock_dispose),
4224         (gst_system_clock_async_thread),
4225         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4226         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4227         * gst/gstsystemclock.h:
4228         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4229         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4230         * gst/gsttaginterface.c:
4231         * gst/gstthread.c: (gst_thread_dispose),
4232         (gst_thread_release_children_locks), (gst_thread_change_state),
4233         (gst_thread_main_loop):
4234         * gst/gsttrashstack.h:
4235         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4236         * gst/gsttypes.h:
4237         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4238         (gst_element_request_pad), (gst_element_get_pad_from_template),
4239         (gst_element_request_compatible_pad),
4240         (gst_element_get_compatible_pad_filtered),
4241         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4242         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4243         (gst_element_link_many), (gst_element_link),
4244         (gst_element_link_pads), (gst_element_unlink_pads),
4245         (gst_element_unlink_many), (gst_element_unlink),
4246         (gst_pad_can_link_filtered), (gst_pad_can_link),
4247         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4248         (gst_object_default_error), (gst_bin_add_many),
4249         (gst_bin_remove_many), (gst_element_populate_std_props),
4250         (gst_element_class_install_std_props), (gst_buffer_merge),
4251         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4252         (link_fold_func), (gst_pad_proxy_setcaps):
4253         * gst/gstutils.h:
4254         * gst/gstvalue.c: (gst_value_deserialize_string):
4255         * gst/parse/grammar.y:
4256         * gst/schedulers/gstbasicscheduler.c:
4257         (gst_basic_scheduler_cothreaded_chain),
4258         (gst_basic_scheduler_chain_recursive_add),
4259         (gst_basic_scheduler_pad_link):
4260         * gst/schedulers/gstoptimalscheduler.c:
4261         (get_group_schedule_function),
4262         (gst_opt_scheduler_state_transition),
4263         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4264         * libs/gst/bytestream/bytestream.c:
4265         * libs/gst/dataprotocol/dataprotocol.c:
4266         (gst_dp_header_from_buffer):
4267         * po/nb.po:
4268         * po/ru.po:
4269         * tests/threadstate/threadstate2.c: (eos):
4270         * tools/gst-compprep.c: (main):
4271         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4272         (print_pad_info), (print_children_info):
4273         * tools/gst-launch.c: (idle_func), (main):
4274         * tools/gst-md5sum.c: (idle_func), (main):
4275         * tools/gst-xmlinspect.c: (print_element_info):
4276         First THREADED backport attempt, focusing on adding locks and
4277         making sure the API is threadsafe. Needs more work. More docs
4278         follow this week.
4279
4280 2005-02-24  Andy Wingo  <wingo@pobox.com>
4281
4282         * tests/bench-complexity.scm:
4283         * tests/complexity.gnuplot: New files, good for running complexity
4284         benchmarks.
4285
4286         * tests/Makefile.am:
4287         * tests/complexity.c: New test, sets up N elements, at each level
4288         teeing into M streams per element. Eeeenteresting.
4289
4290         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4291         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4292         running bench-mass_elements.scm.
4293
4294         * tests/bench-mass_elements.scm: New script, runs mass_elements
4295         for various numbers of identities, outputting the results to a
4296         file. Requires guile 1.6. Just for testing.
4297
4298 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4299
4300         * gst/schedulers/fairscheduler.c:
4301           compile with debug disabled
4302
4303 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4304
4305         * configure.ac:
4306           hunting season on 0.9 is now OPEN
4307
4308 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4309
4310         * docs/libs/tmpl/gstcontrol.sgml:
4311         * docs/libs/tmpl/gstdparam.sgml:
4312         * docs/libs/tmpl/gstdplinint.sgml:
4313         * docs/libs/tmpl/gstdpman.sgml:
4314         * docs/libs/tmpl/gstdpsmooth.sgml:
4315         * docs/libs/tmpl/gstunitconvert.sgml:
4316           more docs for the state of dparams
4317
4318 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4319
4320         * gst/gstelementfactory.c: (gst_element_factory_create):
4321         * gst/gstobject.c: (gst_object_init),
4322         (gst_object_set_name_default), (gst_object_set_name):
4323           name objects by default, not in gst_element_factory_create. Allows
4324           using elements created with g_object_new. (fixes #167283)
4325
4326 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4327
4328         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4329           make the time that debugging functions print relative to when
4330           gst_init was called
4331
4332 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4333
4334         * gst/gsttaginterface.c:
4335           Fix inline docs: tag setter vararg functions are NULL-terminated,
4336           GST_TAG_INVALID doesn't exist any more.
4337
4338 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4339
4340         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4341         Allocate the 1 byte more memory that was forgotten!!!!!
4342         fixes memory corruption on 64bit platforms
4343
4344 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4345
4346         * docs/pwg/building-pads.xml:
4347         * docs/pwg/intro-basics.xml:
4348           fixed a few typos, relabeled introductionary list of types
4349         * docs/random/ensonic/dparams.txt:
4350           more notes abut dparam changes
4351         * libs/gst/control/dparam.c: (gst_dparam_attach):
4352         * libs/gst/control/dparammanager.c:
4353         * libs/gst/control/dparammanager.h:
4354           - many comments and notes on dparam implementation
4355           - new dparams are were not initialized to the default value
4356             from param spec
4357
4358 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4359
4360         submitted by: Peter Astakhov
4361
4362         * po/LINGUAS:
4363         * po/ru.po:
4364           adding Russian translation
4365
4366 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4367
4368         * configure.ac:
4369         * docs/gst/Makefile.am:
4370         * docs/libs/Makefile.am:
4371           make sure popt is added to gtk-doc flags.  Fixes #147782.
4372
4373 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4374
4375         * docs/faq/using.xml:
4376           Fix typo in FAQ (artssink => artsdsink)
4377
4378 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4379
4380         * tools/gst-launch.1.in:
4381           Fix typo (#166699).
4382
4383 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4384
4385         * docs/faq/using.xml:
4386           Add -v argument to fakesrc/fakesink gst-launch line,
4387           so that the promised output will actually show up.
4388
4389 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4390
4391         * gst/gstthread.c: (gst_thread_change_state):
4392           Implement state-change error handling (#166073).
4393
4394 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4395
4396         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4397           Release interrupt after handling (#166250).
4398
4399 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4400
4401         * configure.ac:
4402           back to HEAD
4403
4404 === release 0.8.9 ===
4405
4406 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4407
4408         * NEWS:
4409         * RELEASE:
4410         * configure.ac:
4411           releasing 0.8.9, "Like Eating Glass"
4412
4413 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4414
4415         submitted by: Clytie Siddall
4416
4417         * po/vi.po: Added Vietnamese translation
4418
4419 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4420
4421         patch by: Tim Philipp-Müller
4422
4423         * configure.ac:
4424         * gst/gstpad.c:
4425           unref data when probe function returns FALSE.  Fixes #166362
4426
4427 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4428
4429         * gst/gst.c: (gst_init_get_popt_table):
4430           Fix typo (#166269).
4431
4432 2005-02-04  Andy Wingo  <wingo@pobox.com>
4433
4434         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4435         the debugging on whether the caps are compatible.
4436
4437 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4438
4439         * docs/manual/basics-elements.xml:
4440           Fix two typos.
4441
4442 2005-02-02  Wim Taymans  <wim@fluendo.com>
4443
4444         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4445         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4446         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4447         Remove some FIXMEs after analysing and commenting why they
4448         are not issues.
4449
4450 2005-02-02  Wim Taymans  <wim@fluendo.com>
4451
4452         * gst/schedulers/gstoptimalscheduler.c:
4453         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4454         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4455         (get_invalid_call), (chain_invalid_call),
4456         (get_group_schedule_function), (loop_group_schedule_function),
4457         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4458         (gst_opt_scheduler_state_transition),
4459         (gst_opt_scheduler_add_element),
4460         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4461         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4462         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4463         (gst_opt_scheduler_show):
4464         Added lock to protect scheduler data structures.
4465
4466 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4467
4468         * testsuite/threads/threadi.c: (cb_data):
4469           Fix buglet in test.
4470
4471 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4472
4473         * testsuite/threads/Makefile.am:
4474         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4475           On Wim's request, split the test in three separately-compiled
4476           tests that each test a very specific bug. Two of them still fail,
4477           will create bugs for those. threadi.c indicates why they fail.
4478
4479 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4480
4481         * gst/schedulers/gstoptimalscheduler.c:
4482         (get_group_schedule_function):
4483           Try to work with the threading mess that queue_link is.
4484
4485 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4486
4487         * gst/gstbin.c: (gst_bin_remove_func):
4488           Explicitely make an element release locks in a group when being
4489           remove from a bin.
4490         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4491           If there's no scheduler, always return immediately (similar to
4492           gst_element_interrupt).
4493
4494 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4495
4496         * gst/gstbin.c: (gst_bin_child_state_change_func):
4497           Remove a piece of code that could never be reached.
4498         * docs/gst/gstreamer-sections.txt:
4499         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4500         (gst_pad_call_get_function):
4501         * gst/gstpad.h:
4502         * testsuite/pad/Makefile.am:
4503           Fix #150546, enable tests.
4504
4505 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4506
4507         * docs/pwg/advanced-types.xml:
4508           Fix description for buffer-frames=0.
4509         * docs/gst/tmpl/gstbin.sgml:
4510         * gst/gstbin.c: (gst_bin_child_state_change_func),
4511         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4512         * gst/gstbin.h:
4513         * testsuite/threads/Makefile.am:
4514         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4515         (cb_state), (cb_play), (main):
4516           Fix non-recursive state changes to *really* change the state
4517           of the object, and not just call parent_class->state_change.
4518           Fix a lot of lockups caused by this. Fixes #132775. Add test
4519           for the problem. Also enable test to show #142588 (fixed).
4520         * gst/gstthread.c: (gst_thread_change_state),
4521         (gst_thread_child_state_change):
4522           Don't exit the thread if we go to NULL and are inside thread
4523           context. Instead, return control to the main thread context
4524           and exit from there.
4525         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4526           Don't unset virtual functions, since those may still be used.
4527           That's not necessarily correct, but suffices for now.
4528         * configure.ac:
4529         * testsuite/Makefile.am:
4530         * testsuite/pad/Makefile.am:
4531         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4532         (gst_test_sink_base_init), (gst_test_sink_chain),
4533         (gst_test_sink_init), (main):
4534         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4535         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4536         (main):
4537         * testsuite/pad/link.c: (gst_test_element_class_init),
4538         (gst_test_element_base_init), (gst_test_src_get),
4539         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4540         (gst_test_filter_loop), (gst_test_filter_init),
4541         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4542         (cb_error), (main):
4543           Add tests to show #150546. Pass, but should fail (currently
4544           disabled from the testsuite).
4545         * gst/gstscheduler.c: (gst_scheduler_dispose):
4546           Dereference child schedulers on dispose (#94464).
4547         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4548           Fix typo.
4549         * testsuite/threads/thread.c: (main):
4550           Add more debug.
4551
4552 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4553
4554         * gst/gstpad.c: (gst_pad_push):
4555           Oops, revert previous commit, broke testsuite...
4556
4557 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4558
4559         * gst/gstpad.c: (gst_pad_push):
4560           Add check that the pad on which the push is performed is not a
4561           get-based pad (#150546).
4562
4563 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4564
4565         * gst/elements/gsttypefindelement.c:
4566         (gst_type_find_element_handle_event):
4567           Fix buffer pushing if stream EOSes during typefinding.
4568
4569 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4570
4571         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4572
4573         * gst/gstvalue.c: (gst_string_wrap):
4574           Allow NULL-strings as argument (#165365).
4575
4576 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4577
4578         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4579
4580         * gst/schedulers/faircothreads.c:
4581         (gst_fair_scheduler_cothread_queue_show):
4582           Fix build without debug enabled.
4583
4584 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4585
4586         * docs/gst/gstreamer-sections.txt:
4587         * docs/libs/gstreamer-libs-docs.sgml:
4588         * docs/libs/gstreamer-libs-sections.txt:
4589         * docs/libs/tmpl/gstcontrol.sgml:
4590         * docs/libs/tmpl/gstdparam.sgml:
4591         * docs/libs/tmpl/gstdplinint.sgml:
4592         * docs/libs/tmpl/gstdpman.sgml:
4593         * docs/libs/tmpl/gstdpsmooth.sgml:
4594         * docs/libs/tmpl/gstputbits.sgml:
4595         * docs/libs/tmpl/gstunitconvert.sgml:
4596         * libs/gst/control/dparam.c:
4597         * libs/gst/control/dparam.h:
4598         * libs/gst/control/dparammanager.c:
4599         (gst_dpman_add_required_dparam_callback),
4600         (gst_dpman_add_required_dparam_direct),
4601         (gst_dpman_add_required_dparam_array),
4602         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4603         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4604         (gst_dpman_get_manager)
4605           restructured DParam docs
4606
4607 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4608
4609         * gst-element-check.m4:
4610           Only check for gst-inspect if we haven't already
4611           found it in previous element check runs
4612
4613 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4614
4615         * docs/gst/Makefile.am:
4616         * docs/libs/Makefile.am:
4617           fixed install rules to treat style.css as optional
4618
4619 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4620
4621         * docs/gst/Makefile.am:
4622         * docs/libs/Makefile.am:
4623           install style.css along with docs
4624         * docs/gst/tmpl/gstbin.sgml:
4625         * docs/gst/tmpl/gstclock.sgml:
4626         * docs/gst/tmpl/gstdata.sgml:
4627         * docs/gst/tmpl/gstelement.sgml:
4628         * gst/gstbin.h:
4629         * gst/gstelement.c: (gst_element_class_init):
4630         * gst/gstelement.h:
4631           fixing incomplete docs
4632
4633 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4634
4635         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4636           Don't unref seek event twice when fflush() fails
4637           
4638 2005-01-22  David Schleef  <ds@schleef.org>
4639
4640         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4641
4642 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4643
4644         * docs/gst/Makefile.am:
4645         * docs/libs/Makefile.am:
4646           added params for deprecation guards
4647         * gst/gst.c:
4648         * gst/gst.h:
4649         * gst/gsterror.c: (_gst_resource_errors_init),
4650         (_gst_stream_errors_init):
4651         * gst/gsterror.h:
4652           documented some more enums
4653
4654 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4655         * gst/autoplug/gstspideridentity.c:
4656         Cosmetic fix - spider_find_peek should be static
4657         * gst/parse/parse.l:
4658         Applying fix for #164261
4659
4660 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4661
4662         * docs/gst/gstreamer-sections.txt:
4663         * docs/gst/tmpl/gstplugin.sgml:
4664         * docs/libs/gstreamer-libs-sections.txt:
4665         * docs/libs/tmpl/gstcontrol.sgml:
4666         * gst/gstbuffer.h:
4667         * gst/gsttag.h:
4668         * gst/gstvalue.c:
4669           added docs for the TAG defines
4670
4671 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4672
4673         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4674           Only unref entry if there is an entry.
4675
4676 2005-01-17  Wim Taymans  <wim@fluendo.com>
4677
4678         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4679         (remove_from_group), (schedule_group), (normalize_group),
4680         (gst_opt_scheduler_iterate):
4681         Also ref/unref decoupled elements before iterating the
4682         group since they are not added to the list of elements.
4683
4684 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4685
4686         * docs/manual/highlevel-components.xml:
4687           Add subtitle/streamselection as new features to playbin.
4688
4689 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4690
4691         * docs/manual/manual.xml:
4692           Re-enable dataaccess docs (oops).
4693
4694 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4695
4696         * docs/pwg/advanced-types.xml:
4697         * docs/random/mimetypes:
4698           Add documentation on libsndfile types (#163309), by Steve Baker
4699           <steve@stevebaker.org>.
4700         * gst/gstelement.c: (gst_element_release_request_pad):
4701           If an element has no explicit function, just remove the pad.
4702
4703 2005-01-17  Luca Ognibene  <luogni@tin.it>
4704
4705         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4706
4707         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
4708           Fix memleak (#163801).
4709
4710 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4711
4712         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
4713           I think this is actually more correct...
4714
4715 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4716
4717         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4718           Another workaround for memory access while destroyed in callback.
4719           Please, someone with refcount knowledge, have a look at this.
4720
4721 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4722
4723         * docs/faq/faq.xml:
4724         * docs/faq/legal.xml:
4725           move the legal Q&A here
4726
4727 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4728
4729         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
4730         (gst_tee_request_new_pad):
4731           Fix negotiation.
4732
4733 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4734
4735         * docs/random/omega/caps2:
4736         * testsuite/caps/caps_strings:
4737           replace framerate aproximations by their real value
4738           (24000/1001, 30000/1001, 60000/1001)
4739           Partially fixes bug #164049
4740
4741 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4742
4743         * docs/gst/Makefile.am:
4744           don't fail on the stupid GstPoptOption
4745
4746 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4747
4748         * gst/gstpad.h:
4749         * gst/gstprobe.c:
4750           allow probes to work on ghost pads by realizing the pad
4751           probe debugging
4752
4753 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4754
4755         * docs/gst/gstreamer-sections.txt:
4756         * docs/gst/tmpl/gstpad.sgml:
4757         * gst/gstpad.c: (gst_pad_set_active_recursive):
4758         * gst/gstpad.h:
4759           Add gst_pad_set_active_recursive().
4760
4761 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4762
4763         * docs/random/release:
4764           updates
4765         * gst/gst_private.h:
4766         * gst/gstinfo.c:
4767         * gst/gstobject.c:
4768           move deep_notify logging to a new category
4769         * gst/gstprobe.c:
4770         * gst/gstprobe.h:
4771           add stuff so bindings can wrap probes
4772
4773 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4774
4775         * gst/gstplugin.c: (gst_plugin_load):
4776           Fix plugin loading if plugin/lib was already loaded. Fixes
4777           #163383
4778
4779 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
4780
4781         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4782
4783         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
4784           Protect plugin loading by a mutex so it's threadsafe. Fixes
4785           #163234.
4786
4787 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4788
4789         * gst/gstevent.c: (_gst_event_copy):
4790           Reference source object when copying events, since it'll be
4791           dereferenced on event dereferencing as well.
4792
4793 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4794
4795         * docs/gst/gstreamer-sections.txt:
4796         * docs/gst/tmpl/gstevent.sgml:
4797         * gst/gstevent.c: (gst_event_new_filler_stamped),
4798         (gst_event_filler_get_duration):
4799         * gst/gstevent.h:
4800           Add two new functions for filler events (which are used to
4801           synchronize streams if one of them is not having any data
4802           for a while) without interrupting the actual data-stream.
4803           Basically a no-op.
4804         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4805         (gst_queue_link_sink), (gst_queue_link_src),
4806         (gst_queue_change_state):
4807           Allow for renegotiation while filled. Required for stream
4808           switching while playing.
4809
4810 2005-01-08  Benjamin Otte  <otte@gnome.org>
4811
4812         * gst/gstelement.c: (gst_element_link_many):
4813           fix up g_return_if_fail's
4814         * po/LINGUAS:
4815         * po/de.po:
4816           add German translation, that was somehow not included
4817
4818 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4819
4820         * docs/random/mimetypes:
4821           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
4822           do not add them to riff-lib as they are not common
4823
4824 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4825
4826         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4827           Check for existence of probe after performing the probe before
4828           re-accessing it to prevent segfaults caused by removal of the
4829           probe in the callback.
4830
4831 2005-01-05  David Schleef  <ds@schleef.org>
4832
4833         * testsuite/registry/Makefile.am:
4834         * testsuite/registry/gst-print-formats.c:
4835         (print_pad_templates_info), (print_element_list),
4836         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
4837         (g_list_uniqify), (get_pad_templates_info),
4838         (get_element_mime_list), (print_mime_list), (main): A little
4839         program that looks through the registry to find elements of
4840         a given type.  Not particularly interesting as a test, except
4841         that there's no other test covering the same area.
4842
4843 2005-01-05  David Schleef  <ds@schleef.org>
4844
4845         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
4846         (fault_handler_sigaction), (fault_spin),
4847         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
4848         in signal.h-type signal handlers by not calling forbidden functions,
4849         including gst_element_set_state().
4850
4851 2005-01-05  David Schleef  <ds@schleef.org>
4852
4853         * gst/gstvalue.h: Mark _gst_reserved[] as private
4854
4855 2005-01-05  David Schleef  <ds@schleef.org>
4856
4857         * gst/gstvalue.c: Fix doc build problem.
4858
4859 2005-01-05  David Schleef  <ds@schleef.org>
4860
4861         * gst/gstvalue.c: Add some documentation
4862
4863 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
4864
4865         * docs/README:
4866           another shell oneliner for empty return value docs
4867         * gst/gstcaps.c:
4868         * gst/gstvalue.c:
4869         * libs/gst/control/dparam.c:
4870           more doc fixes (parameters and return values)
4871
4872 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
4873
4874         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4875
4876         * gst/gstregistry.h:
4877         * gst/registries/gstxmlregistry.c:
4878           Fix macro's for Mingw (fixes #162276).
4879
4880 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
4881
4882         * docs/README:
4883           quick shell oneliner to find undocumented members
4884         * docs/gst/tmpl/gstplugin.sgml:
4885         * docs/gst/tmpl/gstscheduler.sgml:
4886         * docs/gst/tmpl/gstthread.sgml:
4887           more enumtypes cleanup
4888         * gst/gsterror.h:
4889           activated documentation comments, now someone needs to document
4890           the enums :(
4891
4892 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4893
4894         * docs/manual/manual.xml:
4895           Add dataaccess part (doh!).
4896
4897 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4898
4899         * docs/manual/advanced-autoplugging.xml:
4900           Fix typo (intiate -> initiate).
4901
4902 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4903
4904         * docs/random/bbb/streamselection:
4905           Add some notes on how to handle multi-subtitle/-audio streams.
4906
4907 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
4908
4909         * docs/gst/gstreamer-docs.sgml:
4910         * docs/gst/gstreamer-sections.txt:
4911         * docs/gst/tmpl/gstenumtypes.sgml:
4912         * docs/gst/tmpl/gsterror.sgml:
4913         * docs/gst/tmpl/gstevent.sgml:
4914         * docs/gst/tmpl/gstpad.sgml:
4915         * docs/gst/tmpl/gstpadtemplate.sgml:
4916         * docs/gst/tmpl/gstthread.sgml:
4917           removed gstenumtypes section from docs and put all the enums into
4918           their sections
4919
4920 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4921
4922         * gst/gstplugin.c:
4923           document gst_library_load a bit more (riff special case + return
4924           value if already loaded)
4925         * testsuite/bytestream/filepadsink.c:
4926           plugin name is 'gstbytestream', not 'bytestream'
4927
4928 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4929
4930         * docs/random/bbb/subtitles:
4931           Add some first mind rumblings on proper subtitle support.
4932
4933 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
4934
4935         * po/ca.po:
4936         * po/sv.po:
4937           updated translations
4938
4939 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4940
4941         * docs/manual/advanced-dataaccess.xml:
4942           Add section on how to use fakesrc/fakesink/identity in your
4943           application, plus section on how to embed plugins. Also mention
4944           probes.
4945         * docs/manual/appendix-checklist.xml:
4946         * docs/manual/appendix-debugging.xml:
4947         * docs/manual/appendix-gnome.xml:
4948         * docs/manual/appendix-integration.xml:
4949           Debug -> checklist, GNOME -> integration, add sections on Linux,
4950           KDE integration and add other things useful for application
4951           development.
4952         * docs/manual/manual.xml:
4953           Remove some fixmes, update some file pointers.
4954         * docs/pwg/appendix-checklist.xml:
4955           Fix typo.
4956         * docs/pwg/building-boiler.xml:
4957           Remove ugly header and add commented fixme.
4958         * docs/pwg/pwg.xml:
4959           Add fixme.
4960         * examples/manual/Makefile.am:
4961           Add example for added docs.
4962
4963 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4964
4965         * configure.ac:
4966           back to HEAD
4967
4968 === release 0.8.8 ===
4969
4970 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4971
4972         * NEWS:
4973         * RELEASE:
4974         * configure.ac:
4975           Releasing 0.8.8, "I'll Take Care Of You"
4976
4977 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4978
4979         * configure.ac:
4980           second prerelease
4981
4982 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4983
4984         patch by: Wim Taymans
4985
4986         * gst/gstbin.c:
4987           Fix for #159852 - make iterate emission threadsafe
4988
4989 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4990
4991         * docs/faq/cvs.xml:
4992           notes about new fdo account request
4993
4994 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
4995
4996         * docs/gst/gstreamer-docs.sgml:
4997         * docs/gst/tmpl/gstenumtypes.sgml:
4998         * docs/gst/tmpl/gstplugin.sgml:
4999         * docs/libs/gstreamer-libs-docs.sgml:
5000           Added missing short docs. Added ids for navigation.
5001
5002 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5003
5004         * docs/manual/advanced-autoplugging.xml:
5005         * docs/manual/advanced-schedulers.xml:
5006         * docs/manual/advanced-threads.xml:
5007           Rewrites. Remove cothreads, go a bit into opt specifically,
5008           document threads and their gotchas, and do some technical stuff
5009           on autoplugging plus add some working examples. Fixes #157395.
5010         * examples/manual/Makefile.am:
5011           Add typefind/autoplugger example (one that actually works).
5012           Remove queue example since it's a duplicate of the thread one.
5013
5014 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5015
5016         * gst/gstvalue.c: (gst_value_deserialize_string):
5017           use deprecated g_value_set_string_take_ownership to keep compatible
5018           with glib 2.2
5019
5020 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5021
5022         * gst/gstvalue.c: (gst_value_deserialize_string):
5023           revert last patch, only dom a g_utf8_validate now before accepting
5024           the string - caps parsing strips " from strings so we can't rely on
5025           them
5026         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5027           disable a test that tested the above and comment it
5028
5029 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5030
5031         Patch reviewed by David Schleef  <ds@schleef.org>
5032
5033         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5034         bug #153882)
5035         * win32/gstenumtypes.h: same
5036
5037 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5038
5039         * gst/gstpad.c: (gst_pad_query):
5040           Do query on realized pad, similar to how convert/send_event handle
5041           this. Also makes sense, since this pad belongs to the function to
5042           which this query will be sent. Fixes #158163.
5043
5044 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5045
5046         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5047
5048 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5049
5050         * docs/faq/general.xml: fix pipeline to actually work
5051
5052 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5053
5054         * gst/gstvalue.c: (gst_value_deserialize_string):
5055           check that a simple string that gets deserialized does not contain
5056           invalid characters
5057         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5058           remove a test that tested a wring behaviour
5059
5060 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5061
5062         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5063
5064         * docs/manual/intro-motivation.xml:
5065           Fix typos.
5066
5067 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5068
5069         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5070
5071         * docs/gst/tmpl/gstprobe.sgml:
5072           Fix documentation of probe callback - it is supposed to return
5073           FALSE, not TRUE, to remove data from the stream (#159087).
5074
5075 2004-12-16  Daniel Gazard  <dany42@free.fr>
5076
5077         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5078
5079         * gst/gstelementfactory.c: (gst_element_factory_create):
5080           Fix compile failure if compiling without libxml2 support (#149936).
5081
5082 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5083
5084         * docs/manual/advanced-autoplugging.xml:
5085         * docs/manual/highlevel-components.xml:
5086           Move spider from autoplugging to components. Autoplugging is for
5087           internals, not for solutions. ;-).
5088
5089 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5090
5091         * docs/random/ds/0.9-suggested-changes:
5092           Make note on device/location/uri property names.
5093
5094 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5095
5096         * docs/manual/advanced-autoplugging.xml:
5097         * docs/manual/advanced-clocks.xml:
5098         * docs/manual/advanced-interfaces.xml:
5099         * docs/manual/advanced-metadata.xml:
5100         * docs/manual/advanced-position.xml:
5101         * docs/manual/advanced-schedulers.xml:
5102         * docs/manual/advanced-threads.xml:
5103         * docs/manual/appendix-gnome.xml:
5104         * docs/manual/appendix-programs.xml:
5105         * docs/manual/appendix-quotes.xml:
5106         * docs/manual/autoplugging.xml:
5107         * docs/manual/basics-bins.xml:
5108         * docs/manual/basics-data.xml:
5109         * docs/manual/basics-elements.xml:
5110         * docs/manual/basics-helloworld.xml:
5111         * docs/manual/basics-init.xml:
5112         * docs/manual/basics-pads.xml:
5113         * docs/manual/basics-plugins.xml:
5114         * docs/manual/bins-api.xml:
5115         * docs/manual/bins.xml:
5116         * docs/manual/buffers-api.xml:
5117         * docs/manual/buffers.xml:
5118         * docs/manual/clocks.xml:
5119         * docs/manual/components.xml:
5120         * docs/manual/cothreads.xml:
5121         * docs/manual/debugging.xml:
5122         * docs/manual/dparams-app.xml:
5123         * docs/manual/dynamic.xml:
5124         * docs/manual/elements-api.xml:
5125         * docs/manual/elements.xml:
5126         * docs/manual/factories.xml:
5127         * docs/manual/gnome.xml:
5128         * docs/manual/goals.xml:
5129         * docs/manual/helloworld.xml:
5130         * docs/manual/helloworld2.xml:
5131         * docs/manual/highlevel-components.xml:
5132         * docs/manual/highlevel-xml.xml:
5133         * docs/manual/init-api.xml:
5134         * docs/manual/intro-basics.xml:
5135         * docs/manual/intro-motivation.xml:
5136         * docs/manual/intro-preface.xml:
5137         * docs/manual/intro.xml:
5138         * docs/manual/links-api.xml:
5139         * docs/manual/links.xml:
5140         * docs/manual/manual.xml:
5141         * docs/manual/motivation.xml:
5142         * docs/manual/pads-api.xml:
5143         * docs/manual/pads.xml:
5144         * docs/manual/plugins-api.xml:
5145         * docs/manual/plugins.xml:
5146         * docs/manual/programs.xml:
5147         * docs/manual/queues.xml:
5148         * docs/manual/quotes.xml:
5149         * docs/manual/schedulers.xml:
5150         * docs/manual/states-api.xml:
5151         * docs/manual/states.xml:
5152         * docs/manual/threads.xml:
5153         * docs/manual/typedetection.xml:
5154         * docs/manual/win32.xml:
5155         * docs/manual/xml.xml:
5156           Try 2. This time, include a short preface as a "general
5157           introduction", also add code blocks around all code samples
5158           so they get compiled. We still need a way to tell readers
5159           the filename of the code sample. In some cases, don't show
5160           all code in the documentation, but do include it in the generated
5161           code. This allows for focussing on specific bits in the docs,
5162           while still having a full test application available.
5163         * examples/manual/Makefile.am:
5164           Fix up examples for new ADM. Add several of the new examples that
5165           were either added or were missing from the build system.
5166         * examples/manual/extract.pl:
5167           Allow nameless blocks.
5168
5169 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5170
5171         * docs/manual/elements-api.xml:
5172         * docs/manual/helloworld.xml:
5173         * examples/manual/extract.pl:
5174           fix last example.  Add example of adding code blocks that are not
5175           shown in docbook output.
5176
5177 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5178
5179         * docs/manual/dynamic.xml:
5180         * docs/manual/elements-api.xml:
5181         * docs/manual/gnome.xml:
5182         * docs/manual/helloworld2.xml:
5183         * docs/manual/init-api.xml:
5184         * docs/manual/queues.xml:
5185         * docs/manual/threads.xml:
5186         * docs/manual/xml.xml:
5187         * examples/manual/extract.pl:
5188           Make it possible to extract example code from separate blocks.
5189           Should make Ronald happy.
5190
5191 2004-12-15  Wim Taymans  <wim@fluendo.com>
5192
5193         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5194         (remove_from_group), (group_elements_set_visited),
5195         (normalize_group), (gst_opt_scheduler_iterate):
5196         Fix bug where a flag was not updated on a decoupled entry point 
5197         because we were just checking the group element list and decoupled
5198         elements are not in that list..
5199
5200 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5201
5202         * docs/manual/advanced-autoplugging.xml:
5203         * docs/manual/advanced-clocks.xml:
5204         * docs/manual/advanced-dparams.xml:
5205         * docs/manual/advanced-interfaces.xml:
5206         * docs/manual/advanced-metadata.xml:
5207         * docs/manual/advanced-position.xml:
5208         * docs/manual/advanced-schedulers.xml:
5209         * docs/manual/advanced-threads.xml:
5210         * docs/manual/appendix-debugging.xml:
5211         * docs/manual/appendix-gnome.xml:
5212         * docs/manual/appendix-programs.xml:
5213         * docs/manual/appendix-quotes.xml:
5214         * docs/manual/appendix-win32.xml:
5215         * docs/manual/autoplugging.xml:
5216         * docs/manual/basics-bins.xml:
5217         * docs/manual/basics-data.xml:
5218         * docs/manual/basics-elements.xml:
5219         * docs/manual/basics-helloworld.xml:
5220         * docs/manual/basics-init.xml:
5221         * docs/manual/basics-pads.xml:
5222         * docs/manual/basics-plugins.xml:
5223         * docs/manual/bins-api.xml:
5224         * docs/manual/bins.xml:
5225         * docs/manual/buffers-api.xml:
5226         * docs/manual/buffers.xml:
5227         * docs/manual/clocks.xml:
5228         * docs/manual/components.xml:
5229         * docs/manual/cothreads.xml:
5230         * docs/manual/debugging.xml:
5231         * docs/manual/dparams-app.xml:
5232         * docs/manual/dynamic.xml:
5233         * docs/manual/elements-api.xml:
5234         * docs/manual/elements.xml:
5235         * docs/manual/factories.xml:
5236         * docs/manual/gnome.xml:
5237         * docs/manual/goals.xml:
5238         * docs/manual/helloworld.xml:
5239         * docs/manual/helloworld2.xml:
5240         * docs/manual/highlevel-components.xml:
5241         * docs/manual/highlevel-xml.xml:
5242         * docs/manual/init-api.xml:
5243         * docs/manual/intro-motivation.xml:
5244         * docs/manual/intro-preface.xml:
5245         * docs/manual/intro.xml:
5246         * docs/manual/links-api.xml:
5247         * docs/manual/links.xml:
5248         * docs/manual/manual.xml:
5249         * docs/manual/motivation.xml:
5250         * docs/manual/pads-api.xml:
5251         * docs/manual/pads.xml:
5252         * docs/manual/plugins-api.xml:
5253         * docs/manual/plugins.xml:
5254         * docs/manual/programs.xml:
5255         * docs/manual/queues.xml:
5256         * docs/manual/quotes.xml:
5257         * docs/manual/schedulers.xml:
5258         * docs/manual/states-api.xml:
5259         * docs/manual/states.xml:
5260         * docs/manual/threads.xml:
5261         * docs/manual/typedetection.xml:
5262         * docs/manual/win32.xml:
5263         * docs/manual/xml.xml:
5264           First try at rewriting the ADM. Needs lotsamore work, but some
5265           parts might already be somewhat useful.
5266         * docs/pwg/advanced-interfaces.xml:
5267           Remove properties interface, it never actually existed (except for
5268           on my HD...).
5269
5270 2004-12-13  David Schleef  <ds@schleef.org>
5271
5272         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5273         be NULL (bug #160220).
5274
5275 2004-12-13  David Schleef  <ds@schleef.org>
5276
5277         * configure.ac: remove all mmx stuff, because it's not used.
5278         * docs/random/ds/0.9-suggested-changes: additional notes
5279         * include/Makefile.am: we don't use these anymore
5280         * include/mmx.h: remove
5281         * include/sse.h: remove
5282
5283 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5284
5285         * docs/random/mimetypes:
5286           Add FOURCC code for h264 codec (VSSH)
5287           Add alternate FOURCC codes for h263 related codecs
5288
5289 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5290
5291         * docs/manual/programs.xml:
5292           Added more gst-launch examples.
5293
5294 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5295
5296         * gst/gstqueue.c: (gst_queue_handle_src_query):
5297           Check for availability again.
5298
5299 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5300
5301         * gst/gstcaps.c: (gst_caps_compare_structures):
5302           Simple caps go first. This has the nice side-effect of fixing an
5303           obscure warning.
5304
5305 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5306
5307         * gst/gstversion.h.in:
5308           Protect header.
5309
5310 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5311
5312         * gst/schedulers/gstoptimalscheduler.c:
5313         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5314         (gst_opt_scheduler_get_wrapper):
5315           When we're recursing into a chain run, only run the directly
5316           related group, not all queued ones. This will fix a possible
5317           deadlock in chains with more than two groups.
5318
5319 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5320
5321         * autogen.sh:
5322           remove patch if autopoint fails
5323
5324 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5325
5326         * docs/gst/gstreamer-sections.txt:
5327           Document Thomas' addition, fix build, make Luis the sheriff happy.
5328
5329 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5330
5331         * gst/gstplugin.c:
5332         * gst/gstplugin.h:
5333           add accessor for version field
5334
5335 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5336
5337         submitted by: Luca Ferretti <elle.uca@infinito.it>
5338
5339         * po/LINGUAS:
5340         * po/it.po:
5341           New tranlation added: Italian
5342
5343 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5344
5345         * gst/gstpad.c: (gst_pad_is_negotiated),
5346         (gst_pad_get_negotiated_caps):
5347           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5348           it doesn't actually check the contents), so be sure to hand it
5349           a RealPad else we'll crash.
5350
5351 2004-12-03  Wim Taymans  <wim@fluendo.com>
5352
5353         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5354         (gst_queue_link), (gst_queue_handle_src_query):
5355         Reverted to 1.110 until this makes the testsuite and various
5356         apps work.
5357
5358 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5359
5360         * docs/upload.mak: fix included CVS conflict strings
5361
5362 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5363
5364         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5365
5366         * gst/gstelement.c: (gst_element_error_full):
5367           Use g_error_new_literal because error text may have
5368           percentage signs in it. Fixes #160019.
5369
5370 2004-12-01  Benjamin Otte  <otte@gnome.org>
5371
5372         * gst/elements/gstbufferstore.c:
5373         (gst_buffer_store_add_buffer_func):
5374           don't try to make subbuffers bigger than they can be. (fixes
5375           #159970)
5376
5377 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5378
5379         * docs/gst/gstreamer-sections.txt:
5380         * docs/gst/tmpl/gstvalue.sgml:
5381           Add new function to docs to fix build.
5382
5383 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5384
5385         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5386         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5387         (_gst_pad_default_fixate_foreach):
5388         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5389         * gst/gstvalue.h:
5390           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5391           in some cases (arrays), the fixedness depends on the content.
5392         * gst/gstqueue.c: (gst_queue_handle_src_query):
5393           Check for availability before doing something.
5394
5395 2004-11-29  Wim Taymans  <wim@fluendo.com>
5396
5397         * testsuite/threads/Makefile.am:
5398         * testsuite/threads/signals.c: (gst_test_get_type),
5399         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5400         (gst_test_set_property), (gst_test_get_property),
5401         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5402         (gst_test_do_prop), (run_thread), (main):
5403         Added a bunch of testcases that show threadsafety bugs in glib.
5404
5405 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5406
5407         * docs/manual/programs.xml:
5408           Added a first batch of gst-launch examples, as provided by Ronald
5409           and others from the devel-mlist
5410
5411 2004-11-28  Benjamin Otte  <otte@gnome.org>
5412
5413         * gst/gstelement.c: (gst_element_negotiate_pads):
5414           simplify
5415         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5416         (gst_value_serialize_string), (gst_value_deserialize_string):
5417           add unwrapping of previously wrapped strings. Fix bug in wrapping
5418           while at it.
5419         * testsuite/caps/value_serialize.c: (test1),
5420         (test_string_serialization), (test_string_deserialization), (main):
5421           add tests for string (de)serialization
5422
5423 2004-11-26  Wim Taymans  <wim@fluendo.com>
5424
5425         * testsuite/threads/159566.c: (object_deep_notify), (main):
5426         * testsuite/threads/Makefile.am:
5427         Added testsuite to show bug #159566
5428
5429 2004-11-25  Wim Taymans  <wim@fluendo.com>
5430
5431         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5432         (gst_thread_child_state_change), (gst_thread_main_loop):
5433         Ref the thread object in the GThread mainloop. Break out of the
5434         thread mainloop if it holds the last ref. This properly exits
5435         the threads when disposing the thread from its own context. It
5436         also avoids possible deadlocks in the dispose function.
5437
5438 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5439
5440         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5441         it is necessary to wait.
5442
5443 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5444
5445         * docs/pwg/building-boiler.xml:
5446           Make description somewhat clearer.
5447
5448 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5449
5450         * docs/upload.mak:
5451           Apparently docs changed location on FDO's server.
5452
5453 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5454
5455         * docs/pwg/appendix-checklist.xml:
5456           Add some random notes on things to check when writing an element.
5457           This list can be extended as people see fit.
5458
5459 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5460
5461         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5462         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5463         pad. The queue will now wait until it is empty and forward the new
5464         caps to the source.
5465         * gst/gstbin.c (gst_bin_set_element_sched)
5466         (gst_bin_unset_element_sched): Make sure that all elements and
5467         links are registered and unregistered with the scheduler exactly
5468         once. This elaborates on a fix by Benjamin Otte, but
5469         guarantees that decoupled elements are also registered.
5470
5471 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5472
5473         * docs/manual/quotes.xml:
5474           add a quote
5475         * configure.ac:
5476         * gst/gst.c:
5477         * gst/gstinfo.c:
5478           add LIBDIR and move init message higher up so it's at the start
5479
5480 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5481
5482         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5483         * gstreamer.spec.in: add fair
5484
5485 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5486
5487         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5488         * gst/elements/gstidentity.c: (gst_identity_class_init):
5489           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5490           <teuf@gnome.org> (#157263).
5491         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5492         (gst_type_find_handle_src_query):
5493           Subtract size of internally stored data from position queries.
5494
5495 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5496
5497         * gst/schedulers/fairscheduler.c:
5498         * gst/schedulers/faircothreads.c:
5499         * gst/schedulers/faircothreads.h:
5500         New cothread based scheduler: Fair scheduler.
5501         * gst/schedulers/gthread-cothreads.h: 
5502         Add the standard #if around the whole file.
5503         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5504         compilation of the functions defined in this file. This is
5505         necessary to be able to use this file as a normal header.
5506         * gst/schedulers/Makefile.am: Add compiling support for fair
5507         scheduler.
5508         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5509         scheduler cothreads layer from documentation generation.
5510
5511 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5512
5513         * gst/autoplug/gstspideridentity.c:
5514         (gst_spider_identity_sink_loop_type_finding):
5515           Don't crash if that function is not implemented.
5516
5517 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5518
5519         * docs/pwg/advanced-types.xml:
5520           Another typo.
5521
5522 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5523
5524         * docs/pwg/intro-preface.xml:
5525           Hm, ok, so the brackets weren't really useful...
5526         * docs/pwg/other-ntoone.xml:
5527           Fix embarassing typo.
5528
5529 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5530
5531         * docs/pwg/intro-preface.xml:
5532           Rewrite preface.
5533
5534 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5535
5536         * docs/pwg/advanced-scheduling.xml:
5537         * docs/pwg/advanced-tagging.xml:
5538         * docs/pwg/advanced-types.xml:
5539         * docs/pwg/building-boiler.xml:
5540         * docs/pwg/building-chainfn.xml:
5541         * docs/pwg/building-signals.xml:
5542         * docs/pwg/building-state.xml:
5543         * docs/pwg/building-testapp.xml:
5544         * docs/pwg/intro-basics.xml:
5545         * docs/pwg/other-manager.xml:
5546         * docs/pwg/other-source.xml:
5547           Typo fixes.
5548         * docs/pwg/other-manager.xml:
5549           Add some first content. No example code yet.
5550         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5551           Remove double newlines.
5552
5553 2004-11-04  Wim Taymans  <wim@fluendo.com>
5554
5555         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5556         (remove_from_group), (normalize_group), (group_migrate_connected),
5557         (gst_opt_scheduler_iterate):
5558         * testsuite/schedulers/.cvsignore:
5559         * testsuite/schedulers/Makefile.am:
5560         * testsuite/schedulers/queue_link.c: (main):
5561         Added testcase for scheduler segfault.
5562         Fix scheduler segfault when removing a decoupled
5563         entry point as the last element from a group.
5564
5565 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5566
5567         * gst/gstmarshal.list: add missing marshaller, fixes build
5568
5569 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5570
5571         * docs/random/signal: added notes about using BOXED for GstBuffer
5572         signal marshallers, not POINTER
5573
5574 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5575
5576         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5577         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5578         POINTER=>BOXED changes to marshal GstBuffers
5579
5580 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5581
5582         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5583         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5584
5585 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5586
5587         * docs/gst/gstreamer-sections.txt:
5588         * docs/gst/tmpl/gstcaps.sgml:
5589         * docs/gst/tmpl/gsterror.sgml:
5590         * docs/gst/tmpl/gstinfo.sgml:
5591         * docs/gst/tmpl/gstmacros.sgml:
5592         * docs/gst/tmpl/gstutils.sgml:
5593         * docs/random/ensonic/interfaces.txt:
5594         * gst/gstinfo.h:
5595           added some more docs, removed two obsolete defines
5596
5597 2004-11-02  Kjartan Maraas <as at gnome.org>
5598
5599         reviewed by: Wim Taymans, Ronald Bultje.
5600
5601         * gst/cothreads.c: (cothread_create):
5602         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5603         (gst_bin_child_state_change_func):
5604         * gst/gstbuffer.c: (gst_buffer_span):
5605         * gst/gstelement.c: (gst_element_get_index),
5606         (gst_element_get_event_masks), (gst_element_get_query_types),
5607         (gst_element_get_formats):
5608         * gst/gsterror.c: (_gst_core_errors_init),
5609         (_gst_library_errors_init), (_gst_resource_errors_init),
5610         (_gst_stream_errors_init):
5611         * gst/gstobject.c: (gst_object_default_deep_notify):
5612         * gst/gstpad.c: (gst_pad_get_event_masks),
5613         (gst_pad_get_internal_links_default):
5614         * gst/gstplugin.c: (gst_plugin_register_func),
5615         (gst_plugin_get_module):
5616         * gst/gststructure.c: (gst_structure_get_string),
5617         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5618         (gst_structure_to_abbr):
5619         * gst/gstutils.c: (gst_print_element_args):
5620         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5621         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5622         Aplied part of patch #157127: Cleanup of issues reported by 
5623         sparse.
5624         Also do not try to use cothreads when there is no cothread
5625         context yet.
5626
5627 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5628
5629         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5630         (gst_opt_scheduler_iterate):
5631         Applied patch #154061. Running a pipeline in which an element 
5632         calls GST_ELEMENT_ERROR in the chain function, the opt 
5633         scheduler doesn't unref the chain so it never gets freed.
5634
5635 2004-11-02  Wim Taymans  <wim@fluendo.com>
5636
5637         * gst/gststructure.c: (gst_structure_get_abbrs),
5638         (gst_structure_from_abbr), (gst_structure_to_abbr):
5639         Remove that ugly if-then thing in the code that converts
5640         between strings and types.
5641
5642 2004-11-02  Wim Taymans  <wim@fluendo.com>
5643
5644         * gst/gstscheduler.c: (gst_scheduler_add_element),
5645         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5646         Aplied clock distribution patch, this should fix bug
5647         #148787.
5648
5649 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5650
5651         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5652
5653         * po/LINGUAS:
5654         * po/nb.po:
5655           Added Norwegian Bokmaal translation
5656
5657 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5658
5659         * tools/gst-inspect.c: (print_signal_info):
5660           print signal arguments as pointers if they are
5661
5662 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5663
5664         * docs/pwg/building-boiler.xml:
5665           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5666
5667 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5668
5669         * gst/parse/parse.l:
5670         * testsuite/parse/parse1.c: (main):
5671         Since parse can do 'element name=a:b' make 'a:b.' work as
5672         well. 
5673         Added testcase to verify fix.
5674
5675 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5676
5677         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
5678         Use the realpad when printing the direction.
5679         Add extra \n when printing extensions of typefind factories.
5680
5681 2004-10-13  David Schleef  <ds@schleef.org>
5682
5683         * examples/manual/Makefile.am: $< isn't portable in Makefile
5684         rules.
5685
5686 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
5687
5688         * docs/gst/tmpl/gstobject.sgml:
5689         * docs/gst/tmpl/gstplugin.sgml:
5690         * docs/gst/tmpl/gstpluginfeature.sgml:
5691         * docs/gst/tmpl/gstregistry.sgml:
5692         * docs/gst/tmpl/gstversion.sgml:
5693         * gst/gstbin.c:
5694           more api documentation
5695         * gst/gstplugin.c: (gst_plugin_register_func),
5696         (gst_plugin_check_file), (gst_plugin_load_file):
5697           better error signaling and logging
5698
5699 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5700
5701         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
5702           Subtract current queue contents from position queries.
5703
5704 2004-10-11  Johan Dahlin  <johan@gnome.org>
5705
5706         * gst/gsturi.c (gst_uri_get_location): unescape string
5707         (gst_uri_construct): escape string.
5708
5709 2004-10-11  Benjamin Otte  <otte@gnome.org>
5710
5711         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
5712         (gst_pad_try_set_caps_nonfixed):
5713           allow renegotiation of unconnected pads (as inside spider). Simply
5714           return OK if unconnected - mimic try_set_caps there.
5715
5716 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5717
5718         * gst/gstbin.c: (gst_bin_sync_children_state):
5719           Add missing break.
5720
5721 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5722
5723         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
5724         Set element to EOS before sending EOS event
5725
5726 2004-10-08  Wim Taymans  <wim at fluendo dot com>
5727
5728         * gst/elements/gsttypefindelement.c:
5729         (gst_type_find_element_handle_event):
5730         Handle EOS events when doing the transition from
5731         typefind to data passing. This should fix the
5732         infinite loops in short files.
5733
5734 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5735
5736         * gst/gstthread.c: (gst_thread_change_state),
5737         (gst_thread_child_state_change):
5738         Make sure no iteration happens while performing
5739         the state change as it could mess up the internal
5740         consistency of the thread state.
5741
5742 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5743
5744         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
5745         (gst_thread_change_state), (gst_thread_child_state_change):
5746         Do not try to grab the iterate lock in the state change method
5747         when we are in the same thread as the iterate or else we
5748         could deadlock. Some other cleanups.
5749
5750 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5751
5752         * configure.ac:
5753           bump nano to cvs
5754
5755 === release 0.8.7 ===
5756
5757 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5758
5759         * configure.ac:
5760         * NEWS:
5761         * RELEASE:
5762         * configure.ac:
5763           releasing 0.8.7, "A Cruise"
5764
5765 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5766
5767         * docs/random/mimetypes:
5768         Add an entry for Sony ATRAC3 audio format with mime-type
5769         used by rmdemux et riff-read
5770
5771 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5772
5773         * gst/elements/gsttypefindelement.c: (stop_typefinding):
5774         Push the buffer store instead of clearing it in case that
5775         the stream is not seekable.
5776
5777 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5778
5779         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
5780         (gst_thread_main_loop):
5781         Lock the iteration and the state change so that automatic
5782         negotiation and fixation does not happen at the same time
5783         as the in stream negotiation.
5784
5785 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5786
5787         * configure.ac:
5788           bump nano to cvs
5789
5790 === release 0.8.6 ===
5791
5792 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5793
5794         * configure.ac:
5795         * NEWS:
5796         * RELEASE:
5797         * configure.ac:
5798           releasing 0.8.6, "Narc"
5799
5800 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5801
5802         * configure.ac:
5803           prerel bump
5804
5805 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5806
5807         patch by: Steve Lhomme
5808
5809         * gst/elements/gstfakesrc.c:
5810         * gst/elements/gstidentity.c:
5811         * gst/gstthread.c:
5812           Fix for #153881
5813
5814 2004-10-01  Wim Taymans  <wim at fluendo dot com>
5815
5816         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
5817         Fix threadsafety of the crc checking function.
5818
5819 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5820
5821         patch by: Ronald Bultje
5822
5823         * gst/elements/gsttypefindelement.c: (stop_typefinding),
5824         (gst_type_find_element_handle_event),
5825         (gst_type_find_element_chain):
5826         * gst/elements/gsttypefindelement.h:
5827          #153657.
5828          Filter out discont event from seekable sources when typefind
5829          asks them to seek.  Fixes typefind with demuxers for
5830          avi, asf and matroska.
5831
5832 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5833
5834         * docs/gst/gstreamer-sections.txt:
5835         * gst/gstcaps.c:
5836         * gst/gstcaps.h:
5837         * gst/gstpad.c:
5838           Revert preferred caps: (#147789)
5839
5840 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
5841
5842         * win32/dirent.c:
5843           fix a memory leak
5844
5845 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5846
5847         * configure.ac:
5848           bump for prerelease
5849
5850 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5851
5852         * docs/Makefile.am:
5853         * docs/manual/elements-api.xml:
5854           restructure so that common stuff is shown first
5855         * docs/manual/init-api.xml:
5856           convert to examples
5857         * docs/manual/manual.xml:
5858         * docs/manuals.mak:
5859         * docs/url.entities:
5860           link to API on the website, possibly override later in build
5861         * examples/manual/.cvsignore:
5862           ignore more
5863         * examples/manual/Makefile.am:
5864           add more examples
5865         * examples/manual/extract.pl:
5866           error out on failure
5867
5868 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5869
5870         * docs/gst/tmpl/gstthread.sgml:
5871         * docs/manual/init-api.xml:
5872         * examples/manual/Makefile.am:
5873           convert two code bits to examples
5874
5875 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5876
5877         * gst/gstelement.c: (gst_element_change_state):
5878           Well, actually, I was about to remove this insane assert when
5879           I noticed Wim already did that. A warning is nice so we can
5880           fix actual ugs (using --g-fatal-warnings and backtraces), so
5881           I added that instead.
5882
5883 2004-09-06  Wim Taymans  <wim@fluendo.com>
5884
5885         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
5886         (gst_element_threadsafe_properties_post_run),
5887         (gst_element_set_state), (gst_element_change_state):
5888         Added extra refcounting around various places. 
5889
5890 2004-09-06  Wim Taymans  <wim@fluendo.com>
5891
5892         * gst/gstpad.c: (gst_pad_link_call_link_functions):
5893         Fix debug info.
5894
5895 2004-09-06  Wim Taymans  <wim@fluendo.com>
5896
5897         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5898         (remove_from_group):
5899         Some more debug info.
5900
5901 2004-09-03  Wim Taymans  <wim@fluendo.com>
5902
5903         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5904         (gst_fakesrc_init), (gst_fakesrc_set_clock),
5905         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5906         (gst_fakesrc_get), (gst_fakesrc_change_state):
5907         * gst/elements/gstfakesrc.h:
5908         * gst/elements/gstidentity.c: (gst_identity_class_init),
5909         (gst_identity_init), (gst_identity_chain),
5910         (gst_identity_set_property), (gst_identity_get_property),
5911         (gst_identity_change_state):
5912         * gst/elements/gstidentity.h:
5913         Added datarate properties to limit the datarate.
5914
5915 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5916
5917         * gst/autoplug/gstspider.c: (plugin_init):
5918           don't set a rank. We don't want to autoplug by inserting spiders.
5919
5920 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5921
5922         * gst/autoplug/gstspider.c: (gst_spider_class_init),
5923         (gst_spider_identity_plug):
5924           add a template for spider's sink
5925         * gst/gst.c: (gst_register_core_elements):
5926           queue's rank should be NULL, we don't want spider to add it.
5927
5928 2004-08-18  David Schleef  <ds@schleef.org>
5929
5930         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
5931         * docs/libs/Makefile.am: same
5932         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
5933         * docs/random/ds/0.9-planning: random additions
5934         * docs/random/ds/0.9-suggested-changes: same
5935         * gst/gstxml.h: remove vestigal GstXMLNs definition
5936
5937         Preferred caps: (#147789)
5938         * docs/gst/gstreamer-sections.txt: Add symbols
5939         * docs/gst/tmpl/gstcaps.sgml: Add symbols
5940         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
5941         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
5942         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
5943         (gst_caps_get_preferred), (gst_caps_set_preferred),
5944         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
5945         (gst_caps_use_preferred): Handle caps preferences
5946         * gst/gstcaps.h: Add caps preferences
5947         * gst/gstpad.c: (gst_pad_link_get_preferred),
5948         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
5949         (gst_pad_renegotiate), (gst_pad_guess_preferred),
5950         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
5951         negotiation.
5952
5953 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5954
5955         * gst/autoplug/gstspideridentity.c:
5956         (gst_spider_identity_request_new_pad):
5957         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
5958         (gst_aggregator_init):
5959         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
5960         (gst_fakesink_init):
5961         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
5962         (gst_fakesrc_init):
5963         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
5964         (gst_fdsink_init):
5965         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
5966         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
5967         (gst_filesink_init):
5968         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
5969         (gst_filesrc_init):
5970         * gst/elements/gstidentity.c: (gst_identity_base_init),
5971         (gst_identity_init):
5972         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
5973         (gst_multifilesrc_init):
5974         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
5975         (gst_pipefilter_init):
5976         * gst/elements/gststatistics.c: (gst_statistics_base_init),
5977         (gst_statistics_init):
5978         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
5979         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
5980           s/gst_pad_new/&_from_template/
5981           register pad templates in the base_init function
5982           add static pad template definitions
5983
5984 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5985
5986         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
5987         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
5988         * testsuite/refcounting/pad.c: (main):
5989         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
5990           s/gst_pad_new/&_from_template/
5991           prepare deprecation of gst_pad_new
5992
5993 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
5994
5995         patch by: Luca Ognibene <skaboy81@virgilio.it>
5996
5997         * gst/gstcaps.c:
5998         * gst/gstelement.c:
5999         * gst/gstpad.c:
6000         * gst/gstxml.c:
6001           fix memleaks.  Fixes #150001
6002
6003 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6004
6005         * docs/random/ds/0.9-suggested-changes:
6006           add notes - mostly about pad templates
6007
6008 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6009
6010         * win32/GStreamer.vcproj:
6011           temporary locale files are .gmo not .mo
6012
6013 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6014
6015         * configure.ac: bump nano to cvs
6016
6017 === release 0.8.5 ===
6018
6019 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6020
6021         * configure.ac:
6022           releasing 0.8.5, "Stuttgart"
6023         * NEWS:
6024         * RELEASE:
6025         * configure.ac:
6026         * docs/random/release:
6027           updates for release
6028
6029 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6030
6031         patch by: Wim Taymans (wim@fluendo.com)
6032
6033         * gst/gstbuffer.c:
6034         * gst/gstindex.h:
6035         * libs/gst/dataprotocol/dataprotocol.c:
6036           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6037
6038 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6039
6040         * Makefile.am:
6041         * win32/MANIFEST:
6042           add win32 dir to the build.  Fixes #149981.
6043
6044 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6045
6046         * configure.ac:
6047           bump libtool versioning
6048         * gst/gststructure.c:
6049           mark function as static
6050         * po/af.po:
6051         * po/az.po:
6052         * po/ca.po:
6053         * po/cs.po:
6054         * po/en_GB.po:
6055         * po/fr.po:
6056         * po/nl.po:
6057         * po/sq.po:
6058         * po/sr.po:
6059         * po/sv.po:
6060         * po/tr.po:
6061         * po/uk.po:
6062           translations update
6063         * win32/README.txt:
6064           trademark protection
6065
6066 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6067
6068         * configure.ac:
6069           fix GST_ORIGIN
6070           set GST_PACKAGE to source, and distinguish between release and other
6071         * tools/gst-inspect.c:
6072           print out plugin an element factory is part of so we see this info
6073
6074 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6075
6076         * docs/gst/gstreamer-sections.txt:
6077         * docs/gst/tmpl/gstbuffer.sgml:
6078         * docs/gst/tmpl/gstschedulerfactory.sgml:
6079           reorder docs a little, make GstBuffer's more sensible.
6080         * gst/gstbuffer.h:
6081           API: added GST_BUFFER_FLAG_DELTA_UNIT
6082         * gst/gstscheduler.c:
6083           comment API addition
6084
6085 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6086
6087         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6088           work with non-regular files that can be mmapped (like /dev/zero)
6089         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6090           get rid of typefinds that require a seek when we can't seek instead
6091           of trying them over and over again
6092         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6093           return non-zero failure value when the pipeline was interrupted or
6094           an error occurred
6095
6096 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6097
6098         * win32/config.h:
6099         * win32/GStreamer.vcproj:
6100           compile and install the locales
6101
6102 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6103
6104         * gst/gstvalue.c:
6105           fix a possible memory leak under Windows
6106
6107 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6108
6109         * win32/GStreamer.vcproj:
6110           fix a memory leak that occured under Windows
6111         * win32/gstreamer.def:
6112           add gst_scheduler_register
6113
6114 2004-08-11  Benjamin Otte  <otte@gnome.org>
6115
6116         * docs/gst/gstreamer-sections.txt:
6117         * gst/gstscheduler.c: (gst_scheduler_register):
6118         * gst/gstscheduler.h:
6119           API:
6120           add gst_scheduler_register shortcut similar to gst_element_register
6121         * gst/schedulers/entryscheduler.c: (plugin_init):
6122         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6123         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6124           use it
6125
6126 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6127
6128         * gst/gstvalue.h:
6129           fix a memory leak that occured under Windows
6130
6131 2004-08-10  Colin Walters  <walters@redhat.com>
6132
6133         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6134         Don't use O_EXCL to open temporary registry.  It will prevent
6135         registry creation if a temporary one already exists, which
6136         is unnecessary.
6137
6138 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6139
6140         * docs/gst/gstreamer-sections.txt:
6141         * docs/gst/tmpl/gstvalue.sgml:
6142           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6143
6144 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6145
6146         * win32/gstbytestream.vcproj:
6147         * win32/gstelements.vcproj:
6148         * win32/gstgetbits.vcproj:
6149         * win32/gst-inspect.vcproj:
6150         * win32/gst-launch.vcproj:
6151         * win32/gstoptimalscheduler.vcproj:
6152         * win32/GStreamer.vcproj:
6153         * win32/gst-register.vcproj:
6154         * win32/gstspider.vcproj:
6155           update the include and lib dirs to fit standard libraries as
6156           described in the Win32 manual
6157
6158 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6159
6160         * win32/config.h:
6161         * win32/gstversion.h:
6162           enable NLS again, push the version number for the coming 0.8.5 release
6163
6164 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6165
6166         * gst/gstvalue.h:
6167           export gst_type_XXX for windows DLLs
6168
6169 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6170
6171         * docs/faq/gst-uninstalled:
6172           fix PKG_CONFIG_PATH and PYTHONPATH
6173         * gst/schedulers/Makefile.am:
6174           cleanup
6175         * libs/gst/bytestream/bytestream.c:
6176           remove newline
6177         * po/LINGUAS:
6178         * po/sq.po:
6179           adding Albanian translation (Laurent Dhima)
6180         * po/cs.po:
6181           updated
6182
6183 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6184
6185         * po/ca.po:
6186         * po/sv.po:
6187           updated translations
6188
6189 2004-08-04  Benjamin Otte  <otte@gnome.org>
6190
6191         * tests/mass_elements.c: (main):
6192           allow specifying src and sink element explicitly, so I can test
6193           videotestsrc instead of fakesrc
6194
6195 2004-08-04  Benjamin Otte  <otte@gnome.org>
6196
6197         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6198         (gst_structure_id_empty_new), (gst_structure_empty_new),
6199         (gst_structure_copy):
6200           add gst_structure_id_empty_new_with_size to allow preallocating
6201           value array sizes. Use this in gst_structure_copy to get rid of
6202           reallocs.
6203           don't do quark=>string=>quark when copying structures
6204
6205 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6206
6207         * docs/manual/win32.xml:
6208         * win32/README.txt:
6209           update documentation with the clean version of dependencies
6210
6211 2004-08-03  Benjamin Otte  <otte@gnome.org>
6212
6213         * gst/schedulers/entryscheduler.c:
6214         (gst_entry_scheduler_remove_element):
6215           fix for GST_DISABLE_DEBUG
6216         * tools/gst-launch.c: (print_tag):
6217           fixes for G_DISABLE_ASSERT
6218
6219 2004-08-03  Benjamin Otte  <otte@gnome.org>
6220
6221         * gst/gst.c: (gst_register_core_elements):
6222           fix for G_DISABLE_ASSERT
6223         * gst/gstinfo.c: (__gst_in_valgrind):
6224           add for GST_DISABLE_DEBUG
6225
6226 2004-08-03  Benjamin Otte  <otte@gnome.org>
6227
6228         * gst/parse/parse.l:
6229           fix for G_DISABLE_ASSERT
6230
6231 2004-08-03  Wim Taymans  <wim@fluendo.com>
6232
6233         * gst/gstbin.c: (gst_bin_get_type),
6234         (gst_bin_child_state_change_func):
6235         * gst/gstthread.c: (gst_thread_change_state):
6236         Backported some debug logging from a reverted patch
6237         Don't try to destroy the thread twice. Added some more
6238         debugging in GstThread. Unlock and signal even if we
6239         are in the thread context.
6240
6241 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6242
6243         * po/uk.po:
6244           updated translation
6245
6246 2004-07-30  David Schleef  <ds@schleef.org>
6247
6248         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6249
6250 2004-07-29  David Schleef  <ds@schleef.org>
6251
6252         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6253         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6254
6255 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6256
6257         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6258         (gst_bin_add_func), (gst_bin_remove_func),
6259         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6260         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6261         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6262         (gst_bin_sync_children_state):
6263         * gst/gstbin.h:
6264         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6265         (gst_thread_change_state):
6266         * testsuite/states/Makefile.am:
6267           revert state change patches as agreed so we can rework them
6268           gradually
6269
6270 2004-07-29  Benjamin Otte  <otte@gnome.org>
6271
6272         * libs/gst/control/Makefile.am:
6273           link to libgstreamer (fixes Debian bug 262019, see
6274           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6275
6276 2004-07-29  Wim Taymans  <wim@fluendo.com>
6277
6278         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6279         (check_from_fraction_convert), (transform_test), (main):
6280         Make the test less pedantic about float roundoff errors.
6281
6282 2004-07-29  Benjamin Otte  <otte@gnome.org>
6283
6284         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6285         (gst_filesrc_srcpad_event):
6286           make seek events to before start/after end of file not fail, but
6287           seek to start/end instead
6288         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6289           add more output
6290
6291 2004-07-29  Benjamin Otte  <otte@gnome.org>
6292
6293         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6294           check that caps are fixed
6295         * gst/gstpad.c: (gst_pad_template_new):
6296           don't try to simplify caps, costs too much time on gst_init
6297         * gst/gstplugin.c: (gst_plugin_add_feature):
6298           G_ERROR if features are added twice
6299         * gst/gsttypefind.c: (gst_type_find_register):
6300         * gst/gstelementfactory.c: (gst_element_register):
6301           don't add features twice
6302         * docs/random/ds/0.9-suggested-changes:
6303           add note about possible gst_init optimization
6304
6305 2004-07-28  David Schleef  <ds@schleef.org>
6306
6307         * testsuite/elements/Makefile.am:
6308         * testsuite/elements/struct_i386.h:
6309         * testsuite/elements/struct_size.c: (main):  A little test
6310         to keep distcheck from working if someone changes a structure
6311         size accidentally.
6312
6313 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6314
6315         * docs/libs/Makefile.am:
6316         * docs/libs/gstreamer-libs-docs.sgml:
6317         * docs/libs/gstreamer-libs-sections.txt:
6318         * docs/libs/tmpl/gstbytestream.sgml:
6319         * docs/libs/tmpl/gstcontrol.sgml:
6320         * docs/libs/tmpl/gstdataprotocol.sgml:
6321         * docs/libs/tmpl/gstgetbits.sgml:
6322         * libs/gst/bytestream/Makefile.am:
6323         * libs/gst/bytestream/bytestream.c:
6324         * libs/gst/bytestream/bytestream.h:
6325         * libs/gst/control/Makefile.am:
6326         * libs/gst/dataprotocol/Makefile.am:
6327         * libs/gst/getbits/Makefile.am:
6328         * libs/gst/getbits/getbits.h:
6329           various doc and style fixes, adding bytestream to libs docs.
6330
6331 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6332
6333         * docs/gst/gstreamer-docs.sgml:
6334         * docs/libs/Makefile.am:
6335         * docs/libs/gstreamer-libs-docs.sgml:
6336         * docs/libs/gstreamer-libs-sections.txt:
6337         * libs/gst/control/dparam.c:
6338           more doc fixes.  gst-libs docs now build the same way as gst.
6339
6340 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6341
6342         * configure.ac:
6343         * testsuite/Makefile.am:
6344         * testsuite/bins/Makefile.am:
6345         * testsuite/caps/Makefile.am:
6346         * testsuite/cleanup/Makefile.am:
6347         * testsuite/clock/Makefile.am:
6348         * testsuite/debug/Makefile.am:
6349         * testsuite/dlopen/Makefile.am:
6350         * testsuite/dynparams/Makefile.am:
6351         * testsuite/elements/.cvsignore:
6352         * testsuite/elements/Makefile.am:
6353         * testsuite/enumcaps/Makefile.am:
6354         * testsuite/enumcaps/enumcaps.c:
6355         * testsuite/ghostpads/Makefile.am:
6356         * testsuite/indexers/Makefile.am:
6357         * testsuite/negotiation/Makefile.am:
6358         * testsuite/parse/Makefile.am:
6359         * testsuite/plugin/Makefile.am:
6360         * testsuite/refcounting/Makefile.am:
6361         * testsuite/schedulers/.cvsignore:
6362         * testsuite/states/Makefile.am:
6363         * testsuite/tags/Makefile.am:
6364         * testsuite/threads/Makefile.am:
6365           fold enumcaps into caps dir
6366           clean up Makefile.am's for testsuite
6367
6368 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6369
6370         * docs/gst/Makefile.am:
6371         * docs/libs/Makefile.am:
6372           clean up docs build.  Fixes needless rebuilding of template files.
6373
6374 2004-07-28  Wim Taymans  <wim@fluendo.com>
6375
6376         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6377         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6378         Make sure that a bin state change tries to keep the children
6379         in sync. 
6380         Added debug logging to the thread.
6381
6382 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6383
6384         * win32/GStreamer.vcproj:
6385         * win32/gstreamer.def:
6386           more exports for the plugins
6387
6388 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6389
6390         * win32/gstgetbits.vcproj:
6391         * win32/gstgetbits.def:
6392         * win32/msvc71.sln:
6393           add support for the getbits plugin
6394
6395 2004-07-27  Wim Taymans  <wim@fluendo.com>
6396
6397         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6398         (gst_value_transform_fraction_double), (_gst_value_initialize):
6399         * testsuite/caps/Makefile.am:
6400         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6401         (check_from_fraction_convert), (transform_test), (main):
6402         Added transform functions between double and fraction.
6403         Added testcase to verify transforms
6404
6405 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6406
6407         * win32/GStreamer.vcproj:
6408           rename GStreamer-0.8.lib to libgstreamer.lib
6409
6410 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6411
6412         * win32/gstelements.vcproj:
6413         * win32/gstoptimalscheduler.vcproj:
6414           fixes for the Release build
6415
6416 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6417
6418         * win32/config.h:
6419           update the version number
6420
6421 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6422
6423         * win32/GStreamer.vcproj:
6424           add gstinterface to the build
6425
6426 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6427
6428         * win32/gstreamer.def:
6429           add many definitions needed by plugins,
6430           GST_CAT_DEFAULT only available in the Debug build ?
6431
6432 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6433
6434         * gst/gstelement.c: (gst_element_set_eos_recursive):
6435           various whitespace fixes.
6436           doc fix, fixes #148497
6437
6438 2004-07-25  Benjamin Otte  <otte@gnome.org>
6439
6440         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6441           don't delay links on the sink elements, it causes unnegotiated
6442           links.
6443         * gst/elements/gsttypefindelement.c:
6444         (gst_type_find_element_base_init):
6445           add our padtemplates, we indeed do have some.
6446         * gst/elements/gsttypefindelement.c:
6447         (gst_type_find_element_handle_event),
6448         (gst_type_find_element_chain):
6449           don't push data when typefinding failed.
6450         * gst/gstpad.c: (gst_pad_link_fixate):
6451           check that no fixate function returns empty caps.
6452         * gst/gstpad.c: (gst_pad_push):
6453           check that the link is negotiated before data gets pushed.
6454         * tools/gst-register.c: (main):
6455           don't assert (fixes #148283)
6456
6457 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6458
6459         * docs/gst/gstreamer-sections.txt:
6460         * docs/gst/tmpl/gstconfig.sgml:
6461           add GST_PLUGIN_EXPORT definition
6462
6463 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6464
6465         * gst/gstplugin.h:
6466         * gst/gstconfig.h.in:
6467         * win32/gstconfig.h:
6468         * win32/gstelements.def:
6469         * win32/gstelements.vcproj:
6470         * win32/gstoptimalscheduler.def:
6471         * win32/gstoptimalscheduler.vcproj:
6472         * win32/gstspider.def:
6473         * win32/gstspider.vcproj:
6474           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6475
6476 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6477
6478         * docs/gst/gstreamer-sections.txt:
6479           remove GST_CAT_DEFAULT because the type has changed
6480
6481 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6482
6483         * win32/gstbytestream.vcproj:
6484         * win32/gstelements.vcproj:
6485         * win32/gst-inspect.vcproj:
6486         * win32/gst-launch.vcproj:
6487         * win32/gstoptimalscheduler.vcproj:
6488         * win32/GStreamer.vcproj:
6489         * win32/gst-register.vcproj:
6490         * win32/gstspider.vcproj:
6491         * win32/msvc71.sln:
6492           Copy the files where needed after building, The testsuite will be
6493           built separately
6494
6495 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6496
6497         * win32/config.h:
6498         * win32/README.txt:
6499         * docs/manual/win32.xml:
6500         Fixed the plugin and GStreamer location
6501
6502 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6503
6504         * win32/gstreamer.def:
6505         More exports for the plugins
6506
6507 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6508
6509         * gst/gstinfo.h:
6510         Marc was right, we need to export literally GST_CAT_DEFAULT
6511
6512 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6513
6514         * win32/config.h:
6515         NLS crashes in gettext, disabled until this is solved
6516
6517 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6518
6519         * win32/gst-inspect.vcproj:
6520         * win32/gst-launch.vcproj:
6521         Should use NLS when available
6522
6523 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6524
6525         * gst/registries/gstxmlregistry.c:
6526         removing the file doesn't seem to be a good idea on Linux
6527
6528 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6529
6530         * gst/registries/gstxmlregistry.c:
6531         Remove the registry before renaming the tempfile (needed for Windows)
6532
6533 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6534
6535         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6536         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6537         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6538         * gst/elements/gstmultifilesrc.h:
6539         Added newmedia property so it generates newmedia events between each
6540         file when property is set, as well as fixed eos handling
6541
6542 2004-07-22  David Schleef  <ds@schleef.org>
6543
6544         * gst/gststructure.c: (gst_structure_id_empty_new),
6545         (gst_structure_empty_new):  Set type field correctly.
6546         * gst/gststructure.h: Check type field correctly.
6547         * testsuite/caps/Makefile.am:
6548         * testsuite/caps/structure.c: (test1), (main): Add a very small
6549         test for structures.
6550
6551 2004-07-22  David Schleef  <ds@schleef.org>
6552
6553         * docs/random/ds/0.9-suggested-changes: more comments
6554         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6555
6556 2004-07-22  Benjamin Otte  <otte@gnome.org>
6557
6558         * gst/gstelementfactory.c: (gst_element_register):
6559           set the factory in the class struct, so gst_element_get_factory
6560           actually works
6561         * gst/parse/grammar.y:
6562           set element to playing when it gets unlocked as we can't rely on the
6563           bin state - all elements in the bin state might still be locked in
6564           NULL)
6565
6566 2004-07-22  Benjamin Otte  <otte@gnome.org>
6567
6568         * gst/gstelement.c: (gst_element_set_state_func):
6569           make this a static function
6570
6571 2004-07-22  Wim Taymans  <wim@fluendo.com>
6572
6573         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6574         (gst_opt_scheduler_pad_link):
6575         fix 147894-2 and the group_link problem.
6576
6577 2004-07-22  Wim Taymans  <wim@fluendo.com>
6578
6579         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6580         (handoff_identity), (main):
6581         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6582         (handoff_identity), (main):
6583         * testsuite/schedulers/Makefile.am:
6584         * testsuite/schedulers/group_link.c: (main):
6585         Show bug in scheduler when linking chain and loop based element 
6586         where the chain based element was not yet in a group.
6587
6588 2004-07-21  Benjamin Otte  <otte@gnome.org>
6589
6590         * gst/.cvsignore:
6591         * gst/autoplug/.cvsignore:
6592         * gst/elements/.cvsignore:
6593         * gst/indexers/.cvsignore:
6594         * libs/gst/bytestream/.cvsignore:
6595         * libs/gst/control/.cvsignore:
6596         * libs/gst/getbits/.cvsignore:
6597         * testsuite/states/.cvsignore:
6598         * testsuite/threads/.cvsignore:
6599           keep this up to date, since I seem to be the only one who cares
6600           about not missing files on commits (editor's note: no you don't,
6601           but feel free to change them at the time you add stuff instead
6602           of later on)
6603
6604 2004-07-21  Benjamin Otte  <otte@gnome.org>
6605
6606         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6607         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6608         (gst_bin_child_state_change_func), (set_kid_state_func),
6609         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6610           make state changes work correctly and reentrant (so removing
6611           elements from bins during state changes of bins doesn't cause
6612           segfaults or even wrong states)
6613           add debugging category and debugging output to print children states
6614         * gst/gstbin.c: (gst_bin_dispose): 
6615           add some assertion checks
6616         * gst/gstbin.h:
6617         * gst/gstbin.c: (gst_bin_sync_children_state):
6618           deprecate this function - it just does gst_bin_set_state (bin,
6619           GST_STATE (bin)) 
6620         * testsuite/threads/queue.c: (main):
6621           don't use gst_bin_sync_children_state anymore
6622         * testsuite/states/Makefile.am:
6623         * testsuite/states/bin.c:
6624           test that the state changes of bins work as expected
6625         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6626           some adjustments to change states correctly, too
6627         * gst/gstthread.c: (gst_thread_change_state):
6628           don't enable/disable "threadsafe" properties, they're unused and
6629           cause random segfaults
6630         * testsuite/threads/Makefile.am:
6631           the queue check randomly passes now, ignore it
6632
6633 2004-07-21  Benjamin Otte  <otte@gnome.org>
6634
6635         * gst/gstpad.c:
6636           check if data is NULL before outputting debug info. (fixes #145100)
6637
6638 2004-07-21  Benjamin Otte  <otte@gnome.org>
6639
6640         * gst/schedulers/entryscheduler.c:
6641         (gst_entry_scheduler_loop_wrapper),
6642         (gst_entry_scheduler_chain_wrapper),
6643         (gst_entry_scheduler_get_wrapper):
6644           reset the state when the cothread starts, so we don't get assertion
6645           failures on restarting of cothreads
6646
6647 2004-07-20  Benjamin Otte  <otte@gnome.org>
6648
6649         * gst/gstelement.c: (gst_element_link_pads_filtered):
6650           use correct sinkpad, if only sinkpad is specified, but not srcpad
6651           (fixes #147889)
6652         * gst/gstelement.c: (gst_element_set_state_func),
6653         (gst_element_change_state): ref/unref the element, signal handlers
6654         could get rid of the element otherwise
6655
6656 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6657
6658         * docs/random/ds/0.9-suggested-changes:
6659           Make note about renaming fixed-list to array.
6660         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6661         (_gst_value_initialize):
6662           Add array intersections.
6663         * testsuite/caps/intersect2.c: (main):
6664           Add test for array intersections.
6665
6666 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6667
6668         * configure.ac: back to cvs
6669
6670 === release 0.8.4 ===
6671
6672 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6673
6674         * configure.ac:
6675           releasing 0.8.4, "Paella"
6676           bump libtool versioning
6677
6678 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6679
6680         * po/LINGUAS:
6681         * po/ca.po:
6682           adding Catalan translation (Jordi Mallach)
6683
6684 2004-07-20  Wim Taymans  <wim@fluendo.com>
6685
6686         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6687         (handoff_identity), (main):
6688         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6689         (handoff_identity), (main):
6690         * testsuite/schedulers/Makefile.am:
6691         Added failing testcase for variant of #147894
6692
6693 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6694
6695         patch by: David Moore
6696
6697         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6698         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
6699         (group_migrate_connected):
6700         * testsuite/schedulers/Makefile.am:
6701           fix for #142813 (Deadlock in optimal scheduler)
6702
6703 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6704
6705         patch by: Wim Taymans
6706
6707         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6708         (gst_opt_scheduler_schedule_run_queue),
6709         (gst_opt_scheduler_get_wrapper), (get_group),
6710         (group_migrate_connected):
6711         * testsuite/schedulers/Makefile.am:
6712           fix for #147819 (Add some checks in the opt scheduler)
6713
6714 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6715
6716         patch by: Benjamin Otte
6717
6718         * gst/gstelementfactory.c: (__gst_element_details_set):
6719           fix for #147929: running gst-register in non-utf8 locale can cause
6720           invalid registry
6721
6722 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6723
6724         patch by: Wim Taymans
6725
6726         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
6727         (group_has_element), (element_get_reachables_func),
6728         (group_migrate_connected):
6729           fix for #147894 (opt scheduler decoupled elements mismanagement)
6730         * testsuite/schedulers/Makefile.am:
6731           testsuite app now passes
6732
6733 2004-07-19  Wim Taymans  <wim@fluendo.com>
6734
6735         * testsuite/schedulers/147819.c: (handoff_identity1),
6736         (handoff_identity2), (main):
6737         * testsuite/schedulers/Makefile.am:
6738         Added testcase for bug 147819
6739
6740 2004-07-19  Wim Taymans  <wim@fluendo.com>
6741
6742         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6743         (handoff_identity), (main):
6744         * testsuite/schedulers/Makefile.am:
6745         Added testcase for bug 147894
6746
6747 2004-07-16  Wim Taymans  <wim@fluendo.com>
6748
6749         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
6750         * testsuite/schedulers/142183.c: (handoff_identity), (main):
6751         * testsuite/schedulers/Makefile.am:
6752         Added testsuite for bug 142183 in its two incarnations. Refcount
6753         is not increased for scheduled elements and threadsafe properties
6754         mutexes are not properly unlocked.
6755
6756 2004-07-16  Wim Taymans  <wim@fluendo.com>
6757
6758         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
6759         (create_chain), (destroy_chain), (create_group), (destroy_group),
6760         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
6761         (group_dec_link), (gst_opt_scheduler_pad_link),
6762         (group_inc_links_for_element), (group_migrate_connected):
6763         Call group_inc_link with the proper src->sink ordering -- 
6764         break this, and we break sort_chain. patch from wingo for bug
6765         147713.
6766         Partially revert patch 1.89. When adding a loop based element to 
6767         the scheduler, the links to other groups are automatically followed
6768         and incremented. This should not happen because the bin will call
6769         pad_link explicitly for those connection, resulting in them counted 
6770         twice. Results in assertion failure on pipeline cleanup.
6771
6772 2004-07-16  Wim Taymans  <wim@fluendo.com>
6773
6774         * testsuite/schedulers/143777-2.c: (main):
6775         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
6776         (main):
6777         * testsuite/schedulers/Makefile.am:
6778         Added cleanup code to testcase 143777-2.
6779         Added testcase to show bug 147713, does not really show the
6780         deadlock as I can't figure out how to trigger it, but it does
6781         demonstrate bad ordering in the scheduler.
6782
6783 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6784
6785         * gst/gstvalue.c: (gst_value_deserialize_fraction):
6786           change strndup to g_strndup.  Fixes #147707
6787
6788 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6789
6790         * po/af.po:
6791         * po/az.po:
6792         * po/cs.po:
6793         * po/en_GB.po:
6794         * po/fr.po:
6795         * po/nl.po:
6796         * po/sr.po:
6797         * po/sv.po:
6798         * po/tr.po:
6799         * po/uk.po:
6800           updated translations
6801
6802 2004-07-16  Benjamin Otte  <otte@gnome.org>
6803
6804         * gst/gstvalue.c: (gst_greatest_common_divisor):
6805           use ints and return ints, fractions only use ints, too, so this
6806           avoids accidently casting multiplications to unsigned
6807         (gst_value_lcopy_fraction): it's ints, not uint32
6808         (gst_value_set_fraction): disallow minint, multiplying and negation
6809           are broken with it
6810         (gst_value_fraction_multiply): fix to make large numbers work and get
6811         rid of the assumption that the multiplication of two ints fits an
6812         int64 - dunno if that's true for all systems
6813         * testsuite/caps/Makefile.am:
6814         * testsuite/caps/fraction-multiply-and-zero.c:
6815         (check_multiplication), (check_equal), (zero_test), (main):
6816           add tests for all the stuff above
6817         * testsuite/caps/value_compare.c: (test1):
6818           fix comment
6819         * tests/.cvsignore:
6820         * testsuite/caps/.cvsignore:
6821         * testsuite/debug/.cvsignore:
6822         * testsuite/dlopen/.cvsignore:
6823         * testsuite/states/.cvsignore:
6824           get up to date
6825
6826 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6827
6828         * docs/manual/bins-api.xml:
6829         * docs/manual/factories.xml:
6830         * docs/manual/helloworld.xml:
6831         * docs/manual/links-api.xml: 
6832           fixes for out of date info, incorrect info and grammar
6833
6834 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6835
6836         * docs/manual/pads.xml:
6837         * docs/manual/pads-api.xml: grammar fix
6838
6839 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6840
6841         * docs/manual/pads-api.xml: typo + grammar fix
6842
6843 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6844
6845         * docs/gst/gstreamer-sections.txt:
6846           add new symbols
6847         * docs/gst/tmpl/gstelement.sgml:
6848         * docs/gst/tmpl/gstpad.sgml:
6849         * docs/gst/tmpl/gsttypes.sgml:
6850         * docs/gst/tmpl/gstvalue.sgml:
6851           update docs
6852         * gst/gststructure.c: (gst_structure_set_valist),
6853         (gst_structure_from_abbr), (gst_structure_to_abbr):
6854         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
6855         (gst_greatest_common_divisor), (gst_value_init_fraction),
6856         (gst_value_copy_fraction), (gst_value_collect_fraction),
6857         (gst_value_lcopy_fraction), (gst_value_set_fraction),
6858         (gst_value_get_fraction_numerator),
6859         (gst_value_get_fraction_denominator),
6860         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
6861         (gst_value_deserialize_fraction),
6862         (gst_value_transform_fraction_string),
6863         (gst_value_transform_string_fraction),
6864         (gst_value_compare_fraction), (_gst_value_initialize):
6865         * gst/gstvalue.h:
6866           adding GstFraction GValue type, get/set, and multiply
6867         * testsuite/caps/Makefile.am:
6868         * testsuite/caps/fraction.c: (test), (main):
6869         * testsuite/caps/string-conversions.c: (main):
6870         * testsuite/caps/value_compare.c: (test1), (main):
6871           add regression tests for GstFraction
6872
6873 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6874         
6875         * docs/manual/init-api.xml: Grammar fix
6876
6877 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6878
6879         * docs/manual/states.xml: Fix inconsistent information
6880
6881 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6882
6883         * gst/gstelement.c: (gst_element_set_state):
6884         * gst/gstpad.c: (gst_pad_try_set_caps):
6885         * gst/gststructure.c:
6886         * gst/gstthread.c: (gst_thread_child_state_change):
6887         * gst/gstvalue.c: (gst_value_compare_double):
6888         * gst/gstvalue.h:
6889         * testsuite/parse/parse1.c: (main):
6890           debugging additions and style cleanups
6891
6892 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6893
6894         * docs/manual/states.xml: Grammar fix
6895
6896 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6897
6898         * docs/manual/pads.xml: Grammar fix
6899
6900 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6901
6902         * docs/manual/elements.xml: Fixed image reference
6903
6904 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6905
6906         * docs/manual/goals.xml: Grammar fix
6907
6908 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6909
6910         * docs/manual/motivation.xml:
6911         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
6912
6913 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6914
6915         * docs/manual/motivation.xml: Fix spelling
6916
6917 2004-07-15  Benjamin Otte  <otte@gnome.org>
6918
6919         * gst/gstelement.h: 
6920           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
6921           strings.
6922         * gst/gstelement.c (gst_element_class_init):
6923           GError's are boxed, not objects
6924         * gst/gstmarshal.list:
6925           update list for the fixed error signal
6926
6927 2004-07-14  Andy Wingo  <wingo@pobox.com>
6928
6929         * gst/gsttag.c: Add a tag merge func for pointers. The header was
6930         there all along, but the function wasn't. (guile-gstreamer's build
6931         system uses the address of the function -- I wasn't actually
6932         trying to use this.)
6933
6934 2004-07-14  Andy Wingo  <wingo@pobox.com>
6935
6936         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
6937         as gst_pad_proxy_pad_link) just link to every other pad when they
6938         are called. In the case where the graph has cycles, this will mean
6939         that a call to try_set_caps will recurse. Allow this recursion
6940         and return OK, while we wait for the first try_set_caps to give a
6941         proper return value.
6942         (gst_pad_link_call_link_functions): Since this function is the
6943         only one to set the NEGOTIATING flag on a pad, if the flag is set
6944         it means that the link functions have indirectly recursed. If this
6945         happens, error out to avoid infinite recursion and an eventual
6946         SEGV.
6947         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
6948         (gst_pad_proxy_getcaps): Intersect the result with the template
6949         caps to ensure that the return value is valid.
6950
6951 2004-07-14  Andy Wingo  <wingo@pobox.com>
6952
6953         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
6954         one refcount, the calling function is the owner of the buffer.
6955
6956 2004-07-14  Wim Taymans  <wim@fluendo.com>
6957
6958         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
6959         (gst_opt_scheduler_pad_link), (group_migrate_connected):
6960         Fix stupid warning when an element is to be migrated but
6961         is already migrated.
6962
6963 2004-07-14  Wim Taymans  <wim@fluendo.com>
6964
6965         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
6966         (gst_opt_scheduler_pad_link), (group_migrate_connected):
6967         Make sure that a single non-loop-based element does not 
6968         end up in a group. This fixes the testsuite again.
6969
6970 2004-07-14  Wim Taymans  <wim@fluendo.com>
6971
6972         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6973         (add_to_group), (merge_groups), (schedule_group),
6974         (gst_opt_scheduler_get_wrapper), (group_elements),
6975         (group_dec_link), (gst_opt_scheduler_pad_link),
6976         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
6977         (gst_opt_scheduler_iterate):
6978         move isolated groups to a new chain.
6979         Emit a warning instead of segfaulting in some error cases.
6980         Fix a bug where the link count between groups was not calculated 
6981         correctly. Fixes #144510.
6982
6983 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
6984         * gst/elements/gstfilesrc.c:
6985           Binary files support under Windows now OK
6986       
6987 2004-07-13  Benjamin Otte  <otte@gnome.org>
6988
6989           compatibility fixes for Solaris 8/gcc 2.95
6990         * configure.ac:
6991           include libintl libs in LDFLAGS
6992         * gstvalue.c (gst_value_deserialize_buffer):
6993           cast isxdigit stuff to int to silence compiler warning
6994
6995 2004-07-12  Benjamin Otte  <otte@gnome.org>
6996
6997         * gst/gsttypes.h:
6998           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
6999           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7000           just causes support madness
7001         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7002           make it work without this
7003         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7004         (gst_file_index_commit):
7005           glib IO channels don't want binary mode
7006         * testsuite/bytestream/filepadsink.c: (main):
7007         * testsuite/bytestream/test1.c: (read_param_file):
7008           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7009
7010 2004-07-12  Benjamin Otte  <otte@gnome.org>
7011
7012         * gst/gstelement.c: (gst_element_class_init),
7013         (gst_element_set_state), (gst_element_set_state_func):
7014           virutalize gst_element_set_state, use set_state member in class
7015           struct that was already added in 0.7 for this.
7016         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7017         (gst_bin_change_state):
7018           make gst_bin_foreach works similar to other foreach functions, plug
7019           memleaks in it. Make functions using it work with the new approach.
7020           Document gst_bin_foreach, so it can be exported if we want to
7021         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7022           use virtualized set_state to make set_state on bins set the state of
7023           all its children.
7024
7025 2004-07-12  Benjamin Otte  <otte@gnome.org>
7026
7027         * configure.ac:
7028           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7029           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7030         * gst/gstpad.c: (gst_pad_alloc_buffer):
7031           allow buffer_alloc functions to return NULL and allocate a normal
7032           buffer in that case
7033
7034 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7035         * gst/elements/gstfilesink.c:
7036         * gst/elements/gstfilesrc.c:
7037         * gst/indexers/gstfileindex.c:
7038         * gst/gsttypes.h:
7039         * testsuite/bytestream/filepadsink.c:
7040         * testsuite/bytestream/test1.c:
7041           Handle binary files under Windows
7042
7043 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7044         * docs/manual/win32.xml:
7045         * win32/config.h:
7046         * win32/gst-register.vcproj:
7047         * win32/gstreamer.def:
7048           Update to another gettext public build
7049
7050 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7051         * gst/gstplugin.c:
7052           Fix an impossible C syntax
7053         * win32/config.h:
7054           Disable i18n under Windows for the moment
7055         * win32/gst-register.vcproj:
7056           Use this configuration
7057
7058 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7059         * docs/manual/quotes.xml:
7060           Keep the quotes file alive
7061         * docs/random/ds/0.9-suggested-changes:
7062           Add the suggestion of including a 'rowstride' as part of video
7063           format caps
7064
7065 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7066
7067         * gst/gstelement.c: (gst_element_set_state),
7068         (gst_element_change_state):
7069           d'oh.  Set PENDING state correctly before forcing bin to change.
7070         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7071         (gst_structure_parse_fixed_list):
7072         * gst/schedulers/gstoptimalscheduler.c:
7073         (gst_opt_scheduler_state_transition):
7074         * testsuite/states/parent.c: (main):
7075           remove comment now that it's fixed.
7076
7077 2004-07-11  Benjamin Otte  <otte@gnome.org>
7078
7079         * gst/gstclock.h:
7080           GST_SECOND shouldn't cause a conversion to unsigned.
7081         * testsuite/clock/.cvsignore:
7082         * testsuite/clock/Makefile.am:
7083         * testsuite/clock/signedness.c: (main):
7084           make sure it never will again
7085
7086 2004-07-11  Andy Wingo  <wingo@pobox.com>
7087
7088         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7089         whose state is higher than the bin state, raise the bin state to
7090         ensure that bin state := highest child state.
7091         
7092 2004-07-11  Andy Wingo  <wingo@pobox.com>
7093
7094         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7095         procedure on the children of a bin. Assumes that the procedure can
7096         change the set of children.
7097         (set_kid_state_func): New static function.
7098         (gst_bin_change_state): Use gst_bin_foreach to call
7099         set_kid_state_func. Fixes a bug: if a child had a state-change
7100         handler that removes it from the bin, there would be a segfault.
7101         Hopefully it should also work in the case where the state-change
7102         handler on one child adds or removes other children. In any case,
7103         fixes should go to gst_bin_foreach.
7104
7105 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7106
7107         * gst/gstelement.c: (gst_element_set_state):
7108           compatibility fix for latest plugins release.  Change loop back
7109           to while {}
7110
7111 2004-07-09  Wim Taymans  <wim@fluendo.com>
7112
7113         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7114         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7115         (gst_thread_main_loop):
7116         Since remove is virtual in GstBin we must not assume the 
7117         elements GList to have anothing useful.
7118         Add some more logging to GstThread and be a bit more paranoid
7119         when resetting the scheduler.
7120         Set the state of the bin to NULL before removing the children.
7121
7122 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7123
7124         * testsuite/threads/Makefile.am:
7125         * testsuite/threads/threadg.c:
7126           added test to check if problem when removing all elements from a
7127           GstThread before setting GstThread state to NULL
7128
7129 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7130
7131         * docs/gst/tmpl/gstelement.sgml:
7132         * docs/gst/tmpl/gsttypes.sgml:
7133         * gst/gstbin.c: (gst_bin_change_state):
7134         * gst/gstelement.c: (gst_element_set_state),
7135         (gst_element_change_state):
7136           rework so that for bins we try to set the state on all children
7137           as well even if the bin is in the correct state already.
7138           change while to do so at least one iteration is done.
7139           For regular elements, we fall back to the previous behaviour for
7140           now since we first need a new plugins release.
7141         * testsuite/states/parent.c: (main):
7142           test for this case
7143           Fixes #123774
7144
7145 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7146
7147         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7148         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7149         (gst_queue_release_locks), (gst_queue_change_state),
7150         (gst_queue_set_property):
7151           add proper lock debugging.  Change dispose to finalize, since
7152           we're freeing mutexes and other stuff which should happen only once.
7153
7154 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7155
7156         * docs/gst/tmpl/gstelement.sgml:
7157         * docs/gst/tmpl/gstplugin.sgml:
7158         * docs/gst/tmpl/gsttypes.sgml:
7159         * docs/pwg/building-state.xml:
7160         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7161         * gst/gstelement.c: (gst_element_change_state):
7162         * gst/gstthread.c: (gst_thread_change_state):
7163           catch wrong state changes in element base class.
7164
7165 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7166
7167         * gst/gstinfo.h:
7168           clean up layout a little.
7169
7170 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7171
7172         * configure.ac:
7173         * testsuite/Makefile.am:
7174         * testsuite/states/Makefile.am:
7175         * testsuite/states/parent.c: (main):
7176           re-enable states testsuite dir.  Add test for state changes and
7177           parent behaviour
7178
7179 2004-07-09  Wim Taymans  <wim@fluendo.com>
7180
7181         * gst/schedulers/gstoptimalscheduler.c:
7182         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7183         (element_get_reachables_func), (element_get_reachables),
7184         (debug_element), (rechain_group), (group_migrate_connected),
7185         (gst_opt_scheduler_pad_unlink):
7186         Do not try to migrate decoupled elements to a new group since
7187         they are not added to groups.
7188
7189 2004-07-08  Benjamin Otte  <otte@gnome.org>
7190
7191         * gst/gstelement.c: (gst_element_error_func):
7192           make reentrant (= allow removing elements in error handler)
7193
7194 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7195
7196         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7197         (gst_pad_send_event), (gst_pad_call_chain_function):
7198           events sent to elements below PAUSED cannot be handled, so
7199           don't try to
7200
7201 2004-07-08  Wim Taymans  <wim@fluendo.com>
7202
7203         * gst/schedulers/gstoptimalscheduler.c:
7204         (chain_recursively_migrate_group), (create_group),
7205         (schedule_group), (gst_opt_scheduler_pad_link),
7206         (group_elements_set_visited), (element_get_reachables_func),
7207         (element_get_reachables), (group_can_reach_group), (debug_element),
7208         (rechain_group), (group_migrate_connected),
7209         (gst_opt_scheduler_pad_unlink):
7210         * testsuite/schedulers/Makefile.am:
7211         Implemented group splitting and rechaining.
7212         Fixes 143777 and 143777-2 in the testsuite.
7213
7214 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7215
7216         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7217           extra debugging
7218         * gst/gstevent.h:
7219         * gst/gstinfo.c: (gst_debug_log_default):
7220           print time nicely.  add thread pointer until someone figures out
7221           a completely portable way of getting at thread id's.
7222         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7223         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7224         (gst_pad_call_chain_function):
7225           extra debugging
7226         * gst/schedulers/gstoptimalscheduler.c:
7227         (get_group_schedule_function), (loop_group_schedule_function),
7228         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7229         (pad_clear_queued), (gst_opt_scheduler_iterate):
7230           rename BUFPEN and friends to DATAPEN since that's what they are.
7231
7232 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7233
7234         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7235         * gst/gstbuffer.h:
7236         * gst/gstpad.c:
7237           cleanups and debugging
7238
7239 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7240
7241         * configure.ac:
7242         * gst/gstvalue.c: (gst_value_compare_enum),
7243         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7244         (gst_value_can_compare), (gst_value_compare):
7245         * testsuite/Makefile.am:
7246         * testsuite/enumcaps/Makefile.am:
7247         * testsuite/enumcaps/enumcaps.c:
7248           Fix enum serialization, deserialization, comparison in caps, add
7249           a test to ensure that this continues working in the future.
7250
7251 2004-07-06  David Schleef  <ds@schleef.org>
7252
7253         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7254         Fix memleak.
7255
7256 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7257
7258         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7259         * gst/gstplugin.h:
7260         * gst/registries/gstxmlregistry.c:
7261         (plugin_times_older_than_recurse), (plugin_times_older_than),
7262         (gst_xml_registry_parse_padtemplate):
7263           only rebuild registry when actual plugins have a newer time than
7264           the registry.  Fixes #145520
7265
7266 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7267
7268         * docs/manual/manual.xml:
7269         * docs/manual/win32.xml:
7270           add chapter on win32 building.  fixes #142422
7271
7272 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7273
7274         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7275
7276         * gst/autoplug/gstspider.c: (gst_spider_init),
7277         (gst_spider_dispose):
7278           fix spider memleaks.  fixes #137863
7279
7280 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7281
7282         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7283
7284         * gst/schedulers/gstoptimalscheduler.c:
7285         (gst_opt_scheduler_pad_unlink):
7286           fix SIGBUS error, fixes #145338
7287
7288 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7289
7290         * gst/gstobject.c: (gst_object_replace):
7291         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7292         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7293           clean up clock lifecycle.  Fixes #109831
7294
7295 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7296
7297         * po/LINGUAS:
7298         * po/cs.po:
7299           added Czech translation (Miloslav Trmac)
7300
7301 2004-07-04  David Schleef  <ds@schleef.org>
7302
7303         * tools/Makefile.am:
7304         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7305
7306 2004-07-04  David Schleef  <ds@schleef.org>
7307
7308         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7309
7310 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7311
7312         * gst/gstbin.c: (gst_bin_restore_thyself):
7313           chain to parent restore so the bins get restored correctly
7314           in the editor
7315
7316 2004-07-03  David Schleef  <ds@schleef.org>
7317
7318         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7319         Actually do something in these functions, like before the big
7320         caps change.  (bug #145137)
7321
7322 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7323
7324         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7325         (gst_element_get_compatible_pad_filtered):
7326         * gst/gstthread.c: (gst_thread_main_loop):
7327           more debugging
7328
7329 2004-07-02  David Schleef  <ds@schleef.org>
7330
7331         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7332         * gst/gstobject.h:
7333         * gst/gstparse.h:
7334         * gst/gsttrace.h:
7335         * gst/gstxml.h:
7336
7337 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7338
7339         * gst/gstpad.c: (gst_pad_check_schedulers),
7340         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7341         (gst_pad_link_prepare):
7342           revert until testsuite is fixed
7343
7344 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7345
7346         * testsuite/Makefile.am:
7347         * testsuite/caps/filtercaps.c: (main):
7348         * testsuite/clock/clock1.c: (main):
7349         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7350           fix some more tests
7351
7352 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7353
7354         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7355         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7356         * testsuite/cleanup/cleanup4.c: (main):
7357           fix testsuite
7358
7359 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7360
7361         * libs/gst/control/control.c:
7362         * libs/gst/control/dparam.c:
7363         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7364         * libs/gst/control/dparammanager.c:
7365         * libs/gst/control/dparammanager.h:
7366         * testsuite/dynparams/Makefile.am:
7367         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7368         (gst_dptest_change_state), (gst_dptest_chain), (main):
7369           fix testcase for dparams
7370           add debugging category
7371
7372 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7373
7374         * testsuite/Rules:
7375           change path
7376
7377 2004-07-02  Benjamin Otte  <otte@gnome.org>
7378
7379         * tests/.cvsignore:
7380         * tests/Makefile.am:
7381         * tests/mass_elements.c: (gst_get_current_time), (main):
7382           add simple benchmark to test various speeds of fakesrc ! identity !
7383           identity ! ... ! fakesink.
7384           Usage: mass_elements [num_identities] [num_buffers]
7385           If not specified they default to 1000.
7386
7387 2004-07-02  Benjamin Otte  <otte@gnome.org>
7388
7389         * gst/gstpad.c: (gst_pad_check_schedulers),
7390         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7391         (gst_pad_link_prepare):
7392           check that pads that get linked belong to the same manager. The old
7393           code allowed linking elements before putting them into bins, so it
7394           worked to link them and then put them in different threads, which
7395           lead to weird behaviour.
7396           Since this effectively disallows linking elements before putting
7397           them in a bin, some applications might not work after this and error
7398           out. If these applications are too critical, we might need to revert
7399           that patch. Please test this before the next release...
7400
7401 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7402
7403         * gst/gstpad.c: (gst_pad_get_caps):
7404           throw an error if the getcaps function does not return a subset of
7405           the template caps.
7406         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7407           make disconts without position info an error in debugging
7408         * tests/spidey_bench.c: (handoff), (main):
7409           don't count first try when averaging
7410
7411 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7412
7413         * gst/gstplugin.c: (gst_plugin_load_file):
7414           figure out problem with dynamic test
7415
7416 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7417
7418         * docs/gst/Makefile.am:
7419           fix docs build
7420
7421 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7422
7423         * po/POTFILES.in:
7424         * po/af.po:
7425         * po/az.po:
7426         * po/en_GB.po:
7427         * po/fr.po:
7428         * po/nl.po:
7429         * po/sr.po:
7430         * po/sv.po:
7431         * po/tr.po:
7432         * po/uk.po:
7433         * tools/gst-register.c: (plugin_added_func), (main):
7434           i18n-ize -register, fix plural
7435
7436 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7437
7438         * gst/elements/gstidentity.c: (gst_identity_class_init),
7439         (gst_identity_init), (gst_identity_chain),
7440         (gst_identity_set_property), (gst_identity_get_property):
7441         * gst/elements/gstidentity.h:
7442           check for perfect stream
7443
7444 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7445
7446         * gst/elements/gstidentity.c: (gst_identity_chain):
7447           print offset_end
7448
7449 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7450
7451         * docs/gst/Makefile.am:
7452         * docs/gst/gstreamer-docs.sgml:
7453           doc fixes
7454
7455 2004-06-24  David Schleef  <ds@schleef.org>
7456
7457         * autogen.sh:  Remove call to env, since the buildbot isn't
7458         broken anymore.
7459
7460 2004-06-24  Wim Taymans  <wim@fluendo.com>
7461
7462         * gst/elements/Makefile.am:
7463         * gst/elements/gstelements.c:
7464         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7465         (gst_multifdsink_class_init), (gst_multifdsink_init),
7466         (gst_multifdsink_add), (gst_multifdsink_remove),
7467         (gst_multifdsink_clear), (gst_multifdsink_chain),
7468         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7469         * gst/elements/gstmultifdsink.h:
7470         Added an element that writes to multiple filedescriptors at once.
7471
7472 2004-06-24  Benjamin Otte  <otte@gnome.org>
7473
7474         * gst/parse/grammar.y:
7475           don't try to link elements before they have been added to bins
7476
7477 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7478
7479         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7480         (gst_file_pad_get_length):
7481         * libs/gst/bytestream/filepad.h:
7482           add 2 new functions
7483
7484 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7485
7486         * docs/gst/gstreamer-sections.txt:
7487         remove from docs, the define that Benjamin removed from gstelement.h
7488
7489 2004-06-22  Benjamin Otte  <otte@gnome.org>
7490
7491         * gst/gstelement.h:
7492           remove define that referenced a nonexisting GstElement struct member
7493
7494 2004-06-20  Benjamin Otte  <otte@gnome.org>
7495
7496         * gst/gstdata.c: (gst_data_is_writable):
7497           whoops, return values were wrong, so writable data was marked as
7498           non-writable and vice versa. (fixes #143953, spotted by Francis
7499           Labonte)
7500           Shows how rarely we need to copy data ;)
7501
7502 2004-06-20  Benjamin Otte  <otte@gnome.org>
7503
7504         * testsuite/schedulers/.cvsignore:
7505         * testsuite/schedulers/Makefile.am:
7506         * testsuite/schedulers/143777-2.c: (main):
7507           add test for opt breakage in bug #143777
7508
7509 2004-06-20  Benjamin Otte  <otte@gnome.org>
7510
7511         * gst/gstpad.c: (gst_pad_call_chain_function):
7512           check for if we were unlinked while inside the chainfunction (fixes
7513           entrygthread having issues with #143777)
7514         * testsuite/schedulers/143777.c: (main):
7515         * testsuite/schedulers/Makefile.am:
7516           add a test for that fix
7517
7518 2004-06-20  Benjamin Otte  <otte@gnome.org>
7519
7520         * gst/gstvalue.c: (gst_value_set_int_range):
7521           test that start is smaller then end
7522         * libs/gst/bytestream/Makefile.am:
7523         * libs/gst/bytestream/filepad.c: 
7524         * libs/gst/bytestream/filepad.h:
7525           add GstFilePad - a pad that behaves like a FILE*
7526         * testsuite/bytestream/.cvsignore:
7527         * testsuite/bytestream/Makefile.am:
7528         * testsuite/bytestream/filepadsink.c: 
7529           test for the GstFilePad
7530
7531 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7532
7533         * gst/elements/gstidentity.c: (gst_identity_class_init),
7534         (gst_identity_init), (gst_identity_set_clock),
7535         (gst_identity_chain), (gst_identity_set_property),
7536         (gst_identity_get_property):
7537         * gst/elements/gstidentity.h:
7538         * gst/gstclock.c: (gst_clock_id_wait):
7539           add a "sync" property to sync to the clock
7540
7541 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7542
7543         * gst/gstelementfactory.c: (gst_element_factory_create):
7544           make the freakin "elementfactory bla has no type" message more
7545           useful. So we actually can do something when someone shows up
7546           complaining about it.
7547
7548 2004-06-15  Johan Dahlin  <johan@gnome.org>
7549
7550         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7551         found. This matches the old behavior better. Thanks to Thomas for
7552         pointing out.
7553
7554 2004-06-14  David Schleef  <ds@schleef.org>
7555
7556         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7557         -fomit-frame-pointer.  Appears to generate correct code in
7558         other cases as well.
7559
7560 2004-06-14  Johan Dahlin  <johan@gnome.org>
7561
7562         * tools/gst-inspect.c (main): Add two new command line options: -a
7563         to print all elements and -n to print the name on each line. Also
7564         fix some error reporting.
7565         (main): Simplify, remove -n and always print names if -a is specified
7566
7567 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7568
7569         * win32/gstconfig.h:
7570         * win32/GSTreamer.vcproj:
7571         * win32/Makefile:
7572         * gst/gstconfig.h.in:
7573         * gst/gst.h:
7574         * gst/gstbin.h:
7575         * gst/gstelement.h:
7576         * gst/gstevent.h:
7577         * gst/gstobject.h:
7578         * gst/gstpad.h:
7579         * docs/gst/gstreamer-sections.txt:
7580         * docs/gst/tmpl/gstconfig.sgml:
7581           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7582
7583 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7584         * docs/gst/gstreamer-sections.txt:
7585         * docs/gst/tmpl/gstconfig.sgml:
7586         Add the GSTREAMER_EXPORT macro to the docs
7587
7588 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7589
7590         * tools/gst-compprep.c: (handle_xmlerror), (main):
7591         Add a check for the version that introduced SetStructuredError to fix
7592         the build on FC1
7593
7594 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7595
7596         * win32/msvc71.sln:
7597         * win32/testsuite/:
7598           prepare to compile the testsuite with MSVC
7599
7600 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7601
7602         * docs/manual/win32.xml:
7603           attempt to transform the Win32 README into an XML doc
7604
7605 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7606
7607         * gst/gst.c:
7608         * gst/gstbin.*:
7609         * gst/config.h.in:
7610         * gst/gstelement.*:
7611         * gst/gstevent.h:
7612         * gst/gstobject.*:
7613         * gst/gstpad.h:
7614         * tools/gst-register.c:
7615         * win32/gstreamer.def:
7616           extern symbols are now exported for the Windows DLL
7617
7618 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7619
7620         * gst/gstinfo.h:
7621           fix a problem to enable/disable DEBUG under MSVC
7622
7623 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7624
7625         * win32/:
7626           enable more debug code in DEBUG build
7627
7628 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7629
7630         * win32/config.h:
7631         * gst/gst-i18n-app.h:
7632           enable NLS under Windows
7633
7634 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7635         * tools/gst-compprep.c: (handle_xmlerror), (main):
7636           Make an error that baffled me a bit clearer
7637
7638 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7639
7640         * gst/gstqueue.c:
7641           don't use g_queue_get_length () because it's 2.4, use ->length
7642
7643 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7644
7645         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7646
7647         * tools/gst-inspect.c: (print_signal_info):
7648           don't free random data twice. (fixes #144185)
7649
7650 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7651
7652         * gst/gstqueue.c:
7653         * gst/gstqueue.h:
7654           fix removing from the wrong queue on event timeout
7655           fix disposing of the event queue by casting correctly
7656           add mutexes for handling the event queue
7657           someone was sleeping when fixing queue last time around :)
7658
7659 2004-06-10  Johan Dahlin  <johan@gnome.org>
7660
7661         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7662         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7663
7664 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7665
7666         * docs/random/gdp:
7667         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7668         * libs/gst/dataprotocol/dataprotocol.c:
7669         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7670         (gst_dp_buffer_from_header):
7671         * libs/gst/dataprotocol/dataprotocol.h:
7672         * libs/gst/dataprotocol/dp-private.h:
7673           rev version to 0.1, add buffer flags and copy them
7674
7675 2004-06-09  Johan Dahlin  <johan@gnome.org>
7676
7677         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
7678         the flags from the buffer we're copying.
7679
7680 2004-06-09  Wim Taymans  <wim@fluendo.com>
7681
7682         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
7683         * gst/elements/gstidentity.c: (gst_identity_init),
7684         (gst_identity_chain):
7685         Print more buffer info in fakesink.
7686         Make identity output similar to fakesink.
7687
7688 2004-06-07  Daniel Gazard  <dany42@free.fr>
7689
7690         reviewed by Benjamin Otte  <otte@gnome.org>
7691
7692         * configure.ac:
7693           fix cross compiling not working. (fixes #143741)
7694
7695 2004-06-07  Benjamin Otte  <otte@gnome.org>
7696
7697         * gst/gstelement.c: (gst_element_set_time_delay):
7698           add failure check
7699         * gst/gstinfo.h:
7700           put brackets around macro arguments of GST_TIME_ARGS, add note to
7701           move it to correct header in 0.9
7702
7703 2004-06-07  Benjamin Otte  <otte@gnome.org>
7704
7705         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
7706         (gst_file_index_load), (_file_index_id_save_entries),
7707         (gst_file_index_commit), (gst_file_index_add_association),
7708         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
7709         (gst_file_index_plugin_init):
7710           make debugging use a default category
7711
7712 2004-06-06  David Moore  <dcm@acm.org>
7713
7714         reviewed by Benjamin Otte  <otte@gnome.org>
7715
7716         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
7717         (gst_fdsrc_change_state):
7718           reset offset counter when going READY => PAUSED. (fixes #142903)
7719
7720 2004-06-06  ed@catmur.co.uk
7721
7722         reviewed by Benjamin Otte  <otte@gnome.org>
7723
7724         * gst/registries/gstxmlregistry.c:
7725         (gst_xml_registry_rebuild_recurse):
7726           don't rely on g_dir_open to figure out if a file is a directory, use
7727           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
7728           directories. (fixes #142850)
7729
7730 2004-06-06  Benjamin Otte  <otte@gnome.org>
7731
7732         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
7733           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
7734         * libs/gst/bytestream/adapter.c:
7735         * libs/gst/bytestream/adapter.h:
7736           fix copyright in header and typo in debugging category name
7737
7738 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7739
7740         * configure.ac:
7741           bump nano to cvs
7742
7743 === release 0.8.3 ===
7744
7745 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7746
7747         * configure.ac:
7748           update libtool versioning
7749           do a new release
7750         * docs/gst/tmpl/gstelement.sgml:
7751         * docs/gst/tmpl/gsttypes.sgml:
7752         * gst/gstinfo.c: (_gst_debug_init):
7753           put back GST_CAT_DATAFLOW to fix API breakage
7754
7755 2004-06-04  David Schleef  <ds@schleef.org>
7756
7757         * autogen.sh: Add a temporary 'env' to test buildbot problems.
7758
7759 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7760
7761         * configure.ac:
7762           bump nano to cvs
7763
7764 === release 0.8.2 ===
7765
7766 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7767
7768         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
7769           check GST_DEBUG environment variable which is parsed the same way
7770           as --gst-debug=
7771
7772 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7773
7774         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
7775                             gstmd5sink.c gstshaper.c gsttee.c
7776                             gsttypefindelement.c
7777         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
7778
7779           - removing trailing commas at end of enums
7780             it is correct C99 code but C90 compilers would complain
7781             (AIX, Forte, ...)
7782             ('should' fix #143290, at least partially)
7783
7784 2004-05-27  Wim Taymans  <wim@fluendo.com>
7785
7786         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
7787         (chain_group_set_enabled), (create_group), (add_to_group),
7788         (merge_groups), (setup_group_scheduler), (group_elements),
7789         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
7790         Don't try to follow the pad connections with other groups
7791         when a loop based element is added to the scheduler because
7792         the bin will inform the scheduler about the pad links a little
7793         later.
7794
7795 2004-05-27  Wim Taymans  <wim@fluendo.com>
7796
7797         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7798         (remove_from_chain), (chain_group_set_enabled),
7799         (setup_group_scheduler), (group_element_set_enabled),
7800         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
7801         (gst_opt_scheduler_show):
7802         Elements without a group can do a state change as well, just wait
7803         with the setup of the scheduling function when it is added to a
7804         chain.
7805
7806 2004-05-27  Wim Taymans  <wim@fluendo.com>
7807
7808         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7809         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
7810         (merge_groups), (setup_group_scheduler),
7811         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
7812         (gst_opt_scheduler_show):
7813         Fixes to maintain internal consistency of the scheduler data
7814         structures. 
7815          - adding an enabled group to a chain should increment the
7816            number of enabled elements in that chain.
7817          - removing an enabled group from a chain could disable the
7818            chain.
7819          - removing a disabled group from a chain could enable the
7820            chain.
7821          - add g_assert when internal inconsistency is detected.
7822          - adding an element to a group could increase the number of
7823            links this group has with other groups.
7824          - merging two groups also merges the chains.
7825          - also show group links in the _show method.
7826            
7827
7828 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7829
7830         * gst/gstcaps.c: (gst_caps_structure_simplify):
7831           don't print error messages when there is no error
7832         * gst/gstvalue.c: (gst_value_compare_int_range):
7833           compare the second value, too
7834         * testsuite/caps/Makefile.am:
7835         * testsuite/caps/random.c: (assert_on_error), (main):
7836           add tests to make sure the two things above are checked for
7837
7838 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
7839
7840         * configure.ac:
7841         * libs/gst/dataprotocol/Makefile.am:
7842         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
7843         * libs/gst/dataprotocol/dataprotocol.h:
7844           wrap header in GST_ENABLE_NEW.  make code use it
7845
7846 2004-05-23  Johan Dahlin  <johan@gnome.org>
7847
7848         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
7849         so verbose and print GstElement signal names all the time.
7850
7851 2004-05-22  David Schleef  <ds@schleef.org>
7852
7853         * gst/registries/gstxmlregistry.c:
7854         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
7855         (bug #142957)
7856
7857 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
7858
7859         * configure.ac:
7860           scrub cflags for glib2 so gcc doesn't complain when glib is in
7861           /usr/local
7862
7863 2004-05-21  Johan Dahlin  <johan@gnome.org>
7864
7865         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
7866         __GNUC__, patch from Brian Cameron, fixes bug #142804
7867
7868 2004-05-20  David Schleef  <ds@schleef.org>
7869
7870         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
7871         comparison code.  (bug #142819)
7872
7873 2004-05-20  Wim Taymans  <wim@fluendo.com>
7874
7875         * gst/gstbuffer.c: (gst_buffer_default_copy):
7876         * gst/gstbuffer.h:
7877         Added Comment to a flag.
7878         copy relevant flags in _buffer_copy.
7879
7880 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7881
7882         reviewed by: Wim Taymans <wim at fluendo dot com>
7883
7884         * gst/gstbuffer.h:
7885           add GST_BUFFER_IN_CAPS buffer flag
7886         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7887         (gst_structure_parse_any_list), (gst_structure_parse_list),
7888         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
7889         * gst/gstvalue.c: (gst_value_serialize_any_list),
7890         (gst_value_transform_any_list_string),
7891         (gst_value_list_prepend_value), (gst_value_list_append_value),
7892         (gst_value_list_get_size), (gst_value_list_get_value),
7893         (gst_value_transform_list_string),
7894         (gst_value_transform_fixed_list_string),
7895         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
7896         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
7897         (_gst_value_initialize):
7898         * gst/gstvalue.h:
7899           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
7900           < , > as a format.
7901         * testsuite/caps/string-conversions.c: (main):
7902           add regression tests for < >
7903
7904 2004-05-20  Johan Dahlin  <johan@gnome.org>
7905
7906         * docs/gst/Makefile.am (all-local): Re-add
7907
7908 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7909
7910         * docs/gst/Makefile.am:
7911         * docs/gst/gstreamer-docs.sgml:
7912         * docs/libs/Makefile.am:
7913         * docs/libs/gstreamer-libs-docs.sgml:
7914           fix distcheck issues
7915
7916 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7917
7918         * libs/gst/dataprotocol/Makefile.am:
7919           add to autotest
7920
7921 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7922
7923         * libs/gst/dataprotocol/Makefile.am:
7924         * libs/gst/dataprotocol/dataprotocol.c:
7925         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7926         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
7927         * libs/gst/dataprotocol/dp-private.h:
7928           use GST macros to read/write fixed length ints
7929           add some more asserts
7930
7931 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7932
7933         * docs/libs/gstreamer-libs-docs.sgml:
7934         * docs/libs/gstreamer-libs-sections.txt:
7935           remove idct and putbits
7936         * configure.ac:
7937         * docs/libs/tmpl/gstdataprotocol.sgml:
7938         * libs/gst/Makefile.am:
7939         * libs/gst/dataprotocol/Makefile.am:
7940         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
7941         (buffer_test), (caps_test), (event_test), (main):
7942         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
7943         (gst_dp_dump_byte_array), (gst_dp_init),
7944         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
7945         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7946         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
7947         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
7948         (gst_dp_validate_header), (gst_dp_validate_payload),
7949         (gst_dp_validate_packet), (plugin_init):
7950         * libs/gst/dataprotocol/dataprotocol.h:
7951         * libs/gst/dataprotocol/dp-private.h:
7952           add dataprotocol
7953
7954 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7955
7956         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
7957           fix int variable deserialization and add a helper so we can actually
7958           debug this.
7959
7960 2004-05-18  David Schleef  <ds@schleef.org>
7961
7962         * testsuite/debug/commandline.c: (main): Call ./commandline, not
7963           argv[0].  Calling yourself is probably not the best way to
7964           construct a test like this, btw.
7965
7966 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7967
7968         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
7969           don't claim to be more intelligent than a scheduler when the
7970           scheduler claims the pipeline is stopped
7971         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
7972         (safe_cothread_destroy),
7973         (gst_entry_scheduler_remove_all_cothreads),
7974         (gst_entry_scheduler_reset), (_remove_cothread),
7975         (gst_entry_scheduler_state_transition):
7976           hold off cothread destruction if we're not in main cothread
7977         * configure.ac:
7978         * testsuite/Makefile.am:
7979           add new test dir
7980         * testsuite/schedulers/.cvsignore:
7981         * testsuite/schedulers/Makefile.am:
7982           add tests
7983         * testsuite/schedulers/relink.c: (cb_handoff), (main):
7984           check relinking and adding/removing elements from a running pipeline
7985         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
7986           check unlinking in a running pipeline
7987         * testsuite/schedulers/unref.c: (cb_handoff), (main):
7988           check unreffing a running pipeline
7989         * testsuite/schedulers/useless_iteration.c: (main):
7990           check iterating a pipeline that contains running threads works
7991
7992 2004-05-18  David Schleef  <ds@schleef.org>
7993
7994         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
7995           is false.
7996
7997 2004-05-18  Wim Taymans  <wim@fluendo.com>
7998
7999         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8000         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8001         Fixed an error introduced with patch for 1.63. When setting
8002         a get based element as the entry point in a group, make sure
8003         to mark the group as GET based.
8004
8005 2004-05-18  Wim Taymans  <wim@fluendo.com>
8006
8007         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8008         (setup_group_scheduler), (loop_group_schedule_function),
8009         (gst_opt_scheduler_pad_link):
8010         Added some more debug info and fixed a bug where the group
8011         type was set to LOOP but it was in fact unknown.
8012
8013 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8014
8015         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8016           make resetting scheduler work twice in a row
8017
8018 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8019
8020         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8021         (CREATE_USERIALIZATION), (_gst_value_initialize),
8022         (gst_value_compare_float), (gst_value_serialize_float),
8023         (gst_value_deserialize_float), (gst_value_compare_enum),
8024         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8025           add serialization and comparison functions for long, int64, enum and
8026           float values
8027         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8028           use best serialization function in type hierarchy instead of only a
8029           matching one. This is required for enums to work.
8030         * gst/parse/grammar.y:
8031           use gst_caps_deserialize
8032         * testsuite/parse/Makefile.am:
8033           parse1 now works
8034         * testsuite/parse/parse1.c: (main):
8035           remove aggregator check, aggregator is broken, this test works now
8036           but fails because of bug #138012
8037         * testsuite/parse/parse2.c: (main):
8038           s/xvideosink/xvimagesink - this test looks a lot like we should
8039           disable it
8040
8041 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8042
8043         * gst/gstelement.c: (gst_element_class_init):
8044           whoops, store the signal id correctly
8045         * gst/schedulers/gstbasicscheduler.c:
8046         (gst_basic_scheduler_chain_wrapper):
8047           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8048           chain function isn't linked
8049
8050 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8051         * configure.ac:
8052         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8053         support until we decide where the flags should be used
8054         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8055         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8056         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8057         Output refused caps in the debug info
8058
8059 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8060
8061         * gst/elements/gstidentity.c: (gst_identity_chain):
8062           add duration debug
8063         * gst/gstinfo.c: (gst_debug_log_default):
8064           add timestamp
8065
8066 2004-05-13  Benjamin Otte  <otte@gnome.org>
8067
8068         * gst/gstpipeline.c: (gst_pipeline_dispose),
8069         (gst_pipeline_change_state):
8070           call gst_scheduler_reset on dispose (fixes #141416)
8071
8072 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8073
8074         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8075           compute mapsize correctly
8076         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8077           use correct datatypes when calling a varargs function
8078         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8079           push a DISCONT event as first thing
8080         * gst/gst_private.h:
8081         * gst/gstinfo.c: (_gst_debug_init):
8082           remove GST_DATAFLOW debugging category
8083         * gst/gstbin.c: (gst_bin_iterate):
8084           use GST_SCHEDULING category
8085         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8086         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8087         (gst_pad_call_get_function):
8088           add GST_DATAFLOW to easily track flow of buffers or events.
8089         * gst/gstqueue.c: (gst_queue_get_type),
8090         (gst_queue_handle_pending_events), (gst_queue_chain),
8091         (gst_queue_get), (gst_queue_handle_src_event):
8092           use own static debugging category GST_DATAFLOW for dataflow,
8093           use DEBUG category for showing which path events go, use LOG
8094           category for buffers.
8095
8096 2004-05-10  David Schleef  <ds@schleef.org>
8097
8098         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8099
8100 2004-05-10  David Schleef  <ds@schleef.org>
8101
8102         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8103         symbols, because otherwise we don't know what they are.  Thanks,
8104         the GStreamer team.
8105         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8106
8107 2004-05-10  David Schleef  <ds@schleef.org>
8108
8109         (from Steve Lhomme)
8110         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8111         are deleted.  Fix.
8112         * win32/Makefile.inspect:
8113         * win32/Makefile.launch:
8114         * win32/Makefile.register:
8115
8116 2004-05-10  David Schleef  <ds@schleef.org>
8117
8118         * gst/gstinfo.h: Add missing inline function.
8119         * gst/gsttrace.c: add include
8120         * gst/parse/grammar.y: remove unused code
8121         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8122         more portable.
8123         * tools/gst-register.c: wrap unistd.h
8124         
8125         More additions/fixes from Steve for the MSVC build.
8126         * win32/GStreamer.vcproj:
8127         * win32/Makefile:
8128         * win32/Makefile.inspect:
8129         * win32/Makefile.launch:
8130         * win32/Makefile.register:
8131         * win32/README.txt:
8132         * win32/gst-inspect.vcproj:
8133         * win32/gst-launch.vcproj:
8134         * win32/gst-register.vcproj:
8135         * win32/gstbytestream.def:
8136         * win32/gstbytestream.vcproj:
8137         * win32/gstconfig.h:
8138         * win32/gstelements.def:
8139         * win32/gstelements.vcproj:
8140         * win32/gstenumtypes.c:
8141         * win32/gstenumtypes.h:
8142         * win32/gstoptimalscheduler.def:
8143         * win32/gstoptimalscheduler.vcproj:
8144         * win32/gstreamer.def:
8145         * win32/gstspider.def:
8146         * win32/gstspider.vcproj:
8147         * win32/gstversion.h:
8148         * win32/msvc71.sln:
8149
8150 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8151
8152         * gst/gstelement.c: (gst_element_class_init),
8153         (gst_element_no_more_pads):
8154         * gst/gstelement.h:
8155           add gst_element_no_more_pads and the "no-more-pads" signal
8156
8157 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8158
8159         * gst/gstregistry.c: (gst_registry_add_plugin):
8160           refuse to add plugins when a plugin with same name is already
8161           registered. Fixes a bunch of "How to remove plugins?" issues.
8162           May lead to other problems though, let's test
8163
8164 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8165
8166         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8167         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8168         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8169
8170 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8171
8172         * tests/Makefile.am: fix am16 issue
8173
8174 2004-05-09  Benjamin Otte  <otte@gnome.org>
8175
8176         * libs/gst/bytestream/Makefile.am:
8177           we should indeed add .c files to makefiles or they won't be built
8178           (d'oh)
8179
8180 2004-05-08  Benjamin Otte  <otte@gnome.org>
8181
8182         * gst/gstpad.c: (gst_pad_proxy_fixate):
8183           really reduce the set of caps
8184
8185 2004-05-08  Benjamin Otte  <otte@gnome.org>
8186
8187         * tests/Makefile.am:
8188         * tests/spidey_bench.c: (handoff), (main):
8189           add benchmark to test how long spider needs to create a pipeline
8190
8191 2004-05-08  Benjamin Otte  <otte@gnome.org>
8192
8193         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8194           mark links as unengaged when unnegotiating instead of deactivating.
8195           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8196
8197 2004-05-08  Benjamin Otte  <otte@gnome.org>
8198
8199         * docs/manual/helloworld.xml:
8200           s/audiosink/osssink (patch by Patrick Guimond)
8201
8202 2004-05-07  David Schleef  <ds@schleef.org>
8203
8204         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8205         since it contains important stuff.
8206
8207 2004-05-07  David Schleef  <ds@schleef.org>
8208
8209         * testsuite/caps/caps.c: (test3), (main): A check for appending
8210         ANY caps.
8211
8212 2004-05-07  David Schleef  <ds@schleef.org>
8213
8214         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8215         which may contain commas.  Fixes detection of -Wa,-mregnames
8216
8217 2004-05-06  David Schleef  <ds@schleef.org>
8218
8219         Changes to handle compilers that don't have variadic macro
8220         support.  In particular, glib headers define some inlines
8221         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8222         builds.
8223         * gst/Makefile.am:
8224         * gst/cothreads.c:
8225         * gst/elements/gstfdsink.c:
8226         * gst/elements/gstfdsrc.c:
8227         * gst/elements/gstfilesink.c:
8228         * gst/elements/gstfilesrc.c:
8229         * gst/gst_private.h:
8230         * gst/gstatomic.c:
8231         * gst/gstcaps.c: (gst_caps_append):
8232         * gst/gstcpu.c: (gst_cpuid_i386):
8233         * gst/gstelement.c:
8234         * gst/gsterror.c:
8235         * gst/gstfilter.c:
8236         * gst/gstinfo.h:
8237         * gst/gstprobe.c:
8238         * gst/gstquery.c:
8239         * gst/gstregistry.c:
8240         * gst/gststructure.c:
8241         * gst/gsttaginterface.c:
8242         * gst/gsttrace.c: (gst_trace_new):
8243         * gst/gsttrashstack.c:
8244         * gst/gsturi.c:
8245         * gst/gstvalue.c:
8246         * gst/parse/grammar.y:
8247         * gst/parse/parse.l:
8248         * tools/gst-inspect.c: (main):
8249         * tools/gst-launch.c: (main):
8250         * tools/gst-xmlinspect.c: (PUT_STRING):
8251
8252 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8253
8254         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8255         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8256         * gst/elements/gstfilesrc.h:
8257           send NEW_MEDIA events correctly
8258         * gst/elements/gsttypefindelement.c: (start_typefinding),
8259         (gst_type_find_element_handle_event):
8260           restart typefinding when we get a NEW_MEDIA event
8261         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8262         (gst_bin_dispose):
8263           don't die when someone removes elements in callbacks
8264         * gst/gstelement.c: (gst_element_change_state):
8265           improve debugging
8266         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8267           we need a NEW_MEDIA event to engage a link
8268         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8269           don't g_print debugging stuff
8270         * testsuite/caps/simplify.c: (check_caps):
8271
8272 2004-05-04  Benjamin Otte  <otte@gnome.org>
8273
8274         * gst/parse/grammar.y:
8275           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8276
8277 2004-05-04  Benjamin Otte  <otte@gnome.org>
8278
8279         * testsuite/caps/renegotiate.c: (main):
8280           improve output in error case
8281
8282 2004-05-04  Benjamin Otte  <otte@gnome.org>
8283
8284         * gst/parse/grammar.y:
8285           fix assert to not trigger when there's no error argument
8286         * gst/parse/parse.l:
8287           fix definition of caps to allow more than two structures
8288         * testsuite/caps/Makefile.am:
8289         * testsuite/caps/renegotiate.c: (main):
8290           it's sinesrc and works in that case
8291
8292 2004-05-04  Wim Taymans  <wim@fluendo.com>
8293
8294         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8295         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8296         when removing an element from a group, we always need to
8297         decrement the link count that this group had with other 
8298         groups through the element.
8299         added an extra assert to catch inconsistencies when decrementing
8300         the link count.
8301
8302 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8303
8304         * configure.ac:
8305         * docs/gst/Makefile.am:
8306         * docs/gst/gstreamer-sections.txt:
8307         * docs/gst/tmpl/gstcompat.sgml:
8308         * examples/appreader/Makefile.am:
8309         * examples/cutter/Makefile.am:
8310         * examples/events/Makefile.am:
8311         * examples/helloworld/Makefile.am:
8312         * examples/helloworld2/Makefile.am:
8313         * examples/launch/Makefile.am:
8314         * examples/manual/Makefile.am:
8315         * examples/mixer/Makefile.am:
8316         * examples/pingpong/Makefile.am:
8317         * examples/plugins/Makefile.am:
8318         * examples/queue/Makefile.am:
8319         * examples/queue2/Makefile.am:
8320         * examples/queue3/Makefile.am:
8321         * examples/queue4/Makefile.am:
8322         * examples/retag/Makefile.am:
8323         * examples/thread/Makefile.am:
8324         * examples/typefind/Makefile.am:
8325         * examples/xml/Makefile.am:
8326         * gst/Makefile.am:
8327         * gst/autoplug/Makefile.am:
8328         * gst/elements/Makefile.am:
8329         * gst/gstcompat.h:
8330         * gst/indexers/Makefile.am:
8331         * gst/parse/Makefile.am:
8332         * gst/registries/Makefile.am:
8333         * gst/schedulers/Makefile.am:
8334         * libs/gst/bytestream/Makefile.am:
8335         * libs/gst/control/Makefile.am:
8336         * libs/gst/getbits/Makefile.am:
8337         * po/af.po:
8338         * po/az.po:
8339         * po/en_GB.po:
8340         * po/fr.po:
8341         * po/nl.po:
8342         * po/sr.po:
8343         * po/sv.po:
8344         * po/tr.po:
8345         * po/uk.po:
8346         * tests/Makefile.am:
8347         * tests/bufspeed/Makefile.am:
8348         * tests/instantiate/Makefile.am:
8349         * tests/memchunk/Makefile.am:
8350         * tests/muxing/Makefile.am:
8351         * tests/negotiation/Makefile.am:
8352         * tests/probes/Makefile.am:
8353         * tests/sched/Makefile.am:
8354         * tests/seeking/Makefile.am:
8355         * tests/threadstate/Makefile.am:
8356         * testsuite/caps/Makefile.am:
8357         * testsuite/cleanup/Makefile.am:
8358         * testsuite/dlopen/Makefile.am:
8359         * testsuite/dynparams/Makefile.am:
8360         * testsuite/plugin/Makefile.am:
8361         * testsuite/states/Makefile.am:
8362         * tools/Makefile.am:
8363           reorganize compile/link flags to be consistent
8364           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8365
8366 2004-05-04  David Schleef  <ds@schleef.org>
8367
8368         The "once more, with feeling" check-in.
8369         * testsuite/caps/Makefile.am: dist caps_strings
8370         * testsuite/caps/renegotiate.c: (main): This test triggers a
8371           segfault in the core.  Marking as failing.
8372
8373 2004-05-03  David Schleef  <ds@schleef.org>
8374
8375         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8376           by the build bots.
8377         * testsuite/caps/renegotiate.c: (main): Same.
8378
8379 2004-05-03  David Schleef  <ds@schleef.org>
8380
8381         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8382
8383 2004-05-03  David Schleef  <ds@schleef.org>
8384
8385         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8386           variable to find our source file.
8387
8388 2004-05-03  David Schleef  <ds@schleef.org>
8389
8390         * configure.ac:  Link plugins with libgstreamer and dependent
8391           libraries
8392         * testsuite/caps/Makefile.am:
8393         * testsuite/caps/caps_strings:
8394         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8395           through a file of caps strings and test each one
8396
8397 2004-05-04  Benjamin Otte  <otte@gnome.org>
8398
8399         * libs/gst/bytestream/Makefile.am:
8400         * libs/gst/bytestream/adapter.c: 
8401         * libs/gst/bytestream/adapter.h:
8402           add GstAdapter, similar to bytestream, but doesn't require ugly event
8403           handling or uglier loopbased elements
8404
8405 2004-05-03  David Schleef  <ds@schleef.org>
8406
8407         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8408         * testsuite/caps/erathostenes.c:
8409         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8410
8411 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8412
8413         * docs/pwg/pwg.xml:
8414           remove hardcoded stylesheet path (duh)
8415         * docs/random/release:
8416         * docs/gst/gstreamer-sections.txt:
8417         * gst/Makefile.am:
8418         * gst/gst.h:
8419         * gst/gst_private.h:
8420         * gst/gstcaps.c:
8421         * gst/gstevent.c:
8422         * gst/gstformat.c:
8423         * gst/gstinfo.c:
8424         * gst/gstinfo.h:
8425         * gst/gstinterface.c:
8426         * gst/gstmemchunk.c:
8427         * gst/gstprobe.c:
8428         * gst/gstquery.c:
8429         * gst/gstregistry.c:
8430         * gst/gstregistrypool.c:
8431         * gst/gststructure.c:
8432         * gst/gsttaginterface.c:
8433         * gst/gstthread.c:
8434         * gst/gsttrace.c:
8435         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8436         * gst/gsturi.c:
8437         * gst/gstvalue.c:
8438           deprecate gst_info; remove gstlog.h
8439    
8440
8441 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8442
8443         * Makefile.am:
8444         * po/en_GB.po:
8445         * po/sv.po:
8446         * po/uk.po:
8447           updated translations
8448
8449 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8450
8451         * gst/gstbin.c: (gst_bin_dispose):
8452           better debugging
8453
8454 2004-05-03  Johan Dahlin  <johan@gnome.org>
8455
8456         * gst/schedulers/gstoptimalscheduler.c
8457         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8458         really is a GstElement. Avoids critical when running gst-launch -v
8459         and a oggdemux/decoding pipeline.
8460
8461 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8462
8463         * docs/gst/tmpl/gstpipeline.sgml :
8464         * docs/manual/elements-api.xml :
8465                 doc fix by Patrick Guimond (Protector) from devel ML
8466                 reviewed by ronald
8467
8468 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8469
8470         * docs/gst/Makefile.am :
8471         * docs/libs/Makefile.am :
8472                 apply a patch from Arwed v. Merkatz so that gtk-doc
8473                 generated docs install (same for .devhelp file)
8474                 (fixes part 1 of #138836)
8475
8476 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8477
8478         * docs/faq/dependencies.xml: typo
8479         * docs/faq/getting.xml :
8480             - fix download URL for new gstreamer site
8481             - hide sf.net download page as latest version aren't there
8482             - fix apt URLs
8483             - fill "get via CVS" paragraph (link to dev page on the site)
8484         * docs/faq/general.xml:
8485             hide status tables as they no more exists
8486             change case on plugins license file to reflect reality
8487         * docs/faq/troubleshooting.xml:
8488             remove the wiki question/answer as there is no more wiki
8489
8490 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8491
8492         * gst/gsterror.h:
8493           include the headers needed for declarations used in this header
8494
8495 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8496
8497         * docs/random/uraeus/gstreamer_and_midi.txt :
8498           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8499           (fixes #132288)
8500
8501 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8502
8503         reviewed by Benjamin Otte  <otte@gnome.org>
8504
8505         * gst/schedulers/gthread-cothreads.h:
8506           free allocated data for main cothread, too when destroying context
8507           (fixes #141417)
8508
8509 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8510
8511         * docs/manual/goals.xml : remove duplicated paragraph at end 
8512         of doc page (fixes #141448)
8513
8514 2004-04-29  David Schleef  <ds@schleef.org>
8515
8516         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8517         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8518
8519 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8520
8521         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8522           fix property
8523         * gst/gstcaps.c:
8524           fix doc string
8525         * po/POTFILES.in:
8526           rename typefind source file
8527
8528 2004-04-28  David Schleef  <ds@schleef.org>
8529
8530         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8531         * win32/GStreamer.vcproj:
8532         * win32/Makefile:
8533         * win32/config.h:
8534         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8535         (_trewinddir), (_ttelldir), (_tseekdir):
8536         * win32/dirent.h:
8537         * win32/gst-inspect.vcproj:
8538         * win32/gst-launch.vcproj:
8539         * win32/gst-register.vcproj:
8540         * win32/gstbytestream.vcproj:
8541         * win32/gstelements.vcproj:
8542         * win32/gstoptimalscheduler.vcproj:
8543         * win32/gstspider.vcproj:
8544         * win32/gtchar.h:
8545         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8546         * win32/mman.h:
8547         * win32/mman.inl:
8548         * win32/msvc71.sln:
8549
8550 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8551
8552         * gst/gst.c: (init_post):
8553         * gst/gstinfo.c:
8554           remove useless _gst_progname stuff
8555         * tools/gst-inspect.c: (print_field), (print_caps):
8556           improve caps output
8557
8558 2004-04-28  David Schleef  <ds@schleef.org>
8559
8560         Disable parsing of a lot of files that aren't part of the
8561         exported API.  Move corresponding template files to old/,
8562         waiting for removal when they don't contain anything
8563         interesting.
8564         * docs/gst/Makefile.am:
8565         * docs/gst/gstreamer-sections.txt:
8566         * docs/gst/tmpl/cothreads.sgml:
8567         * docs/gst/tmpl/cothreads_compat.sgml:
8568         * docs/gst/tmpl/gettext.sgml:
8569         * docs/gst/tmpl/gobject2gtk.sgml:
8570         * docs/gst/tmpl/grammar.tab.sgml:
8571         * docs/gst/tmpl/gst-i18n-app.sgml:
8572         * docs/gst/tmpl/gst-i18n-lib.sgml:
8573         * docs/gst/tmpl/gst_private.sgml:
8574         * docs/gst/tmpl/gstaggregator.sgml:
8575         * docs/gst/tmpl/gstarch.sgml:
8576         * docs/gst/tmpl/gstatomic_impl.sgml:
8577         * docs/gst/tmpl/gstbufferstore.sgml:
8578         * docs/gst/tmpl/gstdata_private.sgml:
8579         * docs/gst/tmpl/gstdisksink.sgml:
8580         * docs/gst/tmpl/gstdisksrc.sgml:
8581         * docs/gst/tmpl/gstelementfactory.sgml:
8582         * docs/gst/tmpl/gstextratypes.sgml:
8583         * docs/gst/tmpl/gstfakesink.sgml:
8584         * docs/gst/tmpl/gstfakesrc.sgml:
8585         * docs/gst/tmpl/gstfdsink.sgml:
8586         * docs/gst/tmpl/gstfdsrc.sgml:
8587         * docs/gst/tmpl/gstfilesink.sgml:
8588         * docs/gst/tmpl/gstfilesrc.sgml:
8589         * docs/gst/tmpl/gsthttpsrc.sgml:
8590         * docs/gst/tmpl/gstidentity.sgml:
8591         * docs/gst/tmpl/gstindexfactory.sgml:
8592         * docs/gst/tmpl/gstmarshal.sgml:
8593         * docs/gst/tmpl/gstmd5sink.sgml:
8594         * docs/gst/tmpl/gstmultidisksrc.sgml:
8595         * docs/gst/tmpl/gstmultifilesrc.sgml:
8596         * docs/gst/tmpl/gstpadtemplate.sgml:
8597         * docs/gst/tmpl/gstpipefilter.sgml:
8598         * docs/gst/tmpl/gstschedulerfactory.sgml:
8599         * docs/gst/tmpl/gstsearchfuncs.sgml:
8600         * docs/gst/tmpl/gstshaper.sgml:
8601         * docs/gst/tmpl/gstspider.sgml:
8602         * docs/gst/tmpl/gstspideridentity.sgml:
8603         * docs/gst/tmpl/gststatistics.sgml:
8604         * docs/gst/tmpl/gsttee.sgml:
8605         * docs/gst/tmpl/gsttimecache.sgml:
8606         * docs/gst/tmpl/gsttypefind.sgml:
8607         * docs/gst/tmpl/gsttypefindfactory.sgml:
8608         * docs/gst/tmpl/gstxmlregistry.sgml:
8609         * docs/gst/tmpl/gthread-cothreads.sgml:
8610         * docs/gst/tmpl/old/cothreads.sgml:
8611         * docs/gst/tmpl/old/cothreads_compat.sgml:
8612         * docs/gst/tmpl/old/gettext.sgml:
8613         * docs/gst/tmpl/old/gobject2gtk.sgml:
8614         * docs/gst/tmpl/old/grammar.tab.sgml:
8615         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8616         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8617         * docs/gst/tmpl/old/gst_private.sgml:
8618         * docs/gst/tmpl/old/gstaggregator.sgml:
8619         * docs/gst/tmpl/old/gstarch.sgml:
8620         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8621         * docs/gst/tmpl/old/gstbufferstore.sgml:
8622         * docs/gst/tmpl/old/gstdata_private.sgml:
8623         * docs/gst/tmpl/old/gstdisksink.sgml:
8624         * docs/gst/tmpl/old/gstdisksrc.sgml:
8625         * docs/gst/tmpl/old/gstelementfactory.sgml:
8626         * docs/gst/tmpl/old/gstextratypes.sgml:
8627         * docs/gst/tmpl/old/gstfakesink.sgml:
8628         * docs/gst/tmpl/old/gstfakesrc.sgml:
8629         * docs/gst/tmpl/old/gstfdsink.sgml:
8630         * docs/gst/tmpl/old/gstfdsrc.sgml:
8631         * docs/gst/tmpl/old/gstfilesink.sgml:
8632         * docs/gst/tmpl/old/gstfilesrc.sgml:
8633         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8634         * docs/gst/tmpl/old/gstidentity.sgml:
8635         * docs/gst/tmpl/old/gstindexfactory.sgml:
8636         * docs/gst/tmpl/old/gstmarshal.sgml:
8637         * docs/gst/tmpl/old/gstmd5sink.sgml:
8638         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8639         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8640         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8641         * docs/gst/tmpl/old/gstpipefilter.sgml:
8642         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8643         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8644         * docs/gst/tmpl/old/gstshaper.sgml:
8645         * docs/gst/tmpl/old/gstspider.sgml:
8646         * docs/gst/tmpl/old/gstspideridentity.sgml:
8647         * docs/gst/tmpl/old/gststatistics.sgml:
8648         * docs/gst/tmpl/old/gsttee.sgml:
8649         * docs/gst/tmpl/old/gsttimecache.sgml:
8650         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8651         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8652         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8653         * docs/gst/tmpl/old/types.sgml:
8654         * docs/gst/tmpl/types.sgml:
8655
8656         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8657         gtkdoc-scan doesn't like files with the same name in different
8658         directories.
8659         * gst/elements/Makefile.am:
8660         * gst/elements/gstelements.c:
8661         * gst/elements/gsttypefind.c: 
8662         * gst/elements/gsttypefind.h:
8663         * gst/elements/gsttypefindelement.c:
8664         * gst/elements/gsttypefindelement.h:
8665
8666 2004-04-28  David Schleef  <ds@schleef.org>
8667
8668         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8669         patch (bug #141317):
8670         * gst/gst-i18n-lib.h: Allow disabling gettext.
8671         * gst/gstatomic_impl.h: disable warning when it's dumb.
8672         * gst/gstclock.c: fix include
8673         * gst/gstcompat.h: fix variadic macro
8674         * gst/gstinfo.c: fix include
8675         * gst/gstmacros.h: add defines for inlines on MSVC
8676         * gst/gstplugin.c: fix includes
8677         * gst/gstregistry.c: fix includes
8678         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
8679         * gst/gstsystemclock.c: fix include
8680         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
8681         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
8682         * gst/registries/gstxmlregistry.c:
8683         (gst_xml_registry_parse_element_factory): fix use of non-portable
8684         functions
8685         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
8686         * libs/gst/control/dparammanager.h: same
8687
8688 2004-04-28  David Schleef  <ds@schleef.org>
8689
8690         Move a bunch of unused files to old/ with names that are
8691         not case-insensitive-unique.  These files still contain some
8692         useful information that needs to be merged into gstbin.sgml,
8693         etc., so they shouldn't be deleted yet.
8694         * docs/gst/tmpl/GstBin.sgml:
8695         * docs/gst/tmpl/GstBuffer.sgml:
8696         * docs/gst/tmpl/GstCaps.sgml:
8697         * docs/gst/tmpl/GstClock.sgml:
8698         * docs/gst/tmpl/GstCompat.sgml:
8699         * docs/gst/tmpl/GstData.sgml:
8700         * docs/gst/tmpl/GstElement.sgml:
8701         * docs/gst/tmpl/GstEvent.sgml:
8702         * docs/gst/tmpl/GstIndex.sgml:
8703         * docs/gst/tmpl/GstStructure.sgml:
8704         * docs/gst/tmpl/GstTag.sgml:
8705         * docs/gst/tmpl/old/GstBin.sgml:
8706         * docs/gst/tmpl/old/GstBuffer.sgml:
8707         * docs/gst/tmpl/old/GstCaps.sgml:
8708         * docs/gst/tmpl/old/GstClock.sgml:
8709         * docs/gst/tmpl/old/GstCompat.sgml:
8710         * docs/gst/tmpl/old/GstData.sgml:
8711         * docs/gst/tmpl/old/GstElement.sgml:
8712         * docs/gst/tmpl/old/GstEvent.sgml:
8713         * docs/gst/tmpl/old/GstIndex.sgml:
8714         * docs/gst/tmpl/old/GstStructure.sgml:
8715         * docs/gst/tmpl/old/GstTag.sgml:
8716
8717 2004-04-28  David Schleef  <ds@schleef.org>
8718
8719         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
8720         (gst_caps_append), (gst_caps_append_structure),
8721         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
8722         (gst_caps_set_simple), (gst_caps_set_simple_valist),
8723         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
8724         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
8725         (gst_caps_intersect), (gst_caps_normalize),
8726         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
8727         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
8728         * gst/gstcaps.h: use GST_IS_CAPS().
8729
8730 2004-04-26  David Schleef  <ds@schleef.org>
8731
8732         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
8733         assembly.  gcc doesn't handle it correctly. (bug #141083)
8734         * gst/gsttrashstack.h: same
8735
8736 2004-04-25  Benjamin Otte  <otte@gnome.org>
8737
8738         * gst/gstelement.c: (gst_element_change_state):
8739           fix assertion to do an int comparison
8740
8741 2004-04-25  Benjamin Otte  <otte@gnome.org>
8742
8743         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8744           better debugging output on error
8745
8746 2004-04-25  Benjamin Otte  <otte@gnome.org>
8747
8748         * gst/gstcaps.c: (gst_caps_subtract):
8749           fix memleak
8750
8751 2004-04-23  Benjamin Otte  <otte@gnome.org>
8752
8753         * gst/gstvalue.c: (gst_value_compare_buffer),
8754         (_gst_value_initialize):
8755           add comparison function for buffers
8756
8757 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8758
8759         * docs/pwg/pwg.xml:
8760           Just found out that this so-called "ima-wav" format is really
8761           just "dvi adpcm" (according to the MS WAV documentation). So
8762           renaming it. We didn't use it yet anyway.
8763
8764 2004-04-23  Benjamin Otte  <otte@gnome.org>
8765
8766         * gst/gstcaps.c: (gst_caps_is_always_compatible):
8767           call gst_caps_is_subset
8768
8769 2004-04-23  Benjamin Otte  <otte@gnome.org>
8770
8771         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
8772         (gst_caps_is_subset):
8773           add documentation
8774
8775 2004-04-23  Benjamin Otte  <otte@gnome.org>
8776           
8777         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
8778         (gst_caps_structure_subtract), (gst_caps_subtract),
8779         (gst_caps_structure_figure_out_union),
8780         (gst_caps_structure_simplify), (gst_caps_do_simplify):
8781           fix simplifying and subtracting not working correctly with optional
8782           properties
8783           solve assorted problems that make it now simplify ebven more
8784         * docs/gst/tmpl/gstcaps.sgml:
8785         * gst/gstcaps.h:
8786           make gst_caps_do_simplify return a bool to indicate if it simplified
8787         * testsuite/caps/simplify.c: (main):
8788           add more checks. The tests is quite a bit useless right now because
8789           the core is heavily simplifying itself.
8790         * testsuite/caps/caps.h:
8791           fix caps to contain all optional properties
8792
8793 2004-04-22  Benjamin Otte  <otte@gnome.org>
8794
8795         * docs/gst/tmpl/gstcaps.sgml:
8796         * docs/gst/tmpl/gstfilesrc.sgml:
8797         * docs/gst/tmpl/gststructure.sgml:
8798         * docs/gst/tmpl/gstvalue.sgml:
8799           update for recent API changes
8800         * gst/gstcaps.c: (gst_caps_do_simplify):
8801           fix to stop trying with a freed structure
8802         * gst/gstpad.c: (gst_pad_link_fixate):
8803           simplify caps
8804         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
8805           remove C++ comment
8806         * gst/gstpad.h:
8807           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
8808         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8809         (gst_structure_to_string):
8810           keep the correct type when using lists of ranges
8811         * gst/gstvalue.c: (gst_value_list_prepend_value),
8812         (gst_value_list_append_value):
8813           copy the value before adding to the list (d'oh)
8814         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
8815         (gst_value_subtract_int_range_int_range):
8816           handle overflows correctly
8817         * gst/gstvalue.c: (gst_value_subtract_from_list):
8818           fix memleak
8819         * testsuite/caps/caps.h:
8820           add a caps that caused segfaults
8821
8822 2004-04-22  Benjamin Otte  <otte@gnome.org>
8823
8824         * testsuite/refcounting/pad.c: (main):
8825           fix test
8826
8827 2004-04-22  Benjamin Otte  <otte@gnome.org>
8828
8829         * gst/gstcaps.c: (gst_caps_subtract):
8830           allow subtracting ANY and EMPTY from ANY caps
8831
8832 2004-04-22  Benjamin Otte  <otte@gnome.org>
8833
8834         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
8835         (gst_caps_union):
8836           only simplify in functions that create new caps. Simplifying in
8837           gst_caps_append breaks tests.
8838
8839 2004-04-22  Benjamin Otte  <otte@gnome.org>
8840
8841         * gst/gstcaps.c: (gst_caps_structure_simplify):
8842           unset GValue after use
8843         * gst/gstcaps.c: (gst_caps_append), 
8844         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
8845           use gst_caps_simplify (reduces registry size by 30%)
8846         * gst/gstpad.c: (gst_pad_template_new):
8847           don't allow NULL caps
8848
8849 2004-04-22  Benjamin Otte  <otte@gnome.org>
8850
8851         * docs/gst/gstreamer-sections.txt:
8852           add gst_caps_do_simplify
8853         * gst/gstcaps.c:
8854           add documentation for gst_caps_do_simplify
8855         * gst/gstvalue.h:
8856           fix typo in gst_value_register_subtract_func declaration for gst-doc
8857
8858 2004-04-22  Benjamin Otte  <otte@gnome.org>
8859
8860         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8861           fix bug when converting from empty string.
8862         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
8863         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
8864           use gst_caps_new_empty to allocate a new caps. Only that function
8865           allocates memory for caps now.
8866         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
8867         (gst_caps_remove_structure):
8868           add ability to remove one structure (but not to header yet)
8869         * gst/gstcaps.c: (gst_caps_compare_structures),
8870         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
8871         (gst_caps_structure_simplify), (gst_caps_do_simplify),
8872         * gst/gstcaps.h:
8873           add gst_caps_do_simplify that tries to simplify a caps in place.
8874           Deprecate old gst_caps_simplify function.
8875         * testsuite/caps/caps.h:
8876           add caps.h containing a common set of caps to test against.
8877         * testsuite/caps/sets.c: (check_caps), (main):
8878           use it.
8879         * testsuite/caps/.cvsignore:
8880         * testsuite/caps/Makefile.am:
8881         * testsuite/caps/simplify.c: (check_caps), (main):
8882           add test to check correctness and efficency of caps simplification.
8883
8884 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
8885
8886         reviewed by Benjamin Otte  <otte@gnome.org>
8887
8888         * gst/gstparse.c: (_gst_parse_escape):
8889           Free the GString used in _gst_parse_escape()
8890
8891 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8892
8893         * gst/gstpad.c: (gst_pad_link_negotiate):
8894           refuse to link if the link is not possible
8895         * configure.ac:
8896         * testsuite/Makefile.am:
8897         * testsuite/negotiation/.cvsignore:
8898         * testsuite/negotiation/Makefile.am:
8899         * testsuite/negotiation/pad_link.c: (main):
8900           add test that checks the above behaviour
8901
8902 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8903
8904         * docs/gst/gstreamer-sections.txt:
8905           add newly added API
8906
8907 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8908
8909         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8910         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
8911         (gst_filesrc_open_file), (gst_filesrc_close_file),
8912         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
8913         * gst/elements/gstfilesrc.h:
8914           add support for non-regular files (#140734)
8915
8916 2004-04-21  Benjamin Otte  <otte@gnome.org>
8917
8918         * gst/gstpad.c: (gst_pad_link_fixate):
8919           add sophisticated error checking code to see if fixation functions
8920           did their fixation right
8921
8922 2004-04-21  Benjamin Otte  <otte@gnome.org>
8923
8924         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
8925           check for ANY caps before appending/unioning
8926         * gst/gstcaps.c: (gst_caps_is_subset),
8927         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
8928         (gst_caps_structure_subtract), (gst_caps_subtract):
8929         * gst/gstcaps.h:
8930           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
8931           the API. deprecate gst_caps_is_equal_fixed
8932         * gst/gstpad.c: (gst_pad_try_set_caps):
8933         * gst/gstqueue.c: (gst_queue_link):
8934           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
8935         * gst/gststructure.c: (gst_structure_get_name_id):
8936         * gst/gststructure.h:
8937           add function gst_structure_get_name_id
8938         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
8939         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
8940         (gst_value_subtract_int_range_int_range),
8941         (gst_value_subtract_double_double_range),
8942         (gst_value_subtract_double_range_double),
8943         (gst_value_subtract_double_range_double_range),
8944         (gst_value_subtract_from_list), (gst_value_subtract_list),
8945         (gst_value_can_intersect), (gst_value_subtract),
8946         (gst_value_can_subtract), (gst_value_register_subtract_func),
8947         (_gst_value_initialize):
8948         * gst/gstvalue.h:
8949           add support for subtracting values from each other. Note that
8950           subtracting means subtracting as in set theory. Required for caps
8951           stuff above.
8952         * testsuite/caps/.cvsignore:
8953         * testsuite/caps/Makefile.am:
8954         * testsuite/caps/erathostenes.c: (erathostenes), (main):
8955         * testsuite/caps/sets.c: (check_caps), (main):
8956         * testsuite/caps/subtract.c: (check_caps), (main):
8957           add tests for subtraction and equality code.
8958
8959 2004-04-20  David Schleef  <ds@schleef.org>
8960
8961         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
8962         * gst/indexers/Makefile.am:
8963         * gst/schedulers/Makefile.am:
8964         * libs/gst/bytestream/Makefile.am:
8965         * libs/gst/control/Makefile.am:
8966         * libs/gst/getbits/Makefile.am:
8967
8968 2004-04-20  David Schleef  <ds@schleef.org>
8969
8970         * common/as-libtool.mak: Fine-tune DLL building.
8971         * configure.ac: Link plugins against libgstreamer.  Define plugindir
8972         (like gst-plugins)
8973         * examples/plugins/Makefile.am: remove plugindir
8974         * gst/autoplug/Makefile.am: DLL building fixes
8975         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
8976         Windows.
8977         * gst/elements/gstelements.c: Conditionally disable pipefilter.
8978         * gst/indexers/Makefile.am: DLL building fixes
8979         * gst/schedulers/Makefile.am: DLL building fixes.
8980         * libs/gst/bytestream/Makefile.am: DLL building fixes.
8981         * libs/gst/control/Makefile.am: same
8982         * libs/gst/getbits/Makefile.am: same
8983         * testsuite/Makefile.am: New dlopen directory
8984         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
8985         when dlopened.
8986         * testsuite/dlopen/dlopen_gst.c: (main): same
8987         * testsuite/dlopen/loadgst.c: (do_test): same
8988
8989 2004-04-20  David Schleef  <ds@schleef.org>
8990
8991         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
8992         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
8993
8994 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8995
8996         * gst/gstelement.c: (gst_element_wait),
8997         (gst_element_set_time_delay), (gst_element_change_state):
8998           Use GST_TIME_*
8999
9000 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9001
9002         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9003         (gst_spider_identity_plug):
9004           improve debugging messages
9005         * gst/gstbin.c: (gst_bin_remove_func):
9006           make sure the state_change function is only called with simple state
9007           transitions
9008
9009 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9010
9011         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9012         (gst_fakesink_set_property), (gst_fakesink_chain):
9013         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9014         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9015         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9016         * gst/elements/gstidentity.c: (gst_identity_chain),
9017         (gst_identity_set_property):
9018         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9019         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9020           add warnings to _set_property for unknown arguments
9021           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9022
9023 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9024
9025         * Makefile.am:
9026         * docs/manuals.mak:
9027           add .po file download snippet
9028           fix a bug in the doc makefile
9029
9030 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9031
9032         * Makefile.am:
9033         * po/LINGUAS:
9034         * po/en_GB.po:
9035           Added en_GB translation (Gareth Owen)
9036
9037 2004-04-20  Johan Dahlin  <johan@gnome.org>
9038
9039         * gst/gstpad.c (_invent_event): Clean up
9040
9041 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9042
9043         * testsuite/caps/filtercaps.c: (main):
9044           fix test to test things correctly (caps are complicated)
9045
9046 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9047
9048         * testsuite/caps/Makefile.am:
9049         * testsuite/caps/filtercaps.c: (main):
9050           add test (that doesn't work right now, but should)
9051
9052 2004-04-19  David Schleef  <ds@schleef.org>
9053
9054         * configure.ac: Add test for allowing unaligned access.  Add define
9055         to put in gstconfig.h.
9056         * docs/gst/gstreamer-sections.txt: New symbols
9057         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9058         * docs/gst/tmpl/gstfilesrc.sgml:
9059         * docs/gst/tmpl/gstparse.sgml:
9060         * docs/gst/tmpl/gsttypes.sgml:
9061         * docs/gst/tmpl/gstutils.sgml:
9062         * docs/gst/tmpl/gstvalue.sgml:
9063         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9064         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9065         on most !i386/!powerpc architectures.  From Daniel Gazard
9066         <daniel.gazard@free.fr>.  (bug #140156)
9067         * po/af.po: Check in changes made by gettext.
9068         * po/az.po:
9069         * po/fr.po:
9070         * po/nl.po:
9071         * po/sr.po:
9072         * po/sv.po:
9073
9074 2004-04-20  Benjamin Otte  <otte@gnome.org>
9075
9076         * gst/schedulers/entryscheduler.c: 
9077         (gst_entry_scheduler_yield):
9078           refuse to yield when decoupled elements insist on doing that.
9079           At least it's better than crashing
9080
9081 2004-04-19  David Schleef  <ds@schleef.org>
9082
9083         * docs/libs/Makefile.am: Change sinclude to include
9084         * docs/gst/Makefile.am: same
9085         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9086
9087 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9088
9089         * po/LINGUAS:
9090         * po/uk.po:
9091           Added Ukrainian translation (Maxim V. Dziumanenko)
9092
9093 2004-04-19  Johan Dahlin  <johan@gnome.org>
9094
9095         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9096         checking here, do it before calling the function.
9097         Clean up, use for loops instead of while loops while iterating
9098         over lists.
9099
9100         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9101         in debug message.
9102         (gst_spider_create_and_plug): Improve debug message.
9103         General: Replace while loops which iterates over GLists with for
9104         loops. Which are much cleaner, improves readability, especially
9105         for gst_spider_identity_plug
9106
9107         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9108         fixes bug 140477
9109
9110 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9111
9112         * po/LINGUAS:
9113         * po/tr.po:
9114           Added Turkish translation (Baris Cicek)
9115
9116 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9117
9118         * docs/faq/troubleshooting.xml:
9119           Mention gst-register in the FAQ (fixes 139045).
9120
9121 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9122
9123         * docs/gst/gstreamer-sections.txt:
9124
9125 2004-04-17  Benjamin Otte  <otte@gnome.org>
9126
9127         * gst/gstelement.c: (gst_element_dispose):
9128           simplify
9129         * gst/gstpad.c: (gst_pad_call_chain_function):
9130           don't create loads of events due to bad macro usage
9131
9132 2004-04-16  David Schleef  <ds@schleef.org>
9133
9134         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9135         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9136         * gst/gstvalue.c: (gst_value_serialize_buffer),
9137         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9138         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9139         to indicate types that are fixed wrt caps or not.  Switching to
9140         this function fixes (bug #140298).
9141         * gst/gstvalue.h:
9142
9143 2004-04-16  David Schleef  <ds@schleef.org>
9144
9145         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9146         for GST_UNALIGNED_ACESS, since we essentially know which archs
9147         are ok.
9148
9149 2004-04-17  Benjamin Otte  <otte@gnome.org>
9150
9151         * docs/gst/Makefile.am:
9152           ignore gst/parse directory when building docs (fixes #140205)
9153
9154 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9155
9156         * testsuite/refcounting/mem.c: (vmsize):
9157           do error checking
9158
9159 2004-04-16  Johan Dahlin  <johan@gnome.org>
9160
9161         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9162         and gst_pad_call_get_function.
9163
9164 2004-04-15  David Schleef  <ds@schleef.org>
9165
9166         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9167         checks if we can access unaligned memory.
9168         * configure.ac: Use it.
9169
9170 2004-04-16  Benjamin Otte  <otte@gnome.org>
9171
9172         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9173         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9174         * gst/elements/gstfilesrc.h:
9175           s/seek_happened/need_discont/ and require discont before sending any
9176           data
9177
9178 2004-04-15  David Schleef  <ds@schleef.org>
9179
9180         * gst/gstvalue.c: (gst_value_serialize_buffer),
9181         (gst_value_deserialize_buffer), (_gst_value_initialize):
9182         Register these types as fundamental types. (bug #140015)
9183
9184 2004-04-16  Benjamin Otte  <otte@gnome.org>
9185
9186         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9187         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9188         (gst_pad_pull):
9189           implement enforcing discont events before buffers are passed. This
9190           allows state changes of only some elements and later correctly going
9191           on where they left off (or in short: you can now set audio sinks to
9192           NULL to release the device when the pipeline is paused)
9193         * gst/gstpad.c: (gst_pad_call_chain_function),
9194         (gst_pad_call_get_function):
9195         * gst/gstpad.h:
9196           add gst_pad_call_chain_function and gst_pad_call_get_function for
9197           scheduler interaction. They are required because of the changes
9198           above.
9199         * gst/schedulers/entryscheduler.c: (get_buffer),
9200         (gst_entry_scheduler_chain_wrapper),
9201         (gst_entry_scheduler_get_wrapper),
9202         (gst_entry_scheduler_state_transition),
9203         (gst_entry_scheduler_pad_link):
9204         * gst/schedulers/gstbasicscheduler.c:
9205         (gst_basic_scheduler_chain_wrapper),
9206         (gst_basic_scheduler_src_wrapper),
9207         (gst_basic_scheduler_chainhandler_proxy),
9208         (gst_basic_scheduler_gethandler_proxy),
9209         (gst_basic_scheduler_cothreaded_chain),
9210         (gst_basic_scheduler_chain_elements):
9211         * gst/schedulers/gstoptimalscheduler.c:
9212         (get_group_schedule_function), (pad_clear_queued),
9213         (gst_opt_scheduler_pad_link):
9214           use the new functions instead of calling get/chain-functions
9215           directly.
9216
9217 2004-04-15  David Schleef  <ds@schleef.org>
9218
9219         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9220         * docs/gst/tmpl/gstinfo.sgml: same
9221         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9222         gtk-doc put here.
9223         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9224         * examples/queue/queue.c: (main):  We iterate pipelines, not
9225         bins.  (bug #139996)
9226
9227 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9228
9229         * docs/pwg/advanced-types.xml:
9230           Add MS RLE support. Also document Qt RLE although I have no sample
9231           files for that yet. And document an extra property for ADPCM.
9232
9233 2004-04-15  David Schleef  <ds@schleef.org>
9234
9235         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9236         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9237         Windows.
9238
9239 2004-04-15  David Schleef  <ds@schleef.org>
9240
9241         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9242         symbol names to not conflict with new gstinfo.h symbols.
9243         * gst/gstinfo.h: Add inline functions for all those crazy
9244         compilers that don't know how to handle variadic macros (MSVC).
9245
9246 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9247
9248         * configure.ac: bump nano to 1
9249
9250 === release 0.8.1 ===
9251
9252 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9253
9254         * NEWS:
9255         * RELEASE:
9256         * configure.ac:
9257           releasing 0.8.1, "Snow Brigade"
9258
9259 2004-04-14  David Schleef  <ds@schleef.org>
9260
9261         * testsuite/Makefile.am: define tests_ignore
9262         * testsuite/Rules: Added new tests_ignore, which get compiled,
9263         but not run (generally because they're inconsistent or have
9264         heisenbugs).  Now we can ensure all the .c files compile in
9265         testsuite/.
9266         * testsuite/bins/Makefile.am: define tests_ignore
9267         * testsuite/bytestream/Makefile.am:
9268         * testsuite/caps/Makefile.am:
9269         * testsuite/clock/Makefile.am:
9270         * testsuite/debug/Makefile.am:
9271         * testsuite/debug/global.c: (gst_debug_log_one),
9272         (gst_debug_log_two): Fix compilation problem.
9273         * testsuite/dynparams/Makefile.am:
9274         * testsuite/elements/Makefile.am:
9275         * testsuite/ghostpads/Makefile.am:
9276         * testsuite/indexers/Makefile.am:
9277         * testsuite/parse/Makefile.am:
9278         * testsuite/plugin/Makefile.am:
9279         * testsuite/refcounting/Makefile.am:
9280         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9281         results, because it's not calculated correctly.
9282         * testsuite/refcounting/pad.c: (main): same
9283         * testsuite/states/Makefile.am:
9284         * testsuite/tags/Makefile.am:
9285         * testsuite/threads/Makefile.am:
9286
9287 2004-04-14  David Schleef  <ds@schleef.org>
9288
9289         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9290         generating bad code around the cpu detection asm code.
9291
9292 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9293
9294         * tools/gst-inspect.c: (print_element_info):
9295           print numeric version of rank as well, since we added some - 1
9296           rank values to elements
9297
9298 2004-04-13  David Schleef  <ds@schleef.org>
9299
9300         * configure.ac:  Disable various code when compiling for MinGW.
9301         * gst/elements/Makefile.am:
9302         * gst/elements/gstelements.c:
9303         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9304         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9305         * gst/registries/gstxmlregistry.c: (make_dir):
9306
9307 2004-04-13  David Schleef  <ds@schleef.org>
9308
9309         * gst/Makefile.am:
9310         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9311         assembly.
9312         * gst/gstcpuid_i386.s: remove
9313
9314 2004-04-13  David Schleef  <ds@schleef.org>
9315
9316         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9317         seems to think it needs to be done.
9318         * docs/gst/tmpl/gstfakesink.sgml:
9319         * docs/gst/tmpl/gstfakesrc.sgml:
9320         * docs/gst/tmpl/gstfdsink.sgml:
9321         * docs/gst/tmpl/gstfdsrc.sgml:
9322         * docs/gst/tmpl/gstfilesink.sgml:
9323         * docs/gst/tmpl/gstfilesrc.sgml:
9324         * docs/gst/tmpl/gstidentity.sgml:
9325         * docs/gst/tmpl/gstmd5sink.sgml:
9326         * docs/gst/tmpl/gstmultifilesrc.sgml:
9327         * docs/gst/tmpl/gstpipefilter.sgml:
9328         * docs/gst/tmpl/gstshaper.sgml:
9329         * docs/gst/tmpl/gstspider.sgml:
9330         * docs/gst/tmpl/gstspideridentity.sgml:
9331         * docs/gst/tmpl/gststatistics.sgml:
9332         * docs/gst/tmpl/gsttee.sgml:
9333         * docs/gst/tmpl/gsttypefind.sgml:
9334         * docs/gst/tmpl/gstutils.sgml:
9335
9336 2004-04-13  David Schleef  <ds@schleef.org>
9337
9338         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9339         and to build DLLs on Windows.
9340         * gst/Makefile.am:
9341         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9342         (gst_filesrc_open_file):
9343         * gst/schedulers/Makefile.am:
9344
9345 2004-04-13  David Schleef  <ds@schleef.org>
9346
9347         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9348         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9349         fixating lists.
9350
9351 2004-04-12  David Schleef  <ds@schleef.org>
9352
9353         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9354         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9355         to using it.
9356         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9357         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9358         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9359         * gst/gststructure.c: (gst_structure_set_valist),
9360         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9361         support for buffers.
9362         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9363         intended to be const.
9364         * gst/gsttag.h: same
9365         * gst/gstvalue.c: (gst_value_serialize_buffer),
9366         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9367         to (de)serialize buffers.
9368         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9369         * testsuite/caps/string-conversions.c: (main):
9370         * testsuite/caps/value_serialize.c: add new test
9371
9372 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9373
9374         * docs/pwg/advanced-types.xml:
9375           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9376
9377 2004-04-11  Benjamin Otte  <otte@gnome.org>
9378
9379         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9380           rename categories to basic_*
9381         * gst/schedulers/gstbasicscheduler.c: 
9382         (gst_basic_scheduler_chain_wrapper),
9383         (gst_basic_scheduler_chainhandler_proxy),
9384         (gst_basic_scheduler_gethandler_proxy),
9385         (gst_basic_scheduler_eventhandler_proxy):
9386           debugging category fixes - put common stuff in log category
9387         * gst/schedulers/gstbasicscheduler.c: 
9388         (gst_basic_scheduler_chain_elements):
9389           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9390           active and linking two active chains
9391
9392 2004-04-10  Benjamin Otte  <otte@gnome.org>
9393
9394         * docs/pwg/intro-preface.xml:
9395           fix dead links and remove reference to Wiki
9396
9397 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9398
9399         * gst/schedulers/gstbasicscheduler.c:
9400           make sure we can switch back to the main function if we're still in
9401           the main function (supposed to fix #139617)
9402         * gst/schedulers/gthread-cothreads.h:
9403           don't throw an error when switching to the same cothread
9404
9405 2004-04-09  Benjamin Otte  <otte@gnome.org>
9406
9407         * gst/gstbin.c: (gst_bin_get_type):
9408         * gst/gstclock.c: (gst_clock_get_type):
9409         * gst/gstindex.c: (gst_index_get_type):
9410         * gst/gstobject.c: (gst_object_get_type),
9411         (gst_signal_object_get_type):
9412         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9413         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9414         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9415         * gst/gstqueue.c: (gst_queue_get_type):
9416         * gst/gstregistry.c: (gst_registry_get_type):
9417         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9418         * gst/gstthread.c: (gst_thread_get_type):
9419           don't use memchunks for these objects, use malloc instead
9420
9421 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9422
9423         * docs/gst/.cvsignore:
9424         * docs/gst/Makefile.am:
9425         * docs/gst/gstreamer-sections.txt:
9426         * docs/gst/tmpl/gstaggregator.sgml:
9427         * docs/gst/tmpl/gstbuffer.sgml:
9428         * docs/gst/tmpl/gstclock.sgml:
9429         * docs/gst/tmpl/gstelement.sgml:
9430         * docs/gst/tmpl/gstfakesink.sgml:
9431         * docs/gst/tmpl/gstfakesrc.sgml:
9432         * docs/gst/tmpl/gstfdsink.sgml:
9433         * docs/gst/tmpl/gstfdsrc.sgml:
9434         * docs/gst/tmpl/gstfilesink.sgml:
9435         * docs/gst/tmpl/gstfilesrc.sgml:
9436         * docs/gst/tmpl/gstidentity.sgml:
9437         * docs/gst/tmpl/gstindex.sgml:
9438         * docs/gst/tmpl/gstinfo.sgml:
9439         * docs/gst/tmpl/gstmd5sink.sgml:
9440         * docs/gst/tmpl/gstmultifilesrc.sgml:
9441         * docs/gst/tmpl/gstpad.sgml:
9442         * docs/gst/tmpl/gstpipefilter.sgml:
9443         * docs/gst/tmpl/gstpipeline.sgml:
9444         * docs/gst/tmpl/gstpluginfeature.sgml:
9445         * docs/gst/tmpl/gstqueue.sgml:
9446         * docs/gst/tmpl/gstregistry.sgml:
9447         * docs/gst/tmpl/gstscheduler.sgml:
9448         * docs/gst/tmpl/gstshaper.sgml:
9449         * docs/gst/tmpl/gstspider.sgml:
9450         * docs/gst/tmpl/gstspideridentity.sgml:
9451         * docs/gst/tmpl/gststatistics.sgml:
9452         * docs/gst/tmpl/gstsystemclock.sgml:
9453         * docs/gst/tmpl/gsttee.sgml:
9454         * docs/gst/tmpl/gstthread.sgml:
9455         * docs/gst/tmpl/gsttypefind.sgml:
9456         * docs/gst/tmpl/gstutils.sgml:
9457           further doc build fixes
9458
9459 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9460
9461         * docs/gst/Makefile.am:
9462           make docs exit on scanning problems
9463           fix nonsrcdir build issues
9464         * docs/gst/gstreamer-sections.txt:
9465           adding stuff from -unused
9466         * gst/gstqueue.h:
9467           create GstQueueSize
9468         * gst/schedulers/cothreads_compat.h:
9469           fix cothread warnings
9470
9471 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9472
9473         * docs/gst/gstreamer-sections.txt:
9474           remove defines deprecated by Benjamin
9475
9476 2004-04-07  Benjamin Otte  <otte@gnome.org>
9477
9478         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9479           when the buffer is complete, don't check if other buffers are needed
9480         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9481           check that the offset is >0 so we don't try to read before the
9482           beginning of the file
9483         * gst/gstpad.c: (gst_pad_set_pad_template):
9484           sink the template, so we don't end up with 130k pad templates
9485
9486 2004-04-06  Benjamin Otte  <otte@gnome.org>
9487
9488         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9489           don't ref the element, adding already reffed it. And we didn't unref
9490           it later anyway... (huge memleak when you used many spider elements)
9491         * gst/gstelement.c: (gst_element_base_class_finalize):
9492         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9493         (gst_element_register):
9494         * gst/gsturi.c: (gst_element_make_from_uri):
9495           use gst_object_(un)ref instead of g_object(un)ref
9496
9497 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9498
9499         * gst/gstbuffer.h:
9500           remove macro that wouldn't work anymore because struct member has
9501           been removed.
9502         * gst/schedulers/entryscheduler.c: (schedule_forward):
9503           fix segfault for unconnected pads
9504         
9505 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9506
9507         reviewed by David Schleef <ds@schleef.org>
9508
9509         * gst/gstinfo.h:
9510           *_FORMAT modifiers should require putting a % in front of them for
9511           consistency reasons.
9512
9513 2004-04-05  Colin Walters  <walters@redhat.com>
9514
9515         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9516         space.
9517
9518 2004-04-05  Benjamin Otte  <otte@gnome.org>
9519
9520         * configure.ac:
9521         * gst/Makefile.am:
9522         * gst/gst_private.h:
9523         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9524           add support for detecting if GStreamer runs inside valgrind.
9525           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9526           print a big message in valgrind that GStreamer has detected it's
9527           running inside and might now use different code.
9528         * gst/gstmemchunk.c: (populate), (free_area),
9529         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9530         (gst_mem_chunk_free):
9531           flag memchunks for valgrind, so it can detect leaking of chunks.
9532           This allows detecting leaks of GstBuffer and GstEvent correctly
9533           inside valgrind.
9534
9535 2004-04-05  David Schleef  <ds@schleef.org>
9536
9537         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9538           jensgr@gmx.net (Jens Granseuer)
9539
9540 2004-04-05  David Schleef  <ds@schleef.org>
9541
9542         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9543         (gst_buffer_default_free), (gst_buffer_default_copy),
9544         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9545         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9546         structures in one place.
9547
9548 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9549
9550         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9551           (GST_TIME_FORMAT, GST_TIME_ARGS)
9552
9553 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9554
9555         * testsuite/elements/Makefile.am:
9556           disable test until it stops breaking make distcheck
9557
9558 2004-04-05  Johan Dahlin  <johan@gnome.org>
9559
9560         * po/sv.po: Updated translation
9561
9562 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9563
9564         * gst/gstplugin.c: (gst_plugin_load_file):
9565           fix segfault for when original plugin was loaded statically
9566
9567 2004-04-05  Benjamin Otte  <otte@gnome.org>
9568
9569         * testsuite/debug/category.c: (main):
9570         * testsuite/debug/commandline.c: (main):
9571         * testsuite/debug/output.c: (main):
9572           fix tests to work again with debugging enabled
9573
9574 2004-04-05  Benjamin Otte  <otte@gnome.org>
9575
9576         * gst/schedulers/gstbasicscheduler.c:
9577         (gst_basic_scheduler_pad_link):
9578           fix to work with recent scheduling changes
9579
9580 2004-04-05  Benjamin Otte  <otte@gnome.org>
9581
9582         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9583         prepareChangeLog doesn't work when cvs indents):
9584           don't throw an error when no element can be scheduled, there's too
9585           many weird reasons why it doesn't work. Return STOPPED instead.
9586           decoupled elemts' schedulability doesn't depend on bufpens.
9587
9588 2004-04-04  Benjamin Otte  <otte@gnome.org>
9589
9590         * gst/schedulers/gstbasicscheduler.c:
9591         (gst_basic_scheduler_pad_select):
9592           fix uninitialized variable warnings
9593
9594 2004-04-04  Benjamin Otte  <otte@gnome.org>
9595
9596         * gst/gstpad.c: (gst_pad_collect_valist):
9597           fix uninitialized variable warning
9598         * gst/schedulers/entryscheduler.c: (schedule_forward):
9599           fix shadowed variable
9600
9601 2004-04-04  Benjamin Otte  <otte@gnome.org>
9602
9603         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9604         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9605         (gst_pad_select):
9606         * gst/gstpad.h:
9607         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9608         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9609         * gst/gstscheduler.h:
9610           implement gst_pad_collect as replacement for gst_pad_select.
9611           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9612           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9613           new pad_select, lock and unlock calls.
9614         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9615         * gst/cothreads.h:
9616         * gst/schedulers/cothreads_compat.h:
9617         * gst/schedulers/gthread-cothreads.h:
9618           remove unused cothread_lock and cothread_unlock calls
9619         * gst/schedulers/entryscheduler.c:
9620         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9621         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9622         (gst_entry_scheduler_pad_select):
9623           update to new API
9624         * gst/schedulers/gstbasicscheduler.c:
9625         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9626         (gst_basic_scheduler_pad_select):
9627           remove useless lock and unlock calls, update pad_select to new API
9628           (untested)
9629         * gst/schedulers/gstoptimalscheduler.c:
9630         (gst_opt_scheduler_class_init):
9631           remove useless select, lock and unlock function calls
9632         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9633           use gst_pad_collect instead of gst_pad_select
9634
9635 2004-04-04  Benjamin Otte  <otte@gnome.org>
9636
9637         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9638         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9639         (schedule_next_element), (print_entry):
9640           add can_schedule_pad to handle element states.
9641           add schedule_forward to select the correct entry to schedule next
9642
9643 2004-04-03  Benjamin Otte  <otte@gnome.org>
9644
9645         * gst/schedulers/entryscheduler.c: 
9646           remove unused variable, fix error inside Rb, fix compile warning in
9647           unreachable code
9648
9649 2004-04-03  Benjamin Otte  <otte@gnome.org>
9650
9651         * gst/schedulers/entryscheduler.c:
9652           completely revamp the inner workings, so it's a lot easier to
9653           understand and extend
9654
9655 2004-04-03  Andy Wingo  <wingo@pobox.com>
9656
9657         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9658         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9659         This allows better introspection of pipeline topology.
9660         (add_to_chain): Don't do trickery to put loop elements first;
9661         rather, queue a chain sort by marking the chain as dirty.
9662         (remove_from_chain): Mark the chain dirty.
9663         (sort_chain): New function. Sorts the group list so that terminal
9664         sinks are first. This means elements on the sink side will be
9665         preferentially sscheduled before elements on the src side of the
9666         pipeline.
9667         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9668         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9669         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9670         (group_inc_link): Change argument and variable names to match the
9671         new link structure member names (src and sink).
9672         (group_dec_link): Add some description
9673
9674 2004-04-03  Benjamin Otte  <otte@gnome.org>
9675
9676         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9677         * gst/gstinfo.h:
9678         * testsuite/debug/category.c: (main):
9679         * testsuite/debug/commandline.c: (main):
9680         * testsuite/debug/output.c: (main):
9681         * testsuite/debug/printf_extension.c: (main):
9682           fix to successfully build and test with --disable-gst-debug
9683           configure switch (fixes #138705)
9684
9685 2004-04-03  Benjamin Otte  <otte@gnome.org>
9686
9687         * docs/pwg/building-boiler.xml:
9688           add cvs login line and s/anonymous/anoncvs/
9689
9690 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
9691
9692         reviewed by Benjamin Otte  <otte@gnome.org>
9693
9694         * gst/gststructure.c: (gst_structure_free):
9695           memleak fix: free fields array (partial fix for #134839)
9696
9697 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9698
9699         * docs/random/ds/0.9-suggested-changes:
9700           Add a note to change handoff use in fakesrc to be usable in
9701           a more generic way (fakesrc should be renamed to appsrc or so).
9702         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9703           Change signal type to scope, so we can fill the buffer in the
9704           handoff handler (that's the whole use of this signal...).
9705
9706 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9707
9708         * docs/pwg/other-ntoone.xml:
9709           Document muxers and n-to-1 elements.
9710
9711 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
9712
9713         * gst/registries/gstxmlregistry.c
9714         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
9715         determine if a file is a G_MODULE. The old one discards paths
9716         containing "so" somewhere in the middle. My home directory is
9717         called "soto". Go figure...
9718
9719 2004-03-31  David Schleef  <ds@schleef.org>
9720
9721         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
9722         to eventually deprecate gst_buffer_merge().  (bug: #136408)
9723         * gst/gstbuffer.h:
9724
9725 2004-03-31  David Schleef  <ds@schleef.org>
9726
9727         * gst/gstvalue.c: (gst_value_union_int_int_range),
9728         (gst_value_union_int_range_int_range), (gst_value_can_union),
9729         (gst_value_union), (_gst_value_initialize):  Add some union
9730         implementations.  We didn't have any previously.
9731         * testsuite/caps/Makefile.am:
9732         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
9733         (gst_audioscale_getcaps), (test_caps), (main): A little test
9734         that is the same as the caps manipulation in audioscale.
9735
9736 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9737
9738         * docs/faq/general.xml:
9739           add entry about "does gst support format X?"
9740
9741 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9742
9743         * gst/gstthread.c:
9744           fix docs
9745         * gst/gstutils.h:
9746           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
9747
9748 2004-03-30  Benjamin Otte  <otte@gnome.org>
9749
9750         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9751           set the offset of the buffer to the requested offset
9752         * gst/elements/gsttypefind.c: (stop_typefinding):
9753           revert patch 1.18 (which I unfortunately don't know the reason for).
9754           This is needed to allow downstream elements to seek. Otherwise
9755           typefind might overwrite a previous seek by downstream elements.
9756           This lead to errors with id3tag and typefind on some mp3s.
9757         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9758         (gst_entry_scheduler_iterate):
9759           be more verbose when debugging
9760
9761 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9762
9763         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9764           make sure we don't get NULL strings
9765
9766 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9767
9768         * gst/gstcaps.c:
9769         * gst/gstelement.c:
9770         * gst/gstelementfactory.c: (gst_element_factory_get_type):
9771         * gst/gstindex.c: (gst_index_resolver_get_type),
9772         (gst_index_get_type), (gst_index_factory_get_type):
9773         * gst/gstinfo.c:
9774         * gst/gstpad.c:
9775         * gst/gstplugin.c:
9776         * gst/gsturi.c: (gst_uri_handler_get_type):
9777         * gst/gstvalue.c:
9778           first batch of documentation fixes
9779
9780 2004-03-29  David Schleef  <ds@schleef.org>
9781
9782         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
9783         * docs/gst/gstreamer-docs.sgml:  More hacking
9784         * docs/gst/gstreamer-sections.txt:
9785         * docs/gst/tmpl/cothreads_compat.sgml:
9786         * docs/gst/tmpl/gstcaps.sgml:
9787         * docs/gst/tmpl/gstclock.sgml:
9788         * docs/gst/tmpl/gstelement.sgml:
9789         * docs/gst/tmpl/gstevent.sgml:
9790         * docs/gst/tmpl/gstpad.sgml:
9791         * docs/gst/tmpl/gstutils.sgml:
9792         * docs/gst/tmpl/gstxml.sgml:
9793         * docs/gst/tmpl/gthread-cothreads.sgml:
9794         * docs/random/ds/0.9-suggested-changes:
9795         * gst/elements/gstfakesink.h: doc fixes
9796         * gst/elements/gstfakesrc.h: doc fixes
9797         * gst/gstcaps.c: doc fixes
9798         * gst/gstcaps.h: doc fixes
9799         * gst/gstelement.c: doc fixes
9800         * gst/gstelement.h: doc fixes
9801         * gst/gstindex.c: doc fixes
9802         * gst/gstinfo.c: doc fixes
9803         * gst/gstpad.c: doc fixes
9804         * gst/gstpad.h: doc fixes
9805         * gst/gstplugin.c: doc fixes
9806         * gst/gsttypefind.h: doc fixes
9807         * gst/gsturi.c: doc fixes
9808         * gst/gstvalue.c: doc fixes
9809
9810 2004-03-29  Colin Walters  <walters@redhat.com>
9811
9812         * gst/registries/gstxmlregistry.c (get_time)
9813         (plugin_times_older_than_recurse):
9814         Use the result of stat to determine whether a path is a file,
9815         so we don't attempt to opendir() files.
9816
9817 2004-03-29  Benjamin Otte  <otte@gnome.org>
9818
9819         * gst/gstpad.c: (gst_pad_set_explicit_caps):
9820           print caps in debugging output when setting caps failed
9821         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9822         (schedule_next_element), (get_buffer), (run_chainhandler),
9823         (element_may_start), (gst_entry_scheduler_chain_handler),
9824         (gst_entry_scheduler_get_handler),
9825         (gst_entry_scheduler_state_transition),
9826         (gst_entry_scheduler_pad_link):
9827           make this scheduler a testcase for mandatory
9828           discont-before-first-buffer which is needed if we want to allow apps
9829           to release the sound device.
9830           add SCHED_ASSERT macro to print scheduler state before an assertion
9831           triggers.
9832
9833 2004-03-29  Benjamin Otte  <otte@gnome.org>
9834
9835         * COPYING:
9836           replace by LGPL (former COPYING.LIB). The core is completely
9837           licensed LGPL.
9838         * COPYING.LIB:
9839           remove
9840
9841 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9842
9843         * po/af.po:
9844         * po/sv.po:
9845           updated Afrikaans and Swedish
9846
9847 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9848
9849         * po/LINGUAS:
9850         * po/az.po:
9851           adding Azerbaijani (Mətin Əmirov)
9852
9853 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
9854
9855         * gst/gstelement.h: 
9856         * gst/gstelement.c (gst_element_set_time_delay): New function for
9857         setting element time taking into account a hardware buffering
9858         delay.
9859         (gst_element_set_time): Now just an invocation of
9860         gst_element_set_time_delay.
9861         * gst/gstclock.h: 
9862         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
9863         allowing to set event times in the future.
9864         (gst_clock_get_event_time): Now just an invocation of
9865         gst_clock_get_event_time_delay.
9866
9867 2004-03-28  Benjamin Otte  <otte@gnome.org>
9868
9869         * gst/gstbin.c: (gst_bin_set_element_sched),
9870         (gst_bin_unset_element_sched):
9871           don't add decoupled elements to schedulers - otherwise it's
9872           impossible to control if a link to a decoupled element was already
9873           removed from a scheduler or not.
9874         * gst/schedulers/cothreads_compat.h:
9875         * gst/schedulers/gthread-cothreads.h:
9876           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
9877           is no "unused" warning.
9878         * gst/schedulers/Makefile.am:
9879         * gst/schedulers/entryscheduler.c:
9880           add new scheduler, based on ideas from talking to David and Martin.
9881           It's supposed to be small and correct. Currently it's also slow (but
9882           it's not noticable)
9883         * examples/retag/retag.c: (main):
9884         * testsuite/bytestream/test1.c: (main):
9885           fix missing NULLs at end of variadic functions
9886         * testsuite/elements/.cvsignore:
9887           update
9888
9889 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
9890
9891         * gst/gstevent.h:
9892         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
9893
9894 2004-03-25  David Schleef  <ds@schleef.org>
9895
9896         * docs/gst/gstreamer-sections.txt:  More doc hacking.
9897         * docs/gst/tmpl/gstaggregator.sgml:
9898         * docs/gst/tmpl/gstautoplugfactory.sgml:
9899         * docs/gst/tmpl/gstbin.sgml:
9900         * docs/gst/tmpl/gstbuffer.sgml:
9901         * docs/gst/tmpl/gstbufferstore.sgml:
9902         * docs/gst/tmpl/gstfakesink.sgml:
9903         * docs/gst/tmpl/gstfakesrc.sgml:
9904         * docs/gst/tmpl/gstmd5sink.sgml:
9905         * docs/gst/tmpl/gstreamer-unused.sgml:
9906         * docs/gst/tmpl/gstsearchfuncs.sgml:
9907         * docs/gst/tmpl/gstshaper.sgml:
9908         * docs/gst/tmpl/gstspider.sgml:
9909         * docs/gst/tmpl/gsttee.sgml:
9910         * docs/gst/tmpl/gstutils.sgml:
9911         * docs/gst/tmpl/gstvalue.sgml:
9912         * docs/gst/tmpl/gstxml.sgml:
9913         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
9914         and we don't support it.
9915         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
9916         (gst_use_threads), (gst_has_threads): same
9917         * gst/gstthreaddummy.c: same
9918         * gst/autoplug/gstspider.c: Make gst_spider_details static.
9919         * gst/autoplug/gstspider.h: same
9920         * gst/elements/gstaggregator.h: Remove bogus function from header
9921         * gst/elements/gstfakesink.h: same
9922         * gst/elements/gstfakesrc.h: same
9923         * gst/elements/gstmd5sink.h: same
9924         * gst/elements/gstshaper.h: same
9925         * gst/elements/gsttee.h: same
9926         * gst/gstbin.c: doc fixes
9927         * gst/gstbin.h: Remove unused definition.
9928         * gst/gstbuffer.c: doc fixes
9929         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
9930         * gst/gstfilter.c: doc fixes
9931         * gst/gsttag.c: doc fixes
9932         * gst/gstvalue.c: doc fixes
9933
9934 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9935
9936         * docs/pwg/advanced-types.xml:
9937           Document typefinding.
9938         * docs/pwg/other-oneton.xml:
9939           Document one-to-n elements, demuxers and parsers.
9940
9941 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
9942
9943         reviewed by: David Schleef  <ds@schleef.org>
9944
9945         * configure.ac: Check bison version (bug #127838)
9946
9947 2004-03-25  David Schleef  <ds@schleef.org>
9948
9949         * docs/gst/gstreamer-docs.sgml: More fine tuning.
9950         * docs/gst/gstreamer-sections.txt:
9951         * docs/gst/tmpl/gstautoplug.sgml:
9952         * docs/gst/tmpl/gststaticautoplug.sgml:
9953         * docs/gst/tmpl/gststaticautoplugrender.sgml:
9954         * docs/gst/tmpl/gstutils.sgml:
9955         * docs/gst/tmpl/gstxml.sgml:
9956
9957 2004-03-24  David Schleef  <ds@schleef.org>
9958
9959         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
9960         manual being such complete crap, that I decided to do major
9961         hacking of it.  This checkin replaces any fine tuning that
9962         may have been done previously, with the benefit of actually
9963         being complete for much of the API that was changed since
9964         0.6.  Further fine tuning will occur shortly.  (bug #134721)
9965         * docs/gst/gstreamer-sections.txt:
9966         * docs/gst/tmpl/GstBin.sgml:
9967         * docs/gst/tmpl/GstBuffer.sgml:
9968         * docs/gst/tmpl/GstCaps.sgml:
9969         * docs/gst/tmpl/GstClock.sgml:
9970         * docs/gst/tmpl/GstCompat.sgml:
9971         * docs/gst/tmpl/GstData.sgml:
9972         * docs/gst/tmpl/GstElement.sgml:
9973         * docs/gst/tmpl/GstEvent.sgml:
9974         * docs/gst/tmpl/GstIndex.sgml:
9975         * docs/gst/tmpl/GstStructure.sgml:
9976         * docs/gst/tmpl/GstTag.sgml:
9977         * docs/gst/tmpl/cothreads.sgml:
9978         * docs/gst/tmpl/cothreads_compat.sgml:
9979         * docs/gst/tmpl/gettext.sgml:
9980         * docs/gst/tmpl/grammar.tab.sgml:
9981         * docs/gst/tmpl/gst-i18n-app.sgml:
9982         * docs/gst/tmpl/gst-i18n-lib.sgml:
9983         * docs/gst/tmpl/gst.sgml:
9984         * docs/gst/tmpl/gst_private.sgml:
9985         * docs/gst/tmpl/gstaggregator.sgml:
9986         * docs/gst/tmpl/gstarch.sgml:
9987         * docs/gst/tmpl/gstatomic.sgml:
9988         * docs/gst/tmpl/gstatomic_impl.sgml:
9989         * docs/gst/tmpl/gstbin.sgml:
9990         * docs/gst/tmpl/gstbuffer.sgml:
9991         * docs/gst/tmpl/gstbufferstore.sgml:
9992         * docs/gst/tmpl/gstcaps.sgml:
9993         * docs/gst/tmpl/gstclock.sgml:
9994         * docs/gst/tmpl/gstcompat.sgml:
9995         * docs/gst/tmpl/gstconfig.sgml:
9996         * docs/gst/tmpl/gstcpu.sgml:
9997         * docs/gst/tmpl/gstdata.sgml:
9998         * docs/gst/tmpl/gstdata_private.sgml:
9999         * docs/gst/tmpl/gstelement.sgml:
10000         * docs/gst/tmpl/gstenumtypes.sgml:
10001         * docs/gst/tmpl/gsterror.sgml:
10002         * docs/gst/tmpl/gstevent.sgml:
10003         * docs/gst/tmpl/gstfakesink.sgml:
10004         * docs/gst/tmpl/gstfakesrc.sgml:
10005         * docs/gst/tmpl/gstfilesink.sgml:
10006         * docs/gst/tmpl/gstfilter.sgml:
10007         * docs/gst/tmpl/gstindex.sgml:
10008         * docs/gst/tmpl/gstinfo.sgml:
10009         * docs/gst/tmpl/gstinterface.sgml:
10010         * docs/gst/tmpl/gstlog.sgml:
10011         * docs/gst/tmpl/gstmacros.sgml:
10012         * docs/gst/tmpl/gstmarshal.sgml:
10013         * docs/gst/tmpl/gstmd5sink.sgml:
10014         * docs/gst/tmpl/gstmultifilesrc.sgml:
10015         * docs/gst/tmpl/gstobject.sgml:
10016         * docs/gst/tmpl/gstpad.sgml:
10017         * docs/gst/tmpl/gstparse.sgml:
10018         * docs/gst/tmpl/gstpipeline.sgml:
10019         * docs/gst/tmpl/gstplugin.sgml:
10020         * docs/gst/tmpl/gstpluginfeature.sgml:
10021         * docs/gst/tmpl/gstqueue.sgml:
10022         * docs/gst/tmpl/gstreamer-unused.sgml:
10023         * docs/gst/tmpl/gstregistry.sgml:
10024         * docs/gst/tmpl/gstregistrypool.sgml:
10025         * docs/gst/tmpl/gstscheduler.sgml:
10026         * docs/gst/tmpl/gstsearchfuncs.sgml:
10027         * docs/gst/tmpl/gstshaper.sgml:
10028         * docs/gst/tmpl/gstspider.sgml:
10029         * docs/gst/tmpl/gstspideridentity.sgml:
10030         * docs/gst/tmpl/gststructure.sgml:
10031         * docs/gst/tmpl/gstsystemclock.sgml:
10032         * docs/gst/tmpl/gsttag.sgml:
10033         * docs/gst/tmpl/gsttaginterface.sgml:
10034         * docs/gst/tmpl/gsttee.sgml:
10035         * docs/gst/tmpl/gstthread.sgml:
10036         * docs/gst/tmpl/gsttrace.sgml:
10037         * docs/gst/tmpl/gsttrashstack.sgml:
10038         * docs/gst/tmpl/gsttypefind.sgml:
10039         * docs/gst/tmpl/gsttypes.sgml:
10040         * docs/gst/tmpl/gsturi.sgml:
10041         * docs/gst/tmpl/gsturitype.sgml:
10042         * docs/gst/tmpl/gstutils.sgml:
10043         * docs/gst/tmpl/gstvalue.sgml:
10044         * docs/gst/tmpl/gstversion.sgml:
10045         * docs/gst/tmpl/gstxml.sgml:
10046         * docs/gst/tmpl/gstxmlregistry.sgml:
10047         * docs/gst/tmpl/gthread-cothreads.sgml:
10048         * docs/gst/tmpl/types.sgml:
10049
10050 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10051
10052         * docs/pwg/other-sink.xml:
10053         * docs/pwg/other-source.xml:
10054           Documentation on how to write source and sink elements. Other
10055           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10056           manager, autoplugger) are all still pending.
10057
10058 2004-03-25  Benjamin Otte  <otte@gnome.org>
10059
10060         * testsuite/elements/Makefile.am:
10061         * testsuite/elements/gst-compprep-check:
10062           add check to make sure gst-compprep works
10063         * testsuite/elements/gst-inspect-check.in:
10064           improve initialization output
10065         * testsuite/Makefile.am:
10066         * testsuite/gst-inspect-check:
10067           remove old file
10068
10069 2004-03-24  David Schleef  <ds@schleef.org>
10070
10071         * testsuite/elements/Makefile.am:
10072         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10073         to the testsuite.
10074
10075 2004-03-24  Benjamin Otte  <otte@gnome.org>
10076
10077         * libs/gst/control/dparam.c: (gst_dparam_attach),
10078         (gst_dparam_detach):
10079         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10080           fix lvalue casts for real
10081
10082 2004-03-24  Benjamin Otte  <otte@gnome.org>
10083
10084         * gst/schedulers/gstbasicscheduler.c:
10085         (gst_basic_scheduler_src_wrapper):
10086         * gst/schedulers/gstoptimalscheduler.c:
10087         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10088         (pad_clear_queued), (gst_opt_scheduler_add_element),
10089         (gst_opt_scheduler_remove_element):
10090           fix GStreamer to not have issues with lvalue casts anymore (fixes
10091           #136841)
10092
10093 2004-03-24  Benjamin Otte  <otte@gnome.org>
10094
10095         * gst/gstelement.c:
10096           add documentation about a gobject quirk where the object hasn't the
10097           correct class pointer set on initialization
10098         * gst/schedulers/gstbasicscheduler.c:
10099         (gst_basic_scheduler_src_wrapper):
10100           make sure to not run into an infinite loop
10101
10102 2004-03-22  Benjamin Otte  <otte@gnome.org>
10103
10104         * gst/gstutils.c: (gst_util_dump_mem):
10105         * gst/gstutils.h:
10106           first argument of gst_util_dump_mem should be const
10107
10108 2004-03-22  Johan Dahlin  <johan@gnome.org>
10109
10110         * gst/gstvalue.h: Clean up a little bit.
10111
10112 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10113
10114         reviewed by Benjamin Otte  <otte@gnome.org>
10115
10116         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10117         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10118         (gst_aggregator_class_init), (gst_aggregator_init):
10119         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10120         (gst_filesrc_dispose), (gst_filesrc_set_location):
10121         * gst/elements/gstidentity.c: (gst_identity_finalize),
10122         (gst_identity_class_init), (gst_identity_chain):
10123         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10124         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10125         (gst_statistics_class_init):
10126         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10127         (gst_tee_get_property):
10128           clean up used memory in this elements correctly on teardown (closes
10129           #137279)
10130
10131 2004-03-20  Colin Walters  <walters@redhat.com>
10132
10133         * gst/registries/gstxmlregistry.c:
10134         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10135         registry saving atomic.
10136
10137 2004-03-20  Colin Walters  <walters@redhat.com>
10138
10139         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10140         Just use
10141         access() instead of actually creating and deleting files.
10142
10143 2004-03-18  David Schleef  <ds@schleef.org>
10144
10145         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10146         (bug #137625)
10147
10148 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10149
10150         * po/sv.po: updated translation (Christian Rose)
10151
10152 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10153
10154         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10155         (gst_filesink_get_query_types), (_do_init),
10156         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10157           return FALSE silently
10158         * po/af.po: updated translation (Petri Jooste)
10159
10160 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10161
10162         * Makefile.am:
10163         * configure.ac:
10164           dist common properly
10165         * po/af.po:
10166         * po/fr.po:
10167         * po/nl.po:
10168         * po/sr.po:
10169         * po/sv.po:
10170           refreshing translations
10171
10172 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10173
10174         * po/LINGUAS:
10175         * po/sv.po:
10176         * po/af.po:
10177           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10178
10179 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10180
10181         * Makefile.am: use common/release.mak
10182
10183 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10184
10185         * docs/faq/gst-uninstalled:
10186           adding gst-monkeysaudio to the list of possible plugin dirs
10187
10188 2004-03-16  David Schleef  <ds@schleef.org>
10189
10190         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10191         (gst_init_check_with_popt_table):  Fix some gettext strings to
10192         make them easier to translate.  Required making the strings
10193         non-const.
10194
10195 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10196
10197         * configure.ac: bump nano to 1
10198
10199 === release 0.8.0 ===
10200
10201 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10202
10203         * configure.ac: release 0.8.0, "Executive Slacks"
10204
10205 2004-03-16  Johan Dahlin  <johan@gnome.org>
10206
10207         * gst/schedulers/gstoptimalscheduler.c
10208         (gst_opt_scheduler_pad_unlink): Remove double ;,
10209         spotted by Scott Wheeler
10210
10211 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10212
10213         * configure.ac: bump libtool version
10214
10215 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10216
10217         * gst/gstcaps.h:
10218         * gst/gststructure.h:
10219           add reserved padding
10220
10221 2004-03-15  Benjamin Otte  <otte@gnome.org>
10222
10223         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10224           set the first parameter for select call correctly.
10225           (fixes #137230)
10226
10227 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10228
10229         * *.c,*.h: don't mix tabs and spaces
10230
10231 2004-03-15  Johan Dahlin  <johan@gnome.org>
10232
10233         * gst/schedulers/gstoptimalscheduler.c
10234         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10235         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10236
10237         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10238         
10239 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10240
10241         * testsuite/Rules:
10242           fix gst-register rules
10243
10244 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10245
10246         * testsuite/Rules:
10247           use versioned gst-register
10248
10249 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10250
10251         * docs/libs/gstreamer-libs-sections.txt:
10252           remove </SUBSECTION>
10253         * gst/gstplugin.c:
10254         * gst/gstregistry.c: (gst_registry_add_plugin):
10255         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10256         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10257           add debugging and fix some comment blocks
10258
10259 2004-03-15  Johan Dahlin  <johan@gnome.org>
10260
10261         * *.h: Revert indent changes.
10262         
10263 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10264
10265         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10266           g_error_free the g_error
10267         * tools/gst-feedback-m.m:
10268           check for other versions of gstreamer
10269         * tools/gst-indent:
10270           use sh, not bash
10271
10272 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10273
10274         * tools/gst-register.c: do not spill paths when registries are not
10275           writable, until we fix the "user running gst-register" case.
10276
10277 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10278
10279         * *.c, *.h: commit of gst-indent run on core
10280
10281 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10282
10283         * tools/gst-indent:
10284         * tools/Makefile.am:
10285           add our indentation style as a script
10286
10287 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10288
10289         * po/sr.po:
10290         * po/LINGUAS:
10291           added Serbian translation
10292
10293 2004-03-13  Benjamin Otte  <otte@gnome.org>
10294
10295         * gst/gstelement.c:
10296           add documentation note about gst_element_found_tags_for_pad not
10297           being usable in getfunctions. (see #137042)
10298
10299 2004-03-12  David Schleef  <ds@schleef.org>
10300
10301         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10302         change API right now!  Readd gst_caps_is_simple() macro.
10303         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10304         uninitialized variable.  I'd bet this caused crashes.
10305         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10306
10307 2004-03-12  Johan Dahlin  <johan@gnome.org>
10308
10309         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10310         * gst/gstcaps.h: Clean up
10311
10312         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10313         _gst_caps_initalize()
10314
10315         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10316         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10317
10318         * gst/gststructure.c (gst_structure_get_type): Ditto
10319
10320         * gst/gststructure.h: Ditto
10321         
10322 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10323
10324         * gst/gstqueue.c: (gst_queue_init):
10325           Reset default max. values in queues. Reason is simply to avoid
10326           braindead use. If you want wider values, use the properties. The
10327           default is supposed to always work. Wider values would make this
10328           beast a memory hog by default (250 full-PAL RGB32 video frames?
10329           That's 440 MB! No thank you).
10330
10331 2004-03-10  David Schleef  <ds@schleef.org>
10332
10333         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10334         were found.  (bug #136793)
10335
10336 2004-03-10  Johan Dahlin  <johan@gnome.org>
10337
10338         * gst/schedulers/gstoptimalscheduler.c
10339         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10340         links to elements within the same group, so we can finally remove
10341         that annoying warning. Refactor the code a little bit
10342         (group_dec_links_for_element): Split out
10343
10344 2004-03-09  David Schleef  <ds@schleef.org>
10345
10346         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10347         (bug #134863)
10348
10349 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10350
10351         * configure.ac: first bug fix due to major/minor bump
10352
10353 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10354
10355         * configure.ac: bump nano to 1
10356
10357 === release 0.7.6 ===
10358
10359 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10360
10361         * NEWS:
10362         * RELEASE:
10363         * configure.ac:
10364           releasing 0.7.6, "Almost"
10365         * po/fr.po:
10366         * po/nl.po:
10367         * tools/Makefile.am:
10368         * tools/gst-feedback-m.m:
10369           unversioned source
10370
10371 2004-03-09  Johan Dahlin  <johan@gnome.org>
10372
10373         Reviewed by: Thomas Vander Stichele
10374
10375         * gst/gstelement.c (gst_element_class_init): register second
10376         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10377         language bindings can (de)marshall correctly.
10378
10379         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10380
10381         * gst/gsterror.c (gst_g_error_get_type): New function
10382
10383         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10384         with VOID:OBJECT,OBJECT,STRING 
10385
10386 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10387
10388         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10389         Free a leaked g_timer on early returns.
10390
10391 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10392
10393         * docs/pwg/advanced-types.xml:
10394           Add cinepak description.
10395
10396 2004-03-07  David Schleef  <ds@schleef.org>
10397
10398         * docs/random/mimetypes:  Added cinepak description
10399
10400 2004-03-07  Andy Wingo  <wingo@pobox.com>
10401
10402         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10403
10404         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10405         there are no links to other groups when a group is destroyed.
10406         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10407         removed from a group, make sure the link count to elements linked
10408         to other pads is appropriately decremented. This really fixes
10409         #135672.
10410
10411         The 1.60->1.61 patch has been reapplied in light of this fix.
10412
10413         * gst/gstelement.c (gst_element_dispose): Really protect against
10414         multiple invocations this time.
10415
10416 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10417
10418         * docs/gst/gstreamer-sections.txt:
10419         * docs/gst/tmpl/gsttag.sgml:
10420           remove some deprecated functions, document some existing ones
10421         * gst/gsttag.c: (gst_tag_get_flag):
10422         * gst/gsttag.h:
10423           add accessor function
10424
10425 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10426
10427         * docs/gst/gstreamer-sections.txt:
10428         * docs/gst/tmpl/gsttag.sgml:
10429         * docs/gst/tmpl/gstxml.sgml:
10430         * gst/gsttag.c: (gst_tag_get_flag):
10431         * gst/gsttag.h:
10432
10433 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10434
10435         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10436         leak
10437
10438 2004-03-05  David Schleef  <ds@schleef.org>
10439
10440         * REQUIREMENTS: Add bison and flex.
10441         * configure.ac: Fix comment about bison.
10442         * docs/random/ds/0.9-suggested-changes: yer ma
10443         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10444
10445 2004-03-05  Benjamin Otte  <otte@gnome.org>
10446
10447         * gst/gstelement.c: (gst_element_error_full):
10448           revert recent recursive state changing commit - messing with other
10449           elements' states is evil and should be done by apps only.
10450
10451 2004-03-05  Benjamin Otte  <otte@gnome.org>
10452
10453         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10454           check for empty intersection instead of NULL caps
10455         (gst_element_get_compatible_pad_filtered):
10456           remove old workaround that is only a bug nowadays
10457
10458 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10459
10460         * gst/gstelement.c: (gst_element_error_full):
10461           make elements try to recursively change state to PAUSED on all
10462           parents after an error to suppress ensuing warnings
10463         * gst/parse/grammar.y:
10464           make it check if it was able to sync the state, and throw an error
10465           if not, so stuff like
10466           oggdemux ! vorbisdec ! osssink gets caught
10467
10468 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10469
10470         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10471           it contains lib64; use AS_AC_EXPAND to handle it properly
10472
10473 2004-03-05  David Schleef  <ds@schleef.org>
10474
10475         * gst/gstcpuid_i386.s:  Remove unused code
10476         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10477         (gst_getbits_newbuf): Remove MMX code
10478         * libs/gst/getbits/getbits.h: Remove MMX code
10479
10480 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10481
10482         * debian/.cvsignore:
10483         * debian/README.Debian:
10484         * debian/changelog:
10485         * debian/control:
10486         * debian/control.in:
10487         * debian/copyright:
10488         * debian/gstreamer-core-libs-dev.files:
10489         * debian/gstreamer-core-libs.files:
10490         * debian/gstreamer-core.files:
10491         * debian/gstreamer-core.postinst:
10492         * debian/gstreamer-core.postrm:
10493         * debian/gstreamer-doc.files:
10494         * debian/gstreamer-doc.links:
10495         * debian/gstreamer-doc.lintian:
10496         * debian/gstreamer-runtime.files:
10497         * debian/gstreamer-runtime.manpages:
10498         * debian/gstreamer-runtime.postinst:
10499         * debian/gstreamer-runtime.postrm:
10500         * debian/gstreamer-tools.files:
10501         * debian/gstreamer-tools.manpages:
10502         * debian/libgstreamer-dev.files:
10503         * debian/libgstreamer0.4.1.files:
10504         * debian/libgstreamerVERSION.files:
10505         * debian/rules:
10506         Debian package info not maintained here.
10507
10508 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10509
10510         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10511         * gst/gstbin.c: (gst_bin_class_init):
10512         * gst/gstelement.c: (gst_element_class_init):
10513         * gst/gstindex.c: (gst_index_class_init):
10514         * gst/gstobject.c: (gst_object_class_init),
10515         (gst_signal_object_class_init):
10516         * gst/gstpad.c: (gst_pad_template_class_init):
10517         * gst/gstregistry.c: (gst_registry_class_init):
10518         * gst/gsturi.c: (gst_uri_handler_base_init):
10519         * gst/gstxml.c: (gst_xml_class_init):
10520         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10521         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10522           make all signal names use dashes instead of underscore
10523
10524 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10525
10526         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10527
10528 2004-03-03  Benjamin Otte  <otte@gnome.org>
10529
10530         * gst/schedulers/gstoptimalscheduler.c:
10531           revert last commit by Andy Wingo. It causes segfaults on unreffing
10532           in Rhythmbox. (see bug #135672)
10533
10534 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10535
10536         * po/fr.po: fix typo
10537
10538 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10539
10540         * tools/gst-inspect.c: (main): 
10541         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10542
10543 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10544
10545         * configure.ac:
10546           get GLIB_ONLY and POPT flags for the nonversioned binaries
10547         * tools/Makefile.am:
10548           use them
10549
10550 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10551
10552         * gst/gst.c: (init_post):
10553           change so that GST_REGISTRY now is where the global registry gets
10554           saved, since that is where plugins now get attached to first, and
10555           spilled over to the user registry.  Note that in the case of using
10556           GST_REGISTRY env var, we don't want to affect any real registries
10557           beyond the one given by this var, and thus we don't set a user
10558           registry to spill to.  So make sure GST_REGISTRY is writable.
10559
10560 2004-03-01  David Schleef  <ds@schleef.org>
10561
10562         * AUTHORS:  Added some names.  Add yourself if you're missing.
10563
10564 2004-03-01  David Schleef  <ds@schleef.org>
10565
10566         * MAINTAINERS: Add
10567
10568 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10569
10570         * configure.ac:
10571           remove whitespace
10572         * docs/gst/tmpl/gstbuffer.sgml:
10573         * docs/gst/tmpl/gstdata.sgml:
10574         * docs/gst/tmpl/gstreamer-unused.sgml:
10575         * docs/gst/tmpl/gstxml.sgml:
10576           doc update
10577         * docs/manuals.mak:
10578           add a FIXME
10579         * docs/pwg/intro-preface.xml:
10580         * docs/pwg/pwg.xml:
10581           remove GNOME
10582         * gst/gst.c: (init_post):
10583           try GST_PLUGIN_PATH paths for the _global_registry first
10584         * gst/gstelement.h:
10585           add the error message as well, otherwise (null) debug info doesn't
10586           make much sense
10587         * tools/gst-register.c: (main):
10588           spill paths to next registry if this registry is not writable
10589         * po/fr.po:
10590         * po/nl.po:
10591           translation updates
10592
10593 2004-03-01  Johan Dahlin  <johan@gnome.org>
10594
10595         * gst/gstbuffer.c (_gst_buffer_initialize): 
10596         * gst/gstdata.c (gst_data_get_type): 
10597         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10598         instead of ref, since some applications that uses GBoxed
10599         routines depends on a function that actually returns a copy.
10600
10601 2004-02-27  Benjamin Otte  <otte@gnome.org>
10602
10603         * gst/gstbuffer.h:
10604           remove gst_buffer_free, use gst_data_unref
10605         * gst/gstdata.c: (gst_data_get_type):
10606           use refcounting in GstData GBoxed registration
10607         * gst/gstdata.h:
10608           remove gst_data_free, use gst_data_unref
10609
10610 2004-02-27  Johan Dahlin  <johan@gnome.org>
10611
10612         * gst/gstdata.c (gst_data_get_type): New function, register
10613         GstData as a GBoxed type.
10614
10615         * gst/gstdata.h (GST_TYPE_DATA): New macro
10616
10617 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10618
10619         * Makefile.am:
10620         * gstreamer.spec.in:
10621           put back RELEASE
10622         * gst/Makefile.am:
10623           clean up non-disting of built files
10624         * testsuite/debug/commandline.c:
10625           test fix for option rename
10626
10627 2004-02-26  David Schleef  <ds@schleef.org>
10628
10629         * configure.ac:  We don't really need glib-2.3.  Also remove
10630         some unneeded checks for library functions.
10631         * gst/Makefile.am:  Instead, we need to not dist files created
10632         by glib-genmarshal.
10633
10634 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10635
10636         * configure.ac:
10637           bump glib required version to 2.3.0 for g_value_takes_boxed
10638
10639  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10640
10641         * common/m4/gst-docs.m4
10642         change flavour text from enable to disable as enable is our default
10643         closes bug Bug 135304
10644
10645 === release 0.7.5 ===
10646  
10647  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10648  
10649         * NEWS:
10650           instate NEWS file
10651         * Makefile.am:
10652         * gstreamer.spec.in:
10653         * RELEASE:
10654           put back release
10655         * configure.ac:
10656         * docs/random/release:
10657           more updates
10658
10659 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10660
10661         * gst/gsttag.c: (_gst_tag_initialize):
10662         * po/fr.po:
10663         * po/nl.po:
10664           remove hyphen from codec tags
10665
10666 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10667
10668         * gst/parse/Makefile.am:
10669           fix dependency so that a make from a clean build works the first
10670           time
10671
10672 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10673
10674         * docs/random/release:
10675           update release strategy
10676         * po/fr.po:
10677           auto-update po file
10678         * po/nl.po:
10679           update dutch translation
10680
10681 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10682
10683         * docs/manual/debugging.xml:
10684         fix manual for new debugging system
10685
10686 2004-02-25  Andy Wingo  <wingo@pobox.com>
10687
10688         * gst/gstpad.c (gst_pad_link_prepare): Re-add
10689         gst_pad_link_prepare. Please email the list with specific reasons
10690         for reverting.
10691
10692 2004-02-24  Andy Wingo  <wingo@pobox.com>
10693
10694         * gst/gstelement.c (gst_element_dispose): Protect against multiple
10695         invocations.
10696
10697         * gst/schedulers/gstoptimalscheduler.c:
10698         I added a mess of prototypes at the top of the file by way of
10699         documentation. Some of the operations on chains and groups were
10700         re-organized.
10701
10702         (create_group): Added a type argument so if the group is enabled,
10703         the setup_group_scheduler knows what to do.
10704         (group_elements): Added a type argument here, too, to be passed on
10705         to create_group.
10706         (group_element_set_enabled): If an unlinked PLAYING element is
10707         added to a bin, we have to create a new group to hold the element,
10708         and this function will be called before the group is added to the
10709         chain. Thus we have a valid case for group->chain==NULL. Instead
10710         of calling chain_group_set_enabled, just set the flag on the group
10711         (the chain's status will be set when the group is added to it).
10712         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
10713         Setup the group scheduler when the group is enabled, not
10714         specifically when an element goes PAUSED->PLAYING. This means
10715         PLAYING elements can be added, linked, and scheduled into a
10716         PLAYING pipeline, as was intended.
10717         (add_to_group): Don't ref the group twice. I don't know when this
10718         double-ref got in here. Removing it has the potential to cause
10719         segfaults if other parts of the scheduler are buggy. If you find
10720         that the scheduler is segfaulting for you, put in an extra ref
10721         here and see if that hacks over the underlying issue. Of course,
10722         then find out what code is unreffing a group it doesn't own...
10723         (create_group): Make the extra refcount floating, and remove it
10724         after adding the element. This means that...
10725         (unref_group): Destroy when the refcount reaches 0, not 1, like
10726         every other refcounted object in the known universe.
10727         (remove_from_group): When a group becomes empty, set it to be not
10728         active, and remove it from its chain. Don't unref it again,
10729         there's no floating reference any more.
10730         (destroy_group): We have to remove the group from the chain in
10731         remove_from_group (rather than here) to break refcounting cycles
10732         (the chain always has a ref on the group). So assert that
10733         group->chain==NULL.
10734         (ref_group_by_count): Removed, it was commented out anyway.
10735         (merge_chains): Use the remove_from_chain and add_to_chain
10736         primitives to do the reparenting, instead of rolling our own
10737         implementation.
10738         (add_to_chain): The first non-disabled group in the chain's group
10739         list will be the entry point for the chain. Because buffers can
10740         accumulate in loop elements' peer bufpens, we preferentially
10741         schedule loop groups before get groups to avoid unnecessary
10742         execution of get-based groups when the bufpens are already full.
10743         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
10744         (get_group_schedule_function): Ditto.
10745         (loop_group_schedule_function): Ditto.
10746         (gst_opt_scheduler_loop_wrapper): Ditto.
10747         (gst_opt_scheduler_iterate): Ditto.
10748
10749         I understand the opt scheduler now, yippee!
10750
10751         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
10752         (gst_pad_get_name, gst_pad_set_chain_function) 
10753         (gst_pad_set_get_function, gst_pad_set_event_function) 
10754         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
10755         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
10756         (gst_pad_set_query_function, gst_pad_get_query_types) 
10757         (gst_pad_get_query_types_default) 
10758         (gst_pad_set_internal_link_function) 
10759         (gst_pad_set_formats_function, gst_pad_set_link_function) 
10760         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
10761         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
10762         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
10763         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
10764         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
10765         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
10766         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
10767         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
10768         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
10769         (gst_pad_event_default_dispatch, gst_pad_event_default) 
10770         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
10771         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
10772         (gst_pad_get_formats_default, gst_pad_get_formats): Better
10773         argument checks, and some doc fixes.
10774
10775         (gst_pad_custom_new_from_template): Um, does anyone
10776         use these functions? Actually make a custom pad instead of a
10777         normal one.
10778         (gst_pad_try_set_caps): Transpose some checks.
10779         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
10780         the pad is in negotiation.
10781         (gst_pad_try_relink_filtered): Use pad_link_prepare.
10782         
10783         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
10784
10785         * gst/gstelement.h: 
10786         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
10787         on the list.
10788
10789 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10790
10791         * gst/gstbin.c: (gst_bin_add):
10792           add error for not being able to add elements
10793
10794 2004-02-22  Julien MOUTTE <julien@moutte.net>
10795
10796         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
10797         audio-codec and video-codec.
10798
10799 2004-02-22  Benjamin Otte  <otte@gnome.org>
10800
10801         reported by: Padraig O'Briain <padraig.obriain@sun.com>
10802
10803         * autogen.sh:
10804           replace test -e with test -x for mkinstalldirs to be more portable.
10805           (fixes #134816)
10806
10807 2004-02-22  Benjamin Otte  <otte@gnome.org>
10808
10809         * gst/gstpad.c:
10810           revert last patch from Andy, it makes gst_pad_can_link_filtered much
10811           too noisy
10812         * gst/gsttag.c: (_gst_tag_initialize):
10813         * gst/gsttag.h:
10814           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
10815         * libs/gst/control/dparam.c: (gst_dparam_attach):
10816         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
10817           check that types for attached dparams match
10818
10819 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10820
10821         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10822         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10823         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10824           fix errors
10825
10826 2004-02-20  Andy Wingo  <wingo@pobox.com>
10827
10828         * gst/gstbin.c:
10829         * gst/gstbuffer.c:
10830         * gst/gstplugin.c:
10831         * gst/registries/gstxmlregistry.c: 
10832         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
10833
10834         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
10835         (gst_element_add_pad): DEBUG->INFO, some fixes.
10836         (gst_element_get_compatible_pad_template): Just see if the
10837         templates' caps intersect, not if one is a strict subset of the
10838         other. This conforms more to what gst_pad_link_intersect() does.
10839         (gst_element_class_add_pad_template): Don't memcpy the pad
10840         template, just ref it.
10841         (gst_element_get_compatible_pad_filtered): Clean up debug messages
10842
10843         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
10844         (gst_pad_link_filtered): Debug changes.
10845         (gst_pad_link_prepare): New function, consolidated from
10846         can_link_filtered and link_filtered.
10847
10848         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
10849         look more like that of the functions in gstelement.c
10850
10851         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
10852         object, and return the empty string if object is NULL.
10853
10854         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
10855         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
10856         LOG, not DEBUG. We still get flex info on debug.
10857
10858         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
10859         debug string more verbose.
10860         (plugin_times_older_than): DEBUG->LOG.
10861
10862 2004-02-20  Julien MOUTTE <julien@moutte.net>
10863
10864         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
10865         will emit found_tag for each stream they demux with the codec.
10866
10867 2004-02-20  Benjamin Otte  <otte@gnome.org>
10868
10869         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
10870           copy navigation event correctly. Check freeing tag lists. 
10871         * gst/gstthread.c: (gst_thread_change_state):
10872           don't abort() on state changing mess - it might happen because of
10873           bugs.
10874         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
10875           use boxed functions
10876         * gst/gstvalue.h:
10877           fix GST_VALUE_HOLDS_CAPS
10878
10879 2004-02-19  David Schleef  <ds@schleef.org>
10880
10881         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
10882         and use it for GST_FUNCTION.  (bug #134750)
10883
10884 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10885
10886         * po/fr.po:
10887         * po/nl.po:
10888           updating translations
10889
10890 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10891
10892         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
10893
10894 2004-02-18  kost@imn.htwk-leipzig.de
10895
10896         reviewed by: David Schleef  <ds@schleef.org>
10897
10898         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
10899         for libgstcontrol.
10900
10901 2004-02-18  David Schleef  <ds@schleef.org>
10902
10903         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10904         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10905         (gst_dpsmooth_new): Additional fixes to get double dparams working.
10906         * tools/gst-inspect.c: (print_element_info): Support dumping of
10907         double dparam information.
10908
10909 2004-02-17  David Schleef  <ds@schleef.org>
10910
10911         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10912         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
10913         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
10914         Use GST_TYPE_CAPS in signal prototype.
10915         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
10916         Convert GST_TYPE_CAPS to boxed.
10917         * gst/gstelement.c: (gst_element_class_init):
10918         Use GST_TYPE_TAG_LIST in signal prototype.
10919         * gst/gstindex.c: (gst_index_class_init):
10920         * gst/gstindex.h:
10921         Add GST_TYPE_INDEX_ENTRY type.
10922         * gst/gstmarshal.list:
10923         Add necessary marshal types.
10924         * gst/gstpad.c: (gst_real_pad_class_init),
10925         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
10926         (gst_pad_recover_caps_error):
10927         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
10928         * gst/gststructure.c: (_gst_structure_initialize),
10929         (gst_structure_copy), (_gst_structure_copy_conditional):
10930         * gst/gststructure.h:
10931         Convert GST_TYPE_STRUCTURE to boxed.
10932         * gst/gsttag.c: (gst_tag_list_get_type):
10933         * gst/gsttag.h:
10934         Add GST_TYPE_TAG_LIST type.
10935
10936 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10937
10938         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
10939         to what we agreed with david.
10940         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
10941
10942 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10943
10944         * po/nl.po: update translation
10945
10946 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10947
10948         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10949           throw an error if spider is trying to play a mime type there is
10950           no decoder for
10951         * po/POTFILES.in:
10952           add gst/autoplug/gstspider.c for translation
10953
10954 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10955
10956         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
10957         silently when the pad is negotiating.
10958
10959 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10960
10961         * docs/faq/Makefile.am:
10962           add script to run gstreamer uninstalled 
10963         * docs/faq/faq.xml:
10964         * docs/faq/developing.xml:
10965         * docs/faq/gst-uninstalled:
10966           extract script to run gstreamer uninstalled
10967         * docs/manuals.mak:
10968           add EXTRA_SOURCES variable for Makefile.am's to set to
10969           use additional SOURCE files for the doc build
10970
10971 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10972
10973         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
10974
10975 2004-02-15  Julien MOUTTE  <julien@moutte.net>
10976
10977         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
10978         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
10979         an error was thrown by osssink. Basically a state change failure for
10980         an element in a different scheduling group was considered as
10981         successful, which means that caps nego was going on and weird stuff
10982         happened. Like I wrote in the comment there, if someone wants to
10983         revert that please drop me a mail explaining why because I really see
10984         no point in keeping that broken behaviour there.
10985         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
10986         be empty, we then return NULL which will trigger a nice error when 
10987         pulling from the pad.
10988
10989 2004-02-13  David Schleef  <ds@schleef.org>
10990
10991         * libs/gst/control/dparam.c: (gst_dparam_class_init),
10992         (gst_dparam_get_property), (gst_dparam_set_property),
10993         (gst_dparam_do_update_default):
10994         * libs/gst/control/dparam.h:
10995         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10996         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
10997         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
10998         (gst_dpsmooth_do_update_double):
10999         * libs/gst/control/dparam_smooth.h:
11000         * libs/gst/control/dparammanager.c:
11001         (gst_dpman_inline_direct_update):
11002         Add support for double dparams.
11003
11004 2004-02-13  David Schleef  <ds@schleef.org>
11005
11006         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11007         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11008
11009 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11010
11011         reviewed by: David Schleef  <ds@schleef.org>
11012
11013         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11014         (gst_fdsrc_init), (gst_fdsrc_set_property),
11015         (gst_fdsrc_get_property), (gst_fdsrc_get):
11016         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11017         and sends an EOS event if file descriptor reading times out.
11018
11019 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11020
11021         * configure.ac:
11022           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11023
11024 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11025
11026         * configure.ac: pass required libxml version as argument
11027         (bug reported by Christophe Fergeau)
11028
11029 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11030   
11031         * docs/gst/gstreamer-docs.sgml:
11032         * docs/gst/tmpl/gstxml.sgml:
11033         * docs/libs/gstreamer-libs-docs.sgml:
11034           version API docs
11035
11036 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11037
11038         * gst/gstinfo.c:
11039         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11040         (gst_registry_pool_feature_filter):
11041         * gst/gstthread.c: (gst_thread_class_init):
11042         * gst/gstvalue.c:
11043           add includes exposed by building without libxml
11044         * gst/indexers/Makefile.am:
11045           do not build fileindex when LOADSAVE disabled; we should have
11046           a better libxml check later since fileindex depends on xml, not
11047           LOADSAVE or REGISTRY
11048         * libs/gst/control/Makefile.am:
11049           link with m
11050         * tools/Makefile.am:
11051           fix wrong source code for gst-xmlinspect
11052
11053 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11054
11055         * configure.ac:
11056           fix gcov help output
11057           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11058         * docs/random/release:
11059           some updated releasing notes
11060         * gstreamer.spec.in:
11061           more updates
11062
11063 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11064
11065         * docs/faq/faq.xml:
11066         * docs/manual/manual.xml:
11067         * docs/pwg/pwg.xml:
11068         * docs/pwg/titlepage.xml:
11069           put version in documentation
11070
11071 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11072
11073         * tools/Makefile.am: fix man page installation
11074
11075 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11076
11077         * configure.ac:
11078           don't check for libxml when load/save and registry disabled (#105844)
11079         * gstreamer.spec.in:
11080           sync with fedora candidate spec
11081
11082 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11083
11084         * po/fr.po:
11085         * po/nl.po:
11086           replace multidisksrc with multifilesrc
11087
11088 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11089
11090         * po/POTFILES.in:
11091           update to multidisksrc => multifilesrc file renaming (#134145)
11092
11093 2004-02-11  David Schleef  <ds@schleef.org>
11094
11095         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11096         * docs/gst/tmpl/gstpadtemplate.sgml: same
11097         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11098         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11099         fixing dance.
11100         * gst/gstutils.c: Remove disabled code that uses GstProps.
11101         * gst/registries/gstxmlregistry.h: same
11102         * docs/random/ds/0.9-suggested-changes: random notes
11103
11104 2004-02-11  kost@imn.htwk-leipzig.de
11105
11106         reviewed by: David Schleef  <ds@schleef.org>
11107
11108         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11109         initialisation of clock (bug #134128)
11110
11111 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11112
11113         * configure.ac:
11114         * gst/elements/Makefile.am:
11115         * gst/elements/gstelements.c:
11116         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11117         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11118         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11119         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11120         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11121         * gst/elements/gstmultifilesrc.h:
11122           rename multidisksrc to multifilesrc (part of #122200)
11123
11124 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11125
11126         * docs/manuals.mak:
11127           fix automake complaints
11128         * gst-element-check.m4:
11129           fix unquotedness
11130
11131 2004-02-11  David Schleef  <ds@schleef.org>
11132
11133         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11134         * gst/gstatomic_impl.h: Disable sparc implementation.
11135
11136 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11137
11138         * gst-element-check.m4:
11139           fix underquoted macros as reported by automake 1.8.x (#133800)
11140         * configure.ac:
11141           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11142           by autopoint (fixes #132996)
11143
11144 2004-02-10  Andy Wingo  <wingo@pobox.com>
11145
11146         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11147         way to do inheritance.
11148         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11149         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11150         Routine docs.
11151         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11152         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11153         doc.
11154         (gst_pad_unlink, gst_pad_is_linked): Docs.
11155         (gst_pad_renegotiate): A brief description of capsnego.
11156         (gst_pad_try_set_caps): Document.
11157         (gst_pad_try_set_caps_nonfixed): Document.
11158         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11159         (gst_pad_set_parent): Deprecated (although not out of the API).
11160         (gst_pad_get_parent): Deprecated, although many plugins use this.
11161         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11162         are private and will go away in 0.9.
11163         (gst_pad_perform_negotiate): Doc.
11164         (gst_pad_link_unnegotiate): I think this is meant to be static.
11165         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11166         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11167         (gst_pad_get_peer): Doc updates.
11168         (gst_pad_caps_change_notify): Doc.
11169         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11170         (gst_ghost_pad_new): Doc fixes.
11171
11172         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11173         (gst_object_check_uniqueness): 
11174
11175         * gst/gstelement.c (gst_element_add_pad) 
11176         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11177         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11178         (gst_element_get_static_pad, gst_element_get_pad_list) 
11179         (gst_element_class_get_pad_template_list) 
11180         (gst_element_class_get_pad_template): Work on the docs.
11181         (gst_element_get_pad_template_list): Uses the class method.
11182         (gst_element_get_compatible_pad_template): Docs, and consolidate
11183         some test conditions. 
11184         (gst_element_get_pad_from_template): New static function.
11185         (gst_element_request_compatible_pad): Docs, and work with
11186         non-request compatible templates. 
11187         (gst_element_get_compatible_pad_filtered): Docs and remove
11188         redundant checks.
11189         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11190         (gst_element_link_filtered, gst_element_link_many) 
11191         (gst_element_link, gst_element_link_pads) 
11192         (gst_element_unlink_many): Docs.
11193
11194 2004-02-05  Andy Wingo  <wingo@pobox.com>
11195
11196         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11197         s/pointer/boxed/.
11198
11199         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11200
11201         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11202         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11203         with the type=GST_TYPE_CAPS. This allows language bindings to know
11204         what kind of data they're dealing with.
11205
11206         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11207         to NULL when g_value_init is called. GstCaps, which rolls its own
11208         type implementation, now does the same instead of allocating empty
11209         caps.
11210         (_gst_caps_initialize, _gst_caps_collect_value,
11211         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11212         table methods. This allows G_VALUE_COLLECT to work.
11213
11214 2004-02-05  Andy Wingo  <wingo@pobox.com>
11215
11216         * configure.ac:
11217         * testsuite/Makefile.am (SUBDIRS): 
11218         * testsuite/ghostpads/Makefile.am: 
11219         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11220
11221         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11222         These two routines are the only ones that set
11223         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11224         pad template. They should be made static, depending on ABI needs.
11225         (gst_real_pad_dispose): Handle the case of ghost pads without a
11226         parent. Assert after dealing with ghost pads that the ghost pad
11227         list is empty.
11228         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11229         set after creation.
11230         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11231         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11232         functions. set_property will call add_ghost_pad/remove_ghost_pad
11233         as appropriate.
11234         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11235
11236         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11237         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11238         (gst_element_remove_pad): Handle ghost pads as well.
11239         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11240         depending on API-stability needs).
11241
11242 2004-02-05  Andy Wingo  <wingo@pobox.com>
11243
11244         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11245         of course they're const
11246
11247 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11248
11249         * tools/Makefile.am:
11250         * tools/gst-feedback:
11251         * tools/gst-feedback-0.7:
11252           make gst-feedback versioned too for consistency
11253
11254 2004-02-11  David Schleef  <ds@schleef.org>
11255
11256         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11257         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11258
11259 2004-02-10  Julien MOUTTE <julien@moutte.net>
11260
11261         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11262         the structure does not contain a valid tag list. Adding a safety check
11263         to remove a noisy warning in that case.
11264
11265 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11266
11267         * gst/gst.c: fix name to be in line with others
11268
11269 2004-02-09  Julien MOUTTE <julien@moutte.net>
11270
11271         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11272         not shout that loud when len is 0. Just return 0 silently.
11273
11274 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11275
11276         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11277         because data_unref has one and I prefer the debug to be symetric.
11278         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11279         were refed when added to the queue and unrefed only once when the queue
11280         was flushed. Now the flush handler unref the buffers two times : first
11281         unref for the ref added when pushing in the queue's tail and second
11282         unref to destroy the flushed buffer.
11283
11284 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11285
11286         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11287
11288 2004-02-06  David Schleef  <ds@schleef.org>
11289
11290         * docs/random/ds/0.9-suggested-changes: Random ramblings
11291         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11292         to int before printing.
11293         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11294         * gst/parse/parse.l: same.  See bug #129600
11295
11296 2004-02-06  David Schleef  <ds@schleef.org>
11297
11298         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11299         (gst_index_add_entry), (gst_index_add_associationv),
11300         (gst_index_add_association): Add gst_index_add_associationv()
11301         and clean up gst_index_add_association(). #127133
11302
11303 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11304
11305         * autogen.sh: check out common with right tag if CVS/Tag exists
11306
11307 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11308
11309         * testsuite/ghostpads/ghostpads.c: (main):
11310           fix testsuite from segfaulting
11311
11312 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11313
11314         * Makefile.am: add release target
11315         * configure.ac: bump nano to 1
11316         * docs/random/release:
11317
11318 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11319
11320         * gst/gstcaps.h:
11321         * gst/gstelement.c: (gst_element_base_class_init),
11322         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11323         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11324         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11325         (gst_real_pad_dispose):
11326         * gst/gststructure.c: (gst_structure_free),
11327         (gst_structure_from_string):
11328           put reverted patch back in
11329         * gst/gstelement.c: (gst_element_remove_pad):
11330           free explicit caps if they're set
11331         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11332           copy the structure when fixating
11333
11334 2004-02-05  David Schleef  <ds@schleef.org>
11335
11336         * gst/gstmarshal.list:
11337         * gst/gstpad.c: (gst_real_pad_class_init),
11338         (_gst_real_pad_fixate_accumulator):
11339         Revert POINTER->BOXED change in signal marshaller.
11340
11341 === release 0.7.4 ===
11342                                                                                 
11343 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11344                                                                                 
11345         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11346         * configure.ac: changed for release
11347
11348 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11349
11350         * gstreamer.spec.in:
11351           bump required version of gtk-doc
11352
11353 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11354
11355         * gst/gstcaps.h:
11356         * gst/gstelement.c: (gst_element_base_class_init),
11357         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11358         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11359         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11360         (gst_real_pad_dispose):
11361         * gst/gststructure.c: (gst_structure_free),
11362         (gst_structure_from_string):
11363           revert patch that breaks applications, reapply after release
11364           to get this fixed properly
11365
11366 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11367
11368         * gst/gsttag.c: (_gst_tag_initialize):
11369         * gst/gsttag.h:
11370           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11371
11372 2004-02-04  David Schleef  <ds@schleef.org>
11373
11374         Fix some memleaks:
11375         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11376         (gst_spider_plug_from_srcpad):
11377         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11378
11379 2004-02-04  David Schleef  <ds@schleef.org>
11380
11381         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11382         a GstRealPad before accessing its structure members.
11383
11384 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11385
11386         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11387         (gst_clock_get_speed):
11388         * gst/gstclock.h:
11389           reset padding, remove unused fields
11390
11391 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11392
11393         * gst/autoplug/gstspideridentity.c:
11394         (gst_spider_identity_sink_loop_type_finding):
11395           use get_allowed_caps, not get_caps (fixes #132519)
11396         * gst/elements/gsttypefind.c: (stop_typefinding):
11397           use correct order when sending buffers and seeking
11398
11399 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11400
11401         * configure.ac:
11402         * gst/gstelement.h:
11403         * gst/gstpad.h:
11404         * gst/gstqueue.h:
11405           upgrade libtool CURRENT, reset padding
11406
11407 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11408
11409         * configure.ac:
11410           bump to prerelease
11411           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11412
11413 2004-02-04  David Schleef  <ds@schleef.org>
11414
11415         * docs/random/ds/0.9-suggested-changes: random notes
11416         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11417         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11418         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11419         expansion.
11420         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11421         (gst_filesink_get_query_types): same
11422         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11423         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11424         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11425         to use new GST_PTR_FORMAT.
11426         * gst/gstelement.h: deprecate function factory macros
11427         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11428         These are our last variadic macros that can't be replaced with
11429         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11430         attempting to deprecate gst_element_clock_wait().
11431         * gst/gstevent.h: same
11432         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11433         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11434         * gst/gstpad.h: deprecate function factory macros similar to above.
11435
11436 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11437
11438         * configure.ac:
11439         * tools/Makefile.am:
11440         * tools/gst-run.c: (popt_callback), (hash_print_key),
11441         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11442         (get_candidates), (main):
11443           add new source file to generate non-versioned wrapper binaries
11444           for our tools.
11445
11446 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11447
11448         * gst/gstevent.c: (_gst_event_free):
11449           actually break; inside the switch statement
11450         * gst/parse/grammar.y:
11451           fix memleak where GValues weren't unset
11452
11453 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11454
11455         * gst/gststructure.c: (gst_structure_from_string):
11456           fix huge memleak
11457         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11458         (new_entry), (gst_type_find_element_chain):
11459         * gst/gstelement.c: (gst_element_base_class_init),
11460         (gst_element_class_set_details):
11461         * gst/gstpad.c: (gst_pad_can_link_filtered):
11462           fix smaller memleaks
11463         * gst/gstpad.c: (gst_real_pad_dispose):
11464           check that explicit caps are gone
11465         * gst/gststructure.c: (gst_structure_free):
11466           actually free the structure
11467         * gst/gstelement.c: (gst_element_clear_pad_caps):
11468           unset explicit caps
11469
11470 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11471
11472         * tools/Makefile.am:
11473           use AM_CFLAGS since all the CFLAGS are the same
11474           use AM_LDFAGS
11475
11476 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11477
11478         * docs/manual/gnome.xml:
11479           expand example a little
11480         * gst/gst.c: (gst_init_with_popt_table),
11481         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11482           make sure popt option displays are done with right textdomain
11483           use GstPoptOption type
11484         * gst/gst.h:
11485           create GstPoptOption type
11486
11487 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11488
11489         * gst/gsterror.c: (_gst_stream_errors_init):
11490         * gst/gsterror.h:
11491           adding error type for no codec
11492         * po/POTFILES.in:
11493           add gst-inspect
11494         * po/nl.po:
11495           update dutch translation
11496         * tools/gst-inspect.c: (print_element_list), (main):
11497           do proper internationalization
11498         * tools/gst-launch.c: (idle_func):
11499           remove commented out function call
11500
11501 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11502
11503         * docs/README:
11504           add some error fixing notes
11505         * docs/gst/gstreamer-sections.txt:
11506           remove double entries
11507         * docs/gst/tmpl/gstbin.sgml:
11508         * docs/gst/tmpl/gstclock.sgml:
11509           remove override
11510         * docs/gst/tmpl/gstelement.sgml:
11511         * docs/gst/tmpl/gstindex.sgml:
11512         * docs/gst/tmpl/gstobject.sgml:
11513         * docs/gst/tmpl/gstpadtemplate.sgml:
11514         * docs/gst/tmpl/gstreamer-unused.sgml:
11515         * docs/gst/tmpl/gsttag.sgml:
11516         * docs/gst/tmpl/gstthread.sgml:
11517         * docs/gst/tmpl/gstxml.sgml:
11518         * gst/gsttag.h:
11519           sync header prototypes with c decls
11520         * gst/gsttaginterface.c:
11521           fix doc headers
11522
11523 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11524
11525         * gst/parse/Makefile.am:
11526         * gst/gstobject.h:
11527           get rid of gstmarshal.h dependency. It's not needed.
11528         * gst/gst.h:
11529         * gst/elements/gstfakesink.c:
11530         * gst/elements/gstfakesrc.c:
11531         * gst/elements/gstidentity.c:
11532         * gst/gstbin.c:
11533         * gst/gstelement.c:
11534         * gst/gstindex.c:
11535         * gst/gstobject.c:
11536         * gst/gstpad.c:
11537         * gst/gstthread.c:
11538         * gst/gstxml.c:
11539         * libs/gst/control/dparam.c:
11540         * libs/gst/control/dparammanager.c:
11541           include gstmarshal.h.
11542         Fixes #132045
11543
11544 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11545
11546         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11547         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11548         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11549         * gst/elements/gstfilesrc.h:
11550           don't ref the filesrc when creating mmaped buffers. Don't keep a
11551           list of not-yet-destroyed buffers.
11552         * gst/gstbuffer.h:
11553           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11554
11555 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11556
11557         * gst/gst.c: (init_pre):
11558           remove textdomain
11559
11560 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11561
11562         * docs/pwg/advanced-events.xml:
11563         * docs/pwg/advanced-scheduling.xml:
11564         * docs/pwg/intro-basics.xml:
11565         * docs/pwg/other-manager.xml:
11566         * docs/pwg/other-nton.xml:
11567         * docs/pwg/other-ntoone.xml:
11568         * docs/pwg/other-oneton.xml:
11569         * docs/pwg/pwg.xml:
11570           All sort of documentation... Forgot what. Point is that I want this
11571           in before I leave. The 'other-*' will be the last section and will
11572           explain issues specific to these type of elements.
11573
11574 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11575
11576         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11577         (gst_filesrc_get_read):
11578           set all the values on buffers that we can
11579
11580 2004-02-02  David Schleef  <ds@schleef.org>
11581
11582         Change usage of isblah() to g_ascii_isblah() to be more locale
11583         independent.  (#133076)
11584         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11585         * gst/gstutils.c:
11586         * gst/parse/parse.l:
11587
11588 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11589
11590         reviewed by: David Schleef  <ds@schleef.org>
11591
11592         Fix memory leaks:
11593         * gst/gstcaps.c: (gst_caps_to_string):
11594         * gst/registries/gstxmlregistry.c:
11595         (gst_xml_registry_add_path_list_func),
11596         (gst_xml_registry_parse_padtemplate):
11597
11598 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11599
11600         * gst/gstelement.c: (gst_element_default_error):
11601           suffix error messages with period
11602
11603 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11604
11605         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11606         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11607         * gst/gsterror.c: (gst_error_get_message):
11608           Suffix with dots
11609         * po/fr.po:
11610         * po/nl.po:
11611           Update translation files
11612
11613 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11614
11615         * gst/autoplug/gstspideridentity.c:
11616         (gst_spider_identity_sink_loop_type_finding):
11617         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11618         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11619         (gst_filesink_close_file), (gst_filesink_handle_event),
11620         (gst_filesink_chain):
11621         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11622         (gst_filesrc_get_read), (gst_filesrc_open_file):
11623         * gst/elements/gstidentity.c: (gst_identity_chain):
11624         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11625         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11626         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11627         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11628         * gst/gsterror.c: (_gst_core_errors_init),
11629         (_gst_library_errors_init), (_gst_resource_errors_init),
11630         (_gst_stream_errors_init), (gst_error_get_message):
11631         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11632         (gst_pad_recover_caps_error), (gst_pad_pull):
11633         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11634         * gst/schedulers/gstbasicscheduler.c:
11635         (gst_basic_scheduler_chainhandler_proxy),
11636         (gst_basic_scheduler_gethandler_proxy),
11637         (gst_basic_scheduler_cothreaded_chain):
11638           Suffix error messages with period.
11639           Use (NULL) instead of NULL
11640
11641 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11642
11643         * docs/gst/tmpl/gstelement.sgml:
11644         * docs/gst/tmpl/gstxml.sgml:
11645         * gst/gstelement.c: (gst_element_error_full):
11646           add element path to error
11647
11648 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11649
11650         * docs/random/mimetypes:
11651           update raw int/float info
11652         * gst/gsttag.c: (_gst_tag_initialize):
11653         * gst/gsttag.h:
11654           add GST_TAG_ENCODER
11655
11656 2004-01-30  David Schleef  <ds@schleef.org>
11657
11658         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11659           missing (#132991)
11660
11661 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11662
11663         reviewed by Benjamin Otte 
11664           parts of the patch submitted in bug #113913
11665
11666         * configure.ac:
11667           use AC_C_INLINE. Use = instead of == with test
11668         * examples/plugins/example.c:
11669         * gst/autoplug/gstspideridentity.c:
11670         * gst/elements/gstfdsrc.c:
11671         * gst/elements/gstfilesrc.c:
11672         * gst/elements/gstidentity.c:
11673         * gst/elements/gstmultidisksrc.c:
11674         * gst/elements/gststatistics.c:
11675         * gst/gstelement.c:
11676         * gst/gstobject.c:
11677         * gst/gstpad.c:
11678         * gst/gstpipeline.c:
11679         * gst/gstthread.c:
11680           don't end enums with a comma
11681         * gst/gstindex.c: (gst_index_compare_func):
11682           do explicit casting to gint
11683         * gst/gsttrace.c: (gst_trace_text_flush):
11684           #define strsize as a macro
11685
11686 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11687
11688         * docs/README:
11689         * docs/gst/gstreamer-docs.sgml:
11690         * docs/gst/gstreamer-sections.txt:
11691         * docs/gst/tmpl/gstelement.sgml:
11692         * docs/gst/tmpl/gsterror.sgml:
11693         * docs/gst/tmpl/gstinterface.sgml:
11694         * docs/gst/tmpl/gstreamer-unused.sgml:
11695         * docs/gst/tmpl/gststructure.sgml:
11696         * docs/gst/tmpl/gsttag.sgml:
11697         * docs/gst/tmpl/gsttaginterface.sgml:
11698         * docs/gst/tmpl/gstvalue.sgml:
11699         make sure all API ends up in the built docs
11700         * gst/gstinterface.c:
11701         * gst/gststructure.c: (gst_structure_id_set_value),
11702         (gst_structure_set_value), (gst_structure_id_get_value):
11703         * gst/gststructure.h:
11704         * gst/gstvalue.h:
11705         sync .h with .c declarations
11706
11707 2004-01-30  Julien Moutte  <julien@moutte.net>
11708
11709         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
11710         Ronald will fix riffread.
11711
11712 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11713
11714         * docs/pwg/advanced-interfaces.xml:
11715           Added tuner interface docs.
11716
11717 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11718
11719         * docs/random/mimetypes:
11720           correct Theora information
11721         * gst/gstelement.h:
11722           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
11723
11724 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11725
11726         * gst/gstelement.c: (gst_element_error_full):
11727         * gst/gstelement.h:
11728           GST_ELEMENT_ERROR in enum -> _IN_ERROR
11729
11730 2004-01-29  Julien MOUTTE  <julien@moutte.net>
11731
11732         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11733         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
11734         again and even before DISCONT.
11735         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
11736         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
11737         bytestream so that it's not stopping to fill the bytestream if events
11738         different than EOS or DISCONT are received. Instead it process them so
11739         that they go downstream.
11740
11741 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11742
11743         * docs/gst/tmpl/gstelement.sgml:
11744         * docs/gst/tmpl/gstreamer-unused.sgml:
11745         * docs/gst/tmpl/gstxml.sgml:
11746         * gst/autoplug/gstspideridentity.c:
11747         (gst_spider_identity_sink_loop_type_finding):
11748         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11749         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11750         (gst_filesink_close_file), (gst_filesink_handle_event),
11751         (gst_filesink_chain):
11752         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11753         (gst_filesrc_get_read), (gst_filesrc_open_file):
11754         * gst/elements/gstidentity.c: (gst_identity_chain):
11755         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11756         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11757         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11758         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11759         * gst/gstelement.h:
11760         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11761         (gst_pad_recover_caps_error), (gst_pad_pull):
11762         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11763         * gst/schedulers/gstbasicscheduler.c:
11764         (gst_basic_scheduler_chainhandler_proxy),
11765         (gst_basic_scheduler_gethandler_proxy),
11766         (gst_basic_scheduler_cothreaded_chain):
11767           gst_element_error -> GST_ELEMENT_ERROR
11768
11769 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11770
11771         * docs/Makefile.am:
11772         * docs/gst/tmpl/gstelement.sgml:
11773         * docs/gst/tmpl/gstxml.sgml:
11774         * docs/manuals.mak:
11775         * docs/pwg/advanced-request.xml:
11776         * docs/pwg/advanced-scheduling.xml:
11777         * docs/pwg/advanced-tagging.xml:
11778           fix non-validating docbook using CDATA
11779           make sure make check-local gets run first to check if it validates
11780
11781 2004-01-29  Julien MOUTTE <julien@moutte.net>
11782
11783         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
11784         handling (up and downstream).
11785         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
11786         my_filter thing.
11787
11788 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11789
11790         * docs/pwg/advanced-tagging.xml:
11791           Add docs about tag writing.
11792
11793 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11794
11795         * docs/pwg/advanced-tagging.xml:
11796           Add a part about tag reading and application signalling... Tag
11797           writing still needs to be documented.
11798         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11799           We can set file locations in READY, too.
11800
11801 2004-01-29  Julien MOUTTE <julien@moutte.net>
11802
11803         * docs/random/ds/element-checklist: Adding some notes about src
11804         events.
11805
11806 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11807
11808         * docs/random/mimetypes:
11809           Update docs to point to correct elements for various mimetypes, and
11810           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
11811           <stephane.loeuillet@tiscali.fr>.
11812
11813 2004-01-28  David Schleef  <ds@schleef.org>
11814
11815         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
11816
11817 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11818
11819         * docs/random/mimetypes:
11820           update docs for audio/x-raw-float. Add "buffer-frames=0 means
11821           undefined"
11822         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11823           make it only work in NULL.
11824         * gst/gstcaps.c:
11825           don't posion NULL caps
11826         * gst/gstelement.c: (gst_element_set_time):
11827           add debugging statement
11828         * gst/gstelement.c: (gst_element_emit_found_tag),
11829         (gst_element_found_tag_func), (gst_element_found_tags):
11830         * gst/gstelement.h:
11831           These functions take const taglists
11832         * gst/gstpad.c: (gst_pad_proxy_getcaps):
11833           fix memleak
11834         * gst/gstpad.c: (gst_pad_event_default):
11835           make more effort on handling discont and clocks, g_warn if everything
11836           fails
11837         * gst/gststructure.c: (gst_structure_remove_fields),
11838         (gst_structure_remove_fields_valist):
11839         * gst/gststructure.h:
11840           add gst_structure_remove_fields(_valist)
11841         * gst/gsttag.c:
11842           fix doc glitch
11843
11844 2004-01-28  David Schleef  <ds@schleef.org>
11845
11846         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
11847         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
11848         Fix memory leakage of gst_caps_to_string().
11849
11850         Use GST_PTR_FORMAT instead of gst_caps_to_string():
11851         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
11852         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
11853         (gst_spider_identity_sink_loop_type_finding):
11854         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11855         (find_suggest):
11856         * gst/gstpad.c: (gst_pad_try_relink_filtered),
11857         (gst_pad_set_explicit_caps):
11858         * gst/parse/grammar.y:
11859
11860 2004-01-28  David Schleef  <ds@schleef.org>
11861
11862         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
11863         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
11864         * docs/random/ds/0.9-suggested-changes: Notes from Company.
11865         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
11866         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
11867         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
11868         (gst_debug_log_default), (_gst_info_printf_extension),
11869         (_gst_info_printf_extension_arginfo):  Add printf extension.
11870         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
11871         * gst/gststructure.c: (gst_structure_to_string),
11872         (_gst_structure_parse_value): Use gst_value_deserialize() and
11873         remove old code.
11874         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
11875         (gst_value_deserialize_boolean), (gst_strtoi),
11876         (gst_value_deserialize_int), (gst_value_deserialize_double),
11877         (gst_value_deserialize_string), (gst_value_deserialize): Implement
11878         a bunch of deserialize functions and gst_value_deserialize.
11879         * gst/gstvalue.h: er, _de_serialize, not unserialize
11880         * testsuite/caps/string-conversions.c: (main): We don't currently
11881         handle (float) in caps, so convert these to (double).
11882         * testsuite/debug/Makefile.am: Add new test for the printf extension
11883         * testsuite/debug/printf_extension.c: (main): same
11884
11885 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11886
11887         * docs/random/company/time:
11888           Add some docs about clocking and time
11889
11890 2004-01-28  Julien MOUTTE <julien@moutte.net>
11891
11892         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
11893
11894 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11895
11896         * docs/pwg/advanced-clock.xml:
11897         * docs/pwg/advanced-dparams.xml:
11898         * docs/pwg/advanced-events.xml:
11899         * docs/pwg/advanced-interfaces.xml:
11900         * docs/pwg/advanced-midi.xml:
11901         * docs/pwg/advanced-request.xml:
11902         * docs/pwg/advanced-scheduling.xml:
11903         * docs/pwg/advanced-tagging.xml:
11904         * docs/pwg/advanced-types.xml:
11905         * docs/pwg/appendix-checklist.xml:
11906         * docs/pwg/building-boiler.xml:
11907         * docs/pwg/building-chainfn.xml:
11908         * docs/pwg/building-filterfactory.xml:
11909         * docs/pwg/building-pads.xml:
11910         * docs/pwg/building-props.xml:
11911         * docs/pwg/building-signals.xml:
11912         * docs/pwg/building-state.xml:
11913         * docs/pwg/building-testapp.xml:
11914         * docs/pwg/intro-basics.xml:
11915         * docs/pwg/intro-preface.xml:
11916         * docs/pwg/other-autoplugger.xml:
11917         * docs/pwg/other-sink.xml:
11918         * docs/pwg/other-source.xml:
11919         * docs/pwg/titlepage.xml:
11920           fix up id's
11921
11922 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11923
11924         * docs/95NonPath:
11925         * docs/HACKING:
11926         * docs/README:
11927         * docs/building-the-docs-on-debian:
11928           collect relevant bits of doc info
11929
11930 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11931
11932         * docs/pwg/advanced_tagging.xml:
11933           Half-assed commit so Thomas can re-arrange document IDs here to be
11934           consistent, too.
11935
11936 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11937
11938         * docs/manual/autoplugging.xml:
11939         * docs/manual/bins-api.xml:
11940         * docs/manual/bins.xml:
11941         * docs/manual/buffers-api.xml:
11942         * docs/manual/buffers.xml:
11943         * docs/manual/clocks.xml:
11944         * docs/manual/components.xml:
11945         * docs/manual/cothreads.xml:
11946         * docs/manual/debugging.xml:
11947         * docs/manual/dparams-app.xml:
11948         * docs/manual/dynamic.xml:
11949         * docs/manual/elements-api.xml:
11950         * docs/manual/elements.xml:
11951         * docs/manual/factories.xml:
11952         * docs/manual/gnome.xml:
11953         * docs/manual/goals.xml:
11954         * docs/manual/helloworld.xml:
11955         * docs/manual/helloworld2.xml:
11956         * docs/manual/init-api.xml:
11957         * docs/manual/intro.xml:
11958         * docs/manual/links-api.xml:
11959         * docs/manual/links.xml:
11960         * docs/manual/manual.xml:
11961         * docs/manual/motivation.xml:
11962         * docs/manual/pads-api.xml:
11963         * docs/manual/pads.xml:
11964         * docs/manual/plugins-api.xml:
11965         * docs/manual/plugins.xml:
11966         * docs/manual/programs.xml:
11967         * docs/manual/queues.xml:
11968         * docs/manual/quotes.xml:
11969         * docs/manual/schedulers.xml:
11970         * docs/manual/states-api.xml:
11971         * docs/manual/states.xml:
11972         * docs/manual/threads.xml:
11973         * docs/manual/typedetection.xml:
11974         * docs/manual/xml.xml:
11975           use chapter, part, section or misc as id starts for all bits
11976
11977 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11978
11979         * docs/gst/gstreamer-sections.txt:
11980           Fix up TITLE of the sections
11981
11982 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11983
11984         * docs/pwg/advanced_interfaces.xml:
11985           Add documentation on propertyprobing.
11986         * docs/pwg/advanced_events.xml:
11987         * docs/pwg/advanced_tagging.xml:
11988         * docs/pwg/building_boiler.xml:
11989         * docs/pwg/building_filterfactory.xml:
11990         * docs/pwg/pwg.xml:
11991           Move filterfactory and tagging into their own chapter, add a chapter
11992           on events. all these are empty placeholders that will be filled in
11993           some day.
11994
11995 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11996
11997         * docs/pwg/advanced_interfaces.xml:
11998           Docs for mixer interface. Also a check for website uploading.
11999
12000 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12001
12002         * docs/HACKING:
12003         * docs/Makefile.am:
12004         * docs/faq/Makefile.am:
12005         * docs/gst/Makefile.am:
12006         * docs/gst/tmpl/gstelement.sgml:
12007         * docs/gst/tmpl/gstplugin.sgml:
12008         * docs/gst/tmpl/gstreamer-unused.sgml:
12009         * docs/libs/Makefile.am:
12010         * docs/manual/Makefile.am:
12011         * docs/manuals.mak:
12012         * docs/pwg/Makefile.am:
12013         * docs/upload.mak:
12014           Separate out upload target and make it similar for
12015           both docbook and gtk-doc docs
12016
12017 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12018
12019         * docs/manuals.mak:
12020           Fix upload target to work with freedesktop
12021
12022 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12023
12024         * docs/pwg/advanced_types.xml:
12025           Add notes on creating your own types.
12026         * docs/pwg/building_boiler.xml:
12027         * docs/pwg/building_pads.xml:
12028         * docs/pwg/building_state.xml:
12029           Add some stuff about how to retrieve values from structures, how
12030           that relates to types and change layout slightly again to be almost
12031           perfect.
12032
12033 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12034
12035         * docs/pwg/advanced_dparams.xml:
12036         * docs/pwg/advanced_scheduling.xml:
12037           Change index layout slightly.
12038
12039 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12040
12041         * docs/pwg/advanced_clock.xml:
12042         * docs/pwg/advanced_interfaces.xml:
12043         * docs/pwg/advanced_midi.xml:
12044           General placeholders for now.
12045         * docs/pwg/advanced_request.xml:
12046           Explanation about sometimes and request pads.
12047         * docs/pwg/advanced_scheduling.xml:
12048           Concept of bytestream, loopfunctions and schedulers.
12049         * docs/pwg/building_boiler.xml:
12050           Add something about plugin-init.
12051
12052 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12053
12054         * docs/pwg/building_pads.xml:
12055           Fix broken docbook
12056
12057 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12058
12059         * docs/pwg/advanced_interfaces.xml:
12060         * docs/pwg/pwg.xml:
12061           Add as a placeholder for future filling-in.
12062         * docs/pwg/basics_autoplugging.xml:
12063         * docs/pwg/basics_buffers.xml:
12064         * docs/pwg/basics_elements.xml:
12065         * docs/pwg/basics_events.xml:
12066         * docs/pwg/basics_plugins.xml:
12067         * docs/pwg/basics_types.xml:
12068           Remove, because unused (this is all in intro_basics.xml).
12069         * docs/pwg/building_signals.xml:
12070           Short intro to signals + reference to GObject docs - we really
12071           shouldn't go into these sort of things to deply because we don't
12072           use them that extensively anyway.
12073         * docs/pwg/building_state.xml:
12074           Explanation of states. Benjamin, please check.
12075         * docs/pwg/building_testapp.xml:
12076           Put everything in one page - putting only a few lines of content
12077           per page doesn't really make sense.
12078
12079           Time to get into the advanced topics. ;).
12080
12081 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12082
12083         * docs/pwg/advanced_types.xml:
12084           Finish documenting the current state of mimetypes.
12085         * docs/pwg/building_boiler.xml:
12086         * docs/pwg/building_chainfn.xml:
12087         * docs/pwg/building_pads.xml:
12088         * docs/pwg/building_props.xml:
12089         * docs/pwg/building_testapp.xml:
12090           Start documenting the "how to build a simple audio filter" part
12091           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12092           states and (maybe?) a short introduction to capsnego in the chapter
12093           on pads (building_pads.xml). Capsnego should probably be explained
12094           fully in advanced_capsnego.xml or so.
12095
12096 2004-01-26  David Schleef  <ds@schleef.org>
12097
12098         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12099         * gst/gstpad.h: Add new function to allow element to (somewhat)
12100         specify non-fixed caps on a pad.
12101         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12102         that I added a few weeks ago.
12103
12104 2004-01-26  David Schleef  <ds@schleef.org>
12105
12106         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12107           making try_set_caps() work with non-fixed caps.
12108
12109 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12110
12111         * docs/pwg/advanced_types.xml:
12112         * docs/pwg/intro_basics.xml:
12113         * docs/pwg/intro_preface.xml:
12114         * docs/pwg/pwg.xml:
12115         * docs/pwg/titlepage.xml:
12116           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12117           in here (docs/random/mimetypes), and will from there on work on both
12118           updating outdated parts and adding missing parts.
12119           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12120
12121 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12122
12123         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12124           policy is set
12125
12126 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12127
12128         * gst/gstelement.h:
12129           remove gst_element_factory_get_version. It doesn't exist anymore.
12130         * gst/gstplugin.c:
12131         * gst/gstplugin.h:
12132           remove gst_plugin_set_name and change gst_plugin_get_longname to
12133           gst_plugin_get_description to match code.
12134         * gst/gsterror.h:
12135           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12136         * gst/gstpad.c: (gst_pad_try_set_caps):
12137           make it work with nonfixed caps.
12138           Note that even in the nonfixed case the link function of the pad
12139           that tries to set caps isn't called.
12140
12141 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12142
12143         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12144           fix bug where buffer was not assembled correctly
12145         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12146           silence by default
12147         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12148           only seek if there's no more buffers that could work without seeking
12149
12150 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12151
12152         * gst/gsttag.c: (_gst_tag_initialize):
12153         * gst/gsttag.h:
12154           Add application tag (for encoding/muxing app).
12155
12156 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12157
12158         * autogen.sh:
12159           make autopoint force, and libtoolize not copy
12160         * common/m4/as-docbook.m4:
12161           added docbook xml catalog setup check
12162         * common/m4/gst-doc.m4:
12163           use docbook check
12164
12165 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12166
12167         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12168         * gst/gsttag.h:
12169           add GstTagFlag
12170
12171 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12172
12173         * docs/gst/gstreamer-sections.txt:
12174         * docs/gst/tmpl/gst.sgml:
12175         * docs/gst/tmpl/gstbuffer.sgml:
12176         * docs/gst/tmpl/gstclock.sgml:
12177         * docs/gst/tmpl/gstelement.sgml:
12178         * docs/gst/tmpl/gstreamer-unused.sgml:
12179         * docs/gst/tmpl/gstxml.sgml:
12180           sync latest API changes to docs
12181
12182 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12183
12184         * gst/gstpluginfeature.c:
12185           fix doc snippet
12186         * tools/gst-inspect.c: (print_element_list):
12187           fix output of typefind
12188           add GPL header
12189         * tools/gst-launch.c:
12190           add GPL header
12191
12192 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12193
12194         * gst/elements/Makefile.am:
12195         * gst/elements/gstelements.c:
12196         * gst/elements/gsttypefindelement.c:
12197         * gst/elements/gsttypefindelement.h:
12198         * po/POTFILES.in:
12199         * po/fr.po:
12200         * po/nl.po:
12201           renamed gsttypefindelement to gsttypefind, conserving CVS history
12202
12203 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12204
12205         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12206         * gst/gsttag.h:
12207           add some tags used in ogg as well
12208           fix _ in replaygain tags
12209
12210 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12211
12212         * gst/gsterror.h:
12213           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12214
12215 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12216
12217         * gst/gstelement.c: (gst_element_error_full):
12218         * gst/gstelement.h:
12219           change _extended to _full
12220
12221 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12222
12223         reviewed by: <delete if not using a buddy>
12224
12225         * docs/gst/tmpl/gst.sgml:
12226         * docs/gst/tmpl/gstbuffer.sgml:
12227         * docs/gst/tmpl/gstclock.sgml:
12228         * docs/gst/tmpl/gstelement.sgml:
12229         * docs/gst/tmpl/gstreamer-unused.sgml:
12230         * docs/gst/tmpl/gstxml.sgml:
12231         * gst/gstelement.c: (gst_element_error_full):
12232         * gst/gstelement.h:
12233
12234 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12235
12236         * gst/gstelement.h: fix _gst_element_error_printf prototype
12237
12238 2004-01-20  David Schleef  <ds@schleef.org>
12239
12240         * gst/gststructure.c: (gst_structure_to_string):
12241         Convert function to use gst_value_serialize().
12242         * gst/gstvalue.c: (gst_value_serialize_list),
12243         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12244         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12245         (gst_value_serialize_int), (gst_value_serialize_double),
12246         (gst_string_wrap), (gst_value_serialize_string),
12247         (gst_value_serialize), (gst_value_deserialize):
12248         * gst/gstvalue.h:
12249         Add implementations for serialize.
12250
12251 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12252
12253         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12254         we want to keep that one in the future or change xvidenc.c to use 
12255         another error.
12256
12257 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12258
12259         * gst/gstelement.c: (_gst_element_error_printf):
12260         * gst/gstelement.h:
12261           privatise function
12262
12263 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12264
12265         * docs/random/error:
12266           doc explaining error system
12267         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12268           cleanup
12269
12270 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12271
12272         * gst/gst-i18n-app.h:
12273         * gst/gst-i18n-lib.h:
12274           remove inclusion of config.h
12275         * po/POTFILES.in:
12276         * po/nl.po:
12277           add gst/gstelement.c
12278
12279 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12280
12281         * po/nl.po: updated Dutch translation
12282
12283 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12284
12285         * gst/gsterror.c: (_gst_core_errors_init),
12286         (_gst_library_errors_init), (_gst_resource_errors_init),
12287         (_gst_stream_errors_init):
12288         remove ending punctuation dots
12289
12290 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12291
12292         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12293         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12294         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12295         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12296         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12297         use GST_ERROR_SYSTEM
12298
12299 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12300
12301         * gst/gstelement.c: (gst_element_error_printf),
12302         (gst_element_error_extended):
12303         * gst/gstelement.h:
12304           add a helper printf function so we can have NULL values passed.
12305
12306 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12307
12308         * gst/gstelement.h:
12309           add G_STMT macros to gst_element_error, which isn't strictly
12310           necessary but people tell me to anyway.
12311
12312 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12313
12314         * gst/Makefile.am:
12315         * gst/autoplug/gstspideridentity.c:
12316         (gst_spider_identity_sink_loop_type_finding):
12317         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12318         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12319         (gst_filesink_close_file), (gst_filesink_handle_event),
12320         (gst_filesink_chain):
12321         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12322         (gst_filesrc_map_region), (gst_filesrc_get_read),
12323         (gst_filesrc_open_file):
12324         * gst/elements/gstidentity.c: (gst_identity_chain):
12325         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12326         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12327         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12328         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12329         * gst/gst.h:
12330         * gst/gst_private.h:
12331         * gst/gstelement.c: (gst_element_class_init),
12332         (gst_element_default_error), (gst_element_error_func),
12333         (gst_element_error_extended):
12334         * gst/gstelement.h:
12335         * gst/gsterror.c: (_gst_core_errors_init),
12336         (_gst_library_errors_init), (_gst_resource_errors_init),
12337         (_gst_stream_errors_init), (gst_error_get_message):
12338         * gst/gsterror.h:
12339         * gst/gstinfo.c: (_gst_debug_init):
12340         * gst/gstmarshal.list:
12341         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12342         (gst_pad_recover_caps_error), (gst_pad_pull):
12343         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12344         * gst/schedulers/gstbasicscheduler.c:
12345         (gst_basic_scheduler_chainhandler_proxy),
12346         (gst_basic_scheduler_gethandler_proxy),
12347         (gst_basic_scheduler_cothreaded_chain):
12348         * po/POTFILES.in:
12349         * po/fr.po:
12350         * po/nl.po:
12351           change error signal
12352           add error categories
12353
12354 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12355
12356         * gst/gsttag.c: (_gst_tag_initialize):
12357         * gst/gsttag.h:
12358         Add replaygain tag
12359
12360 2004-01-18  Colin Walters  <walters@verbum.org>
12361
12362         * examples/retag/retag.c: Call gst_init before processing
12363         program args.  Add g_assert to _link_many call.
12364
12365 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12366
12367         * gst/gstpad.c: (gst_pad_alloc_buffer):
12368           Return a newly allocated buffer when the pad has no peer.
12369
12370 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12371
12372         * gst/gstclock.c: (gst_clock_get_time):
12373           make it compile with gcc 2.95 again.
12374           Patch by Scott Wheeler
12375
12376 2004-01-15  David Schleef  <ds@schleef.org>
12377
12378         * gst/gstcaps.h:
12379         Added gst_caps_is_simple() macro.
12380         * testsuite/caps/caps.c: (test1):
12381         * testsuite/caps/intersect2.c: (main):
12382         * testsuite/caps/intersection.c: (main):
12383         Fixes to make 'make check' work again after removing
12384         gst_caps_is_chained().
12385
12386 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12387
12388         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12389         and additions to the MIDI document.
12390
12391 2004-01-15  David Schleef  <ds@schleef.org>
12392
12393         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12394         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12395         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12396
12397 2004-01-15  David Schleef  <ds@schleef.org>
12398
12399         * gst/gstqueue.c:
12400         * gst/gstqueue.h:
12401         Fix the spelling of "treshold" and make min_threshold actually
12402         affect the queue.
12403
12404 2004-01-15  David Schleef  <ds@schleef.org>
12405
12406         * gst/gstcaps.c:
12407         Add lots of documentation.
12408         * gst/gstcaps.h:
12409         Deprecate a few functions.
12410         * gst/gstpad.c:
12411         Removed use of deprecated functions.
12412
12413 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12414
12415         * gst/gstpad.c: (gst_pad_is_linked):
12416         * gst/gstpad.h:
12417           implement gst_pad_is_linked
12418         * gst/gstelement.h:
12419           reserve space for initiate_state_change
12420
12421 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12422
12423         * gst/autoplug/gstspideridentity.c:
12424         (gst_spider_identity_sink_loop_type_finding):
12425           break infinite loop by just returning instead of looping
12426         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12427           set event time difference correctly. Set it to 1 second instead
12428           of 100ms to be more tolerant
12429         * gst/gstelement.c: (gst_element_set_time):
12430           add debugging output
12431
12432 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12433
12434         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12435           query if buffers are inside the pool, ignore events
12436
12437 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12438
12439         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12440         (gst_clock_set_speed), (gst_clock_set_active),
12441         (gst_clock_is_active), (gst_clock_reset),
12442         (gst_clock_handle_discont):
12443         * gst/gstclock.h:
12444           deprecate old interface and disable functions that aren't in use
12445           anymore.
12446         * gst/gstelement.h:
12447         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12448         (gst_element_set_time), (gst_element_adjust_time):
12449           add concept of "element time" and functions to get/set this time.
12450         * gst/gstelement.c: (gst_element_change_state):
12451           update element time correctly.
12452         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12453           This is a debug message, not a g_critical.
12454         * gst/gstpad.c: (gst_pad_event_default):
12455           handle discontinuous events right with element time.
12456         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12457           update to clocking fixes.
12458           set clocks on elements in READY=>PAUSED. The old behaviour caused
12459           a wrong element time on the first element that started playing.
12460         * gst/schedulers/gstbasicscheduler.c:
12461         (gst_basic_scheduler_class_init):
12462         * gst/schedulers/gstoptimalscheduler.c:
12463         (gst_opt_scheduler_class_init):
12464           remove code that just implements the default behaviour.
12465         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12466           update to use new clocking functions
12467         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12468         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12469           update to test new element time.
12470         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12471           use _get_allowed_caps instead of _get_caps. This catches filtered
12472           caps correctly.
12473         * testsuite/debug/commandline.c:
12474           update for new GST_DEBUG syntax.
12475         * testsuite/threads/Makefile.am:
12476           disable a test that only works sometimes.
12477
12478 2004-01-13  Julien MOUTTE <julien@moutte.net>
12479
12480         * po/LINGUAS: Adding fr.
12481         * po/fr.po: Adding french translation.
12482
12483 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12484
12485         * gst/parse/grammar.y:
12486         * po/POTFILES.in:
12487         * po/nl.po:
12488         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12489           translate parsing error messages
12490
12491 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12492
12493         * po/POTFILES.in: adding gst-launch
12494         * po/nl.po: updated translation, all 99 strings translated
12495         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12496         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12497           fix strings for translation
12498
12499 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12500
12501         * gst/gst.c:
12502           - capitalize beginnings of popt options
12503           - fix strings for translation
12504           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12505
12506 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12507
12508         * po/README: add some notes on how to update translations
12509
12510 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12511
12512         * ABOUT-NLS: removed, is autogenerated from autopoint
12513         * autogen.sh: add autopoint stuff
12514         * configure.ac: fix up gettext stuff
12515         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12516         * gst/elements/gsttypefindelement.c: add header include
12517         * gst/gettext.h: add header, copy from system-installed header
12518         * gst/gst-i18n-app.h: to be included by each app having translations
12519         * gst/gst-i18n-lib.h: to be included by each lib having translations
12520         * gst/gst.c: (init_pre): fix up gettext calls
12521         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12522         * po/LINGUAS: the new way to specify translations present
12523         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12524         * po/Makevars: the variables filled in for GStreamer
12525         * po/POTFILES.in: added new files with translations
12526         * po/de.po: has new strings
12527         * po/nl.po: readded, has new strings
12528
12529 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12530
12531         * gst/gsttag.c: fix some strings marked for translation
12532
12533 2004-01-13  Iain <iain@prettypeople.org>
12534
12535         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12536         group when we add an element to it, cos we unref it when we remove one
12537
12538 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12539
12540         * testsuite/debug/commandline.c: (debug_not_reached):
12541         * testsuite/debug/output.c: (check_message):
12542           fix testsuite
12543
12544 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12545
12546         * examples/cutter/.cvsignore:
12547         * examples/helloworld/.cvsignore:
12548         * examples/launch/.cvsignore:
12549         * examples/manual/.cvsignore:
12550         * examples/mixer/.cvsignore:
12551         * examples/pingpong/.cvsignore:
12552         * examples/plugins/.cvsignore:
12553         * examples/queue/.cvsignore:
12554         * examples/queue2/.cvsignore:
12555         * examples/queue3/.cvsignore:
12556         * examples/queue4/.cvsignore:
12557         * examples/retag/.cvsignore:
12558         * examples/thread/.cvsignore:
12559         * examples/typefind/.cvsignore:
12560         * examples/xml/.cvsignore:
12561         * gst/.cvsignore:
12562         * gst/autoplug/.cvsignore:
12563         * gst/elements/.cvsignore:
12564         * gst/indexers/.cvsignore:
12565         * gst/parse/.cvsignore:
12566         * gst/registries/.cvsignore:
12567         * gst/schedulers/.cvsignore:
12568         * libs/gst/bytestream/.cvsignore:
12569         * libs/gst/control/.cvsignore:
12570         * libs/gst/getbits/.cvsignore:
12571         * tests/.cvsignore:
12572         * tests/bufspeed/.cvsignore:
12573         * tests/instantiate/.cvsignore:
12574         * tests/memchunk/.cvsignore:
12575         * tests/muxing/.cvsignore:
12576         * tests/sched/.cvsignore:
12577         * tests/seeking/.cvsignore:
12578         * tests/threadstate/.cvsignore:
12579         * testsuite/.cvsignore:
12580         * testsuite/caps/.cvsignore:
12581         * testsuite/cleanup/.cvsignore:
12582         * testsuite/dynparams/.cvsignore:
12583         * testsuite/plugin/.cvsignore:
12584         * tools/.cvsignore:
12585           update - this is huge, because it includes *.bb, *.bbg and *.da files
12586           which are generated for gcov.
12587
12588 2004-01-11  David Schleef  <ds@schleef.org>
12589
12590         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12591         a function to parse integers in ways that strto[u]l() does not.
12592
12593 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12594
12595         * tools/gst-inspect.c: (print_caps):
12596           improve output of caps a bit
12597
12598 2004-01-11  David Schleef  <ds@schleef.org>
12599
12600         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12601         inherit correct flags (READONLY and DONTKEEP).
12602
12603 2004-01-11  David Schleef  <ds@schleef.org>
12604
12605         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12606         (gst_filesrc_map_region):
12607         * gst/gstbuffer.c: (_gst_buffer_initialize),
12608         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12609         (gst_buffer_new), (gst_buffer_create_sub),
12610         (gst_buffer_is_span_fast), (gst_buffer_span):
12611         * gst/gstbuffer.h:
12612         Change GstBuffer private structure element names. (all files)
12613         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12614         (gst_queue_link):
12615         * gst/gstqueue.h:
12616         Implement getcaps/pad_link functions that handle the case where
12617         there are data in the queue.
12618
12619 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12620
12621         * gst/elements/gstbufferstore.c:
12622           initialize debugging structure correctly
12623         * gst/elements/gsttee.c: (gst_tee_set_property):
12624           g_object_notify when property was changed
12625         * gst/elements/gsttypefindelement.c:
12626         (gst_type_find_element_change_state):
12627           clear caps correctly
12628
12629 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12630
12631         * gst/gstqueue.c: (gst_queue_init):
12632           Use better defaults for when a queue should block. This
12633           gets rid of jerky playback for quite a few files.
12634           It takes more memory.
12635
12636 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12637
12638         (gst_xml_registry_parse_padtemplate):
12639           make critical message slightly more useful
12640
12641 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12642
12643         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12644         (gst_debug_message_get), (gst_debug_log_default):
12645         * gst/gstinfo.h:
12646           Change gst_debug_log(_valist) to take a const format string.
12647           Change prototype of log function and functions using those to 
12648           take a GstDebugMessage instead of a string that requires using
12649           gst_debug_message_get.
12650
12651 2004-01-08  David Schleef  <ds@schleef.org>
12652
12653         * Makefile.am:
12654         * configure.ac:
12655         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12656         and -ftest-coverage, which allows gcov to show information about
12657         testsuite coverage.
12658
12659 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12660
12661         * gst/gstutils.h:
12662           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12663           GST_PARENT_CALL_WITH_DEFAULT
12664         * gst/elements/gstaggregator.c: 
12665         * gst/elements/gstbufferstore.c: 
12666         * gst/elements/gstfakesink.c: 
12667         * gst/elements/gstfakesrc.c: 
12668         * gst/elements/gstfdsink.c: 
12669         * gst/elements/gstfdsrc.c: 
12670         * gst/elements/gstfilesink.c: 
12671         * gst/elements/gstfilesrc.c: 
12672         * gst/elements/gstidentity.c: 
12673         * gst/elements/gstmd5sink.c: 
12674         * gst/elements/gstmultidisksrc.c:
12675         * gst/elements/gstpipefilter.c: 
12676         * gst/elements/gstshaper.c:
12677         * gst/elements/gststatistics.c:
12678         * gst/elements/gsttee.c:
12679         * gst/elements/gsttypefindelement.c:
12680           use them.
12681
12682 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
12683
12684         * docs/gst/gstreamer-docs.sgml: remove props
12685         * docs/gst/gstreamer-sections.txt: remove props
12686         * docs/gst/tmpl/gst.sgml:
12687         * docs/gst/tmpl/gstbin.sgml:
12688         * docs/gst/tmpl/gstbuffer.sgml:
12689         * docs/gst/tmpl/gstcaps.sgml:
12690         * docs/gst/tmpl/gstclock.sgml:
12691         * docs/gst/tmpl/gstelement.sgml:
12692         * docs/gst/tmpl/gstindex.sgml:
12693         * docs/gst/tmpl/gstobject.sgml:
12694         * docs/gst/tmpl/gstpad.sgml:
12695         * docs/gst/tmpl/gstpadtemplate.sgml:
12696         * docs/gst/tmpl/gstreamer-unused.sgml:
12697         * docs/gst/tmpl/gstthread.sgml:
12698         * docs/gst/tmpl/gstxml.sgml:
12699           sync with code reorganization
12700
12701 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
12702
12703         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12704         Make the 'Could not find compatible pad' message more informative.
12705
12706 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12707                                                                                 
12708         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
12709           Fix for if we pass NULL as property to location.
12710         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
12711         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
12712           Fix for instantiate-test (see below).
12713         * gst/gststructure.c: (_gst_structure_parse_value):
12714           Fix compile error on gcc-2.96.
12715         * configure.ac:
12716         * tests/Makefile.am:
12717         * tests/instantiate/Makefile.am:
12718         * tests/instantiate/create.c: (create_all_elements), (main):
12719           Add a test that instantiates all elements. This makes it easy to
12720           track dead code for old API/design (like setting event functions
12721           on sink pads and so on).
12722
12723 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
12724
12725         * gst/gstcaps.c: (gst_caps_append_structure):
12726           Move the poisoning to allow a NULL structure
12727         * gst/gstevent.c: (_gst_event_free):
12728           When freeing a navigation event, free the structure
12729           also
12730
12731 2004-01-04  David Schleef  <ds@schleef.org>
12732
12733         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12734         Remove usage of gst_pad_proxy_fixate.
12735         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
12736         (gst_caps_split_one), (gst_caps_replace):
12737         Add poisoning code.
12738         * gst/gstmarshal.list:
12739         Add pointer__pointer for fixate signal
12740         * gst/gstpad.c: (gst_real_pad_class_init),
12741         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12742         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
12743         (gst_pad_set_explicit_caps), (gst_pad_template_new):
12744         Add poisoning code. Add fixate signal on RealPad. Change
12745         set_explicit_caps() to take const GstCaps, like try_set_caps().
12746         * gst/gstpad.h:
12747         * testsuite/caps/Makefile.am:
12748         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
12749
12750 2004-01-03  David Schleef  <ds@schleef.org>
12751
12752         * gst/elements/gsttypefindelement.c:
12753         (gst_type_find_element_have_type), (gst_type_find_element_init):
12754         Use gst_pad_use_explicit_caps for src pad.
12755         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
12756         before using it.
12757
12758 2004-01-03  David Schleef  <ds@schleef.org>
12759
12760         * gst/gstelement.c: (gst_element_link_pads_filtered),
12761         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
12762         that linking was successful.
12763         * gst/gstpad.c: (gst_pad_link_free),
12764         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
12765         (gst_pad_link_try), (gst_pad_link_unnegotiate),
12766         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
12767         GstPadLinkReturn correctly between functions, and don't fail
12768         when DELAYED is used (DELAYED is very important).  Better
12769         cleanup on unlinking and unnegotiation.  Should fix some spider
12770         bugs.
12771
12772 2004-01-02  David Schleef  <ds@schleef.org>
12773
12774         * gst/gstelement.c: (gst_element_class_init),
12775         (gst_element_base_class_init): ->padtemplates should be cleared
12776         in base_init, since we need to have a fresh list for every
12777         class.  (Alternately, we chould copy the list and share the
12778         actual pad templates (not the list), but that would require
12779         changing every plugin to move pad template registration from
12780         base_init to class_init.)
12781
12782 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12783
12784         * gst/gstelement.c: (gst_element_class_add_pad_template):
12785           Refuse registering a pad template if another pad template
12786           with the same name already exists (#114715).
12787
12788 2004-01-02  David Schleef  <ds@schleef.org>
12789
12790         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
12791         (gst_caps_is_equal_fixed): Add new function.
12792         * gst/gstcaps.h: ditto.
12793         * gst/gstpad.c: (gst_real_pad_class_init),
12794         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
12795         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
12796         check new caps against existing caps -- if they're the same, return
12797         OK without renegotiating.  caps-nego-failed signal fixed so that
12798         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
12799         to save an extra caps copy.  Don't complete negotiation if a pad
12800         link function returns DELAYED.
12801
12802 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12803
12804         * gst/gstpad.c: (gst_pad_try_relink_filtered):
12805           Fix wrong g_return_if_fail
12806
12807 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
12808
12809         * gst/gstbin.c: (gst_bin_class_init):
12810         Change the marshalling of element_added/element_removed
12811         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
12812         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
12813
12814 2004-01-01  David Schleef  <ds@schleef.org>
12815
12816         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12817         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
12818         (gst_pad_use_explicit_caps):
12819         * gst/gstpad.h:
12820         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
12821         to use an internal getcaps and link fuction so that negotiation
12822         always results in the explicitly set caps.
12823         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
12824         are particularly useful for decoders.
12825
12826 2003-12-31  David Schleef  <ds@schleef.org>
12827
12828         * gst/elements/gstidentity.c: (gst_identity_class_init),
12829         (gst_identity_init), (gst_identity_chain),
12830         (gst_identity_set_property), (gst_identity_get_property):
12831         * gst/elements/gstidentity.h:
12832         * gst/gstqueue.c: (gst_queue_init):
12833           Negotiation fixes.
12834
12835 2003-12-31  David Schleef  <ds@schleef.org>
12836
12837         * gst/gstcaps.c: (gst_caps_intersect),
12838         (_gst_caps_normalize_foreach), (gst_caps_normalize):
12839           Implement gst_caps_normalize().
12840         * testsuite/caps/normalisation.c: (main):
12841           Add an additional test
12842
12843 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12844
12845         * gst/gstqueue.c: (gst_queue_init):
12846           use gst_pad_proxy_getcaps()
12847
12848 2003-12-31  David Schleef  <ds@schleef.org>
12849
12850         * gst/elements/gstshaper.c: (gst_shaper_link):
12851         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12852         * gst/gstqueue.c: (gst_queue_link):
12853           Negotiation fixes.
12854
12855 2003-12-31  David Schleef  <ds@schleef.org>
12856
12857         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
12858         * gst/gstpad.h: Add functions that are useful as default pad
12859         link and fixate functions for elements.
12860
12861 2003-12-30  David Schleef  <ds@schleef.org>
12862
12863         * gst/gstpad.c: (gst_pad_link_try):
12864           Fix segfault when attempting to return to old caps
12865
12866 2003-12-29  David Schleef  <ds@schleef.org>
12867
12868         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
12869         (gst_caps_structure_simplify), (gst_caps_simplify):
12870         * gst/gstcaps.h:
12871           Add simplify function
12872         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
12873         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
12874         * gst/gstpad.h:
12875           Copy over srcnotify, sinknotify when calling old pad_link
12876           functions.  Add new is_negotiated() function.
12877         * gst/gststructure.c: (gst_structure_copy):
12878           Fix an incredibly stupid bug that should have been noticed
12879           weeks ago.  _copy() returned the argument, not the new copy.
12880
12881 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12882
12883         * gst/gstcaps.c: (gst_caps_append):
12884           add sanity checks
12885         * gst/gstcaps.h: (gst_caps_debug):
12886           remove, it doesn't exist anymore.
12887         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
12888         (gst_element_threadsafe_properties_post_run):
12889           make debugging messages not clutter up THREAD debug category
12890         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
12891         (gst_element_change_state):
12892           update to new caps API
12893         * gst/gstinterface.c: (gst_implements_interface_cast):
12894           don't put vital code in g_return_if_fail
12895         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
12896         (gst_pad_link_filtered):
12897           add pst_pad_try_link and use it.
12898         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
12899           implement correctly, deprecate first one.
12900         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
12901           add and implement.
12902         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
12903           implement.
12904         (gst_pad_get_negotiated_caps):
12905           add and implement. Make GST_PAD_CAPS call this function.
12906         (gst_pad_get_caps):
12907           remove unneeded check..
12908         (gst_pad_recover_caps_error):
12909           disable, always return FALSE.
12910         (gst_real_pad_dispose):
12911           don't free caps and appfilter anymore, they're unused.
12912         * gst/gstpad.h:
12913           Reflect changes mentioned above.
12914         * gst/gstsystemclock.c: (gst_system_clock_wait):
12915           Make 'clock is way behind' a debugging message.
12916         * gst/gstthread.c: (gst_thread_change_state):
12917           Fix debugging message
12918
12919 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12920
12921         * gst/gstinfo.h:
12922           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
12923         * docs/gst/tmpl/gstreamer-unused.sgml:
12924           removed all traces of cvs conflicts
12925
12926 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12927
12928         * configure.ac:
12929         * gst/schedulers/cothreads_compat.h:
12930         * libs/Makefile.am:
12931           remove last instances of wingo cothread usage
12932
12933 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12934
12935         * gst/gstplugin.c:
12936         * gst/gstversion.h.in:
12937         * gst/parse/grammar.y:
12938           change comment block from /** to /* when not gtk-doc comments
12939
12940 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12941
12942         * gst/gst.c: whitespace and doc style fixes
12943
12944 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12945
12946         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
12947
12948 2003-12-24  Colin Walters  <walters@verbum.org>
12949
12950         * gst/elements/gsttypefindelement.c:
12951           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
12952           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
12953           Don't double-free caps.
12954
12955 2003-12-23  David Schleef  <ds@schleef.org>
12956
12957         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
12958           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
12959           Many little fixes and additions of debug statements to
12960           get rhythmbox working.
12961
12962 2003-12-23  Colin Walters  <walters@verbum.org>
12963
12964         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
12965         Use GST_PAD_LINK_SUCCESSFUL.
12966
12967 2003-12-23  David Schleef  <ds@schleef.org>
12968
12969         * gst/elements/gstaggregator.c:
12970         * gst/elements/gsttee.c:
12971           Use gst_pad_proxy_getcaps().
12972         * gst/gstpad.c:
12973         * gst/gstpad.h:
12974           Add gst_pad_proxy_getcaps(), which filter elements can use
12975           as a generic getcaps implementation.
12976           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
12977           was advertised.
12978
12979 2003-12-23  David Schleef  <ds@schleef.org>
12980
12981         * gst/gstpad.c:
12982           Rearrange/rewrite much of the pad negotiation code, since it
12983           resembled pasta.  This actually changes the way some
12984           negotiation works, since the previous code was inconsistent
12985           depending on how it was invoked.  Add (internal) structure
12986           GstPadLink, which is used to hold some information (more in
12987           the future) about the link between two pads.  Fixes a number
12988           of bugs, including random lossage of filter caps when the
12989           initial negotiation is delayed.  A few functions are still
12990           unimplemented.
12991         * gst/gstpad.h:
12992           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
12993           these when testing GstPadLinkReturn values instead of comparing
12994           directly.
12995
12996 2003-12-23  David Schleef  <ds@schleef.org>
12997
12998         * gst/gstvalue.c: 
12999         * gst/gstvalue.h:
13000           Rearrange lots of code.  Change registration of compare function
13001           into registration of compare/serialize/deserialize functions.
13002           Doesn't include implementation of gst_value_[de]serialize(),
13003           but that should be easy.
13004
13005 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13006
13007         * docs/gst/gstreamer-sections.txt:
13008         * docs/gst/tmpl/gstprops.sgml: removed
13009         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13010           David removed props and caps code, so let's remove their docs as well.
13011           Removed all no longer existing symbols from gstreamer-sections.txt
13012           
13013 2003-12-22  Colin Walters  <walters@verbum.org>
13014
13015         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13016           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13017           of tags directly.
13018
13019 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13020
13021         * gst/elements/gstelements.c:
13022           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13023         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13024           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13025           gst_caps (peer).
13026
13027 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13028
13029         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13030         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13031         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13032         (gst_spider_identity_sink_loop_type_finding):
13033         * gst/autoplug/gstspideridentity.h:
13034           Fix autoplugging in spider element, so it works with new caps.
13035           This was mainly caused by identifying empty caps incorrectly.
13036
13037 2003-12-22  David Schleef  <ds@schleef.org>
13038
13039         * gststructure.c, gstvalue.c, gstvalue.h: Add
13040           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13041           using g_value_copy()
13042
13043 2003-12-21  David Schleef  <ds@schleef.org>
13044
13045         * many, many files: Merge CAPS branch.  This includes:
13046           - implemention of GstValue and several GstValue types
13047           - implemention of GstStructure
13048           - entire rewrite of GstCaps
13049           - removal of GstProps
13050           - many changes to GstPad to compensate for new caps paradigm
13051           - removal of GstBufferpool
13052         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13053         gstvalue.h, gst/gstcaps[2]*.[ch]:
13054           - rename gstcaps2.[ch] to gstcaps.[ch]
13055
13056 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13057
13058         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13059         (gst_queue_chain), (gst_queue_handle_src_event):
13060           implement timeout for sending events. Workaround for if the
13061           pipeline on this queue is not passing any data.
13062
13063 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13064                                                                                 
13065         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13066         * moved CVS to freedesktop.org
13067