docs/gst/gstreamer.types: Remove deleted types.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-18  Wim Taymans  <wim@fluendo.com>
2
3         * docs/gst/gstreamer.types:
4         Remove deleted types.
5
6 2005-07-18  Wim Taymans  <wim@fluendo.com>
7
8         * check/elements/gstfakesrc.c: (GST_START_TEST):
9         * configure.ac:
10         * gst/Makefile.am:
11         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
12         (init_popt_callback):
13         * gst/gst.h:
14         * gst/gst_private.h:
15         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
16         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
17         * gst/gstbin.h:
18         * gst/gstbus.h:
19         * gst/gstconfig.h.in:
20         * gst/gstelement.c: (gst_element_class_init),
21         (gst_element_set_base_time), (gst_element_get_base_time),
22         (iterator_fold_with_resync), (gst_element_change_state),
23         (gst_element_dispose), (gst_element_get_bus):
24         * gst/gstelement.h:
25         * gst/gstelementfactory.h:
26         * gst/gsterror.c: (_gst_core_errors_init):
27         * gst/gsterror.h:
28         * gst/gstevent.h:
29         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
30         * gst/gstindex.c:
31         * gst/gstinfo.c: (_gst_debug_init):
32         * gst/gstmessage.c: (_gst_message_copy):
33         * gst/gstmessage.h:
34         * gst/gstminiobject.h:
35         * gst/gstobject.c:
36         * gst/gstobject.h:
37         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
38         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
39         * gst/gstpad.h:
40         * gst/gstparse.h:
41         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
42         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
43         (gst_pipeline_get_last_stream_time):
44         * gst/gstpipeline.h:
45         * gst/gstpluginfeature.h:
46         * gst/gstquery.h:
47         * gst/gstscheduler.c:
48         * gst/gstscheduler.h:
49         * gst/gststructure.h:
50         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
51         (gst_task_finalize), (gst_task_func), (gst_task_create),
52         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
53         (gst_task_stop), (gst_task_pause):
54         * gst/gsttask.h:
55         * gst/gsttypefind.h:
56         * gst/gsttypes.h:
57         * gst/registries/gstlibxmlregistry.c: (load_feature),
58         (gst_xml_registry_load), (gst_xml_registry_save_feature):
59         * gst/registries/gstxmlregistry.c:
60         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
61         * gst/schedulers/threadscheduler.c:
62         * libs/gst/control/dparammanager.h:
63         * tools/gst-inspect.c: (print_element_list),
64         (print_plugin_features), (print_element_features):
65         * tools/gst-xmlinspect.c: (print_element_list),
66         (print_plugin_info), (main):
67         Removed plugable schedulers.
68         Removed Scheduler/Manager from elements.
69         Removed gsttypes.h, rearranged includes.
70         Removed dependency pad<->element, element<>pipeline, and
71         various others,  fix includes.
72         implement gst_pad_get_parent() with gst_object_get_parent()
73         Make GstTask sefcontained.
74         Fix _get_state() on GstBin, it did not return ASYNC with a 0
75         timeout.
76         Fix endless loop in iterator_fold_with_resync.
77
78
79 2005-07-18  Wim Taymans  <wim@fluendo.com>
80
81         * gst/Makefile.am:
82         * gst/gstarch.h:
83         Remove old file.
84
85 2005-07-18  Wim Taymans  <wim@fluendo.com>
86
87         * gst/Makefile.am:
88         No more cothreads.h
89
90 2005-07-18  Wim Taymans  <wim@fluendo.com>
91
92         * gst/cothreads.c:
93         * gst/cothreads.h:
94         Let's remove these.
95
96 2005-07-18  Wim Taymans  <wim@fluendo.com>
97
98         * docs/design/part-dynamic.txt:
99         * docs/design/part-events.txt:
100         * docs/design/part-seeking.txt:
101         Some more docs in the works.
102
103         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
104         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
105         (gst_base_transform_setcaps), (gst_base_transform_get_size),
106         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
107         (gst_base_transform_handle_buffer),
108         (gst_base_transform_sink_activate_push),
109         (gst_base_transform_src_activate_pull),
110         (gst_base_transform_set_passthrough),
111         (gst_base_transform_is_passthrough):
112         Refcounting fixes.
113
114         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
115         Cleanups.
116
117         * gst/gstevent.c: (gst_event_finalize):
118         Set SRC to NULL.
119
120         * gst/gstutils.c: (gst_element_unlink),
121         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
122         (gst_pad_proxy_setcaps):
123         * gst/gstutils.h:
124         Add _get_parent_element() to get a pads parent as an element.
125
126 2005-07-18  Wim Taymans  <wim@fluendo.com>
127
128         * check/gst/gstbin.c: (GST_START_TEST):
129         Remove bogus test.
130
131 2005-07-18  Wim Taymans  <wim@fluendo.com>
132
133         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
134         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
135         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
136         (gst_base_sink_event), (gst_base_sink_do_sync),
137         (gst_base_sink_chain), (gst_base_sink_loop),
138         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
139         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
140         Refcounting fixes.
141         Fix logic for returning ASYNC when not prerolled.
142
143 2005-07-18  Wim Taymans  <wim@fluendo.com>
144
145         * gst/gstqueue.c: (gst_queue_handle_sink_event):
146         Fix nasty refcount bug.
147
148 2005-07-16 Philippe Khalaf <burger@speedy.org>
149         * gst/elements/gstfdsrc.c:
150         * gst/elements/gstfdsrc.h:
151         * gst/elements/gstelements.c:
152         * gst/elements/Makefile.am:
153         Ported fdsrc to 0.9.
154
155 2005-07-16  Wim Taymans  <wim@fluendo.com>
156
157         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
158         (gst_base_sink_do_sync):
159         Fix compile error.
160
161 2005-07-16  Wim Taymans  <wim@fluendo.com>
162
163         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
164         (gst_base_sink_event), (gst_base_sink_get_times),
165         (gst_base_sink_do_sync), (gst_base_sink_change_state):
166         * gst/base/gstbasesink.h:
167         Store and use discont values when syncing buffers as described
168         in design docs.
169         
170         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
171         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
172         (gst_base_src_activate_push):
173         Push discont event when starting.
174
175         * gst/elements/gstidentity.c: (gst_identity_transform):
176         Small cleanups.
177
178         * gst/gstbin.c: (gst_bin_change_state):
179         Small cleanups in base_time  distribution.
180
181         * gst/gstelement.c: (gst_element_set_base_time),
182         (gst_element_get_base_time), (gst_element_change_state):
183         * gst/gstelement.h:
184         Added methods for the base_time of the element.
185         Some MT fixes.
186
187         * gst/gstpipeline.c: (gst_pipeline_send_event),
188         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
189         (gst_pipeline_get_last_stream_time):
190         * gst/gstpipeline.h:
191         MT fixes.
192         Handle seeking as described in design doc, remove stream_time
193         hack.
194         Cleanups clock and stream_time selection code. Added accessors
195         for the stream_time.
196         
197
198 2005-07-16  Andy Wingo  <wingo@pobox.com>
199
200         * gst/gsterror.c (_gst_core_errors_init): Use the magic word..
201
202 2005-07-16  Wim Taymans  <wim@fluendo.com>
203
204         * check/gst/gstbin.c: (GST_START_TEST):
205         Make elements silent as the deep_notify refs the
206         parent, which might make the test fail.
207
208         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
209         Don't hold the lock for too long.
210
211 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
212
213         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
214           Don't unref the caps we passed to gst_caps_make_writable() after
215           passing them. gst_caps_make_writable() will do that for us.
216
217 2005-07-15  Andy Wingo  <wingo@pobox.com>
218
219         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
220         (#157311).
221
222         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
223         own marshalling function for the handoff signal. Properly type the
224         buffer as a buffer. Fixes some warnings. Should do a more general
225         solution.
226         (gst_identity_class_init): Plug into the right marshaller.
227
228 2005-07-15  Wim Taymans  <wim@fluendo.com>
229
230         * docs/design/part-TODO.txt:
231         * docs/design/part-clocks.txt:
232         * docs/design/part-element-sink.txt:
233         * docs/design/part-events.txt:
234         * docs/design/part-gstpipeline.txt:
235         Updated docs, mostly DISCONT related.
236
237 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
238
239         * docs/pwg/building-pads.xml:
240           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
241
242 2005-07-15  Andy Wingo  <wingo@pobox.com>
243
244         * tools/gst-typefind.c: Update, add copyright block.
245
246         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
247         Normalize and truncate caps before fixation.
248
249         * gst/gstcaps.h:
250         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
251         discards all but the first structure from its argument.
252
253 2005-07-15  Wim Taymans  <wim@fluendo.com>
254
255         * gst/base/gstbasetransform.c: (gst_base_transform_init),
256         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
257         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
258         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
259         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
260         (gst_base_transform_chain), (gst_base_transform_change_state),
261         (gst_base_transform_set_passthrough),
262         (gst_base_transform_is_passthrough):
263         * gst/base/gstbasetransform.h:
264         Make passthrough work using the bufferpools.
265         Changed API a bit, subclasses have to write into a buffer
266         provided by the base class.
267         More debug info in nego functions.
268         
269         * gst/elements/gstidentity.c: (gst_identity_init),
270         (gst_identity_transform):
271         Port to new base class.
272
273 2005-07-15  Wim Taymans  <wim@fluendo.com>
274
275         * gst/gstmessage.c: (gst_message_new_state_changed):
276         * tools/gst-launch.c: (event_loop), (main):
277         Totally dump messages in -launch with the -m option.
278         Fix message name for State messages,
279
280 2005-07-14  Wim Taymans  <wim@fluendo.com>
281
282         * gst/base/gstbasesrc.c: (gst_base_src_loop):
283         Post error messages on errors.
284
285 2005-07-14  Wim Taymans  <wim@fluendo.com>
286
287         * gst/gstcaps.c: (gst_caps_do_simplify):
288         Remove debug info.
289
290         * gst/gsterror.h:
291         Define error for stream stopped.
292
293         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
294         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
295         Do proper return values.
296
297         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
298         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
299         (gst_pad_get_range):
300         Better return values.
301
302         * gst/gstpad.h:
303         Reorganise return values, add macro to check for fatal errors.
304
305         * gst/gstqueue.c: (gst_queue_chain):
306         Return proper GstFlowReturn values,
307
308 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
309
310         * docs/gst/gstreamer-sections.txt:
311         * docs/gst/gstreamer.types:
312         * docs/gst/tmpl/gst.sgml:
313         * docs/gst/tmpl/gstbasesink.sgml:
314         * docs/gst/tmpl/gstbasesrc.sgml:
315         * docs/gst/tmpl/gstbasetransform.sgml:
316         * docs/gst/tmpl/gstbin.sgml:
317         * docs/gst/tmpl/gstbuffer.sgml:
318         * docs/gst/tmpl/gstcaps.sgml:
319         * docs/gst/tmpl/gstclock.sgml:
320         * docs/gst/tmpl/gstcompat.sgml:
321         * docs/gst/tmpl/gstconfig.sgml:
322         * docs/gst/tmpl/gstelement.sgml:
323         * docs/gst/tmpl/gstelementdetails.sgml:
324         * docs/gst/tmpl/gstelementfactory.sgml:
325         * docs/gst/tmpl/gstenumtypes.sgml:
326         * docs/gst/tmpl/gsterror.sgml:
327         * docs/gst/tmpl/gstevent.sgml:
328         * docs/gst/tmpl/gstfakesink.sgml:
329         * docs/gst/tmpl/gstfakesrc.sgml:
330         * docs/gst/tmpl/gstfilesink.sgml:
331         * docs/gst/tmpl/gstfilesrc.sgml:
332         * docs/gst/tmpl/gstfilter.sgml:
333         * docs/gst/tmpl/gstformat.sgml:
334         * docs/gst/tmpl/gstghostpad.sgml:
335         * docs/gst/tmpl/gstimplementsinterface.sgml:
336         * docs/gst/tmpl/gstindex.sgml:
337         * docs/gst/tmpl/gstindexfactory.sgml:
338         * docs/gst/tmpl/gstinfo.sgml:
339         * docs/gst/tmpl/gstiterator.sgml:
340         * docs/gst/tmpl/gstmacros.sgml:
341         * docs/gst/tmpl/gstmemchunk.sgml:
342         * docs/gst/tmpl/gstminiobject.sgml:
343         * docs/gst/tmpl/gstobject.sgml:
344         * docs/gst/tmpl/gstpad.sgml:
345         * docs/gst/tmpl/gstpadtemplate.sgml:
346         * docs/gst/tmpl/gstparse.sgml:
347         * docs/gst/tmpl/gstpipeline.sgml:
348         * docs/gst/tmpl/gstplugin.sgml:
349         * docs/gst/tmpl/gstpluginfeature.sgml:
350         * docs/gst/tmpl/gstquery.sgml:
351         * docs/gst/tmpl/gstqueue.sgml:
352         * docs/gst/tmpl/gstregistry.sgml:
353         * docs/gst/tmpl/gstregistrypool.sgml:
354         * docs/gst/tmpl/gstscheduler.sgml:
355         * docs/gst/tmpl/gstschedulerfactory.sgml:
356         * docs/gst/tmpl/gststructure.sgml:
357         * docs/gst/tmpl/gstsystemclock.sgml:
358         * docs/gst/tmpl/gsttaglist.sgml:
359         * docs/gst/tmpl/gsttagsetter.sgml:
360         * docs/gst/tmpl/gsttrace.sgml:
361         * docs/gst/tmpl/gsttrashstack.sgml:
362         * docs/gst/tmpl/gsttypefind.sgml:
363         * docs/gst/tmpl/gsttypefindfactory.sgml:
364         * docs/gst/tmpl/gsttypes.sgml:
365         * docs/gst/tmpl/gsturihandler.sgml:
366         * docs/gst/tmpl/gsturitype.sgml:
367         * docs/gst/tmpl/gstutils.sgml:
368         * docs/gst/tmpl/gstvalue.sgml:
369         * docs/gst/tmpl/gstversion.sgml:
370         * docs/gst/tmpl/gstxml.sgml:
371         * docs/libs/tmpl/gstcontrol.sgml:
372         * docs/libs/tmpl/gstdataprotocol.sgml:
373         * docs/libs/tmpl/gstdparam.sgml:
374         * docs/libs/tmpl/gstdplinint.sgml:
375         * docs/libs/tmpl/gstdpman.sgml:
376         * docs/libs/tmpl/gstdpsmooth.sgml:
377         * docs/libs/tmpl/gstgetbits.sgml:
378         * docs/libs/tmpl/gstunitconvert.sgml:
379         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
380         (gst_push_src_base_init), (gst_push_src_class_init),
381         (gst_push_src_init), (gst_push_src_create):
382         * gst/base/gstpushsrc.h:
383         * gst/elements/gstelements.c:
384         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
385         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
386         (gst_fake_sink_init), (gst_fake_sink_set_property),
387         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
388         (gst_fake_sink_event), (gst_fake_sink_preroll),
389         (gst_fake_sink_render), (gst_fake_sink_change_state):
390         * gst/elements/gstfakesink.h:
391         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
392         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
393         (gst_fake_src_base_init), (gst_fake_src_class_init),
394         (gst_fake_src_init), (gst_fake_src_event_handler),
395         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
396         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
397         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
398         (gst_fake_src_create_buffer), (gst_fake_src_create),
399         (gst_fake_src_start), (gst_fake_src_stop):
400         * gst/elements/gstfakesrc.h:
401         * gst/elements/gstfilesink.c: (_do_init),
402         (gst_file_sink_base_init), (gst_file_sink_class_init),
403         (gst_file_sink_init), (gst_file_sink_dispose),
404         (gst_file_sink_set_location), (gst_file_sink_set_property),
405         (gst_file_sink_get_property), (gst_file_sink_open_file),
406         (gst_file_sink_close_file), (gst_file_sink_query),
407         (gst_file_sink_event), (gst_file_sink_render),
408         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
409         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
410         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
411         * gst/elements/gstfilesink.h:
412         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
413         (gst_file_src_class_init), (gst_file_src_init),
414         (gst_file_src_finalize), (gst_file_src_set_location),
415         (gst_file_src_set_property), (gst_file_src_get_property),
416         (gst_file_src_map_region), (gst_file_src_map_small_region),
417         (gst_file_src_create_mmap), (gst_file_src_create_read),
418         (gst_file_src_create), (gst_file_src_is_seekable),
419         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
420         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
421         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
422         (gst_file_src_uri_handler_init):
423         * gst/elements/gstfilesrc.h:
424           more autistic cleanliness in functions/names/defines
425
426 2005-07-13  Andy Wingo  <wingo@pobox.com>
427
428         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
429         source couldn't negotiate.
430
431         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
432         connections again.
433
434         * gst/gstutils.h:
435         * gst/gstutils.c (gst_element_link_pads_filtered): New old
436         function. I am channeling Hades. Put your boots on suckers!!!
437
438 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
439
440         * testsuite/caps/Makefile.am:
441         * testsuite/caps/value_compare.c:
442         * testsuite/caps/value_intersect.c:
443         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
444           move two testsuite apps over to the check dir
445
446 2005-07-12  Wim Taymans  <wim@fluendo.com>
447
448         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
449         Added more debug info in the negotiate process.
450
451         * gst/gstmessage.h:
452         Prepare for segment playback.
453
454         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
455         Better debugging.
456
457         * gst/gstutils.c:
458         Some more docs.
459
460         * tools/gst-launch.c: (main):
461         NULL pipeline on errors.
462
463 2005-07-12  Andy Wingo  <wingo@pobox.com>
464
465         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
466         not it comes from a malloc region. Make sure our copy gets freed.
467
468 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
469
470         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
471         * check/gst/gstmessage.c: (GST_START_TEST):
472         * check/gst/gststructure.c: (GST_START_TEST),
473         (gst_structure_suite), (main):
474           more testing
475         * gst/gstelement.c: (gst_element_message_full):
476           clean up GError and debug string now that they get copied
477         * gst/gstmessage.c: (gst_message_new_error),
478         (gst_message_new_warning), (gst_message_parse_error),
479         (gst_message_parse_warning):
480           use GST_TYPE_G_ERROR for structure_new, and take copies of
481           arguments, so that we don't mess up refcounting
482
483 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
484
485         * check/Makefile.am:
486           add per-test valgrind targets
487         * check/gst-libs/gdp.c: (GST_START_TEST),
488         (gst_data_protocol_suite), (main):
489           clean up
490
491 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
492
493         * check/Makefile.am:
494           instate more valgrindable tests
495         * check/elements/gstfakesrc.c: (chain_func), (event_func),
496         (GST_START_TEST), (fakesrc_suite):
497         * check/gst/gstpad.c: (GST_START_TEST):
498         * check/gst/gststructure.c: (GST_START_TEST):
499           fix test leaks
500         * docs/gst/tmpl/gstminiobject.sgml:
501         * gst/gstpad.c: (gst_pad_finalize):
502           fix the static mutex leak
503
504 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
505
506         * check/Makefile.am:
507           add two more tests for valgrinding
508         * check/gst/gstvalue.c: (GST_START_TEST):
509           test refcount of deserialized buffer, found a leak
510         * docs/gst/gstreamer-docs.sgml:
511         * docs/gst/gstreamer-sections.txt:
512         * docs/gst/gstreamer.types:
513         * docs/gst/tmpl/gstminiobject.sgml:
514           add miniobject to docs
515         * gst/gstminiobject.c:
516           add some docs
517         * gst/gstvalue.c: (gst_value_deserialize_buffer),
518         (gst_string_unwrap):
519           fix a hard-to-find invalid write for one of the tests
520           fix a leak for deserialized buffers
521
522 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
523
524         * docs/pwg/advanced-events.xml:
525         * docs/pwg/advanced-request.xml:
526         * docs/pwg/advanced-scheduling.xml:
527         * docs/pwg/appendix-porting.xml:
528         * docs/pwg/building-boiler.xml:
529         * docs/pwg/intro-preface.xml:
530         * docs/pwg/other-ntoone.xml:
531           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
532           of example code and explanation for pad activation, loop() and
533           getrange() functions and a bit more. Remove old comments pointing
534           to loop-functions.
535         * examples/pwg/Makefile.am:
536           Add loop/getrange examples.
537
538 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
539
540         * configure.ac:
541           check for valgrind binary + some fixes
542         * check/gst.supp:
543           valgrind suppressions for the tests
544         * check/Makefile.am:
545           add a valgrind: target that valgrinds the unit tests
546         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
547         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
548         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
549         * check/gst/gstghostpad.c:
550           added some cleanup
551         * check/gst/gstdata.c:
552           removed
553         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
554         (thread_unref), (gst_mini_object_suite), (main):
555           added
556         * gst/gst.c: (gst_deinit):
557         * gst/gst.h:
558           add a method to clean up.
559         * gst/gstsystemclock.c: (gst_system_clock_dispose),
560         (gst_system_clock_obtain):
561           allow for disposing the system clock.
562         * tools/gst-launch.c: (main):
563           deinit
564
565 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
566
567         * docs/gst/tmpl/gstbasesrc.sgml:
568         * docs/gst/tmpl/gstfakesrc.sgml:
569         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
570         (gst_base_src_init), (gst_base_src_set_property),
571         (gst_base_src_get_property), (gst_base_src_get_range),
572         (gst_base_src_start):
573         * gst/base/gstbasesrc.h:
574           add num-buffers property
575         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
576         (gst_fakesrc_init), (gst_fakesrc_set_property),
577         (gst_fakesrc_get_property), (gst_fakesrc_create),
578         (gst_fakesrc_start):
579           remove num-buffers property
580
581 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
582
583         * docs/gst/gstreamer-sections.txt:
584         * docs/gst/tmpl/gstbasesink.sgml:
585         * docs/gst/tmpl/gstbasesrc.sgml:
586         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
587         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
588         (gst_base_sink_finalize), (gst_base_sink_set_clock),
589         (gst_base_sink_set_property), (gst_base_sink_get_property),
590         (gst_base_sink_handle_object), (gst_base_sink_event),
591         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
592         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
593         (gst_base_sink_loop), (gst_base_sink_deactivate),
594         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
595         (gst_base_sink_change_state):
596         * gst/base/gstbasesink.h:
597         * gst/base/gstbasesrc.h:
598         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
599         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
600         (gst_filesink_init):
601           more macro splitting
602
603 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
604
605         * gst/gstelement.c: (gst_element_get_bus):
606           add debug
607         * tools/gst-launch.c: (check_intr), (event_loop):
608           fix bus leaks
609
610 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
611
612         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
613           fix a caps leak
614
615 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
616
617         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
618         (gst_base_src_finalize):
619           add finalize method and clean up properly
620         * gst/gstpipeline.c: (gst_pipeline_dispose):
621           add debug
622
623 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
624
625         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
626         (gst_bin_suite):
627           add more things to check
628         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
629         * gst/gstelement.c:
630           more debug
631
632 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
633
634         * check/elements/gstfakesrc.c: (chain_func), (event_func),
635         (GST_START_TEST), (fakesrc_suite):
636         * check/gst-libs/gdp.c: (GST_START_TEST):
637         * check/gst/gst.c: (GST_START_TEST):
638         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
639         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
640         * check/gst/gstbus.c: (GST_START_TEST):
641         * check/gst/gstcaps.c: (GST_START_TEST):
642         * check/gst/gstdata.c: (GST_START_TEST):
643         * check/gst/gstelement.c: (GST_START_TEST):
644         * check/gst/gstghostpad.c: (GST_START_TEST):
645         * check/gst/gstiterator.c: (GST_START_TEST):
646         * check/gst/gstmessage.c: (GST_START_TEST):
647         * check/gst/gstobject.c: (GST_START_TEST):
648         * check/gst/gstpad.c: (GST_START_TEST):
649         * check/gst/gststructure.c: (GST_START_TEST):
650         * check/gst/gstsystemclock.c: (GST_START_TEST),
651         (gst_systemclock_suite):
652         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
653         * check/gst/gstvalue.c: (GST_START_TEST):
654         * check/pipelines/cleanup.c: (GST_START_TEST):
655         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
656         * check/states/sinks.c: (GST_START_TEST):
657         * check/gstcheck.c: (gst_check_init):
658         * check/gstcheck.h:
659           add debugging category
660           use GST_START_TEST now, so we add a debug line
661
662 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
663
664         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
665           add test for state change message on a bin
666         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
667           add another test
668         * gst/gstbin.c: (gst_bin_init):
669         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
670         * gst/gstelement.c: (gst_element_post_message),
671         (gst_element_set_state):
672         * gst/gstelementfactory.c: (gst_element_factory_create):
673         * gst/gstmessage.c: (gst_message_new):
674         * gst/gstscheduler.c:
675           various debugging additions and cleanups
676
677 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
678
679         * check/Makefile.am:
680         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
681         (main):
682           adding tests for elements
683         * gst/gstelement.c: (gst_element_dispose):
684
685 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
686
687         * gst/registries/gstlibxmlregistry.c: (load_feature):
688           plug more leaks.  A simple gst_init() now is leakfree, yay.
689
690 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
691
692         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
693         (gst_xml_registry_load):
694           plug another memleak
695
696 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
697
698         * configure.ac:
699           use GST_SET_ERROR_CFLAGS
700         * docs/faq/cvs.xml:
701           change to ERROR_CFLAGS
702
703 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
704
705         * configure.ac:
706           make GST_ERROR_CFLAGS overridable and re-enable Werror
707         * docs/faq/cvs.xml:
708           add a note about error CFLAGS
709         * docs/gst/tmpl/gstfakesrc.sgml:
710         * gst/elements/gstfakesrc.c:
711           comment out some unused code
712         * gst/gst.c: (split_and_iterate):
713         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
714         (load_feature):
715           plug some memleaks
716
717 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
718
719         * common/Makefile.am:
720         * common/gtk-doc.mak:
721         * docs/gst/Makefile.am:
722           factor out gtk-doc.mak
723
724 2005-07-07  Wim Taymans  <wim@fluendo.com>
725
726         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
727         (gst_thread_scheduler_dispose):
728         Unlock the STREAM_LOCK completely.
729
730 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
731
732         * check/Makefile.am:
733         * check/elements/.cvsignore:
734         * check/elements/gstfakesrc.c: (chain_func), (event_func),
735         (START_TEST), (fakesrc_suite), (main):
736         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
737         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
738         (gst_fakesrc_create), (gst_fakesrc_start):
739         * gst/elements/gstfakesrc.h:
740           adding a first element test
741
742 2005-07-07  Andy Wingo  <wingo@pobox.com>
743
744         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
745         debug message.
746
747 2005-07-07  Wim Taymans  <wim@fluendo.com>
748
749         * gst/gstquery.c:
750         * gst/gstquery.h:
751         Remove old types
752
753 2005-07-07  Wim Taymans  <wim@fluendo.com>
754
755         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
756         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
757         Allow subclasses to implement their own negotiation.
758
759 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
760
761         * docs/design/part-gstbin.txt:
762         * docs/design/part-gstpipeline.txt:
763           Update design notes to reflect the movement of
764           responsibility for bus handling from GstPipeline to
765           GstBin
766
767 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
768
769         * configure.ac:
770           Remove unnecessary queue2/3/4 examples.
771
772 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
773
774         * examples/Makefile.am:
775         * examples/helloworld/helloworld.c: (event_loop), (main):
776         * examples/queue/queue.c: (event_loop), (main):
777         * examples/queue2/queue2.c: (main):
778           Update a couple of the examples to work again.
779
780         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
781         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
782          Spelling corrections and extra debug.
783         
784         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
785         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
786         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
787         * gst/gstbin.h:
788         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
789         (gst_pipeline_change_state):
790         * gst/gstpipeline.h:
791           Move the bus handler for children to the GstBin, and create a
792           separate bus for receiving messages from children to the one the
793           bus sends 'upwards' on.
794
795 2005-07-06  Wim Taymans  <wim@fluendo.com>
796
797         * gst/base/README:
798         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
799         (gst_base_sink_handle_object), (gst_base_sink_loop),
800         (gst_base_sink_change_state):
801         * gst/base/gstbasesink.h:
802         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
803         (gst_base_src_init), (gst_base_src_setcaps),
804         (gst_base_src_getcaps), (gst_base_src_loop),
805         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
806         (gst_base_src_start), (gst_base_src_change_state):
807         * gst/base/gstbasesrc.h:
808         Make basesrc negotiate.
809         Handle the case where preroll fails in basesink.
810         Update README.
811
812 2005-07-06  Wim Taymans  <wim@fluendo.com>
813
814         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
815         Implement the fixate function.
816         Clean up acceptcaps.
817
818 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
819
820         * docs/pwg/building-filterfactory.xml:
821         * docs/pwg/pwg.xml:
822           Remove never-written filter-factory chapter; I'll add the various
823           base classes to part 4 ("other element types") later on.
824
825 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
826
827         * docs/pwg/advanced-negotiation.xml:
828         * docs/pwg/building-boiler.xml:
829         * docs/pwg/building-pads.xml:
830         * docs/pwg/pwg.xml:
831         * examples/pwg/Makefile.am:
832           Add a chapter on caps negotiation, simplify the original code
833           samples a bit w.r.t. caps negotiation, add link to the advanced
834           section. Add a bunch of examples showing different use cases of
835           different types of caps negotiation. Upstream renegotiation isn't
836           fully documented yet since nobody knows how that works.
837
838 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
839
840         * check/gst/gstpad.c:
841         * check/gstcheck.c:
842         * gst/gstpad.c: (gst_pad_get_internal_links_default):
843           if pad has no parent, return NULL as list of internal links
844
845 2005-07-05  Andy Wingo  <wingo@pobox.com>
846
847         * gst/elements/gstfilesrc.c:
848         * gst/elements/gstfakesrc.c: 
849         * gst/base/gstpushsrc.c:
850         * gst/base/gstbasesrc.h: 
851         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
852         
853 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
854
855         * Makefile.am:
856           better report generation target (lcov needs a patch)
857
858 2005-07-05  Andy Wingo  <wingo@pobox.com>
859
860         * gst/elements, testsuite: Null if we got it...
861
862 2005-07-05  Wim Taymans  <wim@fluendo.com>
863
864         * configure.ac:
865         * libs/gst/dataprotocol/Makefile.am:
866         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
867         * libs/gst/dataprotocol/dataprotocol.h:
868         * pkgconfig/Makefile.am:
869         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
870         * pkgconfig/gstreamer-dataprotocol.pc.in:
871         Ported dataprotol to 0.9. 
872         Added pkgconfig files.
873
874 2005-07-05  Andy Wingo  <wingo@pobox.com>
875
876         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
877         Default to returning TRUE for the case when tranform_caps returns
878         a fixed caps, like for identity or volume.
879
880         * check/gst/gstbus.c (pound_bus_with_messages): 
881         * check/gst/gstmessage.c (START_TEST): 
882         * check/pipelines/simple_launch_lines.c (got_handoff): Application
883         message API change.
884
885         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
886         logic weaks here: always run transform_caps, trying passthrough
887         operation only if the original caps intersects with the transform.
888
889         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
890         source and sink caps.
891
892         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
893         Intersect the peer caps with the pad template before going into
894         transform_caps.
895         (gst_base_transform_transform_caps): More debugging.
896
897         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
898         src argument.
899
900 2005-07-04  Edward Hervey  <edward@fluendo.com>
901
902         * gst/gstutils.c:
903         * gst/gstutils.h:
904         (gst_pad_add_*_probe): now returns the signal id for better wrapping
905         in bindings.
906
907 2005-07-04  Andy Wingo  <wingo@pobox.com>
908
909         * check/gst/gstpad.c: Only set explicit caps on pads.
910
911 2005-07-01  Andy Wingo  <wingo@pobox.com>
912
913         * tests/network-clock.scm: Commentary update.
914
915         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
916         Didn't really make sense, not implementable with basetransform,
917         etc.
918         (gst_identity_transform): Unref inbuf via make_writable. Feeble
919         attempt at implementing the sync property, needs an unlock method.
920
921         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
922         New func, by default returns the same caps (the identity
923         transformation).
924         (gst_base_transform_getcaps): Uses transform_caps to return
925         something sensible.
926         (gst_base_transform_setcaps): Complicated logic to get caps on
927         both pads, even if they are different, and to call set_caps once
928         for every time both pads get their caps set.
929         (gst_base_transform_handle_buffer): Give the ref to the transform
930         function. Allows in-place modification of the buffer.
931
932         * gst/base/gstbasetransform.h (transform_caps): New class method.
933         Given caps on one side, what can I do on the other.
934         (set_caps): Take two caps, one for each side of the element.
935
936         * gst/gstpad.h:
937         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
938         caps in place. This is safe because we can check the mutability of
939         the caps, and a good idea because fixate functions are just called
940         as a matter of last resort. (Not actually implemented.)
941         (gst_pad_set_caps): If the caps we're setting is actually the same
942         as the existing pad caps, just update the pointer without calling
943         setcaps. Assert that caps is either NULL or fixed, as per the
944         docs.
945
946         * gst/gstghostpad.c: Update for fixate changes.
947
948 2005-07-02  Andy Wingo  <wingo@pobox.com>
949
950         * gst/gstcaps.c:
951         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
952         two refcounts makes it immutable, which is enough. Doc more.
953
954 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
955
956         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
957           Put the mini_object into GValue as a mini_object,
958           not a gpointer, since that's how we declared
959           the signal.
960
961 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
962
963         * examples/pwg/Makefile.am:
964           Fix buildbot again.
965
966 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
967
968         * docs/pwg/building-testapp.xml:
969           Add extra check.
970         * examples/pwg/Makefile.am:
971           Fix buildbot.
972
973 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
974
975         * configure.ac:
976         * examples/Makefile.am:
977         * examples/pwg/Makefile.am:
978         * examples/pwg/extract.pl:
979           Enable building the PWG examples.
980         * docs/pwg/advanced-interfaces.xml:
981           Add URI interface stub.
982         * docs/pwg/advanced-types.xml:
983         * docs/pwg/other-autoplugger.xml:
984         * docs/pwg/appendix-porting.xml:
985         * docs/pwg/pwg.xml:
986           Add porting guide (mostly stubs), remove autoplugging (see ADM).
987         * docs/pwg/building-boiler.xml:
988         * docs/pwg/building-chainfn.xml:
989         * docs/pwg/building-pads.xml:
990         * docs/pwg/building-props.xml:
991         * docs/pwg/building-state.xml:
992         * docs/pwg/building-testapp.xml:
993           Update the building-*.xml parts for 0.9 changes. All examples
994           code blocks compile in examples/pwg/*.
995
996 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
997
998         * docs/manual/advanced-autoplugging.xml:
999         * docs/manual/appendix-checklist.xml:
1000         * docs/manual/appendix-integration.xml:
1001         * docs/manual/highlevel-components.xml:
1002           Fix playbin/decodebin examples, update docs a bit, mention bus
1003           instead of signals in various places, mention kmplayer and
1004           kaffeine since they have a working GStreamer backend in the KDE
1005           section.
1006
1007 2005-06-30  Wim Taymans  <wim@fluendo.com>
1008
1009         * CHANGES-0.9:
1010         * docs/design/draft-ghostpads.txt:
1011         * docs/design/draft-push-pull.txt:
1012         * docs/design/draft-query.txt:
1013         * docs/design/part-TODO.txt:
1014         * docs/design/part-query.txt:
1015         Added CHANGES-0.9 doc, updated status of other docs.
1016         
1017         * gst/gstquery.h:
1018         Remove "hmm" macro
1019
1020 2005-06-30  Wim Taymans  <wim@fluendo.com>
1021
1022         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1023         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1024         (gst_base_sink_change_state):
1025         * gst/base/gstbasesink.h:
1026         Some tweaks, only EOS and a buffer complete a preroll.
1027
1028 2005-06-30  Andy Wingo  <wingo@pobox.com>
1029
1030         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1031         activate_push down to the internal pad as well.
1032
1033 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1034
1035         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1036
1037         * gst/gsttaginterface.c:
1038           Some documentation fixes (#307394 and #307397).
1039
1040 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1041
1042         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1043
1044         * gst/gstvalue.c: (gst_value_intersect_list):
1045           Fix memleak (#309125).
1046
1047 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1048
1049         * docs/manual/advanced-dataaccess.xml:
1050           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1051         * docs/manual/basics-pads.xml:
1052           Add reference for filtered caps to above chapter.
1053
1054 2005-06-30  Wim Taymans  <wim@fluendo.com>
1055
1056         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1057         (gst_bin_change_state):
1058         Probes are gone.
1059         Lame attempt at making the state change function a bit
1060         more readable.
1061
1062 2005-06-30  Wim Taymans  <wim@fluendo.com>
1063
1064         * docs/design/part-clocks.txt:
1065         * docs/design/part-element-sink.txt:
1066         * docs/design/part-events.txt:
1067         * docs/design/part-preroll.txt:
1068         * docs/design/part-states.txt:
1069         Some more tweeks and additions to the docs.
1070
1071 2005-06-30  Wim Taymans  <wim@fluendo.com>
1072
1073         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1074         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1075         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1076         (gst_pad_check_pull_range), (gst_pad_get_range),
1077         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1078         * gst/gstpad.h:
1079         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1080         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1081         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1082         (gst_pad_remove_buffer_probe):
1083         Removed atomic operations, use existing LOCK.
1084         Move exception handling out of main code path.
1085
1086 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1087
1088         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1089         (silly_return_true_function), (gst_pad_class_init),
1090         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1091         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1092         (gst_pad_send_event):
1093           Fix accumulator, add default value by using _emitv() instead
1094           of _emit() for signal emission.
1095
1096 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1097
1098         * docs/manual/advanced-dataaccess.xml:
1099         * examples/manual/Makefile.am:
1100           Add probe example.
1101         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1102           Make work (??).
1103
1104 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1105
1106         * gst/elements/gstfilesink.c: (gst_filesink_render):
1107           Simplify code so that we don't have to handle short
1108           writes and return GST_FLOW_ERROR if an error occured.
1109
1110 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1111
1112         * docs/gst/gstreamer-docs.sgml:
1113           Remove probes more.
1114
1115 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1116
1117         * docs/gst/gstreamer-sections.txt:
1118         * docs/gst/tmpl/gstpad.sgml:
1119         * docs/gst/tmpl/gstprobe.sgml:
1120         * gst/Makefile.am:
1121         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1122         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1123         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1124         (gst_pad_push_event), (gst_pad_send_event):
1125         * gst/gstpad.h:
1126         * gst/gstutils.c: (gst_pad_add_data_probe),
1127         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1128         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1129         (gst_pad_remove_buffer_probe):
1130         * gst/gstutils.h:
1131           Remove old probes, add new g-signal-based probes and some utility
1132           functions.
1133
1134 2005-06-29  Edward Hervey  <edward@fluendo.com>
1135
1136         * gst/gstelementfactory.c:
1137         * gst/gstutils.h:
1138         * gst/gstutils.c:
1139         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1140         the definition to the header file.
1141
1142 2005-06-29  Andy Wingo  <wingo@pobox.com>
1143
1144         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1145         plugins from the source directory.
1146
1147 2005-06-29  Wim Taymans  <wim@fluendo.com>
1148
1149         * docs/gst/tmpl/gstbuffer.sgml:
1150         * docs/gst/tmpl/gstclock.sgml:
1151         Some fixings for blantently wrong text.
1152
1153 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1154
1155         * check/Makefile.am:
1156         * gst/gst.c: (add_path_func), (init_pre):
1157         * gst/gstregistry.c: (gst_registry_add_path):
1158           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1159           only scan the GST_PLUGIN_PATH locations, and not add
1160           system locations
1161
1162 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1163
1164         * docs/gst/gstreamer-sections.txt:
1165         * docs/gst/tmpl/gstbasesrc.sgml:
1166         * gst/gstelement.c:
1167         * gst/gstelement.h:
1168         * gst/gstevent.c:
1169         * gst/gstutils.c:
1170           doc fixes
1171
1172 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1173
1174         * docs/manual/advanced-autoplugging.xml:
1175           Fix autoplugging example.
1176
1177 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1178
1179         * docs/manual/advanced-autoplugging.xml:
1180         * docs/manual/mime-world.fig:
1181           Try to get autoplugging working, fix type detection. Fix text
1182           in hello-world image.
1183
1184 2005-06-29  Wim Taymans  <wim@fluendo.com>
1185
1186         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1187         (gst_base_sink_change_state):
1188         Small debug line.
1189
1190         * gst/gstclock.h:
1191         map SIGNAL and BROADCAST to the right function.
1192
1193         * gst/gstobject.h:
1194         Remove redundant braces.
1195
1196         * gst/gstpad.c: (gst_pad_set_caps):
1197         Don't call setcaps function when reseting caps to NULL.
1198
1199         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1200         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1201         (gst_system_clock_id_unschedule):
1202         Use BROADCAST as this is what we do.
1203
1204 2005-06-29  Wim Taymans  <wim@fluendo.com>
1205
1206         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1207         We are actually prerolling before commiting the state
1208         change. 
1209
1210 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1211
1212         * docs/manual/advanced-clocks.xml:
1213         * docs/manual/advanced-interfaces.xml:
1214         * docs/manual/advanced-metadata.xml:
1215         * docs/manual/advanced-position.xml:
1216         * docs/manual/advanced-schedulers.xml:
1217         * docs/manual/advanced-threads.xml:
1218         * docs/manual/appendix-porting.xml:
1219         * docs/manual/basics-bins.xml:
1220         * docs/manual/basics-bus.xml:
1221         * docs/manual/basics-elements.xml:
1222         * docs/manual/basics-helloworld.xml:
1223         * docs/manual/basics-pads.xml:
1224         * docs/manual/highlevel-components.xml:
1225         * docs/manual/manual.xml:
1226         * docs/manual/thread.fig:
1227           Update (until threads/scheduling) Application Development Manual;
1228           remove GstThread, add GstBus, add simple porting checklist, add
1229           documentation for tag writing, clocks, make all examples until this
1230           part compile and run.
1231         * examples/manual/Makefile.am:
1232           Update from changes to Application Development Manual; add bus
1233           example, remove thread example.
1234
1235 2005-06-28  Wim Taymans  <wim@fluendo.com>
1236
1237         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1238         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1239         (gst_bus_source_dispatch):
1240         Add debugging messages.
1241         Make internal methods static.
1242         Handle the case where the bus is flushed in the handler.
1243         
1244         * gst/gstelement.c: (gst_element_get_bus):
1245         Fix refcount in _get_bus();
1246
1247         * gst/gstpipeline.c: (gst_pipeline_change_state),
1248         (gst_pipeline_get_clock_func):
1249         Clock refcounting fixes.
1250         Handle the case where preroll timed out more gracefully.
1251         
1252         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1253         Clean up the internal thread in dispose. This is needed
1254         for subclasses that actually get disposed.
1255         
1256         * gst/schedulers/threadscheduler.c:
1257         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1258         (gst_thread_scheduler_dispose):
1259         Free thread pool in dispose.
1260
1261 2005-06-28  Andy Wingo  <wingo@pobox.com>
1262
1263         * tests/network-clock-utils.scm (debug, print-event): New utils.
1264
1265         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1266         (*packet-loss*): Unified loss probability.
1267         (network-time): Report out-of-band events.
1268
1269         * tests/plot-data: Add support for out-of-band events. Hack it
1270         into this script instead of passing it down the pipe; should fix
1271         this later.
1272
1273 2005-06-28  Wim Taymans  <wim@fluendo.com>
1274
1275         * docs/gst/gstreamer.types:
1276         * docs/gst/tmpl/gstbasesrc.sgml:
1277         * docs/gst/tmpl/gstpad.sgml:
1278         Docs fixes.
1279
1280 2005-06-28  Wim Taymans  <wim@fluendo.com>
1281
1282         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1283         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1284         (gst_proxy_pad_do_fixatecaps):
1285         Correctly proxy the check_pull_range function.
1286
1287 2005-06-28  Andy Wingo  <wingo@pobox.com>
1288
1289         * tests/network-clock.scm: Removed need for slib.
1290         
1291 2005-06-28  Wim Taymans  <wim@fluendo.com>
1292
1293         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1294         (gst_basesink_preroll_queue_flush):
1295         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1296         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1297         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1298         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1299         (gst_proxy_pad_set_property):
1300         * gst/gstpad.c:
1301         * gst/gstpad.h:
1302         * gst/gstqueue.c: (gst_queue_init):
1303         The deprecated pad loop function is removed now.
1304
1305 2005-06-28  Andy Wingo  <wingo@pobox.com>
1306
1307         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1308         New parameters, simulate network packet loss.
1309
1310         * tests/network-clock-utils.scm: Initialize the RNG.
1311
1312 2005-06-28  Wim Taymans  <wim@fluendo.com>
1313
1314         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1315         (gst_basesink_event), (gst_basesink_deactivate):
1316         Flushing the preroll queue always needs to unlock the waiters.
1317
1318 2005-06-28  Edward Hervey  <edward@fluendo.com>
1319
1320         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1321         Wheen a seek was successful on a pipeline, set the stream_time to the
1322         seek offset in order to have a synchronized stream_time.
1323
1324 2005-06-28  Wim Taymans  <wim@fluendo.com>
1325
1326         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1327         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1328         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1329         (gst_proxy_pad_do_fixatecaps):
1330         Call wrapper function instead of just calling the function
1331         pointers. This takes care of any locking and whatmore.
1332
1333 2005-06-28  Wim Taymans  <wim@fluendo.com>
1334
1335         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1336         (gst_pad_pull_range):
1337         * gst/gstpad.h:
1338         CONNECTED -> LINKED.
1339
1340 2005-06-28  Andy Wingo  <wingo@pobox.com>
1341
1342         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1343         source-munging commit!!!
1344
1345         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1346         (gst_object_sink): Take gpointer arguments, not GstObject --
1347         avoids casts. Like GLib.
1348
1349         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1350         activate.
1351
1352 2005-06-27  Andy Wingo  <wingo@pobox.com>
1353
1354         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1355         remaining buffer.
1356
1357         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1358         returns a sorted copy of the trace list.
1359         (gst_alloc_trace_print_live): New API, only prints traces with
1360         live objects. Sort the list.
1361         (gst_alloc_trace_print_all): Sort the list.
1362         (gst_alloc_trace_print): Align columns.
1363
1364         * gst/elements/gstttypefindelement.c:
1365         * gst/elements/gsttee.c:
1366         * gst/base/gstbasesrc.c:
1367         * gst/base/gstbasesink.c:
1368         * gst/base/gstbasetransform.c:
1369         * gst/gstqueue.c: Adapt for pad activation changes.
1370
1371         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1372         sched.
1373         (gst_pipeline_dispose): Drop ref on sched.
1374
1375         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1376         (gst_pad_activate_default): Push mode by default.
1377         (pre_activate_switch, post_activate_switch): New stubs, things to
1378         do before and after switching activation modes on pads.
1379         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1380         the pad's activate function to choose which mode to activate.
1381         Shortcut on deactivation and call the right function directly.
1382         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1383         mode.
1384         (gst_pad_activate_push): New API, same for push mode.
1385         (gst_pad_set_activate_function) 
1386         (gst_pad_set_activatepull_function) 
1387         (gst_pad_set_activatepush_function): Setters for new API.
1388
1389         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1390         Trace all miniobjects.
1391         (gst_mini_object_make_writable): Unref the arg if we copy, like
1392         gst_caps_make_writable.
1393
1394         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1395
1396         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1397         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1398         Adapt for new pad API.
1399
1400         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1401
1402         * gst/gstelement.h:
1403         * gst/gstelement.c (gst_element_iterate_src_pads) 
1404         (gst_element_iterate_sink_pads): New API functions.
1405         
1406         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1407         should fold into gstiterator.c in some form.
1408         (gst_element_pads_activate): Simplified via use of fold and
1409         delegation of decisions to gstpad->activate.
1410
1411         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1412         help in debugging.
1413
1414         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1415         class once in init, like gstmessage. Didn't run into this issue
1416         but it seems correct. Don't initialize a trace, gstminiobject does
1417         that.
1418
1419         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1420         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1421         to the bus.
1422         (assert_live_count): New util function, uses alloc traces to check
1423         cleanup.
1424
1425         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1426         To be modified when unlink drops the internal pad.
1427
1428 2005-06-27  Wim Taymans  <wim@fluendo.com>
1429
1430         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1431         (gst_bin_change_state):
1432         Cleanup the get_state() function a little, make sure it
1433         iterates the same set of elements.
1434         Added stub iterate_state_order().
1435
1436 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1437
1438         * docs/gst/gstreamer-docs.sgml:
1439         * docs/gst/gstreamer-sections.txt:
1440         * docs/gst/gstreamer.types:
1441         * docs/gst/tmpl/gstbasesink.sgml:
1442         * docs/gst/tmpl/gstbasesrc.sgml:
1443         * docs/gst/tmpl/gstbasetransform.sgml:
1444         * docs/gst/tmpl/gstelement.sgml:
1445         * docs/gst/tmpl/gstiterator.sgml:
1446         * gst/base/gstbasesrc.c:
1447         * gst/base/gstbasesrc.h:
1448         * gst/base/gstbasetransform.h:
1449         * gst/gstelement.c:
1450         * gst/gstiterator.h:
1451           adding basetransform and iterator docs
1452
1453 2005-06-27  Andy Wingo  <wingo@pobox.com>
1454
1455         * docs/design/part-activation.txt: Notes on how activation should
1456         work -- not quite implemented yet.
1457
1458 2005-06-25  Wim Taymans  <wim@fluendo.com>
1459
1460         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1461         At least get the chain function correct, needs more
1462         fixing.
1463
1464 2005-06-25  Wim Taymans  <wim@fluendo.com>
1465
1466         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1467         (gst_basesink_handle_object), (gst_basesink_event),
1468         (gst_basesink_do_sync), (gst_basesink_handle_event),
1469         (gst_basesink_change_state):
1470         * gst/gsttask.h:
1471         Right, two problems here: ghostpads don't take locks and
1472         glib _rec_mutex_lock_full() with depth==0 still locks.
1473         Catch illegal locking and g_warn them.
1474
1475 2005-06-25  Wim Taymans  <wim@fluendo.com>
1476
1477         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1478         Have to check for completion now...
1479
1480 2005-06-25  Wim Taymans  <wim@fluendo.com>
1481
1482         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1483         (gst_basesink_handle_object), (gst_basesink_event),
1484         (gst_basesink_do_sync), (gst_basesink_handle_event),
1485         (gst_basesink_change_state):
1486         * gst/gstpad.h:
1487         Unlock STREAM_LOCK whatever the recursion was.
1488
1489 2005-06-25  Wim Taymans  <wim@fluendo.com>
1490
1491         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1492         (gst_basesink_preroll_queue_empty),
1493         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1494         (gst_basesink_event), (gst_basesink_do_sync),
1495         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1496         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1497         (gst_basesink_change_state):
1498         Reworked the base sink, handle event and buffer serialisation
1499         correctly and removed possible deadlock.
1500         Handle EOS correctly.
1501
1502 2005-06-25  Wim Taymans  <wim@fluendo.com>
1503
1504         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1505         (gst_pipeline_change_state):
1506         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1507         Allow elements to post EOS in the state change function.
1508         Fix up -launch, make it exit the poll loop when the
1509         pipeline actually changed state.
1510         Fix up warning parsing in -launch.
1511
1512 2005-06-25  Wim Taymans  <wim@fluendo.com>
1513
1514         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1515         (gst_tee_sink_activate):
1516         Core takes STREAM_LOCK for us now.
1517
1518 2005-06-25  Wim Taymans  <wim@fluendo.com>
1519
1520         * gst/gstelement.c: (gst_element_get_state_func),
1521         (gst_element_set_state):
1522         * gst/gstelement.h:
1523         * gst/gstmessage.c: (gst_message_parse_error),
1524         (gst_message_parse_warning):
1525         Keep track of current target state while performing a state
1526         change so that subclasses can do something interesting.
1527         Fix parsing of warning/error messages when GError is NULL.
1528
1529 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1530
1531         * docs/gst/Makefile.am:
1532         * docs/gst/gstreamer-docs.sgml:
1533         * docs/gst/gstreamer-sections.txt:
1534         * docs/gst/gstreamer.types:
1535         * docs/gst/tmpl/gstbasesink.sgml:
1536         * docs/gst/tmpl/gstbasesrc.sgml:
1537         * docs/gst/tmpl/gstbin.sgml:
1538         * docs/gst/tmpl/gstcompat.sgml:
1539         * docs/gst/tmpl/gstfakesink.sgml:
1540         * docs/gst/tmpl/gstfakesrc.sgml:
1541         * docs/gst/tmpl/gstfilesink.sgml:
1542         * docs/gst/tmpl/gstfilesrc.sgml:
1543         * docs/gst/tmpl/gstindex.sgml:
1544         * docs/manual/appendix-quotes.xml:
1545         * gst/base/gstbasesrc.h:
1546         * gst/elements/gstfakesrc.h:
1547         * gst/gstmessage.h:
1548           start pulling in base classes and elements in our docs
1549
1550 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1551
1552         * docs/gst/Makefile.am:
1553         * docs/libs/Makefile.am:
1554           fixed make distcheck with gtk-doc 1.3
1555
1556 2005-06-23  Wim Taymans  <wim@fluendo.com>
1557
1558         * gst/gstelement.c: (gst_element_get_state_func),
1559         (gst_element_set_state), (gst_element_change_state):
1560         When the state did not change, also report NO_PREROLL
1561         when it matters.
1562
1563 2005-06-23  Wim Taymans  <wim@fluendo.com>
1564
1565         * gst/gstpad.c: (gst_pad_event_default):
1566         * gst/gstqueue.c: (gst_queue_loop):
1567         No unsafe task pausing please.
1568
1569 2005-06-23  Wim Taymans  <wim@fluendo.com>
1570
1571         * gst/schedulers/threadscheduler.c:
1572         (gst_thread_scheduler_task_start),
1573         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1574         Ref the task before pushing it on the threadpool. This
1575         makes sure that we have a ref when the threadfunction is
1576         actually called.
1577
1578 2005-06-23  Andy Wingo  <wingo@pobox.com>
1579
1580         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1581         offset is greater than the file's size.
1582
1583         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1584         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1585         * gst/gstobject.c (gst_object_class_init): Make the class lock
1586         recursive. Wim won't let me drop deep_notify. Decodebin works
1587         again, whoopdy doo.
1588
1589         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1590         internal pad, and hacks accordingly. Doesn't do it on the target
1591         pad because we change its caps. Probably catches all cases of
1592         interest tho.
1593         (gst_ghost_pad_set_property): Connect to notify::caps as
1594         appropritate.
1595
1596         * tests/network-clock.scm (plot-simulation): Pipe data to the
1597         elite python skript.
1598
1599         * tests/network-clock-utils.scm (define-parameter): New macro,
1600         defines a parameter that can be set via the command line.
1601         (set-parameter!, parse-parameter-arguments): Command line args
1602         parser.
1603
1604         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1605         stdin.
1606
1607 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1608
1609         * gst/elements/gsttypefindelement.c:
1610         (gst_type_find_element_handle_event):
1611           Don't restart typefinding on a discont.
1612         * gst/gstelement.c: (gst_element_set_state):
1613           Debug spelling fix.
1614         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1615           Allow changing mode of an active pad.
1616           Debug output fixes.
1617         * gst/registries/gstlibxmlregistry.c: (load_feature):
1618           Don't cast a static pad template to a normal pad template.
1619
1620 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1621
1622         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1623         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1624           remove gst_strtoll completely, since it didn't actually do
1625           anything more than what g_ascii_strtoull already does.
1626           check for range errors when deserializing
1627           do a cast for the unsigned cases; but further fixing needs
1628           a decision on what the interpretation of "(int)" and
1629           deserialization should be for values that fall outside the
1630           type's boundaries (ie, refuse, or interpret as casting)
1631
1632 2005-06-23  Wim Taymans  <wim@fluendo.com>
1633
1634         * check/Makefile.am:
1635         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1636         * docs/design/part-live-source.txt:
1637         * docs/design/part-states.txt:
1638         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1639         (gst_basesrc_set_live), (gst_basesrc_is_live),
1640         (gst_basesrc_get_range), (gst_basesrc_activate),
1641         (gst_basesrc_change_state):
1642         * gst/base/gstbasesrc.h:
1643         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1644         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1645         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1646         * gst/gstelement.c: (gst_element_get_state_func),
1647         (gst_element_set_state):
1648         * gst/gstelement.h:
1649         * gst/gsttypes.h:
1650         * tools/gst-launch.c: (event_loop), (main):
1651         Added support for live sources and other elements that
1652         cannot do preroll.
1653         Updated design docs, added live-source design doc.
1654         Implemented live source functionality in basesrc
1655         Fix error condition in _bin_get_state()
1656         Implement live source handling in -launch.
1657         Added check for live sources.
1658         Fixed case in GstBin where elements were changed state
1659         multiple times.
1660
1661
1662 2005-06-23  Andy Wingo  <wingo@pobox.com>
1663
1664         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1665         borken refcounting.
1666
1667         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1668         gst_caps_replace takes care of this for us.
1669
1670         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1671         gst_pad_set_caps on the target, not just its setcaps() function.
1672
1673         * tests/network-clock.scm: 
1674         * tests/network-clock-utils.scm: A network clock simulator.
1675         Something of an algorithmic testbed before doing something in C.
1676
1677 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1678
1679         * check/Makefile.am:
1680         * check/gst/capslist.h:
1681           copy over from 0.8, and add two with bitmasks specified with
1682           (int) 0xFF...
1683         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1684           add test to parse everything from capslist.h
1685         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
1686         (main):
1687           add test for structure deserialization
1688         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1689           add tests for deserialization of strings to int types
1690         * gst/gststructure.c: (gst_structure_nth_field_name):
1691         * gst/gststructure.h:
1692           add a way to get the name of a field referenced by index
1693         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1694           instead of checking if the resulting long long lies between
1695           min and max, we check if the long long would fit into
1696           a number of bytes for the final type.
1697           This fixes cases where a string represents 2^32 - 1, which
1698           when cast to int would be the (valid) -1, but is bigger than
1699           G_MAXINT
1700
1701 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1702
1703         * gst/parse/grammar.y:
1704           add a log line for type deserialization
1705
1706 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1707
1708         * check/gst/gstvalue.c: (START_TEST):
1709         * gst/gstvalue.c: (gst_value_deserialize):
1710           return long long, not int, so gint64 deserialization actually
1711           works.  Is there any flag that makes the compiler check this ?
1712           Fixes #308559
1713
1714 2005-06-22  Wim Taymans  <wim@fluendo.com>
1715
1716         * gst/gstbuffer.h:
1717         Added convenience macros for setting buffers in GValue.
1718
1719 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1720
1721         * check/gst/.cvsignore:
1722         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1723           add a test deserializing int64, and comment part out because
1724           it fails, yay !
1725
1726 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1727
1728         * check/Makefile.am:
1729         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
1730         * testsuite/Makefile.am:
1731         * testsuite/caps/Makefile.am:
1732         * testsuite/caps/value_serialize.c:
1733         * testsuite/test_gst_init.c:
1734           move a value_serialize test over
1735
1736 2005-06-20  Wim Taymans  <wim@fluendo.com>
1737
1738         * gst/gstpad.c:
1739         Small doc updates.
1740         
1741         * gst/gstvalue.c: (gst_value_compare_buffer),
1742         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
1743         (gst_value_compare_flags), (gst_value_serialize_flags),
1744         (gst_value_deserialize_flags), (_gst_value_initialize):
1745         Fix serialisation of buffers, they are not boxed types anymore
1746
1747 2005-06-20  Wim Taymans  <wim@fluendo.com>
1748
1749         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1750         Testcase to show error in buffer-on-caps serialisation.
1751
1752 2005-06-20  Andy Wingo  <wingo@pobox.com>
1753
1754         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
1755         will be adding to later.
1756
1757         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
1758         if its socks fill with rocks.
1759         (gst_system_clock_obtain): Set the name on object construction.
1760         Avoid double-checked locking.
1761
1762 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
1763
1764         * gst/gsturi.c: (gst_element_make_from_uri):
1765           Fix potential endless loop.
1766
1767 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1768
1769         * check/Makefile.am:
1770           add gsttag
1771         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
1772         (main):
1773           move over from testsuite dir and clean up
1774         * configure.ac:
1775         * gst/gsttag.c:
1776         * testsuite/Makefile.am:
1777         * testsuite/tags/.cvsignore:
1778         * testsuite/tags/Makefile.am:
1779         * testsuite/tags/merge.c:
1780           remove testsuite/tags
1781
1782 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1783
1784         * docs/gst/gstreamer-sections.txt:
1785         * docs/gst/tmpl/gstenumtypes.sgml:
1786         * win32/gstenumtypes.c:
1787           clean up documentation build a little
1788
1789 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1790
1791         * check/gstcheck.h:
1792           add macros for checking refcounts on objects and caps
1793         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
1794           add some more unit tests
1795         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1796         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
1797           fix leaked refcounts (I hope :)) so unittest works
1798         * gst/gstpad.h:
1799           whitespace removal
1800
1801 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1802
1803         * configure.ac: back to HEAD
1804
1805 === release 0.9.1 ===
1806
1807 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1808
1809         * NEWS:
1810         * RELEASE:
1811           updated
1812
1813 2005-06-17  Andy Wingo  <wingo@pobox.com>
1814
1815         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
1816         assert; it's always possible that the pad gets deactivated in
1817         between the checks in gstpad.c and the implementation. Rely on
1818         finish_preroll() to return a FLUSHING or similar instead of on the
1819         assert.
1820         
1821         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
1822         clock and post an EOS message if we come out of finish_preroll in
1823         the playing state.
1824
1825 2005-06-16  David Schleef  <ds@schleef.org>
1826
1827         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
1828         (gst_capsfilter_set_property): Allow NULL as possible value
1829         for filter_caps property, indicating GST_CAPS_ANY.
1830
1831 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1832
1833         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
1834           fix debug output
1835         * gst/schedulers/Makefile.am:
1836           use libgst prefix
1837         * gstreamer.spec.in:
1838           fix spec for it
1839
1840 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1841
1842         * gstreamer.spec.in:
1843           clean up
1844
1845 2005-06-08  Andy Wingo  <wingo@pobox.com>
1846
1847         * gst/gstutils.c: RPAD fixes all around.
1848         (gst_element_link_pads): Refcounting fixes.
1849
1850         * tools/gst-inspect.c:
1851         * tools/gst-xmlinspect.c:
1852         * parse/grammar.y:
1853         * gst/base/gsttypefindhelper.c:
1854         * gst/base/gstbasesink.c:
1855         * gst/gstqueue.c: RPAD fixes.
1856
1857         * gst/gstghostpad.h:
1858         * gst/gstghostpad.c: New ghost pad implementation as full proxy
1859         pads. The tricky thing is they provide both source and sink
1860         interfaces, since they proxy the internal pad for the external
1861         pad, and vice versa. Implement with lower-level ProxyPad objects,
1862         with the interior proxy pad as a child of the exterior ghost pad.
1863         Should write a doc on this.
1864         
1865         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
1866         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
1867         gst_object API.
1868         
1869         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
1870         pads are real pads. No ghost pads in this file. Not documenting
1871         the myriad s/RPAD/PAD/ and REALIZE fixes.
1872         (gst_pad_class_init): Add properties for "direction" and
1873         "template". Both are construct-only, so they can't change during
1874         the life of the pad. Fixes properly deriving from GstPad.
1875         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
1876         derived objects, just set properties when creating the objects via
1877         g_object_new.
1878         (gst_pad_get_parent): Implement as a function, return NULL if the
1879         parent is not an element.
1880         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
1881         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
1882         
1883         * gst/gstobject.c (gst_object_class_init): Make name a construct
1884         property. Don't set it in the object init.
1885
1886         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
1887         with UNKNOWN direction.
1888         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
1889         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
1890         (gst_element_remove_pad): Remove ghost-pad special cases.
1891         (gst_element_pads_activate): Remove rpad cruft.
1892
1893         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
1894         catch the pad's-parent-not-an-element case.
1895
1896         * gst/gst.h: Include gstghostpad.h.
1897
1898         * gst/gst.c (init_post): No more real, ghost pads.
1899
1900         * gst/Makefile.am: Add gstghostpad.[ch].
1901
1902         * check/Makefile.am:
1903         * check/gst/gstbin.c:
1904         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
1905         into a bin creates ghost pads, and that the refcounts are right.
1906         Partly moved from gstbin.c.
1907
1908 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1909
1910         * check/gst-libs/.cvsignore:
1911         * check/gst/.cvsignore:
1912         * check/pipelines/.cvsignore:
1913           ignore more
1914         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
1915         (START_TEST), (cleanup_suite), (main):
1916           add some tests related to cleanup after running pipelines
1917
1918 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1919
1920         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
1921           add a testsuite for GstBuffer
1922
1923 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1924
1925         * gst/gstminiobject.h:
1926           add defines for accessing the refcount
1927
1928 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
1929
1930         * Makefile.am: added support for html unit test coverage reports
1931
1932 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
1933
1934         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
1935           Free existing caps if the capsfilter changes. Add a FIXME about
1936           setting those caps on the pads.
1937
1938         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
1939           Before adding a ghost pad to a parent bin, check that there isn't
1940           already one for the element on the bin. Prevents infinite recursion
1941           when using decodebin in parse pipelines. Andy says he'll rewrite the
1942           way this works anyway, so ignore the hack.
1943
1944 2005-06-02  Andy Wingo  <wingo@pobox.com>
1945
1946         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
1947         file size, pass it on to the type find helper.
1948
1949         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
1950         segment_start and segment_end properly according to the seek
1951         method. Segment_end is still a bit flaky because offset can be
1952         negative for CUR and END cases, but it takes -1 as an "unset"
1953         value.
1954
1955 2005-06-02  Wim Taymans  <wim@fluendo.com>
1956
1957         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
1958         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
1959         (gst_basesink_activate):
1960         * gst/base/gstbasesink.h:
1961         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1962         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1963         (gst_pad_query), (gst_pad_start_task):
1964         * gst/gstpad.h:
1965         * gst/gstqueue.c: (gst_queue_bufferalloc),
1966         (gst_queue_handle_sink_event), (gst_queue_chain):
1967         Bufferalloc: return GstFlowReturn to more accuratly report
1968         why allocation failed.
1969
1970 2005-06-02  Wim Taymans  <wim@fluendo.com>
1971
1972         * gst/gstpipeline.c: (gst_pipeline_send_event):
1973         Take snapshot of state without blocking.
1974
1975 2005-06-02  Wim Taymans  <wim@fluendo.com>
1976
1977         * docs/design/part-TODO.txt:
1978         * docs/design/part-caps.txt:
1979         * docs/design/part-clocks.txt:
1980         * docs/design/part-negotiation.txt:
1981         * docs/design/part-preroll.txt:
1982         Small doc updates 
1983
1984 2005-05-30  Wim Taymans  <wim@fluendo.com>
1985
1986         * gst/elements/gstidentity.c: (gst_identity_event),
1987         (gst_identity_transform), (gst_identity_get_property):
1988         Protect last_message property as it is accessed from
1989         multiple threads.
1990
1991 2005-05-30  Wim Taymans  <wim@fluendo.com>
1992
1993         * gst/gstelement.c: (gst_element_init),
1994         (gst_element_pads_activate), (gst_element_change_state):
1995         Slicker pad activation code.
1996
1997 2005-05-30  Wim Taymans  <wim@fluendo.com>
1998
1999         * gst/Makefile.am:
2000         * gst/gstelement.h:
2001         * gst/gstelementfactory.h:
2002         * gst/gsttypes.h:
2003         Move elementfactory methods to separate .h file.
2004
2005 2005-05-30  Wim Taymans  <wim@fluendo.com>
2006
2007         * docs/design/part-overview.txt:
2008         * gst/gstsystemclock.h:
2009         Small typo fixes, doc updates.
2010
2011 2005-05-30  Wim Taymans  <wim@fluendo.com>
2012
2013         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2014         (init_popt_callback):
2015         Remove cpu-opt flag.
2016
2017 2005-05-30  Wim Taymans  <wim@fluendo.com>
2018
2019         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2020         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2021         * gst/gstbuffer.h:
2022         Avoid typechecking in places where not needed.
2023         Added accessor for malloc_data.
2024
2025 2005-05-30  Wim Taymans  <wim@fluendo.com>
2026
2027         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2028         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2029         (gst_pad_configure_sink), (gst_pad_configure_src),
2030         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2031         (gst_pad_start_task):
2032         Propagate errors from _set_caps() in configure_src/sink
2033         functions instead of returning TRUE.
2034         FLUSH events can travel up and downstream
2035
2036
2037 2005-05-30  Wim Taymans  <wim@fluendo.com>
2038
2039         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2040         (gst_basesink_activate):
2041         Handle EOS in preroll.
2042
2043 2005-05-30  Wim Taymans  <wim@fluendo.com>
2044
2045         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2046         (gst_queue_loop), (gst_queue_handle_src_event):
2047         Remove old pieces of code
2048         Flushing the queue in an upstream event is a very bad idea.
2049
2050 2005-05-26  Andy Wingo  <wingo@pobox.com>
2051
2052         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2053         gst_value_set_mini_object so as to add a ref on the object (which
2054         will be removed when the value is unset).
2055
2056         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2057         arg type in ::handoff.
2058
2059         * gst/gstelement.c (gst_element_change_state): Also deactivate
2060         pads in READY->NULL, just in case the element didn't make it to
2061         PAUSED. Wingo tested, Wim approved.
2062
2063 2005-05-26  Wim Taymans  <wim@fluendo.com>
2064
2065         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2066         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2067         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2068         A flushing pad cannot be used to alloc_buffer from.
2069
2070 2005-05-26  Wim Taymans  <wim@fluendo.com>
2071
2072         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2073         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2074         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2075         (gst_bus_create_watch), (gst_bus_add_watch_full):
2076         * gst/gstbus.h:
2077         Implement a real GSource and use g_main_context_wakeup() to
2078         signal new messages instead of the socketpair.
2079
2080 2005-05-25  Wim Taymans  <wim@fluendo.com>
2081
2082         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2083         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2084         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2085         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2086         (gst_pad_send_event), (gst_pad_start_task):
2087         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2088         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2089         (gst_queue_sink_activate), (gst_queue_src_activate),
2090         (gst_queue_change_state):
2091         * gst/gstqueue.h:
2092         Fix state changes for non sinks. We now change sinks, then elements
2093         with unconnected srcpads, then the rest.
2094         More efficient queue unlocking in flush and state changes.
2095         Set the pad activate mode even if it does not have an activate
2096         function.
2097
2098 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2099
2100         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2101           Don't go in pull mode for non-seekable sources.
2102         * gst/elements/gsttypefindelement.h:
2103         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2104         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2105         (free_entry), (stop_typefinding),
2106         (gst_type_find_element_handle_event), (find_peek),
2107         (gst_type_find_element_chain), (do_pull_typefind),
2108         (gst_type_find_element_change_state):
2109           Allow typefinding (w/o seeking) in push-mode, simplified version
2110           of what was in 0.8.
2111         * gst/gstutils.c: (gst_buffer_join):
2112         * gst/gstutils.h:
2113           gst_buffer_join() from 0.8.
2114
2115 2005-05-25  Wim Taymans  <wim@fluendo.com>
2116
2117         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2118         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2119         (gst_pad_send_event), (gst_pad_start_task):
2120         Disable attempt at mode switching until it is figured out.
2121
2122 2005-05-25  Wim Taymans  <wim@fluendo.com>
2123
2124         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2125         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2126         (gst_basesink_finish_preroll), (gst_basesink_chain),
2127         (gst_basesink_loop), (gst_basesink_activate),
2128         (gst_basesink_change_state):
2129         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2130         (gst_basesrc_get_range), (gst_basesrc_loop),
2131         (gst_basesrc_activate):
2132         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2133         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2134         (gst_real_pad_init), (gst_real_pad_set_property),
2135         (gst_real_pad_get_property), (gst_pad_set_active),
2136         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2137         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2138         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2139         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2140         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2141         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2142         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2143         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2144         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2145         (gst_pad_stop_task):
2146         * gst/gstpad.h:
2147         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2148         (gst_queue_loop), (gst_queue_src_activate):
2149         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2150         (gst_task_get_state):
2151         * gst/gsttask.h:
2152         * gst/schedulers/threadscheduler.c:
2153         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2154         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2155         in task function.
2156         Remove ACTIVE pad flag, use FLUSHING everywhere
2157         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2158         functions.
2159         Add locks around IS_FLUSHING when reading.
2160         Take STREAM lock in chain(), get_range() functions so plugins
2161         don't need to take it anymore.
2162         
2163
2164
2165 2005-05-25  Wim Taymans  <wim@fluendo.com>
2166
2167         * tools/gst-launch.c: (event_loop):
2168         Unref message after using its contents instead of
2169         before.
2170
2171 2005-05-24  Wim Taymans  <wim@fluendo.com>
2172
2173         * docs/design/draft-ghostpads.txt:
2174         * docs/design/draft-push-pull.txt:
2175         * docs/design/draft-query.txt:
2176         * docs/design/part-overview.txt:
2177         Docs updates, added general overview doc.
2178
2179 2005-05-21  David Schleef  <ds@schleef.org>
2180
2181         * docs/gst/tmpl/old/GstBin.sgml:
2182         * docs/gst/tmpl/old/GstBuffer.sgml:
2183         * docs/gst/tmpl/old/GstCaps.sgml:
2184         * docs/gst/tmpl/old/GstClock.sgml:
2185         * docs/gst/tmpl/old/GstCompat.sgml:
2186         * docs/gst/tmpl/old/GstData.sgml:
2187         * docs/gst/tmpl/old/GstElement.sgml:
2188         * docs/gst/tmpl/old/GstEvent.sgml:
2189         * docs/gst/tmpl/old/GstIndex.sgml:
2190         * docs/gst/tmpl/old/GstStructure.sgml:
2191         * docs/gst/tmpl/old/GstTag.sgml:
2192         * docs/gst/tmpl/old/cothreads.sgml:
2193         * docs/gst/tmpl/old/cothreads_compat.sgml:
2194         * docs/gst/tmpl/old/gettext.sgml:
2195         * docs/gst/tmpl/old/gobject2gtk.sgml:
2196         * docs/gst/tmpl/old/grammar.tab.sgml:
2197         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2198         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2199         * docs/gst/tmpl/old/gst_private.sgml:
2200         * docs/gst/tmpl/old/gstaggregator.sgml:
2201         * docs/gst/tmpl/old/gstarch.sgml:
2202         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2203         * docs/gst/tmpl/old/gstbufferstore.sgml:
2204         * docs/gst/tmpl/old/gstdata_private.sgml:
2205         * docs/gst/tmpl/old/gstdisksink.sgml:
2206         * docs/gst/tmpl/old/gstdisksrc.sgml:
2207         * docs/gst/tmpl/old/gstelementfactory.sgml:
2208         * docs/gst/tmpl/old/gstextratypes.sgml:
2209         * docs/gst/tmpl/old/gstfakesink.sgml:
2210         * docs/gst/tmpl/old/gstfakesrc.sgml:
2211         * docs/gst/tmpl/old/gstfdsink.sgml:
2212         * docs/gst/tmpl/old/gstfdsrc.sgml:
2213         * docs/gst/tmpl/old/gstfilesink.sgml:
2214         * docs/gst/tmpl/old/gstfilesrc.sgml:
2215         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2216         * docs/gst/tmpl/old/gstidentity.sgml:
2217         * docs/gst/tmpl/old/gstindexfactory.sgml:
2218         * docs/gst/tmpl/old/gstmarshal.sgml:
2219         * docs/gst/tmpl/old/gstmd5sink.sgml:
2220         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2221         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2222         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2223         * docs/gst/tmpl/old/gstpipefilter.sgml:
2224         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2225         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2226         * docs/gst/tmpl/old/gstshaper.sgml:
2227         * docs/gst/tmpl/old/gstspider.sgml:
2228         * docs/gst/tmpl/old/gstspideridentity.sgml:
2229         * docs/gst/tmpl/old/gststatistics.sgml:
2230         * docs/gst/tmpl/old/gsttee.sgml:
2231         * docs/gst/tmpl/old/gsttimecache.sgml:
2232         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2233         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2234         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2235         * docs/gst/tmpl/old/types.sgml:
2236           I didn't intend to add these or check them in.
2237
2238 2005-05-19  David Schleef  <ds@schleef.org>
2239
2240         * configure.ac: Use -no-common everywhere.  In a sane world, it
2241           would be the default in libtool, because without it, you can't
2242           build DLLs on Windows.
2243         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2244         * docs/gst/gstreamer-sections.txt:
2245         * docs/gst/tmpl/gstcpu.sgml:
2246         * docs/gst/tmpl/gstdata.sgml:
2247         * docs/gst/tmpl/gstthread.sgml:
2248
2249 2005-05-19  David Schleef  <ds@schleef.org>
2250
2251         * gst/gstminiobject.c: (gst_value_set_mini_object),
2252         (gst_value_take_mini_object), (gst_value_get_mini_object):
2253         * gst/gstminiobject.h: Add GValue set/get functions.
2254
2255 2005-05-19  Wim Taymans  <wim@fluendo.com>
2256
2257         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2258         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2259         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2260         * gst/gstbuffer.h:
2261         * gst/gstbus.c: (gst_bus_post):
2262         * gst/gstelement.c: (gst_element_get_random_pad):
2263         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2264         Make subbufer unref the parent in finalize.
2265         some more debugging info.
2266
2267
2268 2005-05-19  Wim Taymans  <wim@fluendo.com>
2269
2270         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2271         (gst_basesink_init), (gst_basesink_finalize),
2272         (gst_basesink_activate), (gst_basesink_change_state):
2273         Don't free preroll queue too early.
2274
2275 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2276
2277         * gst/Makefile.am:
2278         * gst/ROADMAP:
2279           Hi, I'm outdated. Please shoot me.
2280
2281 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2282
2283         * gst/gstpipeline.c: (gst_pipeline_send_event):
2284           Do not access variables after they have been deleted.
2285
2286 2005-05-19  Wim Taymans  <wim@fluendo.com>
2287
2288         * tools/gst-inspect.c: (print_plugin_features):
2289         A plugin feature does unfortunatly not use the
2290         object name yet...
2291
2292 2005-05-18  Wim Taymans  <wim@fluendo.com>
2293
2294         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2295         Port _span() functions to new subbuffers.
2296
2297 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2298
2299         * gst/gstbin.c: (gst_bin_add_func):
2300           Fix clock settery in bins when adding kids after the clock has
2301           been selected.
2302
2303 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2304
2305         * gst/elements/gstidentity.c: (gst_identity_class_init):
2306           Workaround until signals support GstMiniObject.
2307
2308 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2309
2310         * gst/gstbuffer.c:
2311         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2312
2313 2005-05-18  Wim Taymans  <wim@fluendo.com>
2314
2315         * gst/base/Makefile.am:
2316         * gst/base/gstadapter.c: (gst_adapter_base_init),
2317         (gst_adapter_class_init), (gst_adapter_init),
2318         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2319         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2320         (gst_adapter_flush), (gst_adapter_available),
2321         (gst_adapter_available_fast):
2322         * gst/base/gstadapter.h:
2323         Ported and added adapter to the base classes.
2324
2325 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2326
2327         * gst/gst.c:
2328         * gst/gstmessage.c:
2329           Make sure the class is reffed/unreffed once before threads can be
2330           used.  Fixes #304551.
2331
2332 2005-05-17  Wim Taymans  <wim@fluendo.com>
2333
2334         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2335         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2336         * gst/gstminiobject.c: (gst_mini_object_get_type),
2337         (gst_mini_object_free):
2338         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2339         (gst_pad_push), (gst_pad_push_event):
2340         * gst/gstqueue.c: (gst_queue_change_state):
2341         Don't queue buffers in basesink when we are flushing.
2342         Unref buffer when flushing in basesink.
2343         Flush queue when going to READY
2344         Unref buffer when _push() returns an error.
2345         Don't free MiniObject instance when refcount is incremented
2346         in _finalize() so that we can recover objects.
2347
2348 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2349
2350         * docs/manual/advanced-schedulers.xml:
2351         * docs/manual/appendix-checklist.xml:
2352         * docs/pwg/advanced-clock.xml:
2353         * docs/pwg/advanced-interfaces.xml:
2354         * docs/pwg/advanced-request.xml:
2355         * docs/pwg/advanced-types.xml:
2356         * docs/pwg/intro-preface.xml:
2357         * examples/plugins/example.c: (gst_example_get_type),
2358         (gst_example_class_init), (gst_example_chain),
2359         (gst_example_set_property), (gst_example_get_property),
2360         (gst_example_change_state), (plugin_init):
2361         * examples/plugins/example.h:
2362           small doc fixes
2363
2364 2005-05-17  Wim Taymans  <wim@fluendo.com>
2365
2366         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2367         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2368         * gst/gstqueue.c: (gst_queue_change_state):
2369         Clear queue when going to READY.
2370         Remove IN_SETCAPS flag too.
2371
2372 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2373
2374         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2375           Remove implicit cast from gboolean to GstElementStateReturn;
2376           make sure we still return failure in paused => ready case if
2377           the parent class fails to change state and our own stop 
2378           vfunc succeeds.
2379
2380 2005-05-17  Wim Taymans  <wim@fluendo.com>
2381
2382         * tools/gst-launch.c: (event_loop):
2383         Message was unreffed too soon.
2384
2385 2005-05-16  Andy Wingo  <wingo@pobox.com>
2386
2387         * gst/gstbin.c (sink_iterator_filter): Err... um...
2388
2389         * check/gst/gstbin.c (test_ghost_pads): New test for the
2390         ghosting-if-elements-not-in-same-bin behavior.
2391
2392 2005-05-16  David Schleef  <ds@schleef.org>
2393
2394         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2395         accessing refcount directly.
2396
2397 2005-05-15  David Schleef  <ds@schleef.org>
2398
2399         * check/Makefile.am: remove GstData checks
2400         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2401         * gst/Makefile.am: add miniobject, remove data
2402         * gst/gst.h: add miniobject, remove data
2403         * gst/gstdata.c: remove
2404         * gst/gstdata.h: remove
2405         * gst/gstdata_private.h: remove
2406         * gst/gsttypes.h: remove GstEvent and GstMessage
2407         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2408         * gst/gstmarshal.list: change BOXED -> OBJECT
2409
2410         Implement GstMiniObject.
2411         * gst/gstminiobject.c:
2412         * gst/gstminiobject.h:
2413
2414         Modify to be subclasses of GstMiniObject.
2415         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2416         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2417         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2418         (gst_subbuffer_get_type), (gst_subbuffer_init),
2419         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2420         (gst_buffer_span):
2421         * gst/gstbuffer.h:
2422         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2423         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2424         (_gst_event_copy), (gst_event_new):
2425         * gst/gstevent.h:
2426         * gst/gstmessage.c: (_gst_message_initialize),
2427         (gst_message_get_type), (gst_message_class_init),
2428         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2429         (gst_message_new), (gst_message_new_error),
2430         (gst_message_new_warning), (gst_message_new_tag),
2431         (gst_message_new_state_changed), (gst_message_new_application):
2432         * gst/gstmessage.h:
2433         * gst/gstprobe.c: (gst_probe_perform),
2434         (gst_probe_dispatcher_dispatch):
2435         * gst/gstprobe.h:
2436         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2437         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2438         (_gst_query_copy), (gst_query_new):
2439
2440         Update elements for GstData -> GstMiniObject changes
2441         * gst/gstquery.h:
2442         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2443         (gst_queue_chain), (gst_queue_loop):
2444         * gst/elements/gstbufferstore.c:
2445         (gst_buffer_store_add_buffer_func),
2446         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2447         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2448         (gst_fakesink_render):
2449         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2450         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2451         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2452         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2453         (gst_filesrc_create_read):
2454         * gst/elements/gstidentity.c: (gst_identity_class_init):
2455         * gst/elements/gsttypefindelement.c:
2456         (gst_type_find_element_src_event), (free_entry_buffers),
2457         (gst_type_find_element_handle_event):
2458         * libs/gst/dataprotocol/dataprotocol.c:
2459         (gst_dp_header_from_buffer):
2460         * libs/gst/dataprotocol/dataprotocol.h:
2461         * libs/gst/dataprotocol/dp-private.h:
2462
2463 2005-05-15  David Schleef  <ds@schleef.org>
2464
2465         * gst/elements/gstelements.c: Don't include headers that were
2466         just removed.
2467
2468 2005-05-15  David Schleef  <ds@schleef.org>
2469
2470         * gst/elements/Makefile.am: Remove some elements that don't
2471         need to be in the core (or even exist at all).
2472         * gst/elements/gstaggregator.c:
2473         * gst/elements/gstaggregator.h:
2474         * gst/elements/gstmd5sink.c:
2475         * gst/elements/gstmd5sink.h:
2476         * gst/elements/gstmultifilesrc.c:
2477         * gst/elements/gstmultifilesrc.h:
2478         * gst/elements/gstpipefilter.c:
2479         * gst/elements/gstpipefilter.h:
2480         * gst/elements/gstshaper.c:
2481         * gst/elements/gstshaper.h:
2482         * gst/elements/gststatistics.c:
2483         * gst/elements/gststatistics.h:
2484         * po/POTFILES.in: Remove above files.
2485
2486 2005-05-14  Andy Wingo  <wingo@pobox.com>
2487
2488         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2489         so as to get the refs right.
2490         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2491         unreffing objects that don't pass the filter.
2492
2493         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2494         gst_element_set_bus.
2495         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2496         normal cases, this will destroy the bus.
2497
2498         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2499         object.
2500
2501         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2502         has no sinks.
2503
2504 2005-05-13  Andy Wingo  <wingo@pobox.com>
2505
2506         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2507         gst_pad_link, call pad_link_maybe_ghosting,
2508         (pad_link_maybe_ghosting): Links pads, making sure that the
2509         elements being linked are in the same bin.
2510         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2511         Helpers for pad_link_maybe_ghosting.
2512
2513 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2514
2515         * configure.ac:
2516           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2517
2518 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2519
2520         * docs/design/part-element-source.txt:
2521           Mention GstPushSrc
2522
2523 2005-05-12  Wim Taymans  <wim@fluendo.com>
2524
2525         * gst/base/gstbasesink.c: (gst_basesink_init),
2526         (gst_basesink_activate):
2527         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2528         (gst_basesrc_is_seekable):
2529         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2530         (bin_element_is_sink), (gst_bin_change_state):
2531         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2532         * gst/gstelement.h:
2533         Identify sinks by their flag to avoid overly complicated
2534         checks (fow now).
2535         Do state changes even for elements not reachable from the
2536         sinks.
2537         BaseSink is a sink now :)
2538         Some more debugging info in the basesrc.
2539
2540
2541 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2542
2543         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2544           Implement _query on a bin, similar to _send_event.
2545
2546 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2547
2548         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2549           Discont event offset format should be GST_FORMAT_BYTES,
2550           not GST_FORMAT_TIME.
2551
2552 2005-05-12  Wim Taymans  <wim@fluendo.com>
2553
2554         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2555         Same fix as Ronald's but without the signal. 
2556
2557 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2558
2559         * gst/gstutils.c: (gst_element_query_position):
2560           No, an element is not a pad.
2561
2562 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2563
2564         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2565         (gst_bin_get_state):
2566           If a child is removed from a bin while we remove the child from
2567           the bin and while we're retrieving its state, signal this to the
2568           get_state function so we abort the wait (instead of waiting for
2569           a timeout) and can immediately re-iterate over all other elements.
2570
2571 2005-05-12  Wim Taymans  <wim@fluendo.com>
2572
2573         * gst/base/Makefile.am:
2574         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2575         (gst_basesrc_start):
2576         * gst/base/gstbasesrc.h:
2577         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2578         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2579         (gst_pushsrc_init), (gst_pushsrc_create):
2580         * gst/base/gstpushsrc.h:
2581         Added is_seekable to BaseSrc
2582         Added simple PushSrc.
2583
2584 2005-05-11  Wim Taymans  <wim@fluendo.com>
2585
2586         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2587         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2588         (gst_element_link_pads), (gst_element_query_position),
2589         (gst_element_query_convert), (intersect_caps_func),
2590         (gst_pad_query_position), (gst_pad_query_convert):
2591         Fix refcounting in utils function.
2592         No point in trying to activate a pad when it's added, it could
2593         be added from the state change function and then we deadlock, the
2594         element has to decide what to do.
2595
2596 2005-05-10  Andy Wingo  <wingo@pobox.com>
2597
2598         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2599         *all* the arguments.
2600
2601         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2602         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2603         lock (according to the docs -- if this is wrong change the docs).
2604
2605         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2606         flush messages in the NULL state.
2607
2608         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2609         message immediately and return.
2610         (gst_bus_set_flushing): New function. If a bus is flushing, it
2611         flushes out any queued messages and immediately unrefs new
2612         messages. This is so when an element goes to NULL, all of the
2613         unhandled messages coming from it can be freed, and their
2614         references to the element dropped. In other words: message source
2615         ref considered harmful :P
2616
2617         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2618         we're finished with it.
2619
2620         * gst/gstmessage.c (gst_message_new_state_changed): 
2621
2622 2005-05-10  Wim Taymans  <wim@fluendo.com>
2623
2624         * gst/gstvalue.c: (gst_value_compare_flags),
2625         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2626         (_gst_value_initialize):
2627         Added flags serialize/deserialize/compare code.
2628
2629 2005-05-09  Andy Wingo  <wingo@pobox.com>
2630
2631         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2632         Intersect the peer's caps with our caps.
2633
2634 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2635
2636         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2637         * gst/elements/gsttypefindelement.c: (find_peek):
2638           Handle negative offsets better. Fixes decodebin.
2639
2640 2005-05-09  Wim Taymans  <wim@fluendo.com>
2641
2642         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2643         (gst_base_transform_event):
2644         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2645         Implement accept_caps.
2646         Fix silly lock/unlock mismatch in base class.
2647
2648 2005-05-09  Wim Taymans  <wim@fluendo.com>
2649
2650         * docs/design/draft-push-pull.txt:
2651         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2652         * gst/elements/gstfilesink.c: (gst_filesink_init),
2653         (gst_filesink_query):
2654         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2655         (gst_type_find_handle_src_query), (find_element_get_length):
2656         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2657         * gst/gstelement.h:
2658         * gst/gstmessage.c:
2659         * gst/gstmessage.h:
2660         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2661         (gst_real_pad_get_caps_unlocked),
2662         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2663         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2664         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2665         (gst_real_pad_dispose), (gst_real_pad_finalize),
2666         (gst_pad_load_and_link), (gst_pad_save_thyself),
2667         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2668         (gst_pad_check_pull_range), (gst_pad_pull_range),
2669         (gst_pad_template_get_type), (gst_pad_template_class_init),
2670         (gst_pad_template_init), (gst_pad_template_dispose),
2671         (name_is_valid), (gst_static_pad_template_get),
2672         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2673         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2674         (gst_pad_get_element_private), (gst_pad_start_task),
2675         (gst_pad_pause_task), (gst_pad_stop_task),
2676         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2677         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2678         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
2679         (gst_ghost_pad_new):
2680         * gst/gstpad.h:
2681         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
2682         (gst_query_new_position), (gst_query_set_position),
2683         (gst_query_parse_position), (gst_query_new_convert),
2684         (gst_query_set_convert), (gst_query_parse_convert):
2685         * gst/gstquery.h:
2686         * gst/gstqueryutils.c:
2687         * gst/gstqueryutils.h:
2688         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2689         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2690         (gst_queue_handle_src_query):
2691         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2692         (gst_element_query_position), (gst_element_query_convert),
2693         (intersect_caps_func), (gst_pad_query_position),
2694         (gst_pad_query_convert):
2695         * gst/gstutils.h:
2696         * tools/gst-inspect.c: (print_pad_info):
2697         * tools/gst-xmlinspect.c: (print_element_info):
2698         Remove old query functions. Ported old code.
2699         Added position/convert helper functions to gstutils.
2700         Reordered gstpad.c code, grouping relevant things.
2701         Remove gst_message_new(), always need to speficy a specific
2702         message.
2703
2704
2705 2005-05-09  Andy Wingo  <wingo@pobox.com>
2706
2707         * gst/gstiterator.h: Add some includes.
2708
2709         * gst/gstqueryutils.h: Include more headers.
2710
2711         * gst/gstpad.h:
2712         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
2713         some uses of gst_pad_query.
2714
2715         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
2716         NULL out parameters.
2717         (gst_query_new_position): New proc, allocates a new position
2718         query.
2719
2720         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
2721         gstqueryutils.c to the build.
2722
2723         * gst/gststructure.c (gst_structure_set_valist): Implement with
2724         the generic G_VALUE_COLLECT.
2725         
2726 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
2727
2728         * gst/Makefile.am: (gst_headers):
2729         Added gstqueryutils.h to the list of headers to install, that was
2730         a 'nachty' move wingo :)
2731
2732 2005-05-06  Andy Wingo  <wingo@pobox.com>
2733
2734         * gst/gstquery.h
2735         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
2736         GstData, init a memchunk.
2737         (standard_definitions): Add a few query types, deprecate a few.
2738         (gst_query_get_type): New proc.
2739         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
2740         implementation.
2741         (gst_query_new_application, gst_query_get_structure): New public
2742         procs.
2743
2744         * docs/design/draft-query.txt: Removed LINKS from the query types,
2745         because all the rest can be dispatched to other pads -- seemed
2746         ugly to have a query that couldn't be dispatched. internal_links
2747         is fine as a pad method.
2748
2749         * gst/gstpad.h: Add query2 as a pad method, add the new functions
2750         in gstpad.c, but maintain binary compatibility for the moment.
2751         Will fix before 0.9 is out.
2752
2753         * gst/gstqueryutils.c: 
2754         * gst/gstqueryutils.h: New files, implement 3 methods for each
2755         query type: parse_query, parse_response, and set. Probably need an
2756         allocator as well.
2757
2758         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
2759
2760         * gst/elements/gstfilesink.c (gst_filesink_query2):
2761         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
2762         query_types, and formats methods.
2763
2764         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
2765         (gst_pad_set_query2_function): New functions.
2766         (gst_real_pad_init): Set query2_default as the default query2
2767         function. Basically just dispatches to internally linked pads.
2768
2769         Needs review!
2770         
2771         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
2772         without using the atomic operations. Only one thread can possibly
2773         be accessing the data at this point. Changed so as to avoid
2774         gst_atomic operations.
2775
2776 2005-05-06  Wim Taymans  <wim@fluendo.com>
2777
2778         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
2779         Also set caps if we use the fallback buffer alloc.
2780
2781 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
2782
2783         * docs/gst/Makefile.am:
2784         * docs/gst/gstreamer-docs.sgml:
2785         * docs/gst/gstreamer-sections.txt:
2786         * docs/gst/tmpl/gstatomic.sgml:
2787         * docs/gst/tmpl/gstmemchunk.sgml:
2788         * testsuite/elements/struct_i386.h:
2789         * win32/GStreamer.vcproj:
2790         * win32/Makefile:
2791           Purge GstAtomic stuff from docs and win32 makefiles as well
2792
2793 2005-05-06  Wim Taymans  <wim@fluendo.com>
2794
2795         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
2796         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
2797         * gst/gstpad.c: (gst_pad_peer_get_caps):
2798         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2799         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2800         (gst_queue_src_activate), (gst_queue_change_state):
2801         * gst/gstqueue.h:
2802         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2803         (intersect_caps_func):
2804         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
2805         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
2806         Some fixes for the peer_get_caps() change.
2807
2808 2005-05-06  Wim Taymans  <wim@fluendo.com>
2809
2810         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2811         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
2812         (gst_basesink_activate):
2813         Actually do something with error codes returned from the push
2814         functions.
2815
2816 2005-05-06  Wim Taymans  <wim@fluendo.com>
2817
2818         * docs/design/part-element-sink.txt:
2819         * docs/design/part-element-source.txt:
2820         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2821         (gst_basesink_event), (gst_basesink_activate):
2822         * gst/base/gstbasesink.h:
2823         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
2824         (gst_basesrc_activate):
2825         * gst/base/gstbasesrc.h:
2826         * gst/gstelement.c: (gst_element_pads_activate):
2827         Some more documentation.
2828         Fixed scheduling decision in _pads_activate().
2829
2830 2005-05-05  Andy Wingo  <wingo@pobox.com>
2831
2832         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
2833         the test suite.
2834
2835 2005-05-05  Wim Taymans  <wim@fluendo.com>
2836
2837         * gst/base/Makefile.am:
2838         * gst/base/gstbasesink.h:
2839         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2840         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
2841         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
2842         (gst_collectpads_class_init), (gst_collectpads_init),
2843         (gst_collectpads_finalize), (gst_collectpads_new),
2844         (gst_collectpads_set_function), (gst_collectpads_add_pad),
2845         (find_pad), (gst_collectpads_remove_pad),
2846         (gst_collectpads_is_active), (gst_collectpads_collect),
2847         (gst_collectpads_collect_range), (gst_collectpads_start),
2848         (gst_collectpads_stop), (gst_collectpads_peek),
2849         (gst_collectpads_pop), (gst_collectpads_available),
2850         (gst_collectpads_read), (gst_collectpads_flush),
2851         (gst_collectpads_chain):
2852         * gst/base/gstcollectpads.h:
2853         * gst/elements/Makefile.am:
2854         * gst/elements/gstelements.c:
2855         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2856         (gst_fakesink_get_times), (gst_fakesink_event),
2857         (gst_fakesink_preroll), (gst_fakesink_render):
2858         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2859         (gst_filesink_init), (gst_filesink_set_location),
2860         (gst_filesink_open_file), (gst_filesink_close_file),
2861         (gst_filesink_pad_query), (gst_filesink_event),
2862         (gst_filesink_render), (gst_filesink_change_state):
2863         * gst/elements/gstfilesink.h:
2864         Added object to help in making collect pad based elements.
2865         Ported filesink.
2866         Make event function in sink baseclass return gboolean.
2867
2868 2005-05-05  Wim Taymans  <wim@fluendo.com>
2869
2870         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
2871         (gst_bin_get_by_name):
2872         * gst/gstbuffer.h:
2873         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
2874         (gst_clock_finalize):
2875         * gst/gstdata.c: (gst_data_replace):
2876         * gst/gstdata.h:
2877         * gst/gstelement.c: (gst_element_request_pad),
2878         (gst_element_pads_activate):
2879         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
2880         (gst_object_unref):
2881         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2882         (gst_pad_set_checkgetrange_function),
2883         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
2884         (gst_pad_check_pull_range), (gst_pad_pull_range),
2885         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2886         (gst_pad_pause_task), (gst_pad_stop_task):
2887         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2888         (gst_element_request_pad), (gst_pad_proxy_getcaps):
2889         Fix name lookup in GstBin.
2890         Added _data_replace() function and _buffer_replace()
2891         Use finalize method to clean up clock.
2892         Fix refcounting on request pads.
2893         Fix pad schedule mode error.
2894         Some more object refcounting debug info,
2895
2896
2897 2005-05-04  Andy Wingo <wingo@pobox.com>
2898
2899         * check/Makefile.am:
2900         * docs/gst/tmpl/gstatomic.sgml:
2901         * docs/gst/tmpl/gstplugin.sgml:
2902         * gst/base/gstbasesink.c: (gst_basesink_activate):
2903         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
2904         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
2905         (gst_basesrc_query), (gst_basesrc_set_property),
2906         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
2907         (gst_basesrc_activate):
2908         * gst/base/gstbasesrc.h:
2909         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
2910         (gst_base_transform_src_activate):
2911         * gst/elements/gstelements.c:
2912         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2913         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2914         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2915         * gst/elements/gsttypefindelement.c: (find_element_get_length),
2916         (gst_type_find_element_checkgetrange),
2917         (gst_type_find_element_activate):
2918         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
2919         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
2920         (gst_caps_load_thyself):
2921         * gst/gstelement.c: (gst_element_pads_activate),
2922         (gst_element_save_thyself), (gst_element_restore_thyself):
2923         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
2924         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
2925         * gst/gstpad.h:
2926         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
2927         (gst_xml_parse_file), (gst_xml_parse_memory),
2928         (gst_xml_get_element), (gst_xml_make_element):
2929         * gst/indexers/gstfileindex.c: (gst_file_index_load),
2930         (_file_index_id_save_xml), (gst_file_index_commit):
2931         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
2932         (read_enum), (load_pad_template), (load_feature), (load_plugin),
2933         (load_paths):
2934         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
2935         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
2936         * tools/gst-complete.c: (main):
2937         * tools/gst-compprep.c: (main):
2938         * tools/gst-inspect.c: (print_element_properties_info):
2939         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
2940         * tools/gst-xmlinspect.c: (print_element_properties):
2941         GCC 4 fixen.
2942         
2943 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
2944
2945         * gst/gstplugin.c: (gst_plugin_check_module),
2946         (gst_plugin_check_file), (gst_plugin_load_file):
2947             apply patch from #172526 to make register work on MacOSX
2948
2949 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2950
2951         * docs/gst/tmpl/gstconfig.sgml:
2952         * gst/gstconfig.h.in:
2953           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
2954         * testsuite/debug/printf_extension.c: (main):
2955           Do not use GST_PTR_FORMAT on pointers to types with
2956           sizeof < sizeof(gpointer).  Fixes test on 64-bit
2957         * testsuite/elements/property.h:
2958           use correct printf format
2959
2960 2005-05-02  Wim Taymans  <wim@fluendo.com>
2961
2962         * docs/design/draft-push-pull.txt:
2963         * docs/design/draft-query.txt:
2964         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
2965         (gst_basesrc_start):
2966         Added draft for new query API.
2967         Added draft for better selecting scheduling methods.
2968         Make basesrc ignore length if the subclass does not support
2969         it.
2970
2971 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2972
2973         * gst/Makefile.am:
2974           possible fixes for automake-1.5 - _LIBADD is reserved
2975
2976 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2977
2978         * docs/faq/Makefile.am:
2979         * docs/manual/Makefile.am:
2980         * docs/manuals.mak:
2981         * docs/pwg/Makefile.am:
2982         * gst/Makefile.am:
2983           possible fixes for automake-1.5
2984
2985 2005-04-28  Wim Taymans  <wim@fluendo.com>
2986
2987         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2988         (gst_basesink_pad_getcaps), (gst_basesink_init),
2989         (gst_basesink_do_sync):
2990         * gst/gstclock.c: (gst_clock_entry_new):
2991         * gst/gstevent.c: (gst_event_discont_get_value):
2992         * gst/gstpipeline.c: (pipeline_bus_handler),
2993         (gst_pipeline_change_state):
2994         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
2995         Better debugging of clocking info.
2996         Allow NULL values when getting discont values.
2997
2998 2005-04-27  Wim Taymans  <wim@fluendo.com>
2999
3000         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3001         * check/gst/gstpad.c: (gst_pad_suite):
3002         Increase timeout for checks.
3003
3004 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3005
3006         * check/Makefile.am:
3007           fix the broken rule for cleanup.  Apparently this rule is
3008           only needed on FC2, so maybe this warrants further autotool
3009           inspection.
3010
3011 2005-04-26  Wim Taymans  <wim@fluendo.com>
3012
3013         * gst/gsttrashstack.h:
3014         Ooohh. a nasty one! After having a failed pop() from the stack,
3015         it's possible that the stack is empty. In that case, don't
3016         follow the NULL pointer.
3017
3018 2005-04-25  Wim Taymans  <wim@fluendo.com>
3019
3020         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3021         (gst_pad_set_checkgetrange_function),
3022         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3023         (gst_pad_check_pull_range), (gst_pad_pull_range),
3024         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3025         (gst_pad_pause_task), (gst_pad_stop_task):
3026         * gst/gstplugin.c: (gst_plugin_load):
3027         * gst/gstplugin.h:
3028         Remove gst_library_load as it does more harm than good with
3029         the new g_module flags.
3030         Revert bogus caps template check in pad linking, pad caps
3031         are important when linking not the template, which is more
3032         general than the current caps.
3033
3034 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3035
3036         * gst/autoplug/.cvsignore:
3037         * gst/autoplug/Makefile.am:
3038         * gst/autoplug/gstsearchfuncs.c:
3039         * gst/autoplug/gstsearchfuncs.h:
3040         * gst/autoplug/gstspider.c:
3041         * gst/autoplug/gstspider.h:
3042         * gst/autoplug/gstspideridentity.c:
3043         * gst/autoplug/gstspideridentity.h:
3044         * gst/autoplug/spidertest.c:
3045           Die, spider, die.
3046
3047 2005-04-25  Wim Taymans  <wim@fluendo.com>
3048
3049         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3050         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3051         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3052         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3053         * gst/gstpad.h:
3054         Added stubs for unimplemented functions. 
3055
3056 2005-04-24  David Schleef  <ds@schleef.org>
3057
3058         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3059         please fix.
3060
3061 2005-04-24  David Schleef  <ds@schleef.org>
3062
3063         Convert everything from GstAtomicInt to g_atomic_int_*, and
3064         remove gstatomic.
3065         * gst/Makefile.am:
3066         * gst/gstatomic.c:
3067         * gst/gstatomic.h:
3068         * gst/gstatomic_impl.h:
3069         * gst/gstbuffer.c:
3070         * gst/gstcaps.c:
3071         * gst/gstcaps.h:
3072         * gst/gstclock.c:
3073         * gst/gstclock.h:
3074         * gst/gstdata.c:
3075         * gst/gstdata.h:
3076         * gst/gstdata_private.h:
3077         * gst/gstevent.c:
3078         * gst/gstinfo.c:
3079         * gst/gstinfo.h:
3080         * gst/gstmessage.c:
3081         * gst/gstobject.c:
3082         * gst/gstobject.h:
3083         * gst/gststructure.c:
3084         * gst/gststructure.h:
3085         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3086         * gst/gstutils.h:
3087
3088 2005-04-24  David Schleef  <ds@schleef.org>
3089
3090         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3091         make the regressions tests work.  Remove some code that is no
3092         longer true.
3093         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3094         Disable warning for pads without templates.
3095
3096 2005-04-24  David Schleef  <ds@schleef.org>
3097
3098         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3099         functions that handle filtered links.
3100         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3101         removed functions.
3102         * gst/gstutils.c: Fix/remove utility functions that handle
3103         filtered caps.
3104         * gst/gstutils.h:
3105         * gst/gstvalue.c: Add serialization/deserialization of caps
3106         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3107         requires fixing so that the filter caps notation creates
3108         a capsfilter element and sets the filter_caps property.  I
3109         think everyone probably wants to keep the shorthand notation.
3110         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3111         * docs/gst/tmpl/gstpad.sgml:
3112
3113         * gst/elements/gstelements.c: Register capsfilter element.
3114         * gst/Makefile.am: fix spacing
3115         * docs/random/ds/0.9-suggested-changes: random
3116
3117 2005-04-23  David Schleef  <ds@schleef.org>
3118
3119         * gst/elements/Makefile.am:
3120         * gst/elements/gstcapsfilter.c: New element that acts like an
3121         identity, but filters caps.  Will eventually replace filtered
3122         caps in pad linking.
3123         * gst/gstutils.c: (gst_element_create_all_pads): New function
3124         to create all the ALWAYS pads that are registered with an
3125         element class.  This functionality should eventually be
3126         merged in with GstElement initialization.
3127         * gst/gstutils.h:
3128         * testsuite/trigger/README: part of trigger test code that should
3129         have been checked in a long time ago.
3130
3131 2005-04-23  David Schleef  <ds@schleef.org>
3132
3133         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3134         needed with new versions of libtool (nobody will confirm this),
3135         and hard to carry around.
3136         * gst/autoplug/Makefile.am:
3137         * gst/base/Makefile.am:
3138         * gst/elements/Makefile.am:
3139         * gst/indexers/Makefile.am:
3140         * gst/schedulers/Makefile.am:
3141         * libs/gst/bytestream/Makefile.am:
3142         * libs/gst/control/Makefile.am:
3143         * libs/gst/dataprotocol/Makefile.am:
3144         * libs/gst/getbits/Makefile.am:
3145
3146 2005-04-21  Wim Taymans  <wim@fluendo.com>
3147
3148         * docs/design/draft-push-pull.txt:
3149         * docs/design/part-MT-refcounting.txt:
3150         * docs/design/part-TODO.txt:
3151         * docs/design/part-caps.txt:
3152         * docs/design/part-events.txt:
3153         * docs/design/part-gstbus.txt:
3154         * docs/design/part-gstpipeline.txt:
3155         * docs/design/part-messages.txt:
3156         * docs/design/part-push-pull.txt:
3157         * docs/design/part-query.txt:
3158         Some more docs.
3159
3160 2005-04-21  Wim Taymans  <wim@fluendo.com>
3161
3162         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3163         (gst_message_new), (gst_message_new_error),
3164         (gst_message_new_warning), (gst_message_new_tag),
3165         (gst_message_new_state_changed), (gst_message_new_application),
3166         (gst_message_get_structure):
3167         * gst/gstmessage.h:
3168         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3169         (gst_structure_copy_conditional):
3170         Use parent refcount in GstMessage to ensure GstStructure
3171         consistency.
3172         Cleaned up headers a bit.
3173         
3174
3175 2005-04-20  Wim Taymans  <wim@fluendo.com>
3176
3177         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3178         (gst_basesink_pad_getcaps), (gst_basesink_init),
3179         (gst_basesink_chain_unlocked):
3180         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3181         (gst_type_find_helper):
3182         * gst/elements/gsttypefindelement.c:
3183         (gst_type_find_element_have_type), (gst_type_find_element_init),
3184         (stop_typefinding), (gst_type_find_element_handle_event),
3185         (find_suggest), (gst_type_find_element_chain),
3186         (gst_type_find_element_checkgetrange),
3187         (gst_type_find_element_getrange), (do_typefind),
3188         (gst_type_find_element_activate):
3189         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3190         (gst_buffer_default_free), (gst_buffer_default_copy),
3191         (gst_buffer_set_caps):
3192         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3193         (gst_caps_replace):
3194         * gst/gstmessage.c: (gst_message_new),
3195         (gst_message_new_state_changed):
3196         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3197         (gst_pad_set_checkgetrange_function),
3198         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3199         (gst_pad_set_caps), (gst_pad_check_pull_range),
3200         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3201         * gst/gstpad.h:
3202         * gst/gsttypefind.c: (gst_type_find_register):
3203         Make gst_caps_replace() work like other _replace() functions.
3204         Use _caps_replace() where possible.
3205         Make sure _message_new() initialises its field.
3206         Add gst_static_pad_template_get_caps()
3207
3208
3209 2005-04-18  Andy Wingo  <wingo@pobox.com>
3210
3211         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3212         on the peer, not the pad. I think that was a typo. Pass an extra
3213         arg to see if random access is possible. Activate the pads as
3214         PULL_RANGE if possible.
3215
3216         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3217
3218         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3219         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3220         to PROP_....
3221
3222 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3223
3224         * docs/faq/using.xml:
3225           Add note on gstreamer-properties (#154996).
3226
3227 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3228
3229         * docs/random/bbb/optional-properties:
3230           Some analysis on optional properties.
3231
3232 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3233
3234         * docs/gst/tmpl/gstelementfactory.sgml:
3235         * gst/gstelement.h:
3236         * gst/gstelementfactory.c: (gst_element_factory_init),
3237         (gst_element_factory_cleanup), (gst_element_register),
3238         (__gst_element_factory_add_static_pad_template),
3239         (gst_element_factory_get_static_pad_templates),
3240         (gst_element_factory_can_src_caps),
3241         (gst_element_factory_can_sink_caps):
3242         * gst/registries/Makefile.am:
3243         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3244         (gst_xml_registry_class_init), (gst_xml_registry_init),
3245         (gst_xml_registry_new), (gst_xml_registry_set_property),
3246         (gst_xml_registry_get_property), (get_time), (make_dir),
3247         (gst_xml_registry_get_perms_func),
3248         (plugin_times_older_than_recurse), (plugin_times_older_than),
3249         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3250         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3251         (add_to_char_array), (read_string), (read_uint), (read_enum),
3252         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3253         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3254         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3255         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3256         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3257         (gst_xml_registry_rebuild):
3258         * gst/registries/gstlibxmlregistry.h:
3259         * tools/gst-compprep.c: (main):
3260         * tools/gst-inspect.c: (print_pad_templates_info):
3261         * tools/gst-xmlinspect.c: (print_element_info):
3262           Use libxml2 for registry parsing, use staticpadtemplates in
3263           elementfactories. Makes gst_init() +/- 10x faster.
3264
3265 2005-04-12  Wim Taymans  <wim@fluendo.com>
3266
3267         * gst/base/Makefile.am:
3268         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3269         (gst_basesink_pad_getcaps), (gst_basesink_init),
3270         (gst_basesink_event), (gst_basesink_change_state):
3271         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3272         (gst_basesrc_init), (gst_basesrc_query),
3273         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3274         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3275         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3276         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3277         (gst_basesrc_stop), (gst_basesrc_activate),
3278         (gst_basesrc_change_state):
3279         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3280         (helper_find_suggest), (gst_type_find_helper):
3281         * gst/base/gsttypefindhelper.h:
3282         * gst/elements/Makefile.am:
3283         * gst/elements/gstelements.c:
3284         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3285         (gst_fakesink_get_times), (gst_fakesink_event),
3286         (gst_fakesink_preroll), (gst_fakesink_render):
3287         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3288         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3289         (gst_fakesrc_get_property), (gst_fakesrc_create),
3290         (gst_fakesrc_start), (gst_fakesrc_stop):
3291         * gst/elements/gstfakesrc.h:
3292         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3293         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3294         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3295         (gst_filesrc_create_read), (gst_filesrc_create),
3296         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3297         (gst_filesrc_start):
3298         * gst/elements/gsttypefindelement.c:
3299         (gst_type_find_element_have_type), (gst_type_find_element_init),
3300         (start_typefinding), (stop_typefinding), (push_buffer_store),
3301         (gst_type_find_element_handle_event),
3302         (gst_type_find_element_chain),
3303         (gst_type_find_element_checkgetrange),
3304         (gst_type_find_element_getrange), (do_typefind),
3305         (gst_type_find_element_activate),
3306         (gst_type_find_element_change_state):
3307         * gst/elements/gsttypefindelement.h:
3308         * gst/gstpipeline.c: (pipeline_bus_handler):
3309         Added typefind helper.
3310         Small preroll fix in the base sink.
3311         Disable typefind code in basesrc.
3312         Crude port of typefindelement.
3313         Fakesrc cleanups.
3314
3315
3316 2005-04-11  Wim Taymans  <wim@fluendo.com>
3317
3318         * check/gst/gstbus.c: (gstbus_suite):
3319         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3320         * check/gstcheck.h:
3321           Fix up the timeout so that the test does not fail.
3322
3323 2005-04-06  Wim Taymans  <wim@fluendo.com>
3324
3325         * gst/base/README:
3326         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3327         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3328         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3329         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3330         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3331         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3332         (gst_basesrc_stop), (gst_basesrc_activate),
3333         (gst_basesrc_change_state), (basesrc_find_peek),
3334         (basesrc_find_suggest), (gst_basesrc_type_find):
3335         * gst/base/gstbasesrc.h:
3336         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3337         (gst_filesrc_class_init), (gst_filesrc_init),
3338         (gst_filesrc_finalize), (gst_filesrc_set_location),
3339         (gst_filesrc_set_property), (gst_filesrc_get_property),
3340         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3341         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3342         (gst_filesrc_create_read), (gst_filesrc_create),
3343         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3344         * gst/elements/gstfilesrc.h:
3345         * gst/gstelement.c: (gst_element_get_state_func),
3346         (gst_element_lost_state), (gst_element_pads_activate):
3347         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3348         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3349         (gst_pad_pull_range):
3350         * gst/gstpad.h:
3351         More work on the generic source base class, implement seeking,
3352         query.
3353         Make filesrc extend the base source class.
3354         Added gst_pad_set_checkgetrange_function to GstPad.
3355
3356 2005-04-06  Andy Wingo  <wingo@pobox.com>
3357
3358         * pkgconfig/gstreamer-base.pc.in:
3359         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3360
3361         * pkgconfig/Makefile.am:
3362         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3363
3364 2005-04-04  Wim Taymans  <wim@fluendo.com>
3365
3366         * gst/base/Makefile.am:
3367         * gst/base/README:
3368         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3369         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3370         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3371         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3372         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3373         (gst_basesrc_base_init), (gst_basesrc_class_init),
3374         (gst_basesrc_init), (gst_basesrc_get_formats),
3375         (gst_basesrc_get_query_types), (gst_basesrc_query),
3376         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3377         (gst_basesrc_set_property), (gst_basesrc_get_property),
3378         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3379         (gst_basesrc_loop), (gst_basesrc_activate),
3380         (gst_basesrc_change_state):
3381         * gst/base/gstbasesrc.h:
3382         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3383         (gst_fakesrc_class_init), (gst_fakesrc_init),
3384         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3385         (gst_fakesrc_get_property), (gst_fakesrc_create):
3386         * gst/elements/gstfakesrc.h:
3387         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3388         (gst_filesrc_open_file), (gst_filesrc_loop),
3389         (gst_filesrc_activate), (filesrc_find_peek),
3390         (gst_filesrc_type_find):
3391         Made base source class, make fakesrc extend it.
3392         Add comments to basesink class.
3393         Some filesrc cleanup.
3394
3395 2005-03-31  David Schleef  <ds@schleef.org>
3396
3397         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3398         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3399         expected to link against libgstreamer.
3400         * gst/base/Makefile.am: link against libgstreamer
3401         * gst/elements/Makefile.am: same
3402
3403 2005-03-31  Andy Wingo  <wingo@pobox.com>
3404
3405         * tests/instantiate/Makefile.am:
3406         * tests/instantiate/caps.c: Add test to test speed of caps copy
3407         and free.
3408
3409         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3410         GMemChunk to be fair.
3411
3412         * gst/gsttrashstack.h: Remove warning about using the fallback
3413         trash stack implementation, it's still faster than malloc.
3414
3415 2005-03-30  Andy Wingo  <wingo@pobox.com>
3416
3417         * tests/complexity.c: Add a copyright.
3418
3419 2005-03-31  Wim Taymans  <wim@fluendo.com>
3420
3421         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3422         (gst_base_transform_class_init), (gst_base_transform_init),
3423         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3424         (gst_base_transform_get_property),
3425         (gst_base_transform_sink_activate),
3426         (gst_base_transform_src_activate),
3427         (gst_base_transform_change_state):
3428         * gst/base/gstbasetransform.h:
3429         * gst/elements/gstidentity.c: (gst_identity_class_init),
3430         (gst_identity_event), (gst_identity_check_perfect),
3431         (gst_identity_transform), (gst_identity_start),
3432         (gst_identity_stop):
3433         Added start/stop methods to transform base class so subclasses 
3434         don't need to deal with state changes even.
3435
3436 2005-03-31  Wim Taymans  <wim@fluendo.com>
3437
3438         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3439         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3440         * gst/gstevent.h:
3441         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3442         (gst_pad_pull_range):
3443         Added rate to the discont event to prepare for variable speed
3444         and reverse playback.
3445
3446 2005-03-29  David Schleef  <ds@schleef.org>
3447
3448         * configure.ac:
3449         * testsuite/trigger/Makefile.am:
3450         * testsuite/trigger/trigger.c: A little example program to show
3451         how trigger-based elements can work.
3452
3453 2005-03-29  Wim Taymans  <wim@fluendo.com>
3454
3455         * gst/base/Makefile.am:
3456         * gst/base/README:
3457         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3458         (gst_basesink_base_init), (gst_basesink_class_init),
3459         (gst_basesink_pad_getcaps), (gst_basesink_init),
3460         (gst_basesink_activate), (gst_basesink_change_state):
3461         * gst/base/gstbasesink.h:
3462         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3463         (gst_base_transform_base_init), (gst_base_transform_finalize),
3464         (gst_base_transform_class_init), (gst_base_transform_init),
3465         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3466         (gst_base_transform_event), (gst_base_transform_getrange),
3467         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3468         (gst_base_transform_set_property),
3469         (gst_base_transform_get_property),
3470         (gst_base_transform_sink_activate),
3471         (gst_base_transform_src_activate),
3472         (gst_base_transform_change_state):
3473         * gst/base/gstbasetransform.h:
3474         * gst/elements/gstidentity.c: (gst_identity_finalize),
3475         (gst_identity_class_init), (gst_identity_init),
3476         (gst_identity_event), (gst_identity_check_perfect),
3477         (gst_identity_transform), (gst_identity_set_property),
3478         (gst_identity_get_property), (gst_identity_change_state):
3479         * gst/elements/gstidentity.h:
3480         * gst/gstelement.c: (gst_element_get_state_func),
3481         (gst_element_lost_state), (gst_element_pads_activate):
3482         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3483         (gst_pad_check_pull_range), (gst_pad_pull_range):
3484         * gst/gstpad.h:
3485         Simplify pad activation.
3486         Added function to check if pull_range can be performed.
3487         Error out when pulling inactive or flushing pads.
3488         Removed const from refcounted types as it does not make sense.
3489         Simplify pad templates in basesink
3490         Added base class for simple 1-to-1 transforms.
3491         Make identity subclass the base transform.
3492
3493 2005-03-29  Andy Wingo  <wingo@pobox.com>
3494
3495         * docs/libs/gstreamer-libs-overrides.txt: 
3496         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3497         really don't understand what's going on, but like whatever. I want
3498         green buildbot!
3499
3500         * docs/gst/Makefile.am:
3501         * docs/libs/Makefile.am: Dist the overrides files.
3502
3503         * check/Makefile.am (clean-local): Remove .libs directories.
3504
3505         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3506         elements to EXTRA_DIST, so po/ files are happy.
3507
3508         * po/POTFILES.in: Er, remove it here.
3509
3510         * po/POTFILES: Remove gstspider.c.
3511
3512         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3513
3514         * docs/libs/gstreamer-libs-docs.sgml: 
3515         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3516         bytestream.
3517
3518         * tests/complexity.c (main): Set the length of the preroll queue
3519         on the sinks to prevent a lockup.
3520
3521         * libs/gst/dataprotocol/Makefile.am: 
3522         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3523         the same as the one in check/gst-libs/gdp.c.
3524
3525         * po/, docs/gst/: Commit automatic changes to docs and po files.
3526
3527         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3528         the versioned libgstbase.
3529
3530         * check/Makefile.am: Depend on an unversioned gst-register, seems
3531         to make autoconf happier.
3532
3533         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3534
3535 2005-03-28  Wim Taymans  <wim@fluendo.com>
3536
3537         * configure.ac:
3538         * docs/design/part-gstelement.txt:
3539         * docs/design/part-negotiation.txt:
3540         * docs/design/part-preroll.txt:
3541         * docs/design/part-scheduling.txt:
3542         * docs/design/part-states.txt:
3543         * gst/Makefile.am:
3544         * gst/base/Makefile.am:
3545         * gst/base/README:
3546         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3547         (gst_basesink_base_init), (gst_basesink_class_init),
3548         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3549         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3550         (gst_basesink_set_pad_functions),
3551         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3552         (gst_basesink_set_property), (gst_basesink_get_property),
3553         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3554         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3555         (gst_basesink_preroll_queue_push),
3556         (gst_basesink_preroll_queue_empty),
3557         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3558         (gst_basesink_event), (gst_basesink_get_times),
3559         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3560         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3561         (gst_basesink_loop), (gst_basesink_activate),
3562         (gst_basesink_change_state):
3563         * gst/base/gstbasesink.h:
3564         * gst/elements/Makefile.am:
3565         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3566         (gst_fakesink_class_init), (gst_fakesink_init),
3567         (gst_fakesink_set_property), (gst_fakesink_get_property),
3568         (gst_fakesink_get_times), (gst_fakesink_event),
3569         (gst_fakesink_preroll), (gst_fakesink_render),
3570         (gst_fakesink_change_state):
3571         * gst/elements/gstfakesink.h:
3572         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3573         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3574         * gst/gstelement.c: (gst_element_add_pad),
3575         (gst_element_get_state_func), (gst_element_abort_state),
3576         (gst_element_commit_state), (gst_element_lost_state),
3577         (gst_element_set_state), (gst_element_pads_activate):
3578         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3579         * gst/gstpipeline.c: (gst_pipeline_send_event),
3580         (gst_pipeline_change_state):
3581         Added state change code.
3582         Added/updated docs.
3583         Added sink base class, make fakesink extend the base class.
3584         Small cleanups in GstPipeline.
3585
3586 2005-03-26  David Schleef  <ds@schleef.org>
3587
3588         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3589         is broken and should be implemented in a different library.
3590         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3591         * gst/gst.h: remove gstcpu.h
3592         * gst/gstcpu.c: remove
3593         * gst/gstcpu.h: remove
3594         * gst/Makefile.am.future: Remove this file.  It's ancient.
3595
3596 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3597
3598         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3599         (gst_bin_send_event):
3600           Add default event/set_manager handlers. The set_manager handler
3601           takes care that the manager is distributed over kids that were
3602           already in the bin before the manager was set. The event handler
3603           is a utility virtual function that sends the event over all sinks,
3604           so that gst_element_send_event (bin, event); has the expected
3605           behaviour.
3606         * gst/gstpad.c: (gst_pad_event_default):
3607           Re-install default event handling for discontinuities, so that
3608           seeking works without requiring hacks in applications or extra
3609           code in sinks.
3610         * gst/gstpipeline.c: (gst_pipeline_class_init),
3611         (gst_pipeline_send_event):
3612           Half hack, half utility: set a pipeline to PAUSED for seek events,
3613           since that is the only way we can guarantee a/v sync. Means that
3614           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3615           and it "just works".
3616
3617 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3618
3619         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3620           Lock/unlock mismatch.
3621
3622 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3623
3624         * docs/faq/gst-uninstalled:
3625           add gst-plugins-base
3626         * docs/gst/Makefile.am:
3627           don't error out until docs are fixed
3628         * docs/gst/gstreamer.types:
3629           remove thread
3630
3631 2005-03-22  Wim Taymans  <wim@fluendo.com>
3632
3633         * check/Makefile.am:
3634         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3635         * gst/gststructure.c: (gst_structure_set_valist),
3636         (gst_structure_copy_conditional):
3637         Activated more tests.
3638         Added message test.
3639         Added G_TYPE_POINTER to GstStructure.
3640         
3641
3642 2005-03-22  Wim Taymans  <wim@fluendo.com>
3643
3644         * docs/design/part-TODO.txt:
3645         * docs/design/part-events.txt:
3646         * docs/design/part-gstbin.txt:
3647         * docs/design/part-gstbus.txt:
3648         * docs/design/part-gstpipeline.txt:
3649         * docs/design/part-messages.txt:
3650         * gst/gstbus.c:
3651         * gst/gstmessage.c:
3652         Docs updates
3653
3654 2005-03-21  Wim Taymans  <wim@fluendo.com>
3655
3656         * gst/gstbus.c: (gst_bus_post):
3657         Fix copy-and-paste error.
3658
3659 2005-03-21  Wim Taymans  <wim@fluendo.com>
3660
3661         * check/Makefile.am:
3662         * gst/Makefile.am:
3663         * gst/elements/Makefile.am:
3664         * gst/elements/gstelements.c:
3665         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3666         (gst_fakesink_event), (gst_fakesink_chain):
3667         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3668         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3669         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3670         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3671         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3672         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3673         (gst_fakesrc_loop), (gst_fakesrc_activate),
3674         (gst_fakesrc_change_state):
3675         * gst/elements/gstfakesrc.h:
3676         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3677         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
3678         (gst_filesrc_open_file), (gst_filesrc_loop),
3679         (gst_filesrc_activate), (gst_filesrc_change_state),
3680         (filesrc_find_peek), (filesrc_find_suggest),
3681         (gst_filesrc_type_find):
3682         * gst/elements/gstidentity.c: (gst_identity_finalize),
3683         (gst_identity_class_init), (gst_identity_init),
3684         (gst_identity_proxy_getcaps), (identity_queue_push),
3685         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
3686         (gst_identity_getrange), (gst_identity_chain),
3687         (gst_identity_sink_loop), (gst_identity_src_loop),
3688         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
3689         (gst_identity_set_property), (gst_identity_get_property),
3690         (gst_identity_change_state):
3691         * gst/elements/gstidentity.h:
3692         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
3693         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
3694         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
3695         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
3696         (gst_tee_sink_activate):
3697         * gst/elements/gsttee.h:
3698         * gst/gst.c: (gst_register_core_elements), (init_post):
3699         * gst/gst.h:
3700         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
3701         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
3702         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
3703         (gst_bin_change_state):
3704         * gst/gstbin.h:
3705         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
3706         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
3707         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
3708         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
3709         (gst_bus_set_sync_handler), (gst_bus_create_watch),
3710         (bus_watch_callback), (bus_watch_destroy),
3711         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
3712         (poll_timeout), (gst_bus_poll):
3713         * gst/gstbus.h:
3714         * gst/gstcaps.h:
3715         * gst/gstdata.h:
3716         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3717         (gst_element_post_message), (gst_element_message_full),
3718         (gst_element_get_state_func), (gst_element_get_state),
3719         (gst_element_abort_state), (gst_element_commit_state),
3720         (gst_element_lost_state), (gst_element_set_state),
3721         (gst_element_pads_activate), (gst_element_change_state),
3722         (gst_element_dispose), (gst_element_set_manager_func),
3723         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
3724         (gst_element_set_manager), (gst_element_get_manager),
3725         (gst_element_set_bus), (gst_element_get_bus),
3726         (gst_element_set_scheduler), (gst_element_get_scheduler):
3727         * gst/gstelement.h:
3728         * gst/gstevent.c: (gst_event_new_segment_seek),
3729         (gst_event_new_flush):
3730         * gst/gstevent.h:
3731         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
3732         (_gst_message_free), (gst_message_get_type), (gst_message_new),
3733         (gst_message_new_eos), (gst_message_new_error),
3734         (gst_message_new_warning), (gst_message_new_tag),
3735         (gst_message_new_state_changed), (gst_message_new_application),
3736         (gst_message_get_structure), (gst_message_parse_tag),
3737         (gst_message_parse_state_changed), (gst_message_parse_error),
3738         (gst_message_parse_warning):
3739         * gst/gstmessage.h:
3740         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
3741         (gst_real_pad_set_property), (gst_pad_set_active),
3742         (gst_pad_is_active), (gst_pad_set_blocked_async),
3743         (gst_pad_set_blocked), (gst_pad_is_blocked),
3744         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
3745         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
3746         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
3747         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
3748         (gst_pad_link_filtered), (gst_pad_relink_filtered),
3749         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
3750         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
3751         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
3752         (gst_pad_set_caps), (gst_pad_configure_sink),
3753         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
3754         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
3755         (gst_real_pad_dispose), (gst_real_pad_finalize),
3756         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
3757         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3758         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
3759         * gst/gstpad.h:
3760         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
3761         (pipeline_bus_handler), (gst_pipeline_change_state),
3762         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
3763         * gst/gstpipeline.h:
3764         * gst/gstprobe.h:
3765         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
3766         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
3767         (gst_queue_link_src), (gst_queue_bufferalloc),
3768         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
3769         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
3770         (gst_queue_loop), (gst_queue_handle_src_event),
3771         (gst_queue_handle_src_query), (gst_queue_src_activate),
3772         (gst_queue_change_state):
3773         * gst/gstqueue.h:
3774         * gst/gstscheduler.c: (gst_scheduler_init),
3775         (gst_scheduler_dispose), (gst_scheduler_create_task),
3776         (gst_scheduler_factory_create):
3777         * gst/gstscheduler.h:
3778         * gst/gststructure.c: (gst_structure_get_type),
3779         (gst_structure_copy_conditional):
3780         * gst/gststructure.h:
3781         * gst/gsttaginterface.h:
3782         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
3783         (gst_task_init), (gst_task_dispose), (gst_task_create),
3784         (gst_task_get_state), (gst_task_start), (gst_task_stop),
3785         (gst_task_pause):
3786         * gst/gsttask.h:
3787         * gst/gstthread.c:
3788         * gst/gstthread.h:
3789         * gst/gsttypes.h:
3790         * gst/schedulers/Makefile.am:
3791         * gst/schedulers/cothreads_compat.h:
3792         * gst/schedulers/entryscheduler.c:
3793         * gst/schedulers/faircothreads.c:
3794         * gst/schedulers/faircothreads.h:
3795         * gst/schedulers/fairscheduler.c:
3796         * gst/schedulers/gstbasicscheduler.c:
3797         * gst/schedulers/gstoptimalscheduler.c:
3798         * gst/schedulers/gthread-cothreads.h:
3799         * gst/schedulers/threadscheduler.c:
3800         (gst_thread_scheduler_task_get_type),
3801         (gst_thread_scheduler_task_class_init),
3802         (gst_thread_scheduler_task_init),
3803         (gst_thread_scheduler_task_start),
3804         (gst_thread_scheduler_task_stop),
3805         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
3806         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
3807         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
3808         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
3809         (plugin_init):
3810         * libs/gst/Makefile.am:
3811         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
3812         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
3813         (gst_file_pad_parent_set):
3814         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3815         (gst_dp_event_from_packet):
3816         * tests/complexity.c: (main):
3817         * tests/mass_elements.c: (main):
3818         * testsuite/states/locked.c: (message_received), (main):
3819         * testsuite/states/parent.c: (main):
3820         * tools/gst-inspect.c: (print_element_flag_info),
3821         (print_implementation_info), (print_pad_info):
3822         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
3823         (main):
3824         * tools/gst-md5sum.c: (event_loop), (main):
3825         * tools/gst-typefind.c: (main):
3826         * tools/gst-xmlinspect.c: (print_element_info):
3827         Next big merge.
3828         Added GstBus for mainloop integration.
3829         Added GstMessage for sending notifications on the bus.
3830         Added GstTask as an abstraction for pipeline entry points.
3831         Removed GstThread.
3832         Removed Schedulers.
3833         Simplified GstQueue for multithreaded core.
3834         Made _link threadsafe, removed old capsnego.
3835         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
3836         Added pad blocking functions.
3837         Reworked scheduling functions in GstPad to prepare for
3838         scheduling updates soon.
3839         Moved events out of data stream.
3840         Simplified GstEvent types.
3841         Added return values to push/pull.
3842         Removed clocking from GstElement.
3843         Added prototypes for state change function for next merge.
3844         Removed iterate from bins and state change management.
3845         Fixed some elements, disabled others for now.
3846         Fixed -inspect and -launch.
3847         Added check for GstBus.
3848
3849 2005-03-10  Wim Taymans  <wim@fluendo.com>
3850
3851         * docs/design/part-MT-refcounting.txt:
3852         * docs/design/part-clocks.txt:
3853         * docs/design/part-gstelement.txt:
3854         * docs/design/part-gstobject.txt:
3855         * docs/design/part-standards.txt:
3856         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3857         (gst_bin_remove_func), (gst_bin_remove):
3858         * gst/gstbin.h:
3859         * gst/gstbuffer.c:
3860         * gst/gstcaps.h:
3861         * testsuite/clock/clock1.c: (main):
3862         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
3863         (main):
3864         * testsuite/dlopen/loadgst.c: (do_test):
3865         * testsuite/refcounting/bin.c: (add_remove_test1),
3866         (add_remove_test2), (main):
3867         * testsuite/refcounting/element.c: (main):
3868         * testsuite/refcounting/element_pad.c: (main):
3869         * testsuite/refcounting/pad.c: (main):
3870         * tools/gst-launch.c: (sigint_handler_sighandler):
3871         * tools/gst-typefind.c: (main):
3872         Doc updates.
3873         Added doc about clock.
3874         removed gst_bin_iterate_recurse_up(), marked methods
3875         for removal.
3876         Fix more testsuites.
3877
3878 2005-03-09  Wim Taymans  <wim@fluendo.com>
3879
3880         * gst/gstpad.c: (gst_pad_get_direction),
3881         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
3882         (gst_pad_collect_valist):
3883         * testsuite/bins/interface.c: (main):
3884         * testsuite/caps/audioscale.c: (test_caps):
3885         * testsuite/caps/caps.c: (test1), (test2), (test3):
3886         * testsuite/caps/deserialize.c: (main):
3887         * testsuite/caps/enumcaps.c: (main):
3888         * testsuite/caps/filtercaps.c: (main):
3889         * testsuite/caps/intersect2.c: (main):
3890         * testsuite/caps/random.c: (main):
3891         * testsuite/caps/renegotiate.c: (my_fixate), (main):
3892         * testsuite/caps/sets.c: (check_caps):
3893         * testsuite/caps/simplify.c: (check_caps), (main):
3894         * testsuite/caps/subtract.c: (check_caps):
3895         Fix _pad_get_direction wrt ghostpads.
3896         Fix caps testsuite.
3897
3898 2005-03-09  Wim Taymans  <wim@fluendo.com>
3899
3900         * check/Makefile.am:
3901         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
3902         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
3903         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
3904         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
3905         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
3906         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
3907         (gst_bin_remove), (gst_bin_iterate_recurse_up),
3908         (bin_element_is_sink), (gst_bin_iterate_sinks),
3909         (gst_bin_iterate_all_by_interface):
3910         * gst/gstbin.h:
3911         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
3912         (gst_element_change_state), (gst_element_dispose),
3913         (gst_element_finalize), (gst_element_set_loop_function):
3914         * gst/gstelement.h:
3915         * gst/gstiterator.c: (find_custom_fold_func):
3916         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3917         (gst_pad_collectv), (gst_pad_collect_valist),
3918         (gst_pad_template_new):
3919         * gst/gstpipeline.c: (gst_pipeline_class_init),
3920         (gst_pipeline_dispose), (gst_pipeline_set_property),
3921         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
3922         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
3923         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
3924         * gst/gstutils.h:
3925         * gst/schedulers/entryscheduler.c:
3926         * gst/schedulers/gstbasicscheduler.c:
3927         (gst_basic_scheduler_cothreaded_chain),
3928         (gst_basic_scheduler_chain_add_element):
3929         * testsuite/bins/interface.c: (main):
3930         Added GstBin test.
3931         Added GstSystemClock test.
3932         Implemented clock distribution code in GstBin.
3933         Implemented iterate sinks method for future use.
3934         Rearranged gstelement.h
3935         Fix GstIterator comparison bug.
3936         Moved some code to GstPipeline, mostly clocking related.
3937
3938 2005-03-09  Wim Taymans  <wim@fluendo.com>
3939
3940         * configure.ac:
3941         * gst/gst_private.h:
3942         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3943         (gst_bin_remove_func), (gst_bin_remove),
3944         (gst_bin_get_by_name_recurse_up):
3945         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
3946         (gst_clock_id_compare_func), (gst_clock_id_wait),
3947         (gst_clock_id_wait_async), (gst_clock_init),
3948         (gst_clock_adjust_unlocked), (gst_clock_get_time):
3949         * gst/gstelement.h:
3950         * gst/gstinfo.c: (_gst_debug_init):
3951         * gst/gstobject.h:
3952         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3953         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
3954         * gst/gstpad.h:
3955         Bump version number, we're now 0.9.0
3956         Add future debugging category.
3957         Fix NULL _unref() in _get_by_name_recurse_up
3958         Rearrange gstpad.h.
3959         Update some docs.
3960
3961 2005-03-08  Wim Taymans  <wim@fluendo.com>
3962
3963         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
3964         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3965         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3966         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
3967         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
3968         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
3969         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
3970         * gst/elements/gstidentity.c: (gst_identity_class_init):
3971         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
3972         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
3973         * gst/elements/gstshaper.c: (gst_shaper_class_init):
3974         * gst/elements/gststatistics.c: (gst_statistics_class_init):
3975         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
3976         (gst_tee_link):
3977         * gst/gstelement.c: (gst_element_class_init),
3978         (gst_element_base_class_init), (gst_element_init),
3979         (gst_element_get_random_pad), (gst_element_wait_state_change),
3980         (gst_element_change_state), (gst_element_dispose),
3981         (gst_element_finalize), (gst_element_set_loop_function):
3982         * gst/gstelement.h:
3983         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
3984         * gst/gstthread.c: (gst_thread_class_init),
3985         (gst_thread_release_children_locks), (gst_thread_change_state):
3986         * gst/schedulers/gstbasicscheduler.c:
3987         (gst_basic_scheduler_loopfunc_wrapper),
3988         (gst_basic_scheduler_chain_wrapper),
3989         (gst_basic_scheduler_src_wrapper),
3990         (gst_basic_scheduler_remove_element):
3991         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3992         Remove threadsafe properties. Fix elements because GObject
3993         complains when installing a property before declaring a
3994         set/get_property handler.
3995         Rearrange gstelement.h file, use STATE macros for state locks.
3996         Free mutexes in the finalize method instead of dispose.
3997
3998 2005-03-08  Wim Taymans  <wim@fluendo.com>
3999
4000         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4001         * gst/gstthread.c: (gst_thread_release_children_locks):
4002         Added parentage check.
4003         Fix build og GstThread again.
4004
4005 2005-03-08  Wim Taymans  <wim@fluendo.com>
4006
4007         * docs/design/part-MT-refcounting.txt:
4008         * docs/design/part-conventions.txt:
4009         * docs/design/part-gstobject.txt:
4010         * docs/design/part-relations.txt:
4011         * docs/design/part-standards.txt:
4012         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4013         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4014         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4015         (gst_bin_iterate_all_by_interface):
4016         * gst/gstbuffer.h:
4017         * gst/gstclock.h:
4018         * gst/gstelement.c: (gst_element_class_init),
4019         (gst_element_change_state), (gst_element_set_loop_function):
4020         * gst/gstelement.h:
4021         * gst/gstiterator.c:
4022         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4023         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4024         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4025         (gst_object_set_parent), (gst_object_unparent),
4026         (gst_object_check_uniqueness):
4027         * gst/gstobject.h:
4028         Docs updates, clean up some headers.
4029
4030 2005-03-07  Wim Taymans  <wim@fluendo.com>
4031
4032         * check/.cvsignore:
4033         * check/Makefile.am:
4034         * check/gst-libs/.cvsignore:
4035         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4036         * check/gst/.cvsignore:
4037         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4038         (START_TEST), (gstbus_suite), (main):
4039         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4040         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4041         (gst_data_suite), (main):
4042         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4043         (add_fold_func), (gstiterator_suite), (main):
4044         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4045         (thread_name_object), (thread_name_object_default),
4046         (gst_object_name_compare), (gst_object_suite), (main):
4047         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4048         (gst_pad_suite), (main):
4049         * check/gstcheck.c: (gst_check_log_message_func),
4050         (gst_check_log_critical_func), (gst_check_init):
4051         * check/gstcheck.h:
4052         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4053         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4054         Added checks.
4055
4056 2005-03-07  Wim Taymans  <wim@fluendo.com>
4057
4058         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4059         (gst_list_iterator_next), (gst_list_iterator_resync),
4060         (gst_list_iterator_free), (gst_iterator_new_list),
4061         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4062         (gst_iterator_free), (gst_iterator_push), (filter_next),
4063         (filter_resync), (filter_uninit), (filter_free),
4064         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4065         (gst_iterator_foreach), (find_custom_fold_func),
4066         (gst_iterator_find_custom):
4067         * gst/gstiterator.h:
4068         Added missing files.
4069
4070 2005-03-07  Wim Taymans  <wim@fluendo.com>
4071
4072         * Makefile.am:
4073         * configure.ac:
4074         * docs/design/part-MT-refcounting.txt:
4075         * docs/design/part-conventions.txt:
4076         * docs/design/part-gstobject.txt:
4077         * docs/design/part-relations.txt:
4078         * examples/mixer/mixer.c: (main):
4079         * examples/thread/thread.c: (eos), (main):
4080         * gst/Makefile.am:
4081         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4082         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4083         (gst_spider_plug_from_srcpad):
4084         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4085         (gst_spider_identity_change_state),
4086         (gst_spider_identity_sink_loop_type_finding):
4087         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4088         * gst/elements/gstidentity.c: (gst_identity_init):
4089         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4090         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4091         * gst/elements/gsttypefindelement.c: (free_entry):
4092         * gst/gst.c:
4093         * gst/gst.h:
4094         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4095         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4096         (gst_bin_set_index), (gst_bin_set_element_sched),
4097         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4098         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4099         (gst_bin_iterate_elements), (iterate_child_recurse),
4100         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4101         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4102         (compare_interface), (gst_bin_get_by_interface),
4103         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4104         * gst/gstbin.h:
4105         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4106         (gst_buffer_default_free), (gst_buffer_default_copy),
4107         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4108         (gst_buffer_create_sub):
4109         * gst/gstbuffer.h:
4110         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4111         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4112         (gst_caps_unref), (gst_static_caps_get),
4113         (gst_caps_remove_and_get_structure), (gst_caps_append),
4114         (gst_caps_append_structure), (gst_caps_remove_structure),
4115         (gst_caps_copy_nth), (gst_caps_set_simple),
4116         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4117         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4118         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4119         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4120         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4121         (gst_caps_structure_figure_out_union),
4122         (gst_caps_switch_structures), (gst_caps_do_simplify),
4123         (gst_caps_replace), (gst_caps_from_string),
4124         (gst_caps_copy_conditional):
4125         * gst/gstcaps.h:
4126         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4127         (_gst_clock_id_free), (gst_clock_id_unref),
4128         (gst_clock_id_compare_func), (gst_clock_id_wait),
4129         (gst_clock_id_wait_async), (gst_clock_class_init),
4130         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4131         (gst_clock_get_time), (gst_clock_set_time_adjust),
4132         (gst_clock_set_property), (gst_clock_get_property):
4133         * gst/gstclock.h:
4134         * gst/gstcompat.h:
4135         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4136         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4137         * gst/gstdata.h:
4138         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4139         (gst_element_requires_clock), (gst_element_provides_clock),
4140         (gst_element_set_clock), (gst_element_clock_wait),
4141         (gst_element_wait), (gst_element_set_time_delay),
4142         (gst_element_is_indexable), (gst_element_add_pad),
4143         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4144         (pad_compare_name), (gst_element_get_static_pad),
4145         (gst_element_request_pad), (gst_element_get_request_pad),
4146         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4147         (gst_element_class_get_pad_template_list),
4148         (gst_element_class_get_pad_template), (gst_element_error_func),
4149         (gst_element_get_random_pad), (gst_element_get_event_masks),
4150         (gst_element_send_event), (gst_element_seek),
4151         (gst_element_get_query_types), (gst_element_query),
4152         (gst_element_get_formats), (gst_element_convert),
4153         (gst_element_is_locked_state), (gst_element_set_locked_state),
4154         (gst_element_sync_state_with_parent), (gst_element_change_state),
4155         (gst_element_finalize), (gst_element_yield),
4156         (gst_element_interrupt), (gst_element_set_scheduler),
4157         (gst_element_get_scheduler), (gst_element_set_loop_function):
4158         * gst/gstelement.h:
4159         * gst/gstevent.h:
4160         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4161         (gst_format_get_by_nick), (gst_format_get_details),
4162         (gst_format_iterate_definitions):
4163         * gst/gstformat.h:
4164         * gst/gstindex.c: (gst_index_gtype_resolver):
4165         * gst/gstinfo.c:
4166         * gst/gstinfo.h:
4167         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4168         (gst_mem_chunk_free):
4169         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4170         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4171         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4172         (gst_object_dispatch_properties_changed),
4173         (gst_object_set_name_default), (gst_object_set_name),
4174         (gst_object_get_name), (gst_object_set_name_prefix),
4175         (gst_object_get_name_prefix), (gst_object_set_parent),
4176         (gst_object_get_parent), (gst_object_unparent),
4177         (gst_object_check_uniqueness), (gst_object_save_thyself),
4178         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4179         (gst_object_set_property), (gst_object_get_property),
4180         (gst_object_get_path_string):
4181         * gst/gstobject.h:
4182         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4183         (gst_real_pad_init), (gst_real_pad_get_property),
4184         (gst_pad_custom_new), (gst_pad_get_direction),
4185         (gst_pad_set_active), (gst_pad_is_active),
4186         (gst_pad_set_event_function), (gst_pad_is_linked),
4187         (gst_pad_link_free), (gst_pad_link_intersect),
4188         (gst_pad_link_fixate), (gst_pad_set_caps),
4189         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4190         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4191         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4192         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4193         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4194         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4195         (gst_pad_realize), (gst_pad_get_allowed_caps),
4196         (gst_real_pad_dispose), (gst_real_pad_finalize),
4197         (gst_pad_collectv), (gst_pad_collect_valist),
4198         (gst_pad_template_dispose), (gst_pad_template_new),
4199         (gst_pad_get_internal_links):
4200         * gst/gstpad.h:
4201         * gst/gstpipeline.c: (gst_pipeline_dispose),
4202         (gst_pipeline_change_state):
4203         * gst/gstpipeline.h:
4204         * gst/gstplugin.c:
4205         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4206         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4207         * gst/gstpluginfeature.h:
4208         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4209         * gst/gstquery.c: (_gst_query_type_initialize),
4210         (gst_query_type_register), (gst_query_type_get_by_nick),
4211         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4212         * gst/gstquery.h:
4213         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4214         * gst/gstscheduler.c: (gst_scheduler_add_element),
4215         (gst_scheduler_factory_create):
4216         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4217         (gst_structure_free), (gst_structure_set_name),
4218         (gst_structure_id_set_value), (gst_structure_set_value),
4219         (gst_structure_set_valist), (gst_structure_remove_field),
4220         (gst_structure_remove_fields),
4221         (gst_structure_remove_fields_valist),
4222         (gst_structure_remove_all_fields), (gst_structure_foreach),
4223         (gst_structure_map_in_place),
4224         (gst_caps_structure_fixate_field_nearest_int),
4225         (gst_caps_structure_fixate_field_nearest_double):
4226         * gst/gststructure.h:
4227         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4228         (gst_system_clock_init), (gst_system_clock_dispose),
4229         (gst_system_clock_async_thread),
4230         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4231         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4232         * gst/gstsystemclock.h:
4233         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4234         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4235         * gst/gsttaginterface.c:
4236         * gst/gstthread.c: (gst_thread_dispose),
4237         (gst_thread_release_children_locks), (gst_thread_change_state),
4238         (gst_thread_main_loop):
4239         * gst/gsttrashstack.h:
4240         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4241         * gst/gsttypes.h:
4242         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4243         (gst_element_request_pad), (gst_element_get_pad_from_template),
4244         (gst_element_request_compatible_pad),
4245         (gst_element_get_compatible_pad_filtered),
4246         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4247         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4248         (gst_element_link_many), (gst_element_link),
4249         (gst_element_link_pads), (gst_element_unlink_pads),
4250         (gst_element_unlink_many), (gst_element_unlink),
4251         (gst_pad_can_link_filtered), (gst_pad_can_link),
4252         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4253         (gst_object_default_error), (gst_bin_add_many),
4254         (gst_bin_remove_many), (gst_element_populate_std_props),
4255         (gst_element_class_install_std_props), (gst_buffer_merge),
4256         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4257         (link_fold_func), (gst_pad_proxy_setcaps):
4258         * gst/gstutils.h:
4259         * gst/gstvalue.c: (gst_value_deserialize_string):
4260         * gst/parse/grammar.y:
4261         * gst/schedulers/gstbasicscheduler.c:
4262         (gst_basic_scheduler_cothreaded_chain),
4263         (gst_basic_scheduler_chain_recursive_add),
4264         (gst_basic_scheduler_pad_link):
4265         * gst/schedulers/gstoptimalscheduler.c:
4266         (get_group_schedule_function),
4267         (gst_opt_scheduler_state_transition),
4268         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4269         * libs/gst/bytestream/bytestream.c:
4270         * libs/gst/dataprotocol/dataprotocol.c:
4271         (gst_dp_header_from_buffer):
4272         * po/nb.po:
4273         * po/ru.po:
4274         * tests/threadstate/threadstate2.c: (eos):
4275         * tools/gst-compprep.c: (main):
4276         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4277         (print_pad_info), (print_children_info):
4278         * tools/gst-launch.c: (idle_func), (main):
4279         * tools/gst-md5sum.c: (idle_func), (main):
4280         * tools/gst-xmlinspect.c: (print_element_info):
4281         First THREADED backport attempt, focusing on adding locks and
4282         making sure the API is threadsafe. Needs more work. More docs
4283         follow this week.
4284
4285 2005-02-24  Andy Wingo  <wingo@pobox.com>
4286
4287         * tests/bench-complexity.scm:
4288         * tests/complexity.gnuplot: New files, good for running complexity
4289         benchmarks.
4290
4291         * tests/Makefile.am:
4292         * tests/complexity.c: New test, sets up N elements, at each level
4293         teeing into M streams per element. Eeeenteresting.
4294
4295         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4296         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4297         running bench-mass_elements.scm.
4298
4299         * tests/bench-mass_elements.scm: New script, runs mass_elements
4300         for various numbers of identities, outputting the results to a
4301         file. Requires guile 1.6. Just for testing.
4302
4303 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4304
4305         * gst/schedulers/fairscheduler.c:
4306           compile with debug disabled
4307
4308 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4309
4310         * configure.ac:
4311           hunting season on 0.9 is now OPEN
4312
4313 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4314
4315         * docs/libs/tmpl/gstcontrol.sgml:
4316         * docs/libs/tmpl/gstdparam.sgml:
4317         * docs/libs/tmpl/gstdplinint.sgml:
4318         * docs/libs/tmpl/gstdpman.sgml:
4319         * docs/libs/tmpl/gstdpsmooth.sgml:
4320         * docs/libs/tmpl/gstunitconvert.sgml:
4321           more docs for the state of dparams
4322
4323 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4324
4325         * gst/gstelementfactory.c: (gst_element_factory_create):
4326         * gst/gstobject.c: (gst_object_init),
4327         (gst_object_set_name_default), (gst_object_set_name):
4328           name objects by default, not in gst_element_factory_create. Allows
4329           using elements created with g_object_new. (fixes #167283)
4330
4331 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4332
4333         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4334           make the time that debugging functions print relative to when
4335           gst_init was called
4336
4337 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4338
4339         * gst/gsttaginterface.c:
4340           Fix inline docs: tag setter vararg functions are NULL-terminated,
4341           GST_TAG_INVALID doesn't exist any more.
4342
4343 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4344
4345         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4346         Allocate the 1 byte more memory that was forgotten!!!!!
4347         fixes memory corruption on 64bit platforms
4348
4349 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4350
4351         * docs/pwg/building-pads.xml:
4352         * docs/pwg/intro-basics.xml:
4353           fixed a few typos, relabeled introductionary list of types
4354         * docs/random/ensonic/dparams.txt:
4355           more notes abut dparam changes
4356         * libs/gst/control/dparam.c: (gst_dparam_attach):
4357         * libs/gst/control/dparammanager.c:
4358         * libs/gst/control/dparammanager.h:
4359           - many comments and notes on dparam implementation
4360           - new dparams are were not initialized to the default value
4361             from param spec
4362
4363 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4364
4365         submitted by: Peter Astakhov
4366
4367         * po/LINGUAS:
4368         * po/ru.po:
4369           adding Russian translation
4370
4371 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4372
4373         * configure.ac:
4374         * docs/gst/Makefile.am:
4375         * docs/libs/Makefile.am:
4376           make sure popt is added to gtk-doc flags.  Fixes #147782.
4377
4378 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4379
4380         * docs/faq/using.xml:
4381           Fix typo in FAQ (artssink => artsdsink)
4382
4383 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4384
4385         * tools/gst-launch.1.in:
4386           Fix typo (#166699).
4387
4388 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4389
4390         * docs/faq/using.xml:
4391           Add -v argument to fakesrc/fakesink gst-launch line,
4392           so that the promised output will actually show up.
4393
4394 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4395
4396         * gst/gstthread.c: (gst_thread_change_state):
4397           Implement state-change error handling (#166073).
4398
4399 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4400
4401         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4402           Release interrupt after handling (#166250).
4403
4404 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4405
4406         * configure.ac:
4407           back to HEAD
4408
4409 === release 0.8.9 ===
4410
4411 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4412
4413         * NEWS:
4414         * RELEASE:
4415         * configure.ac:
4416           releasing 0.8.9, "Like Eating Glass"
4417
4418 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4419
4420         submitted by: Clytie Siddall
4421
4422         * po/vi.po: Added Vietnamese translation
4423
4424 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4425
4426         patch by: Tim Philipp-Müller
4427
4428         * configure.ac:
4429         * gst/gstpad.c:
4430           unref data when probe function returns FALSE.  Fixes #166362
4431
4432 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4433
4434         * gst/gst.c: (gst_init_get_popt_table):
4435           Fix typo (#166269).
4436
4437 2005-02-04  Andy Wingo  <wingo@pobox.com>
4438
4439         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4440         the debugging on whether the caps are compatible.
4441
4442 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4443
4444         * docs/manual/basics-elements.xml:
4445           Fix two typos.
4446
4447 2005-02-02  Wim Taymans  <wim@fluendo.com>
4448
4449         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4450         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4451         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4452         Remove some FIXMEs after analysing and commenting why they
4453         are not issues.
4454
4455 2005-02-02  Wim Taymans  <wim@fluendo.com>
4456
4457         * gst/schedulers/gstoptimalscheduler.c:
4458         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4459         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4460         (get_invalid_call), (chain_invalid_call),
4461         (get_group_schedule_function), (loop_group_schedule_function),
4462         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4463         (gst_opt_scheduler_state_transition),
4464         (gst_opt_scheduler_add_element),
4465         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4466         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4467         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4468         (gst_opt_scheduler_show):
4469         Added lock to protect scheduler data structures.
4470
4471 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4472
4473         * testsuite/threads/threadi.c: (cb_data):
4474           Fix buglet in test.
4475
4476 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4477
4478         * testsuite/threads/Makefile.am:
4479         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4480           On Wim's request, split the test in three separately-compiled
4481           tests that each test a very specific bug. Two of them still fail,
4482           will create bugs for those. threadi.c indicates why they fail.
4483
4484 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4485
4486         * gst/schedulers/gstoptimalscheduler.c:
4487         (get_group_schedule_function):
4488           Try to work with the threading mess that queue_link is.
4489
4490 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4491
4492         * gst/gstbin.c: (gst_bin_remove_func):
4493           Explicitely make an element release locks in a group when being
4494           remove from a bin.
4495         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4496           If there's no scheduler, always return immediately (similar to
4497           gst_element_interrupt).
4498
4499 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4500
4501         * gst/gstbin.c: (gst_bin_child_state_change_func):
4502           Remove a piece of code that could never be reached.
4503         * docs/gst/gstreamer-sections.txt:
4504         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4505         (gst_pad_call_get_function):
4506         * gst/gstpad.h:
4507         * testsuite/pad/Makefile.am:
4508           Fix #150546, enable tests.
4509
4510 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4511
4512         * docs/pwg/advanced-types.xml:
4513           Fix description for buffer-frames=0.
4514         * docs/gst/tmpl/gstbin.sgml:
4515         * gst/gstbin.c: (gst_bin_child_state_change_func),
4516         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4517         * gst/gstbin.h:
4518         * testsuite/threads/Makefile.am:
4519         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4520         (cb_state), (cb_play), (main):
4521           Fix non-recursive state changes to *really* change the state
4522           of the object, and not just call parent_class->state_change.
4523           Fix a lot of lockups caused by this. Fixes #132775. Add test
4524           for the problem. Also enable test to show #142588 (fixed).
4525         * gst/gstthread.c: (gst_thread_change_state),
4526         (gst_thread_child_state_change):
4527           Don't exit the thread if we go to NULL and are inside thread
4528           context. Instead, return control to the main thread context
4529           and exit from there.
4530         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4531           Don't unset virtual functions, since those may still be used.
4532           That's not necessarily correct, but suffices for now.
4533         * configure.ac:
4534         * testsuite/Makefile.am:
4535         * testsuite/pad/Makefile.am:
4536         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4537         (gst_test_sink_base_init), (gst_test_sink_chain),
4538         (gst_test_sink_init), (main):
4539         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4540         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4541         (main):
4542         * testsuite/pad/link.c: (gst_test_element_class_init),
4543         (gst_test_element_base_init), (gst_test_src_get),
4544         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4545         (gst_test_filter_loop), (gst_test_filter_init),
4546         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4547         (cb_error), (main):
4548           Add tests to show #150546. Pass, but should fail (currently
4549           disabled from the testsuite).
4550         * gst/gstscheduler.c: (gst_scheduler_dispose):
4551           Dereference child schedulers on dispose (#94464).
4552         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4553           Fix typo.
4554         * testsuite/threads/thread.c: (main):
4555           Add more debug.
4556
4557 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4558
4559         * gst/gstpad.c: (gst_pad_push):
4560           Oops, revert previous commit, broke testsuite...
4561
4562 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4563
4564         * gst/gstpad.c: (gst_pad_push):
4565           Add check that the pad on which the push is performed is not a
4566           get-based pad (#150546).
4567
4568 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4569
4570         * gst/elements/gsttypefindelement.c:
4571         (gst_type_find_element_handle_event):
4572           Fix buffer pushing if stream EOSes during typefinding.
4573
4574 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4575
4576         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4577
4578         * gst/gstvalue.c: (gst_string_wrap):
4579           Allow NULL-strings as argument (#165365).
4580
4581 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4582
4583         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4584
4585         * gst/schedulers/faircothreads.c:
4586         (gst_fair_scheduler_cothread_queue_show):
4587           Fix build without debug enabled.
4588
4589 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4590
4591         * docs/gst/gstreamer-sections.txt:
4592         * docs/libs/gstreamer-libs-docs.sgml:
4593         * docs/libs/gstreamer-libs-sections.txt:
4594         * docs/libs/tmpl/gstcontrol.sgml:
4595         * docs/libs/tmpl/gstdparam.sgml:
4596         * docs/libs/tmpl/gstdplinint.sgml:
4597         * docs/libs/tmpl/gstdpman.sgml:
4598         * docs/libs/tmpl/gstdpsmooth.sgml:
4599         * docs/libs/tmpl/gstputbits.sgml:
4600         * docs/libs/tmpl/gstunitconvert.sgml:
4601         * libs/gst/control/dparam.c:
4602         * libs/gst/control/dparam.h:
4603         * libs/gst/control/dparammanager.c:
4604         (gst_dpman_add_required_dparam_callback),
4605         (gst_dpman_add_required_dparam_direct),
4606         (gst_dpman_add_required_dparam_array),
4607         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4608         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4609         (gst_dpman_get_manager)
4610           restructured DParam docs
4611
4612 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4613
4614         * gst-element-check.m4:
4615           Only check for gst-inspect if we haven't already
4616           found it in previous element check runs
4617
4618 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4619
4620         * docs/gst/Makefile.am:
4621         * docs/libs/Makefile.am:
4622           fixed install rules to treat style.css as optional
4623
4624 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4625
4626         * docs/gst/Makefile.am:
4627         * docs/libs/Makefile.am:
4628           install style.css along with docs
4629         * docs/gst/tmpl/gstbin.sgml:
4630         * docs/gst/tmpl/gstclock.sgml:
4631         * docs/gst/tmpl/gstdata.sgml:
4632         * docs/gst/tmpl/gstelement.sgml:
4633         * gst/gstbin.h:
4634         * gst/gstelement.c: (gst_element_class_init):
4635         * gst/gstelement.h:
4636           fixing incomplete docs
4637
4638 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4639
4640         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4641           Don't unref seek event twice when fflush() fails
4642           
4643 2005-01-22  David Schleef  <ds@schleef.org>
4644
4645         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4646
4647 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4648
4649         * docs/gst/Makefile.am:
4650         * docs/libs/Makefile.am:
4651           added params for deprecation guards
4652         * gst/gst.c:
4653         * gst/gst.h:
4654         * gst/gsterror.c: (_gst_resource_errors_init),
4655         (_gst_stream_errors_init):
4656         * gst/gsterror.h:
4657           documented some more enums
4658
4659 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4660         * gst/autoplug/gstspideridentity.c:
4661         Cosmetic fix - spider_find_peek should be static
4662         * gst/parse/parse.l:
4663         Applying fix for #164261
4664
4665 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4666
4667         * docs/gst/gstreamer-sections.txt:
4668         * docs/gst/tmpl/gstplugin.sgml:
4669         * docs/libs/gstreamer-libs-sections.txt:
4670         * docs/libs/tmpl/gstcontrol.sgml:
4671         * gst/gstbuffer.h:
4672         * gst/gsttag.h:
4673         * gst/gstvalue.c:
4674           added docs for the TAG defines
4675
4676 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4677
4678         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4679           Only unref entry if there is an entry.
4680
4681 2005-01-17  Wim Taymans  <wim@fluendo.com>
4682
4683         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4684         (remove_from_group), (schedule_group), (normalize_group),
4685         (gst_opt_scheduler_iterate):
4686         Also ref/unref decoupled elements before iterating the
4687         group since they are not added to the list of elements.
4688
4689 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4690
4691         * docs/manual/highlevel-components.xml:
4692           Add subtitle/streamselection as new features to playbin.
4693
4694 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4695
4696         * docs/manual/manual.xml:
4697           Re-enable dataaccess docs (oops).
4698
4699 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4700
4701         * docs/pwg/advanced-types.xml:
4702         * docs/random/mimetypes:
4703           Add documentation on libsndfile types (#163309), by Steve Baker
4704           <steve@stevebaker.org>.
4705         * gst/gstelement.c: (gst_element_release_request_pad):
4706           If an element has no explicit function, just remove the pad.
4707
4708 2005-01-17  Luca Ognibene  <luogni@tin.it>
4709
4710         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4711
4712         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
4713           Fix memleak (#163801).
4714
4715 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4716
4717         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
4718           I think this is actually more correct...
4719
4720 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4721
4722         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4723           Another workaround for memory access while destroyed in callback.
4724           Please, someone with refcount knowledge, have a look at this.
4725
4726 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4727
4728         * docs/faq/faq.xml:
4729         * docs/faq/legal.xml:
4730           move the legal Q&A here
4731
4732 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4733
4734         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
4735         (gst_tee_request_new_pad):
4736           Fix negotiation.
4737
4738 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4739
4740         * docs/random/omega/caps2:
4741         * testsuite/caps/caps_strings:
4742           replace framerate aproximations by their real value
4743           (24000/1001, 30000/1001, 60000/1001)
4744           Partially fixes bug #164049
4745
4746 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4747
4748         * docs/gst/Makefile.am:
4749           don't fail on the stupid GstPoptOption
4750
4751 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4752
4753         * gst/gstpad.h:
4754         * gst/gstprobe.c:
4755           allow probes to work on ghost pads by realizing the pad
4756           probe debugging
4757
4758 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4759
4760         * docs/gst/gstreamer-sections.txt:
4761         * docs/gst/tmpl/gstpad.sgml:
4762         * gst/gstpad.c: (gst_pad_set_active_recursive):
4763         * gst/gstpad.h:
4764           Add gst_pad_set_active_recursive().
4765
4766 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4767
4768         * docs/random/release:
4769           updates
4770         * gst/gst_private.h:
4771         * gst/gstinfo.c:
4772         * gst/gstobject.c:
4773           move deep_notify logging to a new category
4774         * gst/gstprobe.c:
4775         * gst/gstprobe.h:
4776           add stuff so bindings can wrap probes
4777
4778 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4779
4780         * gst/gstplugin.c: (gst_plugin_load):
4781           Fix plugin loading if plugin/lib was already loaded. Fixes
4782           #163383
4783
4784 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
4785
4786         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4787
4788         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
4789           Protect plugin loading by a mutex so it's threadsafe. Fixes
4790           #163234.
4791
4792 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4793
4794         * gst/gstevent.c: (_gst_event_copy):
4795           Reference source object when copying events, since it'll be
4796           dereferenced on event dereferencing as well.
4797
4798 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4799
4800         * docs/gst/gstreamer-sections.txt:
4801         * docs/gst/tmpl/gstevent.sgml:
4802         * gst/gstevent.c: (gst_event_new_filler_stamped),
4803         (gst_event_filler_get_duration):
4804         * gst/gstevent.h:
4805           Add two new functions for filler events (which are used to
4806           synchronize streams if one of them is not having any data
4807           for a while) without interrupting the actual data-stream.
4808           Basically a no-op.
4809         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4810         (gst_queue_link_sink), (gst_queue_link_src),
4811         (gst_queue_change_state):
4812           Allow for renegotiation while filled. Required for stream
4813           switching while playing.
4814
4815 2005-01-08  Benjamin Otte  <otte@gnome.org>
4816
4817         * gst/gstelement.c: (gst_element_link_many):
4818           fix up g_return_if_fail's
4819         * po/LINGUAS:
4820         * po/de.po:
4821           add German translation, that was somehow not included
4822
4823 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4824
4825         * docs/random/mimetypes:
4826           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
4827           do not add them to riff-lib as they are not common
4828
4829 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4830
4831         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4832           Check for existence of probe after performing the probe before
4833           re-accessing it to prevent segfaults caused by removal of the
4834           probe in the callback.
4835
4836 2005-01-05  David Schleef  <ds@schleef.org>
4837
4838         * testsuite/registry/Makefile.am:
4839         * testsuite/registry/gst-print-formats.c:
4840         (print_pad_templates_info), (print_element_list),
4841         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
4842         (g_list_uniqify), (get_pad_templates_info),
4843         (get_element_mime_list), (print_mime_list), (main): A little
4844         program that looks through the registry to find elements of
4845         a given type.  Not particularly interesting as a test, except
4846         that there's no other test covering the same area.
4847
4848 2005-01-05  David Schleef  <ds@schleef.org>
4849
4850         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
4851         (fault_handler_sigaction), (fault_spin),
4852         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
4853         in signal.h-type signal handlers by not calling forbidden functions,
4854         including gst_element_set_state().
4855
4856 2005-01-05  David Schleef  <ds@schleef.org>
4857
4858         * gst/gstvalue.h: Mark _gst_reserved[] as private
4859
4860 2005-01-05  David Schleef  <ds@schleef.org>
4861
4862         * gst/gstvalue.c: Fix doc build problem.
4863
4864 2005-01-05  David Schleef  <ds@schleef.org>
4865
4866         * gst/gstvalue.c: Add some documentation
4867
4868 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
4869
4870         * docs/README:
4871           another shell oneliner for empty return value docs
4872         * gst/gstcaps.c:
4873         * gst/gstvalue.c:
4874         * libs/gst/control/dparam.c:
4875           more doc fixes (parameters and return values)
4876
4877 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
4878
4879         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4880
4881         * gst/gstregistry.h:
4882         * gst/registries/gstxmlregistry.c:
4883           Fix macro's for Mingw (fixes #162276).
4884
4885 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
4886
4887         * docs/README:
4888           quick shell oneliner to find undocumented members
4889         * docs/gst/tmpl/gstplugin.sgml:
4890         * docs/gst/tmpl/gstscheduler.sgml:
4891         * docs/gst/tmpl/gstthread.sgml:
4892           more enumtypes cleanup
4893         * gst/gsterror.h:
4894           activated documentation comments, now someone needs to document
4895           the enums :(
4896
4897 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4898
4899         * docs/manual/manual.xml:
4900           Add dataaccess part (doh!).
4901
4902 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4903
4904         * docs/manual/advanced-autoplugging.xml:
4905           Fix typo (intiate -> initiate).
4906
4907 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4908
4909         * docs/random/bbb/streamselection:
4910           Add some notes on how to handle multi-subtitle/-audio streams.
4911
4912 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
4913
4914         * docs/gst/gstreamer-docs.sgml:
4915         * docs/gst/gstreamer-sections.txt:
4916         * docs/gst/tmpl/gstenumtypes.sgml:
4917         * docs/gst/tmpl/gsterror.sgml:
4918         * docs/gst/tmpl/gstevent.sgml:
4919         * docs/gst/tmpl/gstpad.sgml:
4920         * docs/gst/tmpl/gstpadtemplate.sgml:
4921         * docs/gst/tmpl/gstthread.sgml:
4922           removed gstenumtypes section from docs and put all the enums into
4923           their sections
4924
4925 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4926
4927         * gst/gstplugin.c:
4928           document gst_library_load a bit more (riff special case + return
4929           value if already loaded)
4930         * testsuite/bytestream/filepadsink.c:
4931           plugin name is 'gstbytestream', not 'bytestream'
4932
4933 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4934
4935         * docs/random/bbb/subtitles:
4936           Add some first mind rumblings on proper subtitle support.
4937
4938 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
4939
4940         * po/ca.po:
4941         * po/sv.po:
4942           updated translations
4943
4944 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4945
4946         * docs/manual/advanced-dataaccess.xml:
4947           Add section on how to use fakesrc/fakesink/identity in your
4948           application, plus section on how to embed plugins. Also mention
4949           probes.
4950         * docs/manual/appendix-checklist.xml:
4951         * docs/manual/appendix-debugging.xml:
4952         * docs/manual/appendix-gnome.xml:
4953         * docs/manual/appendix-integration.xml:
4954           Debug -> checklist, GNOME -> integration, add sections on Linux,
4955           KDE integration and add other things useful for application
4956           development.
4957         * docs/manual/manual.xml:
4958           Remove some fixmes, update some file pointers.
4959         * docs/pwg/appendix-checklist.xml:
4960           Fix typo.
4961         * docs/pwg/building-boiler.xml:
4962           Remove ugly header and add commented fixme.
4963         * docs/pwg/pwg.xml:
4964           Add fixme.
4965         * examples/manual/Makefile.am:
4966           Add example for added docs.
4967
4968 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4969
4970         * configure.ac:
4971           back to HEAD
4972
4973 === release 0.8.8 ===
4974
4975 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4976
4977         * NEWS:
4978         * RELEASE:
4979         * configure.ac:
4980           Releasing 0.8.8, "I'll Take Care Of You"
4981
4982 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4983
4984         * configure.ac:
4985           second prerelease
4986
4987 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4988
4989         patch by: Wim Taymans
4990
4991         * gst/gstbin.c:
4992           Fix for #159852 - make iterate emission threadsafe
4993
4994 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4995
4996         * docs/faq/cvs.xml:
4997           notes about new fdo account request
4998
4999 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5000
5001         * docs/gst/gstreamer-docs.sgml:
5002         * docs/gst/tmpl/gstenumtypes.sgml:
5003         * docs/gst/tmpl/gstplugin.sgml:
5004         * docs/libs/gstreamer-libs-docs.sgml:
5005           Added missing short docs. Added ids for navigation.
5006
5007 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5008
5009         * docs/manual/advanced-autoplugging.xml:
5010         * docs/manual/advanced-schedulers.xml:
5011         * docs/manual/advanced-threads.xml:
5012           Rewrites. Remove cothreads, go a bit into opt specifically,
5013           document threads and their gotchas, and do some technical stuff
5014           on autoplugging plus add some working examples. Fixes #157395.
5015         * examples/manual/Makefile.am:
5016           Add typefind/autoplugger example (one that actually works).
5017           Remove queue example since it's a duplicate of the thread one.
5018
5019 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5020
5021         * gst/gstvalue.c: (gst_value_deserialize_string):
5022           use deprecated g_value_set_string_take_ownership to keep compatible
5023           with glib 2.2
5024
5025 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5026
5027         * gst/gstvalue.c: (gst_value_deserialize_string):
5028           revert last patch, only dom a g_utf8_validate now before accepting
5029           the string - caps parsing strips " from strings so we can't rely on
5030           them
5031         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5032           disable a test that tested the above and comment it
5033
5034 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5035
5036         Patch reviewed by David Schleef  <ds@schleef.org>
5037
5038         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5039         bug #153882)
5040         * win32/gstenumtypes.h: same
5041
5042 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5043
5044         * gst/gstpad.c: (gst_pad_query):
5045           Do query on realized pad, similar to how convert/send_event handle
5046           this. Also makes sense, since this pad belongs to the function to
5047           which this query will be sent. Fixes #158163.
5048
5049 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5050
5051         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5052
5053 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5054
5055         * docs/faq/general.xml: fix pipeline to actually work
5056
5057 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5058
5059         * gst/gstvalue.c: (gst_value_deserialize_string):
5060           check that a simple string that gets deserialized does not contain
5061           invalid characters
5062         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5063           remove a test that tested a wring behaviour
5064
5065 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5066
5067         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5068
5069         * docs/manual/intro-motivation.xml:
5070           Fix typos.
5071
5072 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5073
5074         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5075
5076         * docs/gst/tmpl/gstprobe.sgml:
5077           Fix documentation of probe callback - it is supposed to return
5078           FALSE, not TRUE, to remove data from the stream (#159087).
5079
5080 2004-12-16  Daniel Gazard  <dany42@free.fr>
5081
5082         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5083
5084         * gst/gstelementfactory.c: (gst_element_factory_create):
5085           Fix compile failure if compiling without libxml2 support (#149936).
5086
5087 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5088
5089         * docs/manual/advanced-autoplugging.xml:
5090         * docs/manual/highlevel-components.xml:
5091           Move spider from autoplugging to components. Autoplugging is for
5092           internals, not for solutions. ;-).
5093
5094 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5095
5096         * docs/random/ds/0.9-suggested-changes:
5097           Make note on device/location/uri property names.
5098
5099 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5100
5101         * docs/manual/advanced-autoplugging.xml:
5102         * docs/manual/advanced-clocks.xml:
5103         * docs/manual/advanced-interfaces.xml:
5104         * docs/manual/advanced-metadata.xml:
5105         * docs/manual/advanced-position.xml:
5106         * docs/manual/advanced-schedulers.xml:
5107         * docs/manual/advanced-threads.xml:
5108         * docs/manual/appendix-gnome.xml:
5109         * docs/manual/appendix-programs.xml:
5110         * docs/manual/appendix-quotes.xml:
5111         * docs/manual/autoplugging.xml:
5112         * docs/manual/basics-bins.xml:
5113         * docs/manual/basics-data.xml:
5114         * docs/manual/basics-elements.xml:
5115         * docs/manual/basics-helloworld.xml:
5116         * docs/manual/basics-init.xml:
5117         * docs/manual/basics-pads.xml:
5118         * docs/manual/basics-plugins.xml:
5119         * docs/manual/bins-api.xml:
5120         * docs/manual/bins.xml:
5121         * docs/manual/buffers-api.xml:
5122         * docs/manual/buffers.xml:
5123         * docs/manual/clocks.xml:
5124         * docs/manual/components.xml:
5125         * docs/manual/cothreads.xml:
5126         * docs/manual/debugging.xml:
5127         * docs/manual/dparams-app.xml:
5128         * docs/manual/dynamic.xml:
5129         * docs/manual/elements-api.xml:
5130         * docs/manual/elements.xml:
5131         * docs/manual/factories.xml:
5132         * docs/manual/gnome.xml:
5133         * docs/manual/goals.xml:
5134         * docs/manual/helloworld.xml:
5135         * docs/manual/helloworld2.xml:
5136         * docs/manual/highlevel-components.xml:
5137         * docs/manual/highlevel-xml.xml:
5138         * docs/manual/init-api.xml:
5139         * docs/manual/intro-basics.xml:
5140         * docs/manual/intro-motivation.xml:
5141         * docs/manual/intro-preface.xml:
5142         * docs/manual/intro.xml:
5143         * docs/manual/links-api.xml:
5144         * docs/manual/links.xml:
5145         * docs/manual/manual.xml:
5146         * docs/manual/motivation.xml:
5147         * docs/manual/pads-api.xml:
5148         * docs/manual/pads.xml:
5149         * docs/manual/plugins-api.xml:
5150         * docs/manual/plugins.xml:
5151         * docs/manual/programs.xml:
5152         * docs/manual/queues.xml:
5153         * docs/manual/quotes.xml:
5154         * docs/manual/schedulers.xml:
5155         * docs/manual/states-api.xml:
5156         * docs/manual/states.xml:
5157         * docs/manual/threads.xml:
5158         * docs/manual/typedetection.xml:
5159         * docs/manual/win32.xml:
5160         * docs/manual/xml.xml:
5161           Try 2. This time, include a short preface as a "general
5162           introduction", also add code blocks around all code samples
5163           so they get compiled. We still need a way to tell readers
5164           the filename of the code sample. In some cases, don't show
5165           all code in the documentation, but do include it in the generated
5166           code. This allows for focussing on specific bits in the docs,
5167           while still having a full test application available.
5168         * examples/manual/Makefile.am:
5169           Fix up examples for new ADM. Add several of the new examples that
5170           were either added or were missing from the build system.
5171         * examples/manual/extract.pl:
5172           Allow nameless blocks.
5173
5174 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5175
5176         * docs/manual/elements-api.xml:
5177         * docs/manual/helloworld.xml:
5178         * examples/manual/extract.pl:
5179           fix last example.  Add example of adding code blocks that are not
5180           shown in docbook output.
5181
5182 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5183
5184         * docs/manual/dynamic.xml:
5185         * docs/manual/elements-api.xml:
5186         * docs/manual/gnome.xml:
5187         * docs/manual/helloworld2.xml:
5188         * docs/manual/init-api.xml:
5189         * docs/manual/queues.xml:
5190         * docs/manual/threads.xml:
5191         * docs/manual/xml.xml:
5192         * examples/manual/extract.pl:
5193           Make it possible to extract example code from separate blocks.
5194           Should make Ronald happy.
5195
5196 2004-12-15  Wim Taymans  <wim@fluendo.com>
5197
5198         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5199         (remove_from_group), (group_elements_set_visited),
5200         (normalize_group), (gst_opt_scheduler_iterate):
5201         Fix bug where a flag was not updated on a decoupled entry point 
5202         because we were just checking the group element list and decoupled
5203         elements are not in that list..
5204
5205 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5206
5207         * docs/manual/advanced-autoplugging.xml:
5208         * docs/manual/advanced-clocks.xml:
5209         * docs/manual/advanced-dparams.xml:
5210         * docs/manual/advanced-interfaces.xml:
5211         * docs/manual/advanced-metadata.xml:
5212         * docs/manual/advanced-position.xml:
5213         * docs/manual/advanced-schedulers.xml:
5214         * docs/manual/advanced-threads.xml:
5215         * docs/manual/appendix-debugging.xml:
5216         * docs/manual/appendix-gnome.xml:
5217         * docs/manual/appendix-programs.xml:
5218         * docs/manual/appendix-quotes.xml:
5219         * docs/manual/appendix-win32.xml:
5220         * docs/manual/autoplugging.xml:
5221         * docs/manual/basics-bins.xml:
5222         * docs/manual/basics-data.xml:
5223         * docs/manual/basics-elements.xml:
5224         * docs/manual/basics-helloworld.xml:
5225         * docs/manual/basics-init.xml:
5226         * docs/manual/basics-pads.xml:
5227         * docs/manual/basics-plugins.xml:
5228         * docs/manual/bins-api.xml:
5229         * docs/manual/bins.xml:
5230         * docs/manual/buffers-api.xml:
5231         * docs/manual/buffers.xml:
5232         * docs/manual/clocks.xml:
5233         * docs/manual/components.xml:
5234         * docs/manual/cothreads.xml:
5235         * docs/manual/debugging.xml:
5236         * docs/manual/dparams-app.xml:
5237         * docs/manual/dynamic.xml:
5238         * docs/manual/elements-api.xml:
5239         * docs/manual/elements.xml:
5240         * docs/manual/factories.xml:
5241         * docs/manual/gnome.xml:
5242         * docs/manual/goals.xml:
5243         * docs/manual/helloworld.xml:
5244         * docs/manual/helloworld2.xml:
5245         * docs/manual/highlevel-components.xml:
5246         * docs/manual/highlevel-xml.xml:
5247         * docs/manual/init-api.xml:
5248         * docs/manual/intro-motivation.xml:
5249         * docs/manual/intro-preface.xml:
5250         * docs/manual/intro.xml:
5251         * docs/manual/links-api.xml:
5252         * docs/manual/links.xml:
5253         * docs/manual/manual.xml:
5254         * docs/manual/motivation.xml:
5255         * docs/manual/pads-api.xml:
5256         * docs/manual/pads.xml:
5257         * docs/manual/plugins-api.xml:
5258         * docs/manual/plugins.xml:
5259         * docs/manual/programs.xml:
5260         * docs/manual/queues.xml:
5261         * docs/manual/quotes.xml:
5262         * docs/manual/schedulers.xml:
5263         * docs/manual/states-api.xml:
5264         * docs/manual/states.xml:
5265         * docs/manual/threads.xml:
5266         * docs/manual/typedetection.xml:
5267         * docs/manual/win32.xml:
5268         * docs/manual/xml.xml:
5269           First try at rewriting the ADM. Needs lotsamore work, but some
5270           parts might already be somewhat useful.
5271         * docs/pwg/advanced-interfaces.xml:
5272           Remove properties interface, it never actually existed (except for
5273           on my HD...).
5274
5275 2004-12-13  David Schleef  <ds@schleef.org>
5276
5277         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5278         be NULL (bug #160220).
5279
5280 2004-12-13  David Schleef  <ds@schleef.org>
5281
5282         * configure.ac: remove all mmx stuff, because it's not used.
5283         * docs/random/ds/0.9-suggested-changes: additional notes
5284         * include/Makefile.am: we don't use these anymore
5285         * include/mmx.h: remove
5286         * include/sse.h: remove
5287
5288 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5289
5290         * docs/random/mimetypes:
5291           Add FOURCC code for h264 codec (VSSH)
5292           Add alternate FOURCC codes for h263 related codecs
5293
5294 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5295
5296         * docs/manual/programs.xml:
5297           Added more gst-launch examples.
5298
5299 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5300
5301         * gst/gstqueue.c: (gst_queue_handle_src_query):
5302           Check for availability again.
5303
5304 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5305
5306         * gst/gstcaps.c: (gst_caps_compare_structures):
5307           Simple caps go first. This has the nice side-effect of fixing an
5308           obscure warning.
5309
5310 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5311
5312         * gst/gstversion.h.in:
5313           Protect header.
5314
5315 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5316
5317         * gst/schedulers/gstoptimalscheduler.c:
5318         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5319         (gst_opt_scheduler_get_wrapper):
5320           When we're recursing into a chain run, only run the directly
5321           related group, not all queued ones. This will fix a possible
5322           deadlock in chains with more than two groups.
5323
5324 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5325
5326         * autogen.sh:
5327           remove patch if autopoint fails
5328
5329 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5330
5331         * docs/gst/gstreamer-sections.txt:
5332           Document Thomas' addition, fix build, make Luis the sheriff happy.
5333
5334 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5335
5336         * gst/gstplugin.c:
5337         * gst/gstplugin.h:
5338           add accessor for version field
5339
5340 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5341
5342         submitted by: Luca Ferretti <elle.uca@infinito.it>
5343
5344         * po/LINGUAS:
5345         * po/it.po:
5346           New tranlation added: Italian
5347
5348 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5349
5350         * gst/gstpad.c: (gst_pad_is_negotiated),
5351         (gst_pad_get_negotiated_caps):
5352           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5353           it doesn't actually check the contents), so be sure to hand it
5354           a RealPad else we'll crash.
5355
5356 2004-12-03  Wim Taymans  <wim@fluendo.com>
5357
5358         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5359         (gst_queue_link), (gst_queue_handle_src_query):
5360         Reverted to 1.110 until this makes the testsuite and various
5361         apps work.
5362
5363 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5364
5365         * docs/upload.mak: fix included CVS conflict strings
5366
5367 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5368
5369         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5370
5371         * gst/gstelement.c: (gst_element_error_full):
5372           Use g_error_new_literal because error text may have
5373           percentage signs in it. Fixes #160019.
5374
5375 2004-12-01  Benjamin Otte  <otte@gnome.org>
5376
5377         * gst/elements/gstbufferstore.c:
5378         (gst_buffer_store_add_buffer_func):
5379           don't try to make subbuffers bigger than they can be. (fixes
5380           #159970)
5381
5382 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5383
5384         * docs/gst/gstreamer-sections.txt:
5385         * docs/gst/tmpl/gstvalue.sgml:
5386           Add new function to docs to fix build.
5387
5388 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5389
5390         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5391         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5392         (_gst_pad_default_fixate_foreach):
5393         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5394         * gst/gstvalue.h:
5395           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5396           in some cases (arrays), the fixedness depends on the content.
5397         * gst/gstqueue.c: (gst_queue_handle_src_query):
5398           Check for availability before doing something.
5399
5400 2004-11-29  Wim Taymans  <wim@fluendo.com>
5401
5402         * testsuite/threads/Makefile.am:
5403         * testsuite/threads/signals.c: (gst_test_get_type),
5404         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5405         (gst_test_set_property), (gst_test_get_property),
5406         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5407         (gst_test_do_prop), (run_thread), (main):
5408         Added a bunch of testcases that show threadsafety bugs in glib.
5409
5410 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5411
5412         * docs/manual/programs.xml:
5413           Added a first batch of gst-launch examples, as provided by Ronald
5414           and others from the devel-mlist
5415
5416 2004-11-28  Benjamin Otte  <otte@gnome.org>
5417
5418         * gst/gstelement.c: (gst_element_negotiate_pads):
5419           simplify
5420         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5421         (gst_value_serialize_string), (gst_value_deserialize_string):
5422           add unwrapping of previously wrapped strings. Fix bug in wrapping
5423           while at it.
5424         * testsuite/caps/value_serialize.c: (test1),
5425         (test_string_serialization), (test_string_deserialization), (main):
5426           add tests for string (de)serialization
5427
5428 2004-11-26  Wim Taymans  <wim@fluendo.com>
5429
5430         * testsuite/threads/159566.c: (object_deep_notify), (main):
5431         * testsuite/threads/Makefile.am:
5432         Added testsuite to show bug #159566
5433
5434 2004-11-25  Wim Taymans  <wim@fluendo.com>
5435
5436         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5437         (gst_thread_child_state_change), (gst_thread_main_loop):
5438         Ref the thread object in the GThread mainloop. Break out of the
5439         thread mainloop if it holds the last ref. This properly exits
5440         the threads when disposing the thread from its own context. It
5441         also avoids possible deadlocks in the dispose function.
5442
5443 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5444
5445         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5446         it is necessary to wait.
5447
5448 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5449
5450         * docs/pwg/building-boiler.xml:
5451           Make description somewhat clearer.
5452
5453 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5454
5455         * docs/upload.mak:
5456           Apparently docs changed location on FDO's server.
5457
5458 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5459
5460         * docs/pwg/appendix-checklist.xml:
5461           Add some random notes on things to check when writing an element.
5462           This list can be extended as people see fit.
5463
5464 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5465
5466         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5467         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5468         pad. The queue will now wait until it is empty and forward the new
5469         caps to the source.
5470         * gst/gstbin.c (gst_bin_set_element_sched)
5471         (gst_bin_unset_element_sched): Make sure that all elements and
5472         links are registered and unregistered with the scheduler exactly
5473         once. This elaborates on a fix by Benjamin Otte, but
5474         guarantees that decoupled elements are also registered.
5475
5476 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5477
5478         * docs/manual/quotes.xml:
5479           add a quote
5480         * configure.ac:
5481         * gst/gst.c:
5482         * gst/gstinfo.c:
5483           add LIBDIR and move init message higher up so it's at the start
5484
5485 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5486
5487         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5488         * gstreamer.spec.in: add fair
5489
5490 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5491
5492         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5493         * gst/elements/gstidentity.c: (gst_identity_class_init):
5494           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5495           <teuf@gnome.org> (#157263).
5496         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5497         (gst_type_find_handle_src_query):
5498           Subtract size of internally stored data from position queries.
5499
5500 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5501
5502         * gst/schedulers/fairscheduler.c:
5503         * gst/schedulers/faircothreads.c:
5504         * gst/schedulers/faircothreads.h:
5505         New cothread based scheduler: Fair scheduler.
5506         * gst/schedulers/gthread-cothreads.h: 
5507         Add the standard #if around the whole file.
5508         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5509         compilation of the functions defined in this file. This is
5510         necessary to be able to use this file as a normal header.
5511         * gst/schedulers/Makefile.am: Add compiling support for fair
5512         scheduler.
5513         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5514         scheduler cothreads layer from documentation generation.
5515
5516 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5517
5518         * gst/autoplug/gstspideridentity.c:
5519         (gst_spider_identity_sink_loop_type_finding):
5520           Don't crash if that function is not implemented.
5521
5522 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5523
5524         * docs/pwg/advanced-types.xml:
5525           Another typo.
5526
5527 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5528
5529         * docs/pwg/intro-preface.xml:
5530           Hm, ok, so the brackets weren't really useful...
5531         * docs/pwg/other-ntoone.xml:
5532           Fix embarassing typo.
5533
5534 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5535
5536         * docs/pwg/intro-preface.xml:
5537           Rewrite preface.
5538
5539 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5540
5541         * docs/pwg/advanced-scheduling.xml:
5542         * docs/pwg/advanced-tagging.xml:
5543         * docs/pwg/advanced-types.xml:
5544         * docs/pwg/building-boiler.xml:
5545         * docs/pwg/building-chainfn.xml:
5546         * docs/pwg/building-signals.xml:
5547         * docs/pwg/building-state.xml:
5548         * docs/pwg/building-testapp.xml:
5549         * docs/pwg/intro-basics.xml:
5550         * docs/pwg/other-manager.xml:
5551         * docs/pwg/other-source.xml:
5552           Typo fixes.
5553         * docs/pwg/other-manager.xml:
5554           Add some first content. No example code yet.
5555         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5556           Remove double newlines.
5557
5558 2004-11-04  Wim Taymans  <wim@fluendo.com>
5559
5560         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5561         (remove_from_group), (normalize_group), (group_migrate_connected),
5562         (gst_opt_scheduler_iterate):
5563         * testsuite/schedulers/.cvsignore:
5564         * testsuite/schedulers/Makefile.am:
5565         * testsuite/schedulers/queue_link.c: (main):
5566         Added testcase for scheduler segfault.
5567         Fix scheduler segfault when removing a decoupled
5568         entry point as the last element from a group.
5569
5570 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5571
5572         * gst/gstmarshal.list: add missing marshaller, fixes build
5573
5574 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5575
5576         * docs/random/signal: added notes about using BOXED for GstBuffer
5577         signal marshallers, not POINTER
5578
5579 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5580
5581         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5582         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5583         POINTER=>BOXED changes to marshal GstBuffers
5584
5585 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5586
5587         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5588         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5589
5590 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5591
5592         * docs/gst/gstreamer-sections.txt:
5593         * docs/gst/tmpl/gstcaps.sgml:
5594         * docs/gst/tmpl/gsterror.sgml:
5595         * docs/gst/tmpl/gstinfo.sgml:
5596         * docs/gst/tmpl/gstmacros.sgml:
5597         * docs/gst/tmpl/gstutils.sgml:
5598         * docs/random/ensonic/interfaces.txt:
5599         * gst/gstinfo.h:
5600           added some more docs, removed two obsolete defines
5601
5602 2004-11-02  Kjartan Maraas <as at gnome.org>
5603
5604         reviewed by: Wim Taymans, Ronald Bultje.
5605
5606         * gst/cothreads.c: (cothread_create):
5607         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5608         (gst_bin_child_state_change_func):
5609         * gst/gstbuffer.c: (gst_buffer_span):
5610         * gst/gstelement.c: (gst_element_get_index),
5611         (gst_element_get_event_masks), (gst_element_get_query_types),
5612         (gst_element_get_formats):
5613         * gst/gsterror.c: (_gst_core_errors_init),
5614         (_gst_library_errors_init), (_gst_resource_errors_init),
5615         (_gst_stream_errors_init):
5616         * gst/gstobject.c: (gst_object_default_deep_notify):
5617         * gst/gstpad.c: (gst_pad_get_event_masks),
5618         (gst_pad_get_internal_links_default):
5619         * gst/gstplugin.c: (gst_plugin_register_func),
5620         (gst_plugin_get_module):
5621         * gst/gststructure.c: (gst_structure_get_string),
5622         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5623         (gst_structure_to_abbr):
5624         * gst/gstutils.c: (gst_print_element_args):
5625         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5626         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5627         Aplied part of patch #157127: Cleanup of issues reported by 
5628         sparse.
5629         Also do not try to use cothreads when there is no cothread
5630         context yet.
5631
5632 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5633
5634         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5635         (gst_opt_scheduler_iterate):
5636         Applied patch #154061. Running a pipeline in which an element 
5637         calls GST_ELEMENT_ERROR in the chain function, the opt 
5638         scheduler doesn't unref the chain so it never gets freed.
5639
5640 2004-11-02  Wim Taymans  <wim@fluendo.com>
5641
5642         * gst/gststructure.c: (gst_structure_get_abbrs),
5643         (gst_structure_from_abbr), (gst_structure_to_abbr):
5644         Remove that ugly if-then thing in the code that converts
5645         between strings and types.
5646
5647 2004-11-02  Wim Taymans  <wim@fluendo.com>
5648
5649         * gst/gstscheduler.c: (gst_scheduler_add_element),
5650         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5651         Aplied clock distribution patch, this should fix bug
5652         #148787.
5653
5654 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5655
5656         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5657
5658         * po/LINGUAS:
5659         * po/nb.po:
5660           Added Norwegian Bokmaal translation
5661
5662 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5663
5664         * tools/gst-inspect.c: (print_signal_info):
5665           print signal arguments as pointers if they are
5666
5667 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5668
5669         * docs/pwg/building-boiler.xml:
5670           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5671
5672 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5673
5674         * gst/parse/parse.l:
5675         * testsuite/parse/parse1.c: (main):
5676         Since parse can do 'element name=a:b' make 'a:b.' work as
5677         well. 
5678         Added testcase to verify fix.
5679
5680 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5681
5682         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
5683         Use the realpad when printing the direction.
5684         Add extra \n when printing extensions of typefind factories.
5685
5686 2004-10-13  David Schleef  <ds@schleef.org>
5687
5688         * examples/manual/Makefile.am: $< isn't portable in Makefile
5689         rules.
5690
5691 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
5692
5693         * docs/gst/tmpl/gstobject.sgml:
5694         * docs/gst/tmpl/gstplugin.sgml:
5695         * docs/gst/tmpl/gstpluginfeature.sgml:
5696         * docs/gst/tmpl/gstregistry.sgml:
5697         * docs/gst/tmpl/gstversion.sgml:
5698         * gst/gstbin.c:
5699           more api documentation
5700         * gst/gstplugin.c: (gst_plugin_register_func),
5701         (gst_plugin_check_file), (gst_plugin_load_file):
5702           better error signaling and logging
5703
5704 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5705
5706         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
5707           Subtract current queue contents from position queries.
5708
5709 2004-10-11  Johan Dahlin  <johan@gnome.org>
5710
5711         * gst/gsturi.c (gst_uri_get_location): unescape string
5712         (gst_uri_construct): escape string.
5713
5714 2004-10-11  Benjamin Otte  <otte@gnome.org>
5715
5716         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
5717         (gst_pad_try_set_caps_nonfixed):
5718           allow renegotiation of unconnected pads (as inside spider). Simply
5719           return OK if unconnected - mimic try_set_caps there.
5720
5721 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5722
5723         * gst/gstbin.c: (gst_bin_sync_children_state):
5724           Add missing break.
5725
5726 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5727
5728         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
5729         Set element to EOS before sending EOS event
5730
5731 2004-10-08  Wim Taymans  <wim at fluendo dot com>
5732
5733         * gst/elements/gsttypefindelement.c:
5734         (gst_type_find_element_handle_event):
5735         Handle EOS events when doing the transition from
5736         typefind to data passing. This should fix the
5737         infinite loops in short files.
5738
5739 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5740
5741         * gst/gstthread.c: (gst_thread_change_state),
5742         (gst_thread_child_state_change):
5743         Make sure no iteration happens while performing
5744         the state change as it could mess up the internal
5745         consistency of the thread state.
5746
5747 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5748
5749         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
5750         (gst_thread_change_state), (gst_thread_child_state_change):
5751         Do not try to grab the iterate lock in the state change method
5752         when we are in the same thread as the iterate or else we
5753         could deadlock. Some other cleanups.
5754
5755 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5756
5757         * configure.ac:
5758           bump nano to cvs
5759
5760 === release 0.8.7 ===
5761
5762 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5763
5764         * configure.ac:
5765         * NEWS:
5766         * RELEASE:
5767         * configure.ac:
5768           releasing 0.8.7, "A Cruise"
5769
5770 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5771
5772         * docs/random/mimetypes:
5773         Add an entry for Sony ATRAC3 audio format with mime-type
5774         used by rmdemux et riff-read
5775
5776 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5777
5778         * gst/elements/gsttypefindelement.c: (stop_typefinding):
5779         Push the buffer store instead of clearing it in case that
5780         the stream is not seekable.
5781
5782 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5783
5784         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
5785         (gst_thread_main_loop):
5786         Lock the iteration and the state change so that automatic
5787         negotiation and fixation does not happen at the same time
5788         as the in stream negotiation.
5789
5790 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5791
5792         * configure.ac:
5793           bump nano to cvs
5794
5795 === release 0.8.6 ===
5796
5797 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5798
5799         * configure.ac:
5800         * NEWS:
5801         * RELEASE:
5802         * configure.ac:
5803           releasing 0.8.6, "Narc"
5804
5805 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5806
5807         * configure.ac:
5808           prerel bump
5809
5810 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5811
5812         patch by: Steve Lhomme
5813
5814         * gst/elements/gstfakesrc.c:
5815         * gst/elements/gstidentity.c:
5816         * gst/gstthread.c:
5817           Fix for #153881
5818
5819 2004-10-01  Wim Taymans  <wim at fluendo dot com>
5820
5821         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
5822         Fix threadsafety of the crc checking function.
5823
5824 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5825
5826         patch by: Ronald Bultje
5827
5828         * gst/elements/gsttypefindelement.c: (stop_typefinding),
5829         (gst_type_find_element_handle_event),
5830         (gst_type_find_element_chain):
5831         * gst/elements/gsttypefindelement.h:
5832          #153657.
5833          Filter out discont event from seekable sources when typefind
5834          asks them to seek.  Fixes typefind with demuxers for
5835          avi, asf and matroska.
5836
5837 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5838
5839         * docs/gst/gstreamer-sections.txt:
5840         * gst/gstcaps.c:
5841         * gst/gstcaps.h:
5842         * gst/gstpad.c:
5843           Revert preferred caps: (#147789)
5844
5845 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
5846
5847         * win32/dirent.c:
5848           fix a memory leak
5849
5850 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5851
5852         * configure.ac:
5853           bump for prerelease
5854
5855 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5856
5857         * docs/Makefile.am:
5858         * docs/manual/elements-api.xml:
5859           restructure so that common stuff is shown first
5860         * docs/manual/init-api.xml:
5861           convert to examples
5862         * docs/manual/manual.xml:
5863         * docs/manuals.mak:
5864         * docs/url.entities:
5865           link to API on the website, possibly override later in build
5866         * examples/manual/.cvsignore:
5867           ignore more
5868         * examples/manual/Makefile.am:
5869           add more examples
5870         * examples/manual/extract.pl:
5871           error out on failure
5872
5873 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5874
5875         * docs/gst/tmpl/gstthread.sgml:
5876         * docs/manual/init-api.xml:
5877         * examples/manual/Makefile.am:
5878           convert two code bits to examples
5879
5880 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5881
5882         * gst/gstelement.c: (gst_element_change_state):
5883           Well, actually, I was about to remove this insane assert when
5884           I noticed Wim already did that. A warning is nice so we can
5885           fix actual ugs (using --g-fatal-warnings and backtraces), so
5886           I added that instead.
5887
5888 2004-09-06  Wim Taymans  <wim@fluendo.com>
5889
5890         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
5891         (gst_element_threadsafe_properties_post_run),
5892         (gst_element_set_state), (gst_element_change_state):
5893         Added extra refcounting around various places. 
5894
5895 2004-09-06  Wim Taymans  <wim@fluendo.com>
5896
5897         * gst/gstpad.c: (gst_pad_link_call_link_functions):
5898         Fix debug info.
5899
5900 2004-09-06  Wim Taymans  <wim@fluendo.com>
5901
5902         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5903         (remove_from_group):
5904         Some more debug info.
5905
5906 2004-09-03  Wim Taymans  <wim@fluendo.com>
5907
5908         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5909         (gst_fakesrc_init), (gst_fakesrc_set_clock),
5910         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5911         (gst_fakesrc_get), (gst_fakesrc_change_state):
5912         * gst/elements/gstfakesrc.h:
5913         * gst/elements/gstidentity.c: (gst_identity_class_init),
5914         (gst_identity_init), (gst_identity_chain),
5915         (gst_identity_set_property), (gst_identity_get_property),
5916         (gst_identity_change_state):
5917         * gst/elements/gstidentity.h:
5918         Added datarate properties to limit the datarate.
5919
5920 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5921
5922         * gst/autoplug/gstspider.c: (plugin_init):
5923           don't set a rank. We don't want to autoplug by inserting spiders.
5924
5925 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5926
5927         * gst/autoplug/gstspider.c: (gst_spider_class_init),
5928         (gst_spider_identity_plug):
5929           add a template for spider's sink
5930         * gst/gst.c: (gst_register_core_elements):
5931           queue's rank should be NULL, we don't want spider to add it.
5932
5933 2004-08-18  David Schleef  <ds@schleef.org>
5934
5935         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
5936         * docs/libs/Makefile.am: same
5937         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
5938         * docs/random/ds/0.9-planning: random additions
5939         * docs/random/ds/0.9-suggested-changes: same
5940         * gst/gstxml.h: remove vestigal GstXMLNs definition
5941
5942         Preferred caps: (#147789)
5943         * docs/gst/gstreamer-sections.txt: Add symbols
5944         * docs/gst/tmpl/gstcaps.sgml: Add symbols
5945         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
5946         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
5947         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
5948         (gst_caps_get_preferred), (gst_caps_set_preferred),
5949         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
5950         (gst_caps_use_preferred): Handle caps preferences
5951         * gst/gstcaps.h: Add caps preferences
5952         * gst/gstpad.c: (gst_pad_link_get_preferred),
5953         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
5954         (gst_pad_renegotiate), (gst_pad_guess_preferred),
5955         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
5956         negotiation.
5957
5958 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5959
5960         * gst/autoplug/gstspideridentity.c:
5961         (gst_spider_identity_request_new_pad):
5962         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
5963         (gst_aggregator_init):
5964         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
5965         (gst_fakesink_init):
5966         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
5967         (gst_fakesrc_init):
5968         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
5969         (gst_fdsink_init):
5970         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
5971         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
5972         (gst_filesink_init):
5973         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
5974         (gst_filesrc_init):
5975         * gst/elements/gstidentity.c: (gst_identity_base_init),
5976         (gst_identity_init):
5977         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
5978         (gst_multifilesrc_init):
5979         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
5980         (gst_pipefilter_init):
5981         * gst/elements/gststatistics.c: (gst_statistics_base_init),
5982         (gst_statistics_init):
5983         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
5984         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
5985           s/gst_pad_new/&_from_template/
5986           register pad templates in the base_init function
5987           add static pad template definitions
5988
5989 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5990
5991         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
5992         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
5993         * testsuite/refcounting/pad.c: (main):
5994         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
5995           s/gst_pad_new/&_from_template/
5996           prepare deprecation of gst_pad_new
5997
5998 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
5999
6000         patch by: Luca Ognibene <skaboy81@virgilio.it>
6001
6002         * gst/gstcaps.c:
6003         * gst/gstelement.c:
6004         * gst/gstpad.c:
6005         * gst/gstxml.c:
6006           fix memleaks.  Fixes #150001
6007
6008 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6009
6010         * docs/random/ds/0.9-suggested-changes:
6011           add notes - mostly about pad templates
6012
6013 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6014
6015         * win32/GStreamer.vcproj:
6016           temporary locale files are .gmo not .mo
6017
6018 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6019
6020         * configure.ac: bump nano to cvs
6021
6022 === release 0.8.5 ===
6023
6024 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6025
6026         * configure.ac:
6027           releasing 0.8.5, "Stuttgart"
6028         * NEWS:
6029         * RELEASE:
6030         * configure.ac:
6031         * docs/random/release:
6032           updates for release
6033
6034 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6035
6036         patch by: Wim Taymans (wim@fluendo.com)
6037
6038         * gst/gstbuffer.c:
6039         * gst/gstindex.h:
6040         * libs/gst/dataprotocol/dataprotocol.c:
6041           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6042
6043 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6044
6045         * Makefile.am:
6046         * win32/MANIFEST:
6047           add win32 dir to the build.  Fixes #149981.
6048
6049 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6050
6051         * configure.ac:
6052           bump libtool versioning
6053         * gst/gststructure.c:
6054           mark function as static
6055         * po/af.po:
6056         * po/az.po:
6057         * po/ca.po:
6058         * po/cs.po:
6059         * po/en_GB.po:
6060         * po/fr.po:
6061         * po/nl.po:
6062         * po/sq.po:
6063         * po/sr.po:
6064         * po/sv.po:
6065         * po/tr.po:
6066         * po/uk.po:
6067           translations update
6068         * win32/README.txt:
6069           trademark protection
6070
6071 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6072
6073         * configure.ac:
6074           fix GST_ORIGIN
6075           set GST_PACKAGE to source, and distinguish between release and other
6076         * tools/gst-inspect.c:
6077           print out plugin an element factory is part of so we see this info
6078
6079 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6080
6081         * docs/gst/gstreamer-sections.txt:
6082         * docs/gst/tmpl/gstbuffer.sgml:
6083         * docs/gst/tmpl/gstschedulerfactory.sgml:
6084           reorder docs a little, make GstBuffer's more sensible.
6085         * gst/gstbuffer.h:
6086           API: added GST_BUFFER_FLAG_DELTA_UNIT
6087         * gst/gstscheduler.c:
6088           comment API addition
6089
6090 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6091
6092         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6093           work with non-regular files that can be mmapped (like /dev/zero)
6094         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6095           get rid of typefinds that require a seek when we can't seek instead
6096           of trying them over and over again
6097         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6098           return non-zero failure value when the pipeline was interrupted or
6099           an error occurred
6100
6101 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6102
6103         * win32/config.h:
6104         * win32/GStreamer.vcproj:
6105           compile and install the locales
6106
6107 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6108
6109         * gst/gstvalue.c:
6110           fix a possible memory leak under Windows
6111
6112 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6113
6114         * win32/GStreamer.vcproj:
6115           fix a memory leak that occured under Windows
6116         * win32/gstreamer.def:
6117           add gst_scheduler_register
6118
6119 2004-08-11  Benjamin Otte  <otte@gnome.org>
6120
6121         * docs/gst/gstreamer-sections.txt:
6122         * gst/gstscheduler.c: (gst_scheduler_register):
6123         * gst/gstscheduler.h:
6124           API:
6125           add gst_scheduler_register shortcut similar to gst_element_register
6126         * gst/schedulers/entryscheduler.c: (plugin_init):
6127         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6128         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6129           use it
6130
6131 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6132
6133         * gst/gstvalue.h:
6134           fix a memory leak that occured under Windows
6135
6136 2004-08-10  Colin Walters  <walters@redhat.com>
6137
6138         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6139         Don't use O_EXCL to open temporary registry.  It will prevent
6140         registry creation if a temporary one already exists, which
6141         is unnecessary.
6142
6143 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6144
6145         * docs/gst/gstreamer-sections.txt:
6146         * docs/gst/tmpl/gstvalue.sgml:
6147           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6148
6149 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6150
6151         * win32/gstbytestream.vcproj:
6152         * win32/gstelements.vcproj:
6153         * win32/gstgetbits.vcproj:
6154         * win32/gst-inspect.vcproj:
6155         * win32/gst-launch.vcproj:
6156         * win32/gstoptimalscheduler.vcproj:
6157         * win32/GStreamer.vcproj:
6158         * win32/gst-register.vcproj:
6159         * win32/gstspider.vcproj:
6160           update the include and lib dirs to fit standard libraries as
6161           described in the Win32 manual
6162
6163 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6164
6165         * win32/config.h:
6166         * win32/gstversion.h:
6167           enable NLS again, push the version number for the coming 0.8.5 release
6168
6169 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6170
6171         * gst/gstvalue.h:
6172           export gst_type_XXX for windows DLLs
6173
6174 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6175
6176         * docs/faq/gst-uninstalled:
6177           fix PKG_CONFIG_PATH and PYTHONPATH
6178         * gst/schedulers/Makefile.am:
6179           cleanup
6180         * libs/gst/bytestream/bytestream.c:
6181           remove newline
6182         * po/LINGUAS:
6183         * po/sq.po:
6184           adding Albanian translation (Laurent Dhima)
6185         * po/cs.po:
6186           updated
6187
6188 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6189
6190         * po/ca.po:
6191         * po/sv.po:
6192           updated translations
6193
6194 2004-08-04  Benjamin Otte  <otte@gnome.org>
6195
6196         * tests/mass_elements.c: (main):
6197           allow specifying src and sink element explicitly, so I can test
6198           videotestsrc instead of fakesrc
6199
6200 2004-08-04  Benjamin Otte  <otte@gnome.org>
6201
6202         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6203         (gst_structure_id_empty_new), (gst_structure_empty_new),
6204         (gst_structure_copy):
6205           add gst_structure_id_empty_new_with_size to allow preallocating
6206           value array sizes. Use this in gst_structure_copy to get rid of
6207           reallocs.
6208           don't do quark=>string=>quark when copying structures
6209
6210 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6211
6212         * docs/manual/win32.xml:
6213         * win32/README.txt:
6214           update documentation with the clean version of dependencies
6215
6216 2004-08-03  Benjamin Otte  <otte@gnome.org>
6217
6218         * gst/schedulers/entryscheduler.c:
6219         (gst_entry_scheduler_remove_element):
6220           fix for GST_DISABLE_DEBUG
6221         * tools/gst-launch.c: (print_tag):
6222           fixes for G_DISABLE_ASSERT
6223
6224 2004-08-03  Benjamin Otte  <otte@gnome.org>
6225
6226         * gst/gst.c: (gst_register_core_elements):
6227           fix for G_DISABLE_ASSERT
6228         * gst/gstinfo.c: (__gst_in_valgrind):
6229           add for GST_DISABLE_DEBUG
6230
6231 2004-08-03  Benjamin Otte  <otte@gnome.org>
6232
6233         * gst/parse/parse.l:
6234           fix for G_DISABLE_ASSERT
6235
6236 2004-08-03  Wim Taymans  <wim@fluendo.com>
6237
6238         * gst/gstbin.c: (gst_bin_get_type),
6239         (gst_bin_child_state_change_func):
6240         * gst/gstthread.c: (gst_thread_change_state):
6241         Backported some debug logging from a reverted patch
6242         Don't try to destroy the thread twice. Added some more
6243         debugging in GstThread. Unlock and signal even if we
6244         are in the thread context.
6245
6246 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6247
6248         * po/uk.po:
6249           updated translation
6250
6251 2004-07-30  David Schleef  <ds@schleef.org>
6252
6253         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6254
6255 2004-07-29  David Schleef  <ds@schleef.org>
6256
6257         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6258         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6259
6260 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6261
6262         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6263         (gst_bin_add_func), (gst_bin_remove_func),
6264         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6265         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6266         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6267         (gst_bin_sync_children_state):
6268         * gst/gstbin.h:
6269         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6270         (gst_thread_change_state):
6271         * testsuite/states/Makefile.am:
6272           revert state change patches as agreed so we can rework them
6273           gradually
6274
6275 2004-07-29  Benjamin Otte  <otte@gnome.org>
6276
6277         * libs/gst/control/Makefile.am:
6278           link to libgstreamer (fixes Debian bug 262019, see
6279           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6280
6281 2004-07-29  Wim Taymans  <wim@fluendo.com>
6282
6283         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6284         (check_from_fraction_convert), (transform_test), (main):
6285         Make the test less pedantic about float roundoff errors.
6286
6287 2004-07-29  Benjamin Otte  <otte@gnome.org>
6288
6289         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6290         (gst_filesrc_srcpad_event):
6291           make seek events to before start/after end of file not fail, but
6292           seek to start/end instead
6293         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6294           add more output
6295
6296 2004-07-29  Benjamin Otte  <otte@gnome.org>
6297
6298         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6299           check that caps are fixed
6300         * gst/gstpad.c: (gst_pad_template_new):
6301           don't try to simplify caps, costs too much time on gst_init
6302         * gst/gstplugin.c: (gst_plugin_add_feature):
6303           G_ERROR if features are added twice
6304         * gst/gsttypefind.c: (gst_type_find_register):
6305         * gst/gstelementfactory.c: (gst_element_register):
6306           don't add features twice
6307         * docs/random/ds/0.9-suggested-changes:
6308           add note about possible gst_init optimization
6309
6310 2004-07-28  David Schleef  <ds@schleef.org>
6311
6312         * testsuite/elements/Makefile.am:
6313         * testsuite/elements/struct_i386.h:
6314         * testsuite/elements/struct_size.c: (main):  A little test
6315         to keep distcheck from working if someone changes a structure
6316         size accidentally.
6317
6318 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6319
6320         * docs/libs/Makefile.am:
6321         * docs/libs/gstreamer-libs-docs.sgml:
6322         * docs/libs/gstreamer-libs-sections.txt:
6323         * docs/libs/tmpl/gstbytestream.sgml:
6324         * docs/libs/tmpl/gstcontrol.sgml:
6325         * docs/libs/tmpl/gstdataprotocol.sgml:
6326         * docs/libs/tmpl/gstgetbits.sgml:
6327         * libs/gst/bytestream/Makefile.am:
6328         * libs/gst/bytestream/bytestream.c:
6329         * libs/gst/bytestream/bytestream.h:
6330         * libs/gst/control/Makefile.am:
6331         * libs/gst/dataprotocol/Makefile.am:
6332         * libs/gst/getbits/Makefile.am:
6333         * libs/gst/getbits/getbits.h:
6334           various doc and style fixes, adding bytestream to libs docs.
6335
6336 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6337
6338         * docs/gst/gstreamer-docs.sgml:
6339         * docs/libs/Makefile.am:
6340         * docs/libs/gstreamer-libs-docs.sgml:
6341         * docs/libs/gstreamer-libs-sections.txt:
6342         * libs/gst/control/dparam.c:
6343           more doc fixes.  gst-libs docs now build the same way as gst.
6344
6345 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6346
6347         * configure.ac:
6348         * testsuite/Makefile.am:
6349         * testsuite/bins/Makefile.am:
6350         * testsuite/caps/Makefile.am:
6351         * testsuite/cleanup/Makefile.am:
6352         * testsuite/clock/Makefile.am:
6353         * testsuite/debug/Makefile.am:
6354         * testsuite/dlopen/Makefile.am:
6355         * testsuite/dynparams/Makefile.am:
6356         * testsuite/elements/.cvsignore:
6357         * testsuite/elements/Makefile.am:
6358         * testsuite/enumcaps/Makefile.am:
6359         * testsuite/enumcaps/enumcaps.c:
6360         * testsuite/ghostpads/Makefile.am:
6361         * testsuite/indexers/Makefile.am:
6362         * testsuite/negotiation/Makefile.am:
6363         * testsuite/parse/Makefile.am:
6364         * testsuite/plugin/Makefile.am:
6365         * testsuite/refcounting/Makefile.am:
6366         * testsuite/schedulers/.cvsignore:
6367         * testsuite/states/Makefile.am:
6368         * testsuite/tags/Makefile.am:
6369         * testsuite/threads/Makefile.am:
6370           fold enumcaps into caps dir
6371           clean up Makefile.am's for testsuite
6372
6373 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6374
6375         * docs/gst/Makefile.am:
6376         * docs/libs/Makefile.am:
6377           clean up docs build.  Fixes needless rebuilding of template files.
6378
6379 2004-07-28  Wim Taymans  <wim@fluendo.com>
6380
6381         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6382         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6383         Make sure that a bin state change tries to keep the children
6384         in sync. 
6385         Added debug logging to the thread.
6386
6387 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6388
6389         * win32/GStreamer.vcproj:
6390         * win32/gstreamer.def:
6391           more exports for the plugins
6392
6393 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6394
6395         * win32/gstgetbits.vcproj:
6396         * win32/gstgetbits.def:
6397         * win32/msvc71.sln:
6398           add support for the getbits plugin
6399
6400 2004-07-27  Wim Taymans  <wim@fluendo.com>
6401
6402         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6403         (gst_value_transform_fraction_double), (_gst_value_initialize):
6404         * testsuite/caps/Makefile.am:
6405         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6406         (check_from_fraction_convert), (transform_test), (main):
6407         Added transform functions between double and fraction.
6408         Added testcase to verify transforms
6409
6410 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6411
6412         * win32/GStreamer.vcproj:
6413           rename GStreamer-0.8.lib to libgstreamer.lib
6414
6415 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6416
6417         * win32/gstelements.vcproj:
6418         * win32/gstoptimalscheduler.vcproj:
6419           fixes for the Release build
6420
6421 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6422
6423         * win32/config.h:
6424           update the version number
6425
6426 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6427
6428         * win32/GStreamer.vcproj:
6429           add gstinterface to the build
6430
6431 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6432
6433         * win32/gstreamer.def:
6434           add many definitions needed by plugins,
6435           GST_CAT_DEFAULT only available in the Debug build ?
6436
6437 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6438
6439         * gst/gstelement.c: (gst_element_set_eos_recursive):
6440           various whitespace fixes.
6441           doc fix, fixes #148497
6442
6443 2004-07-25  Benjamin Otte  <otte@gnome.org>
6444
6445         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6446           don't delay links on the sink elements, it causes unnegotiated
6447           links.
6448         * gst/elements/gsttypefindelement.c:
6449         (gst_type_find_element_base_init):
6450           add our padtemplates, we indeed do have some.
6451         * gst/elements/gsttypefindelement.c:
6452         (gst_type_find_element_handle_event),
6453         (gst_type_find_element_chain):
6454           don't push data when typefinding failed.
6455         * gst/gstpad.c: (gst_pad_link_fixate):
6456           check that no fixate function returns empty caps.
6457         * gst/gstpad.c: (gst_pad_push):
6458           check that the link is negotiated before data gets pushed.
6459         * tools/gst-register.c: (main):
6460           don't assert (fixes #148283)
6461
6462 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6463
6464         * docs/gst/gstreamer-sections.txt:
6465         * docs/gst/tmpl/gstconfig.sgml:
6466           add GST_PLUGIN_EXPORT definition
6467
6468 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6469
6470         * gst/gstplugin.h:
6471         * gst/gstconfig.h.in:
6472         * win32/gstconfig.h:
6473         * win32/gstelements.def:
6474         * win32/gstelements.vcproj:
6475         * win32/gstoptimalscheduler.def:
6476         * win32/gstoptimalscheduler.vcproj:
6477         * win32/gstspider.def:
6478         * win32/gstspider.vcproj:
6479           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6480
6481 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6482
6483         * docs/gst/gstreamer-sections.txt:
6484           remove GST_CAT_DEFAULT because the type has changed
6485
6486 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6487
6488         * win32/gstbytestream.vcproj:
6489         * win32/gstelements.vcproj:
6490         * win32/gst-inspect.vcproj:
6491         * win32/gst-launch.vcproj:
6492         * win32/gstoptimalscheduler.vcproj:
6493         * win32/GStreamer.vcproj:
6494         * win32/gst-register.vcproj:
6495         * win32/gstspider.vcproj:
6496         * win32/msvc71.sln:
6497           Copy the files where needed after building, The testsuite will be
6498           built separately
6499
6500 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6501
6502         * win32/config.h:
6503         * win32/README.txt:
6504         * docs/manual/win32.xml:
6505         Fixed the plugin and GStreamer location
6506
6507 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6508
6509         * win32/gstreamer.def:
6510         More exports for the plugins
6511
6512 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6513
6514         * gst/gstinfo.h:
6515         Marc was right, we need to export literally GST_CAT_DEFAULT
6516
6517 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6518
6519         * win32/config.h:
6520         NLS crashes in gettext, disabled until this is solved
6521
6522 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6523
6524         * win32/gst-inspect.vcproj:
6525         * win32/gst-launch.vcproj:
6526         Should use NLS when available
6527
6528 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6529
6530         * gst/registries/gstxmlregistry.c:
6531         removing the file doesn't seem to be a good idea on Linux
6532
6533 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6534
6535         * gst/registries/gstxmlregistry.c:
6536         Remove the registry before renaming the tempfile (needed for Windows)
6537
6538 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6539
6540         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6541         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6542         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6543         * gst/elements/gstmultifilesrc.h:
6544         Added newmedia property so it generates newmedia events between each
6545         file when property is set, as well as fixed eos handling
6546
6547 2004-07-22  David Schleef  <ds@schleef.org>
6548
6549         * gst/gststructure.c: (gst_structure_id_empty_new),
6550         (gst_structure_empty_new):  Set type field correctly.
6551         * gst/gststructure.h: Check type field correctly.
6552         * testsuite/caps/Makefile.am:
6553         * testsuite/caps/structure.c: (test1), (main): Add a very small
6554         test for structures.
6555
6556 2004-07-22  David Schleef  <ds@schleef.org>
6557
6558         * docs/random/ds/0.9-suggested-changes: more comments
6559         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6560
6561 2004-07-22  Benjamin Otte  <otte@gnome.org>
6562
6563         * gst/gstelementfactory.c: (gst_element_register):
6564           set the factory in the class struct, so gst_element_get_factory
6565           actually works
6566         * gst/parse/grammar.y:
6567           set element to playing when it gets unlocked as we can't rely on the
6568           bin state - all elements in the bin state might still be locked in
6569           NULL)
6570
6571 2004-07-22  Benjamin Otte  <otte@gnome.org>
6572
6573         * gst/gstelement.c: (gst_element_set_state_func):
6574           make this a static function
6575
6576 2004-07-22  Wim Taymans  <wim@fluendo.com>
6577
6578         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6579         (gst_opt_scheduler_pad_link):
6580         fix 147894-2 and the group_link problem.
6581
6582 2004-07-22  Wim Taymans  <wim@fluendo.com>
6583
6584         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6585         (handoff_identity), (main):
6586         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6587         (handoff_identity), (main):
6588         * testsuite/schedulers/Makefile.am:
6589         * testsuite/schedulers/group_link.c: (main):
6590         Show bug in scheduler when linking chain and loop based element 
6591         where the chain based element was not yet in a group.
6592
6593 2004-07-21  Benjamin Otte  <otte@gnome.org>
6594
6595         * gst/.cvsignore:
6596         * gst/autoplug/.cvsignore:
6597         * gst/elements/.cvsignore:
6598         * gst/indexers/.cvsignore:
6599         * libs/gst/bytestream/.cvsignore:
6600         * libs/gst/control/.cvsignore:
6601         * libs/gst/getbits/.cvsignore:
6602         * testsuite/states/.cvsignore:
6603         * testsuite/threads/.cvsignore:
6604           keep this up to date, since I seem to be the only one who cares
6605           about not missing files on commits (editor's note: no you don't,
6606           but feel free to change them at the time you add stuff instead
6607           of later on)
6608
6609 2004-07-21  Benjamin Otte  <otte@gnome.org>
6610
6611         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6612         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6613         (gst_bin_child_state_change_func), (set_kid_state_func),
6614         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6615           make state changes work correctly and reentrant (so removing
6616           elements from bins during state changes of bins doesn't cause
6617           segfaults or even wrong states)
6618           add debugging category and debugging output to print children states
6619         * gst/gstbin.c: (gst_bin_dispose): 
6620           add some assertion checks
6621         * gst/gstbin.h:
6622         * gst/gstbin.c: (gst_bin_sync_children_state):
6623           deprecate this function - it just does gst_bin_set_state (bin,
6624           GST_STATE (bin)) 
6625         * testsuite/threads/queue.c: (main):
6626           don't use gst_bin_sync_children_state anymore
6627         * testsuite/states/Makefile.am:
6628         * testsuite/states/bin.c:
6629           test that the state changes of bins work as expected
6630         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6631           some adjustments to change states correctly, too
6632         * gst/gstthread.c: (gst_thread_change_state):
6633           don't enable/disable "threadsafe" properties, they're unused and
6634           cause random segfaults
6635         * testsuite/threads/Makefile.am:
6636           the queue check randomly passes now, ignore it
6637
6638 2004-07-21  Benjamin Otte  <otte@gnome.org>
6639
6640         * gst/gstpad.c:
6641           check if data is NULL before outputting debug info. (fixes #145100)
6642
6643 2004-07-21  Benjamin Otte  <otte@gnome.org>
6644
6645         * gst/schedulers/entryscheduler.c:
6646         (gst_entry_scheduler_loop_wrapper),
6647         (gst_entry_scheduler_chain_wrapper),
6648         (gst_entry_scheduler_get_wrapper):
6649           reset the state when the cothread starts, so we don't get assertion
6650           failures on restarting of cothreads
6651
6652 2004-07-20  Benjamin Otte  <otte@gnome.org>
6653
6654         * gst/gstelement.c: (gst_element_link_pads_filtered):
6655           use correct sinkpad, if only sinkpad is specified, but not srcpad
6656           (fixes #147889)
6657         * gst/gstelement.c: (gst_element_set_state_func),
6658         (gst_element_change_state): ref/unref the element, signal handlers
6659         could get rid of the element otherwise
6660
6661 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6662
6663         * docs/random/ds/0.9-suggested-changes:
6664           Make note about renaming fixed-list to array.
6665         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6666         (_gst_value_initialize):
6667           Add array intersections.
6668         * testsuite/caps/intersect2.c: (main):
6669           Add test for array intersections.
6670
6671 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6672
6673         * configure.ac: back to cvs
6674
6675 === release 0.8.4 ===
6676
6677 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6678
6679         * configure.ac:
6680           releasing 0.8.4, "Paella"
6681           bump libtool versioning
6682
6683 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6684
6685         * po/LINGUAS:
6686         * po/ca.po:
6687           adding Catalan translation (Jordi Mallach)
6688
6689 2004-07-20  Wim Taymans  <wim@fluendo.com>
6690
6691         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6692         (handoff_identity), (main):
6693         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6694         (handoff_identity), (main):
6695         * testsuite/schedulers/Makefile.am:
6696         Added failing testcase for variant of #147894
6697
6698 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6699
6700         patch by: David Moore
6701
6702         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6703         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
6704         (group_migrate_connected):
6705         * testsuite/schedulers/Makefile.am:
6706           fix for #142813 (Deadlock in optimal scheduler)
6707
6708 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6709
6710         patch by: Wim Taymans
6711
6712         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6713         (gst_opt_scheduler_schedule_run_queue),
6714         (gst_opt_scheduler_get_wrapper), (get_group),
6715         (group_migrate_connected):
6716         * testsuite/schedulers/Makefile.am:
6717           fix for #147819 (Add some checks in the opt scheduler)
6718
6719 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6720
6721         patch by: Benjamin Otte
6722
6723         * gst/gstelementfactory.c: (__gst_element_details_set):
6724           fix for #147929: running gst-register in non-utf8 locale can cause
6725           invalid registry
6726
6727 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6728
6729         patch by: Wim Taymans
6730
6731         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
6732         (group_has_element), (element_get_reachables_func),
6733         (group_migrate_connected):
6734           fix for #147894 (opt scheduler decoupled elements mismanagement)
6735         * testsuite/schedulers/Makefile.am:
6736           testsuite app now passes
6737
6738 2004-07-19  Wim Taymans  <wim@fluendo.com>
6739
6740         * testsuite/schedulers/147819.c: (handoff_identity1),
6741         (handoff_identity2), (main):
6742         * testsuite/schedulers/Makefile.am:
6743         Added testcase for bug 147819
6744
6745 2004-07-19  Wim Taymans  <wim@fluendo.com>
6746
6747         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6748         (handoff_identity), (main):
6749         * testsuite/schedulers/Makefile.am:
6750         Added testcase for bug 147894
6751
6752 2004-07-16  Wim Taymans  <wim@fluendo.com>
6753
6754         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
6755         * testsuite/schedulers/142183.c: (handoff_identity), (main):
6756         * testsuite/schedulers/Makefile.am:
6757         Added testsuite for bug 142183 in its two incarnations. Refcount
6758         is not increased for scheduled elements and threadsafe properties
6759         mutexes are not properly unlocked.
6760
6761 2004-07-16  Wim Taymans  <wim@fluendo.com>
6762
6763         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
6764         (create_chain), (destroy_chain), (create_group), (destroy_group),
6765         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
6766         (group_dec_link), (gst_opt_scheduler_pad_link),
6767         (group_inc_links_for_element), (group_migrate_connected):
6768         Call group_inc_link with the proper src->sink ordering -- 
6769         break this, and we break sort_chain. patch from wingo for bug
6770         147713.
6771         Partially revert patch 1.89. When adding a loop based element to 
6772         the scheduler, the links to other groups are automatically followed
6773         and incremented. This should not happen because the bin will call
6774         pad_link explicitly for those connection, resulting in them counted 
6775         twice. Results in assertion failure on pipeline cleanup.
6776
6777 2004-07-16  Wim Taymans  <wim@fluendo.com>
6778
6779         * testsuite/schedulers/143777-2.c: (main):
6780         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
6781         (main):
6782         * testsuite/schedulers/Makefile.am:
6783         Added cleanup code to testcase 143777-2.
6784         Added testcase to show bug 147713, does not really show the
6785         deadlock as I can't figure out how to trigger it, but it does
6786         demonstrate bad ordering in the scheduler.
6787
6788 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6789
6790         * gst/gstvalue.c: (gst_value_deserialize_fraction):
6791           change strndup to g_strndup.  Fixes #147707
6792
6793 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6794
6795         * po/af.po:
6796         * po/az.po:
6797         * po/cs.po:
6798         * po/en_GB.po:
6799         * po/fr.po:
6800         * po/nl.po:
6801         * po/sr.po:
6802         * po/sv.po:
6803         * po/tr.po:
6804         * po/uk.po:
6805           updated translations
6806
6807 2004-07-16  Benjamin Otte  <otte@gnome.org>
6808
6809         * gst/gstvalue.c: (gst_greatest_common_divisor):
6810           use ints and return ints, fractions only use ints, too, so this
6811           avoids accidently casting multiplications to unsigned
6812         (gst_value_lcopy_fraction): it's ints, not uint32
6813         (gst_value_set_fraction): disallow minint, multiplying and negation
6814           are broken with it
6815         (gst_value_fraction_multiply): fix to make large numbers work and get
6816         rid of the assumption that the multiplication of two ints fits an
6817         int64 - dunno if that's true for all systems
6818         * testsuite/caps/Makefile.am:
6819         * testsuite/caps/fraction-multiply-and-zero.c:
6820         (check_multiplication), (check_equal), (zero_test), (main):
6821           add tests for all the stuff above
6822         * testsuite/caps/value_compare.c: (test1):
6823           fix comment
6824         * tests/.cvsignore:
6825         * testsuite/caps/.cvsignore:
6826         * testsuite/debug/.cvsignore:
6827         * testsuite/dlopen/.cvsignore:
6828         * testsuite/states/.cvsignore:
6829           get up to date
6830
6831 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6832
6833         * docs/manual/bins-api.xml:
6834         * docs/manual/factories.xml:
6835         * docs/manual/helloworld.xml:
6836         * docs/manual/links-api.xml: 
6837           fixes for out of date info, incorrect info and grammar
6838
6839 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6840
6841         * docs/manual/pads.xml:
6842         * docs/manual/pads-api.xml: grammar fix
6843
6844 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6845
6846         * docs/manual/pads-api.xml: typo + grammar fix
6847
6848 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6849
6850         * docs/gst/gstreamer-sections.txt:
6851           add new symbols
6852         * docs/gst/tmpl/gstelement.sgml:
6853         * docs/gst/tmpl/gstpad.sgml:
6854         * docs/gst/tmpl/gsttypes.sgml:
6855         * docs/gst/tmpl/gstvalue.sgml:
6856           update docs
6857         * gst/gststructure.c: (gst_structure_set_valist),
6858         (gst_structure_from_abbr), (gst_structure_to_abbr):
6859         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
6860         (gst_greatest_common_divisor), (gst_value_init_fraction),
6861         (gst_value_copy_fraction), (gst_value_collect_fraction),
6862         (gst_value_lcopy_fraction), (gst_value_set_fraction),
6863         (gst_value_get_fraction_numerator),
6864         (gst_value_get_fraction_denominator),
6865         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
6866         (gst_value_deserialize_fraction),
6867         (gst_value_transform_fraction_string),
6868         (gst_value_transform_string_fraction),
6869         (gst_value_compare_fraction), (_gst_value_initialize):
6870         * gst/gstvalue.h:
6871           adding GstFraction GValue type, get/set, and multiply
6872         * testsuite/caps/Makefile.am:
6873         * testsuite/caps/fraction.c: (test), (main):
6874         * testsuite/caps/string-conversions.c: (main):
6875         * testsuite/caps/value_compare.c: (test1), (main):
6876           add regression tests for GstFraction
6877
6878 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6879         
6880         * docs/manual/init-api.xml: Grammar fix
6881
6882 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6883
6884         * docs/manual/states.xml: Fix inconsistent information
6885
6886 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6887
6888         * gst/gstelement.c: (gst_element_set_state):
6889         * gst/gstpad.c: (gst_pad_try_set_caps):
6890         * gst/gststructure.c:
6891         * gst/gstthread.c: (gst_thread_child_state_change):
6892         * gst/gstvalue.c: (gst_value_compare_double):
6893         * gst/gstvalue.h:
6894         * testsuite/parse/parse1.c: (main):
6895           debugging additions and style cleanups
6896
6897 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6898
6899         * docs/manual/states.xml: Grammar fix
6900
6901 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6902
6903         * docs/manual/pads.xml: Grammar fix
6904
6905 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6906
6907         * docs/manual/elements.xml: Fixed image reference
6908
6909 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6910
6911         * docs/manual/goals.xml: Grammar fix
6912
6913 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6914
6915         * docs/manual/motivation.xml:
6916         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
6917
6918 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6919
6920         * docs/manual/motivation.xml: Fix spelling
6921
6922 2004-07-15  Benjamin Otte  <otte@gnome.org>
6923
6924         * gst/gstelement.h: 
6925           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
6926           strings.
6927         * gst/gstelement.c (gst_element_class_init):
6928           GError's are boxed, not objects
6929         * gst/gstmarshal.list:
6930           update list for the fixed error signal
6931
6932 2004-07-14  Andy Wingo  <wingo@pobox.com>
6933
6934         * gst/gsttag.c: Add a tag merge func for pointers. The header was
6935         there all along, but the function wasn't. (guile-gstreamer's build
6936         system uses the address of the function -- I wasn't actually
6937         trying to use this.)
6938
6939 2004-07-14  Andy Wingo  <wingo@pobox.com>
6940
6941         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
6942         as gst_pad_proxy_pad_link) just link to every other pad when they
6943         are called. In the case where the graph has cycles, this will mean
6944         that a call to try_set_caps will recurse. Allow this recursion
6945         and return OK, while we wait for the first try_set_caps to give a
6946         proper return value.
6947         (gst_pad_link_call_link_functions): Since this function is the
6948         only one to set the NEGOTIATING flag on a pad, if the flag is set
6949         it means that the link functions have indirectly recursed. If this
6950         happens, error out to avoid infinite recursion and an eventual
6951         SEGV.
6952         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
6953         (gst_pad_proxy_getcaps): Intersect the result with the template
6954         caps to ensure that the return value is valid.
6955
6956 2004-07-14  Andy Wingo  <wingo@pobox.com>
6957
6958         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
6959         one refcount, the calling function is the owner of the buffer.
6960
6961 2004-07-14  Wim Taymans  <wim@fluendo.com>
6962
6963         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
6964         (gst_opt_scheduler_pad_link), (group_migrate_connected):
6965         Fix stupid warning when an element is to be migrated but
6966         is already migrated.
6967
6968 2004-07-14  Wim Taymans  <wim@fluendo.com>
6969
6970         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
6971         (gst_opt_scheduler_pad_link), (group_migrate_connected):
6972         Make sure that a single non-loop-based element does not 
6973         end up in a group. This fixes the testsuite again.
6974
6975 2004-07-14  Wim Taymans  <wim@fluendo.com>
6976
6977         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6978         (add_to_group), (merge_groups), (schedule_group),
6979         (gst_opt_scheduler_get_wrapper), (group_elements),
6980         (group_dec_link), (gst_opt_scheduler_pad_link),
6981         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
6982         (gst_opt_scheduler_iterate):
6983         move isolated groups to a new chain.
6984         Emit a warning instead of segfaulting in some error cases.
6985         Fix a bug where the link count between groups was not calculated 
6986         correctly. Fixes #144510.
6987
6988 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
6989         * gst/elements/gstfilesrc.c:
6990           Binary files support under Windows now OK
6991       
6992 2004-07-13  Benjamin Otte  <otte@gnome.org>
6993
6994           compatibility fixes for Solaris 8/gcc 2.95
6995         * configure.ac:
6996           include libintl libs in LDFLAGS
6997         * gstvalue.c (gst_value_deserialize_buffer):
6998           cast isxdigit stuff to int to silence compiler warning
6999
7000 2004-07-12  Benjamin Otte  <otte@gnome.org>
7001
7002         * gst/gsttypes.h:
7003           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7004           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7005           just causes support madness
7006         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7007           make it work without this
7008         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7009         (gst_file_index_commit):
7010           glib IO channels don't want binary mode
7011         * testsuite/bytestream/filepadsink.c: (main):
7012         * testsuite/bytestream/test1.c: (read_param_file):
7013           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7014
7015 2004-07-12  Benjamin Otte  <otte@gnome.org>
7016
7017         * gst/gstelement.c: (gst_element_class_init),
7018         (gst_element_set_state), (gst_element_set_state_func):
7019           virutalize gst_element_set_state, use set_state member in class
7020           struct that was already added in 0.7 for this.
7021         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7022         (gst_bin_change_state):
7023           make gst_bin_foreach works similar to other foreach functions, plug
7024           memleaks in it. Make functions using it work with the new approach.
7025           Document gst_bin_foreach, so it can be exported if we want to
7026         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7027           use virtualized set_state to make set_state on bins set the state of
7028           all its children.
7029
7030 2004-07-12  Benjamin Otte  <otte@gnome.org>
7031
7032         * configure.ac:
7033           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7034           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7035         * gst/gstpad.c: (gst_pad_alloc_buffer):
7036           allow buffer_alloc functions to return NULL and allocate a normal
7037           buffer in that case
7038
7039 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7040         * gst/elements/gstfilesink.c:
7041         * gst/elements/gstfilesrc.c:
7042         * gst/indexers/gstfileindex.c:
7043         * gst/gsttypes.h:
7044         * testsuite/bytestream/filepadsink.c:
7045         * testsuite/bytestream/test1.c:
7046           Handle binary files under Windows
7047
7048 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7049         * docs/manual/win32.xml:
7050         * win32/config.h:
7051         * win32/gst-register.vcproj:
7052         * win32/gstreamer.def:
7053           Update to another gettext public build
7054
7055 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7056         * gst/gstplugin.c:
7057           Fix an impossible C syntax
7058         * win32/config.h:
7059           Disable i18n under Windows for the moment
7060         * win32/gst-register.vcproj:
7061           Use this configuration
7062
7063 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7064         * docs/manual/quotes.xml:
7065           Keep the quotes file alive
7066         * docs/random/ds/0.9-suggested-changes:
7067           Add the suggestion of including a 'rowstride' as part of video
7068           format caps
7069
7070 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7071
7072         * gst/gstelement.c: (gst_element_set_state),
7073         (gst_element_change_state):
7074           d'oh.  Set PENDING state correctly before forcing bin to change.
7075         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7076         (gst_structure_parse_fixed_list):
7077         * gst/schedulers/gstoptimalscheduler.c:
7078         (gst_opt_scheduler_state_transition):
7079         * testsuite/states/parent.c: (main):
7080           remove comment now that it's fixed.
7081
7082 2004-07-11  Benjamin Otte  <otte@gnome.org>
7083
7084         * gst/gstclock.h:
7085           GST_SECOND shouldn't cause a conversion to unsigned.
7086         * testsuite/clock/.cvsignore:
7087         * testsuite/clock/Makefile.am:
7088         * testsuite/clock/signedness.c: (main):
7089           make sure it never will again
7090
7091 2004-07-11  Andy Wingo  <wingo@pobox.com>
7092
7093         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7094         whose state is higher than the bin state, raise the bin state to
7095         ensure that bin state := highest child state.
7096         
7097 2004-07-11  Andy Wingo  <wingo@pobox.com>
7098
7099         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7100         procedure on the children of a bin. Assumes that the procedure can
7101         change the set of children.
7102         (set_kid_state_func): New static function.
7103         (gst_bin_change_state): Use gst_bin_foreach to call
7104         set_kid_state_func. Fixes a bug: if a child had a state-change
7105         handler that removes it from the bin, there would be a segfault.
7106         Hopefully it should also work in the case where the state-change
7107         handler on one child adds or removes other children. In any case,
7108         fixes should go to gst_bin_foreach.
7109
7110 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7111
7112         * gst/gstelement.c: (gst_element_set_state):
7113           compatibility fix for latest plugins release.  Change loop back
7114           to while {}
7115
7116 2004-07-09  Wim Taymans  <wim@fluendo.com>
7117
7118         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7119         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7120         (gst_thread_main_loop):
7121         Since remove is virtual in GstBin we must not assume the 
7122         elements GList to have anothing useful.
7123         Add some more logging to GstThread and be a bit more paranoid
7124         when resetting the scheduler.
7125         Set the state of the bin to NULL before removing the children.
7126
7127 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7128
7129         * testsuite/threads/Makefile.am:
7130         * testsuite/threads/threadg.c:
7131           added test to check if problem when removing all elements from a
7132           GstThread before setting GstThread state to NULL
7133
7134 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7135
7136         * docs/gst/tmpl/gstelement.sgml:
7137         * docs/gst/tmpl/gsttypes.sgml:
7138         * gst/gstbin.c: (gst_bin_change_state):
7139         * gst/gstelement.c: (gst_element_set_state),
7140         (gst_element_change_state):
7141           rework so that for bins we try to set the state on all children
7142           as well even if the bin is in the correct state already.
7143           change while to do so at least one iteration is done.
7144           For regular elements, we fall back to the previous behaviour for
7145           now since we first need a new plugins release.
7146         * testsuite/states/parent.c: (main):
7147           test for this case
7148           Fixes #123774
7149
7150 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7151
7152         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7153         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7154         (gst_queue_release_locks), (gst_queue_change_state),
7155         (gst_queue_set_property):
7156           add proper lock debugging.  Change dispose to finalize, since
7157           we're freeing mutexes and other stuff which should happen only once.
7158
7159 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7160
7161         * docs/gst/tmpl/gstelement.sgml:
7162         * docs/gst/tmpl/gstplugin.sgml:
7163         * docs/gst/tmpl/gsttypes.sgml:
7164         * docs/pwg/building-state.xml:
7165         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7166         * gst/gstelement.c: (gst_element_change_state):
7167         * gst/gstthread.c: (gst_thread_change_state):
7168           catch wrong state changes in element base class.
7169
7170 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7171
7172         * gst/gstinfo.h:
7173           clean up layout a little.
7174
7175 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7176
7177         * configure.ac:
7178         * testsuite/Makefile.am:
7179         * testsuite/states/Makefile.am:
7180         * testsuite/states/parent.c: (main):
7181           re-enable states testsuite dir.  Add test for state changes and
7182           parent behaviour
7183
7184 2004-07-09  Wim Taymans  <wim@fluendo.com>
7185
7186         * gst/schedulers/gstoptimalscheduler.c:
7187         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7188         (element_get_reachables_func), (element_get_reachables),
7189         (debug_element), (rechain_group), (group_migrate_connected),
7190         (gst_opt_scheduler_pad_unlink):
7191         Do not try to migrate decoupled elements to a new group since
7192         they are not added to groups.
7193
7194 2004-07-08  Benjamin Otte  <otte@gnome.org>
7195
7196         * gst/gstelement.c: (gst_element_error_func):
7197           make reentrant (= allow removing elements in error handler)
7198
7199 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7200
7201         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7202         (gst_pad_send_event), (gst_pad_call_chain_function):
7203           events sent to elements below PAUSED cannot be handled, so
7204           don't try to
7205
7206 2004-07-08  Wim Taymans  <wim@fluendo.com>
7207
7208         * gst/schedulers/gstoptimalscheduler.c:
7209         (chain_recursively_migrate_group), (create_group),
7210         (schedule_group), (gst_opt_scheduler_pad_link),
7211         (group_elements_set_visited), (element_get_reachables_func),
7212         (element_get_reachables), (group_can_reach_group), (debug_element),
7213         (rechain_group), (group_migrate_connected),
7214         (gst_opt_scheduler_pad_unlink):
7215         * testsuite/schedulers/Makefile.am:
7216         Implemented group splitting and rechaining.
7217         Fixes 143777 and 143777-2 in the testsuite.
7218
7219 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7220
7221         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7222           extra debugging
7223         * gst/gstevent.h:
7224         * gst/gstinfo.c: (gst_debug_log_default):
7225           print time nicely.  add thread pointer until someone figures out
7226           a completely portable way of getting at thread id's.
7227         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7228         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7229         (gst_pad_call_chain_function):
7230           extra debugging
7231         * gst/schedulers/gstoptimalscheduler.c:
7232         (get_group_schedule_function), (loop_group_schedule_function),
7233         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7234         (pad_clear_queued), (gst_opt_scheduler_iterate):
7235           rename BUFPEN and friends to DATAPEN since that's what they are.
7236
7237 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7238
7239         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7240         * gst/gstbuffer.h:
7241         * gst/gstpad.c:
7242           cleanups and debugging
7243
7244 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7245
7246         * configure.ac:
7247         * gst/gstvalue.c: (gst_value_compare_enum),
7248         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7249         (gst_value_can_compare), (gst_value_compare):
7250         * testsuite/Makefile.am:
7251         * testsuite/enumcaps/Makefile.am:
7252         * testsuite/enumcaps/enumcaps.c:
7253           Fix enum serialization, deserialization, comparison in caps, add
7254           a test to ensure that this continues working in the future.
7255
7256 2004-07-06  David Schleef  <ds@schleef.org>
7257
7258         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7259         Fix memleak.
7260
7261 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7262
7263         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7264         * gst/gstplugin.h:
7265         * gst/registries/gstxmlregistry.c:
7266         (plugin_times_older_than_recurse), (plugin_times_older_than),
7267         (gst_xml_registry_parse_padtemplate):
7268           only rebuild registry when actual plugins have a newer time than
7269           the registry.  Fixes #145520
7270
7271 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7272
7273         * docs/manual/manual.xml:
7274         * docs/manual/win32.xml:
7275           add chapter on win32 building.  fixes #142422
7276
7277 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7278
7279         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7280
7281         * gst/autoplug/gstspider.c: (gst_spider_init),
7282         (gst_spider_dispose):
7283           fix spider memleaks.  fixes #137863
7284
7285 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7286
7287         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7288
7289         * gst/schedulers/gstoptimalscheduler.c:
7290         (gst_opt_scheduler_pad_unlink):
7291           fix SIGBUS error, fixes #145338
7292
7293 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7294
7295         * gst/gstobject.c: (gst_object_replace):
7296         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7297         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7298           clean up clock lifecycle.  Fixes #109831
7299
7300 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7301
7302         * po/LINGUAS:
7303         * po/cs.po:
7304           added Czech translation (Miloslav Trmac)
7305
7306 2004-07-04  David Schleef  <ds@schleef.org>
7307
7308         * tools/Makefile.am:
7309         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7310
7311 2004-07-04  David Schleef  <ds@schleef.org>
7312
7313         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7314
7315 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7316
7317         * gst/gstbin.c: (gst_bin_restore_thyself):
7318           chain to parent restore so the bins get restored correctly
7319           in the editor
7320
7321 2004-07-03  David Schleef  <ds@schleef.org>
7322
7323         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7324         Actually do something in these functions, like before the big
7325         caps change.  (bug #145137)
7326
7327 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7328
7329         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7330         (gst_element_get_compatible_pad_filtered):
7331         * gst/gstthread.c: (gst_thread_main_loop):
7332           more debugging
7333
7334 2004-07-02  David Schleef  <ds@schleef.org>
7335
7336         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7337         * gst/gstobject.h:
7338         * gst/gstparse.h:
7339         * gst/gsttrace.h:
7340         * gst/gstxml.h:
7341
7342 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7343
7344         * gst/gstpad.c: (gst_pad_check_schedulers),
7345         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7346         (gst_pad_link_prepare):
7347           revert until testsuite is fixed
7348
7349 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7350
7351         * testsuite/Makefile.am:
7352         * testsuite/caps/filtercaps.c: (main):
7353         * testsuite/clock/clock1.c: (main):
7354         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7355           fix some more tests
7356
7357 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7358
7359         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7360         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7361         * testsuite/cleanup/cleanup4.c: (main):
7362           fix testsuite
7363
7364 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7365
7366         * libs/gst/control/control.c:
7367         * libs/gst/control/dparam.c:
7368         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7369         * libs/gst/control/dparammanager.c:
7370         * libs/gst/control/dparammanager.h:
7371         * testsuite/dynparams/Makefile.am:
7372         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7373         (gst_dptest_change_state), (gst_dptest_chain), (main):
7374           fix testcase for dparams
7375           add debugging category
7376
7377 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7378
7379         * testsuite/Rules:
7380           change path
7381
7382 2004-07-02  Benjamin Otte  <otte@gnome.org>
7383
7384         * tests/.cvsignore:
7385         * tests/Makefile.am:
7386         * tests/mass_elements.c: (gst_get_current_time), (main):
7387           add simple benchmark to test various speeds of fakesrc ! identity !
7388           identity ! ... ! fakesink.
7389           Usage: mass_elements [num_identities] [num_buffers]
7390           If not specified they default to 1000.
7391
7392 2004-07-02  Benjamin Otte  <otte@gnome.org>
7393
7394         * gst/gstpad.c: (gst_pad_check_schedulers),
7395         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7396         (gst_pad_link_prepare):
7397           check that pads that get linked belong to the same manager. The old
7398           code allowed linking elements before putting them into bins, so it
7399           worked to link them and then put them in different threads, which
7400           lead to weird behaviour.
7401           Since this effectively disallows linking elements before putting
7402           them in a bin, some applications might not work after this and error
7403           out. If these applications are too critical, we might need to revert
7404           that patch. Please test this before the next release...
7405
7406 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7407
7408         * gst/gstpad.c: (gst_pad_get_caps):
7409           throw an error if the getcaps function does not return a subset of
7410           the template caps.
7411         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7412           make disconts without position info an error in debugging
7413         * tests/spidey_bench.c: (handoff), (main):
7414           don't count first try when averaging
7415
7416 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7417
7418         * gst/gstplugin.c: (gst_plugin_load_file):
7419           figure out problem with dynamic test
7420
7421 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7422
7423         * docs/gst/Makefile.am:
7424           fix docs build
7425
7426 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7427
7428         * po/POTFILES.in:
7429         * po/af.po:
7430         * po/az.po:
7431         * po/en_GB.po:
7432         * po/fr.po:
7433         * po/nl.po:
7434         * po/sr.po:
7435         * po/sv.po:
7436         * po/tr.po:
7437         * po/uk.po:
7438         * tools/gst-register.c: (plugin_added_func), (main):
7439           i18n-ize -register, fix plural
7440
7441 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7442
7443         * gst/elements/gstidentity.c: (gst_identity_class_init),
7444         (gst_identity_init), (gst_identity_chain),
7445         (gst_identity_set_property), (gst_identity_get_property):
7446         * gst/elements/gstidentity.h:
7447           check for perfect stream
7448
7449 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7450
7451         * gst/elements/gstidentity.c: (gst_identity_chain):
7452           print offset_end
7453
7454 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7455
7456         * docs/gst/Makefile.am:
7457         * docs/gst/gstreamer-docs.sgml:
7458           doc fixes
7459
7460 2004-06-24  David Schleef  <ds@schleef.org>
7461
7462         * autogen.sh:  Remove call to env, since the buildbot isn't
7463         broken anymore.
7464
7465 2004-06-24  Wim Taymans  <wim@fluendo.com>
7466
7467         * gst/elements/Makefile.am:
7468         * gst/elements/gstelements.c:
7469         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7470         (gst_multifdsink_class_init), (gst_multifdsink_init),
7471         (gst_multifdsink_add), (gst_multifdsink_remove),
7472         (gst_multifdsink_clear), (gst_multifdsink_chain),
7473         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7474         * gst/elements/gstmultifdsink.h:
7475         Added an element that writes to multiple filedescriptors at once.
7476
7477 2004-06-24  Benjamin Otte  <otte@gnome.org>
7478
7479         * gst/parse/grammar.y:
7480           don't try to link elements before they have been added to bins
7481
7482 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7483
7484         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7485         (gst_file_pad_get_length):
7486         * libs/gst/bytestream/filepad.h:
7487           add 2 new functions
7488
7489 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7490
7491         * docs/gst/gstreamer-sections.txt:
7492         remove from docs, the define that Benjamin removed from gstelement.h
7493
7494 2004-06-22  Benjamin Otte  <otte@gnome.org>
7495
7496         * gst/gstelement.h:
7497           remove define that referenced a nonexisting GstElement struct member
7498
7499 2004-06-20  Benjamin Otte  <otte@gnome.org>
7500
7501         * gst/gstdata.c: (gst_data_is_writable):
7502           whoops, return values were wrong, so writable data was marked as
7503           non-writable and vice versa. (fixes #143953, spotted by Francis
7504           Labonte)
7505           Shows how rarely we need to copy data ;)
7506
7507 2004-06-20  Benjamin Otte  <otte@gnome.org>
7508
7509         * testsuite/schedulers/.cvsignore:
7510         * testsuite/schedulers/Makefile.am:
7511         * testsuite/schedulers/143777-2.c: (main):
7512           add test for opt breakage in bug #143777
7513
7514 2004-06-20  Benjamin Otte  <otte@gnome.org>
7515
7516         * gst/gstpad.c: (gst_pad_call_chain_function):
7517           check for if we were unlinked while inside the chainfunction (fixes
7518           entrygthread having issues with #143777)
7519         * testsuite/schedulers/143777.c: (main):
7520         * testsuite/schedulers/Makefile.am:
7521           add a test for that fix
7522
7523 2004-06-20  Benjamin Otte  <otte@gnome.org>
7524
7525         * gst/gstvalue.c: (gst_value_set_int_range):
7526           test that start is smaller then end
7527         * libs/gst/bytestream/Makefile.am:
7528         * libs/gst/bytestream/filepad.c: 
7529         * libs/gst/bytestream/filepad.h:
7530           add GstFilePad - a pad that behaves like a FILE*
7531         * testsuite/bytestream/.cvsignore:
7532         * testsuite/bytestream/Makefile.am:
7533         * testsuite/bytestream/filepadsink.c: 
7534           test for the GstFilePad
7535
7536 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7537
7538         * gst/elements/gstidentity.c: (gst_identity_class_init),
7539         (gst_identity_init), (gst_identity_set_clock),
7540         (gst_identity_chain), (gst_identity_set_property),
7541         (gst_identity_get_property):
7542         * gst/elements/gstidentity.h:
7543         * gst/gstclock.c: (gst_clock_id_wait):
7544           add a "sync" property to sync to the clock
7545
7546 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7547
7548         * gst/gstelementfactory.c: (gst_element_factory_create):
7549           make the freakin "elementfactory bla has no type" message more
7550           useful. So we actually can do something when someone shows up
7551           complaining about it.
7552
7553 2004-06-15  Johan Dahlin  <johan@gnome.org>
7554
7555         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7556         found. This matches the old behavior better. Thanks to Thomas for
7557         pointing out.
7558
7559 2004-06-14  David Schleef  <ds@schleef.org>
7560
7561         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7562         -fomit-frame-pointer.  Appears to generate correct code in
7563         other cases as well.
7564
7565 2004-06-14  Johan Dahlin  <johan@gnome.org>
7566
7567         * tools/gst-inspect.c (main): Add two new command line options: -a
7568         to print all elements and -n to print the name on each line. Also
7569         fix some error reporting.
7570         (main): Simplify, remove -n and always print names if -a is specified
7571
7572 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7573
7574         * win32/gstconfig.h:
7575         * win32/GSTreamer.vcproj:
7576         * win32/Makefile:
7577         * gst/gstconfig.h.in:
7578         * gst/gst.h:
7579         * gst/gstbin.h:
7580         * gst/gstelement.h:
7581         * gst/gstevent.h:
7582         * gst/gstobject.h:
7583         * gst/gstpad.h:
7584         * docs/gst/gstreamer-sections.txt:
7585         * docs/gst/tmpl/gstconfig.sgml:
7586           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7587
7588 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7589         * docs/gst/gstreamer-sections.txt:
7590         * docs/gst/tmpl/gstconfig.sgml:
7591         Add the GSTREAMER_EXPORT macro to the docs
7592
7593 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7594
7595         * tools/gst-compprep.c: (handle_xmlerror), (main):
7596         Add a check for the version that introduced SetStructuredError to fix
7597         the build on FC1
7598
7599 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7600
7601         * win32/msvc71.sln:
7602         * win32/testsuite/:
7603           prepare to compile the testsuite with MSVC
7604
7605 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7606
7607         * docs/manual/win32.xml:
7608           attempt to transform the Win32 README into an XML doc
7609
7610 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7611
7612         * gst/gst.c:
7613         * gst/gstbin.*:
7614         * gst/config.h.in:
7615         * gst/gstelement.*:
7616         * gst/gstevent.h:
7617         * gst/gstobject.*:
7618         * gst/gstpad.h:
7619         * tools/gst-register.c:
7620         * win32/gstreamer.def:
7621           extern symbols are now exported for the Windows DLL
7622
7623 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7624
7625         * gst/gstinfo.h:
7626           fix a problem to enable/disable DEBUG under MSVC
7627
7628 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7629
7630         * win32/:
7631           enable more debug code in DEBUG build
7632
7633 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7634
7635         * win32/config.h:
7636         * gst/gst-i18n-app.h:
7637           enable NLS under Windows
7638
7639 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7640         * tools/gst-compprep.c: (handle_xmlerror), (main):
7641           Make an error that baffled me a bit clearer
7642
7643 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7644
7645         * gst/gstqueue.c:
7646           don't use g_queue_get_length () because it's 2.4, use ->length
7647
7648 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7649
7650         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7651
7652         * tools/gst-inspect.c: (print_signal_info):
7653           don't free random data twice. (fixes #144185)
7654
7655 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7656
7657         * gst/gstqueue.c:
7658         * gst/gstqueue.h:
7659           fix removing from the wrong queue on event timeout
7660           fix disposing of the event queue by casting correctly
7661           add mutexes for handling the event queue
7662           someone was sleeping when fixing queue last time around :)
7663
7664 2004-06-10  Johan Dahlin  <johan@gnome.org>
7665
7666         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7667         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7668
7669 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7670
7671         * docs/random/gdp:
7672         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7673         * libs/gst/dataprotocol/dataprotocol.c:
7674         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7675         (gst_dp_buffer_from_header):
7676         * libs/gst/dataprotocol/dataprotocol.h:
7677         * libs/gst/dataprotocol/dp-private.h:
7678           rev version to 0.1, add buffer flags and copy them
7679
7680 2004-06-09  Johan Dahlin  <johan@gnome.org>
7681
7682         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
7683         the flags from the buffer we're copying.
7684
7685 2004-06-09  Wim Taymans  <wim@fluendo.com>
7686
7687         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
7688         * gst/elements/gstidentity.c: (gst_identity_init),
7689         (gst_identity_chain):
7690         Print more buffer info in fakesink.
7691         Make identity output similar to fakesink.
7692
7693 2004-06-07  Daniel Gazard  <dany42@free.fr>
7694
7695         reviewed by Benjamin Otte  <otte@gnome.org>
7696
7697         * configure.ac:
7698           fix cross compiling not working. (fixes #143741)
7699
7700 2004-06-07  Benjamin Otte  <otte@gnome.org>
7701
7702         * gst/gstelement.c: (gst_element_set_time_delay):
7703           add failure check
7704         * gst/gstinfo.h:
7705           put brackets around macro arguments of GST_TIME_ARGS, add note to
7706           move it to correct header in 0.9
7707
7708 2004-06-07  Benjamin Otte  <otte@gnome.org>
7709
7710         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
7711         (gst_file_index_load), (_file_index_id_save_entries),
7712         (gst_file_index_commit), (gst_file_index_add_association),
7713         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
7714         (gst_file_index_plugin_init):
7715           make debugging use a default category
7716
7717 2004-06-06  David Moore  <dcm@acm.org>
7718
7719         reviewed by Benjamin Otte  <otte@gnome.org>
7720
7721         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
7722         (gst_fdsrc_change_state):
7723           reset offset counter when going READY => PAUSED. (fixes #142903)
7724
7725 2004-06-06  ed@catmur.co.uk
7726
7727         reviewed by Benjamin Otte  <otte@gnome.org>
7728
7729         * gst/registries/gstxmlregistry.c:
7730         (gst_xml_registry_rebuild_recurse):
7731           don't rely on g_dir_open to figure out if a file is a directory, use
7732           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
7733           directories. (fixes #142850)
7734
7735 2004-06-06  Benjamin Otte  <otte@gnome.org>
7736
7737         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
7738           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
7739         * libs/gst/bytestream/adapter.c:
7740         * libs/gst/bytestream/adapter.h:
7741           fix copyright in header and typo in debugging category name
7742
7743 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7744
7745         * configure.ac:
7746           bump nano to cvs
7747
7748 === release 0.8.3 ===
7749
7750 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7751
7752         * configure.ac:
7753           update libtool versioning
7754           do a new release
7755         * docs/gst/tmpl/gstelement.sgml:
7756         * docs/gst/tmpl/gsttypes.sgml:
7757         * gst/gstinfo.c: (_gst_debug_init):
7758           put back GST_CAT_DATAFLOW to fix API breakage
7759
7760 2004-06-04  David Schleef  <ds@schleef.org>
7761
7762         * autogen.sh: Add a temporary 'env' to test buildbot problems.
7763
7764 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7765
7766         * configure.ac:
7767           bump nano to cvs
7768
7769 === release 0.8.2 ===
7770
7771 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7772
7773         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
7774           check GST_DEBUG environment variable which is parsed the same way
7775           as --gst-debug=
7776
7777 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7778
7779         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
7780                             gstmd5sink.c gstshaper.c gsttee.c
7781                             gsttypefindelement.c
7782         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
7783
7784           - removing trailing commas at end of enums
7785             it is correct C99 code but C90 compilers would complain
7786             (AIX, Forte, ...)
7787             ('should' fix #143290, at least partially)
7788
7789 2004-05-27  Wim Taymans  <wim@fluendo.com>
7790
7791         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
7792         (chain_group_set_enabled), (create_group), (add_to_group),
7793         (merge_groups), (setup_group_scheduler), (group_elements),
7794         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
7795         Don't try to follow the pad connections with other groups
7796         when a loop based element is added to the scheduler because
7797         the bin will inform the scheduler about the pad links a little
7798         later.
7799
7800 2004-05-27  Wim Taymans  <wim@fluendo.com>
7801
7802         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7803         (remove_from_chain), (chain_group_set_enabled),
7804         (setup_group_scheduler), (group_element_set_enabled),
7805         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
7806         (gst_opt_scheduler_show):
7807         Elements without a group can do a state change as well, just wait
7808         with the setup of the scheduling function when it is added to a
7809         chain.
7810
7811 2004-05-27  Wim Taymans  <wim@fluendo.com>
7812
7813         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7814         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
7815         (merge_groups), (setup_group_scheduler),
7816         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
7817         (gst_opt_scheduler_show):
7818         Fixes to maintain internal consistency of the scheduler data
7819         structures. 
7820          - adding an enabled group to a chain should increment the
7821            number of enabled elements in that chain.
7822          - removing an enabled group from a chain could disable the
7823            chain.
7824          - removing a disabled group from a chain could enable the
7825            chain.
7826          - add g_assert when internal inconsistency is detected.
7827          - adding an element to a group could increase the number of
7828            links this group has with other groups.
7829          - merging two groups also merges the chains.
7830          - also show group links in the _show method.
7831            
7832
7833 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7834
7835         * gst/gstcaps.c: (gst_caps_structure_simplify):
7836           don't print error messages when there is no error
7837         * gst/gstvalue.c: (gst_value_compare_int_range):
7838           compare the second value, too
7839         * testsuite/caps/Makefile.am:
7840         * testsuite/caps/random.c: (assert_on_error), (main):
7841           add tests to make sure the two things above are checked for
7842
7843 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
7844
7845         * configure.ac:
7846         * libs/gst/dataprotocol/Makefile.am:
7847         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
7848         * libs/gst/dataprotocol/dataprotocol.h:
7849           wrap header in GST_ENABLE_NEW.  make code use it
7850
7851 2004-05-23  Johan Dahlin  <johan@gnome.org>
7852
7853         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
7854         so verbose and print GstElement signal names all the time.
7855
7856 2004-05-22  David Schleef  <ds@schleef.org>
7857
7858         * gst/registries/gstxmlregistry.c:
7859         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
7860         (bug #142957)
7861
7862 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
7863
7864         * configure.ac:
7865           scrub cflags for glib2 so gcc doesn't complain when glib is in
7866           /usr/local
7867
7868 2004-05-21  Johan Dahlin  <johan@gnome.org>
7869
7870         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
7871         __GNUC__, patch from Brian Cameron, fixes bug #142804
7872
7873 2004-05-20  David Schleef  <ds@schleef.org>
7874
7875         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
7876         comparison code.  (bug #142819)
7877
7878 2004-05-20  Wim Taymans  <wim@fluendo.com>
7879
7880         * gst/gstbuffer.c: (gst_buffer_default_copy):
7881         * gst/gstbuffer.h:
7882         Added Comment to a flag.
7883         copy relevant flags in _buffer_copy.
7884
7885 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7886
7887         reviewed by: Wim Taymans <wim at fluendo dot com>
7888
7889         * gst/gstbuffer.h:
7890           add GST_BUFFER_IN_CAPS buffer flag
7891         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7892         (gst_structure_parse_any_list), (gst_structure_parse_list),
7893         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
7894         * gst/gstvalue.c: (gst_value_serialize_any_list),
7895         (gst_value_transform_any_list_string),
7896         (gst_value_list_prepend_value), (gst_value_list_append_value),
7897         (gst_value_list_get_size), (gst_value_list_get_value),
7898         (gst_value_transform_list_string),
7899         (gst_value_transform_fixed_list_string),
7900         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
7901         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
7902         (_gst_value_initialize):
7903         * gst/gstvalue.h:
7904           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
7905           < , > as a format.
7906         * testsuite/caps/string-conversions.c: (main):
7907           add regression tests for < >
7908
7909 2004-05-20  Johan Dahlin  <johan@gnome.org>
7910
7911         * docs/gst/Makefile.am (all-local): Re-add
7912
7913 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7914
7915         * docs/gst/Makefile.am:
7916         * docs/gst/gstreamer-docs.sgml:
7917         * docs/libs/Makefile.am:
7918         * docs/libs/gstreamer-libs-docs.sgml:
7919           fix distcheck issues
7920
7921 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7922
7923         * libs/gst/dataprotocol/Makefile.am:
7924           add to autotest
7925
7926 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7927
7928         * libs/gst/dataprotocol/Makefile.am:
7929         * libs/gst/dataprotocol/dataprotocol.c:
7930         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7931         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
7932         * libs/gst/dataprotocol/dp-private.h:
7933           use GST macros to read/write fixed length ints
7934           add some more asserts
7935
7936 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7937
7938         * docs/libs/gstreamer-libs-docs.sgml:
7939         * docs/libs/gstreamer-libs-sections.txt:
7940           remove idct and putbits
7941         * configure.ac:
7942         * docs/libs/tmpl/gstdataprotocol.sgml:
7943         * libs/gst/Makefile.am:
7944         * libs/gst/dataprotocol/Makefile.am:
7945         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
7946         (buffer_test), (caps_test), (event_test), (main):
7947         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
7948         (gst_dp_dump_byte_array), (gst_dp_init),
7949         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
7950         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7951         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
7952         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
7953         (gst_dp_validate_header), (gst_dp_validate_payload),
7954         (gst_dp_validate_packet), (plugin_init):
7955         * libs/gst/dataprotocol/dataprotocol.h:
7956         * libs/gst/dataprotocol/dp-private.h:
7957           add dataprotocol
7958
7959 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7960
7961         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
7962           fix int variable deserialization and add a helper so we can actually
7963           debug this.
7964
7965 2004-05-18  David Schleef  <ds@schleef.org>
7966
7967         * testsuite/debug/commandline.c: (main): Call ./commandline, not
7968           argv[0].  Calling yourself is probably not the best way to
7969           construct a test like this, btw.
7970
7971 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7972
7973         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
7974           don't claim to be more intelligent than a scheduler when the
7975           scheduler claims the pipeline is stopped
7976         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
7977         (safe_cothread_destroy),
7978         (gst_entry_scheduler_remove_all_cothreads),
7979         (gst_entry_scheduler_reset), (_remove_cothread),
7980         (gst_entry_scheduler_state_transition):
7981           hold off cothread destruction if we're not in main cothread
7982         * configure.ac:
7983         * testsuite/Makefile.am:
7984           add new test dir
7985         * testsuite/schedulers/.cvsignore:
7986         * testsuite/schedulers/Makefile.am:
7987           add tests
7988         * testsuite/schedulers/relink.c: (cb_handoff), (main):
7989           check relinking and adding/removing elements from a running pipeline
7990         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
7991           check unlinking in a running pipeline
7992         * testsuite/schedulers/unref.c: (cb_handoff), (main):
7993           check unreffing a running pipeline
7994         * testsuite/schedulers/useless_iteration.c: (main):
7995           check iterating a pipeline that contains running threads works
7996
7997 2004-05-18  David Schleef  <ds@schleef.org>
7998
7999         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8000           is false.
8001
8002 2004-05-18  Wim Taymans  <wim@fluendo.com>
8003
8004         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8005         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8006         Fixed an error introduced with patch for 1.63. When setting
8007         a get based element as the entry point in a group, make sure
8008         to mark the group as GET based.
8009
8010 2004-05-18  Wim Taymans  <wim@fluendo.com>
8011
8012         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8013         (setup_group_scheduler), (loop_group_schedule_function),
8014         (gst_opt_scheduler_pad_link):
8015         Added some more debug info and fixed a bug where the group
8016         type was set to LOOP but it was in fact unknown.
8017
8018 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8019
8020         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8021           make resetting scheduler work twice in a row
8022
8023 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8024
8025         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8026         (CREATE_USERIALIZATION), (_gst_value_initialize),
8027         (gst_value_compare_float), (gst_value_serialize_float),
8028         (gst_value_deserialize_float), (gst_value_compare_enum),
8029         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8030           add serialization and comparison functions for long, int64, enum and
8031           float values
8032         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8033           use best serialization function in type hierarchy instead of only a
8034           matching one. This is required for enums to work.
8035         * gst/parse/grammar.y:
8036           use gst_caps_deserialize
8037         * testsuite/parse/Makefile.am:
8038           parse1 now works
8039         * testsuite/parse/parse1.c: (main):
8040           remove aggregator check, aggregator is broken, this test works now
8041           but fails because of bug #138012
8042         * testsuite/parse/parse2.c: (main):
8043           s/xvideosink/xvimagesink - this test looks a lot like we should
8044           disable it
8045
8046 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8047
8048         * gst/gstelement.c: (gst_element_class_init):
8049           whoops, store the signal id correctly
8050         * gst/schedulers/gstbasicscheduler.c:
8051         (gst_basic_scheduler_chain_wrapper):
8052           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8053           chain function isn't linked
8054
8055 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8056         * configure.ac:
8057         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8058         support until we decide where the flags should be used
8059         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8060         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8061         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8062         Output refused caps in the debug info
8063
8064 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8065
8066         * gst/elements/gstidentity.c: (gst_identity_chain):
8067           add duration debug
8068         * gst/gstinfo.c: (gst_debug_log_default):
8069           add timestamp
8070
8071 2004-05-13  Benjamin Otte  <otte@gnome.org>
8072
8073         * gst/gstpipeline.c: (gst_pipeline_dispose),
8074         (gst_pipeline_change_state):
8075           call gst_scheduler_reset on dispose (fixes #141416)
8076
8077 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8078
8079         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8080           compute mapsize correctly
8081         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8082           use correct datatypes when calling a varargs function
8083         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8084           push a DISCONT event as first thing
8085         * gst/gst_private.h:
8086         * gst/gstinfo.c: (_gst_debug_init):
8087           remove GST_DATAFLOW debugging category
8088         * gst/gstbin.c: (gst_bin_iterate):
8089           use GST_SCHEDULING category
8090         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8091         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8092         (gst_pad_call_get_function):
8093           add GST_DATAFLOW to easily track flow of buffers or events.
8094         * gst/gstqueue.c: (gst_queue_get_type),
8095         (gst_queue_handle_pending_events), (gst_queue_chain),
8096         (gst_queue_get), (gst_queue_handle_src_event):
8097           use own static debugging category GST_DATAFLOW for dataflow,
8098           use DEBUG category for showing which path events go, use LOG
8099           category for buffers.
8100
8101 2004-05-10  David Schleef  <ds@schleef.org>
8102
8103         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8104
8105 2004-05-10  David Schleef  <ds@schleef.org>
8106
8107         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8108         symbols, because otherwise we don't know what they are.  Thanks,
8109         the GStreamer team.
8110         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8111
8112 2004-05-10  David Schleef  <ds@schleef.org>
8113
8114         (from Steve Lhomme)
8115         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8116         are deleted.  Fix.
8117         * win32/Makefile.inspect:
8118         * win32/Makefile.launch:
8119         * win32/Makefile.register:
8120
8121 2004-05-10  David Schleef  <ds@schleef.org>
8122
8123         * gst/gstinfo.h: Add missing inline function.
8124         * gst/gsttrace.c: add include
8125         * gst/parse/grammar.y: remove unused code
8126         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8127         more portable.
8128         * tools/gst-register.c: wrap unistd.h
8129         
8130         More additions/fixes from Steve for the MSVC build.
8131         * win32/GStreamer.vcproj:
8132         * win32/Makefile:
8133         * win32/Makefile.inspect:
8134         * win32/Makefile.launch:
8135         * win32/Makefile.register:
8136         * win32/README.txt:
8137         * win32/gst-inspect.vcproj:
8138         * win32/gst-launch.vcproj:
8139         * win32/gst-register.vcproj:
8140         * win32/gstbytestream.def:
8141         * win32/gstbytestream.vcproj:
8142         * win32/gstconfig.h:
8143         * win32/gstelements.def:
8144         * win32/gstelements.vcproj:
8145         * win32/gstenumtypes.c:
8146         * win32/gstenumtypes.h:
8147         * win32/gstoptimalscheduler.def:
8148         * win32/gstoptimalscheduler.vcproj:
8149         * win32/gstreamer.def:
8150         * win32/gstspider.def:
8151         * win32/gstspider.vcproj:
8152         * win32/gstversion.h:
8153         * win32/msvc71.sln:
8154
8155 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8156
8157         * gst/gstelement.c: (gst_element_class_init),
8158         (gst_element_no_more_pads):
8159         * gst/gstelement.h:
8160           add gst_element_no_more_pads and the "no-more-pads" signal
8161
8162 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8163
8164         * gst/gstregistry.c: (gst_registry_add_plugin):
8165           refuse to add plugins when a plugin with same name is already
8166           registered. Fixes a bunch of "How to remove plugins?" issues.
8167           May lead to other problems though, let's test
8168
8169 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8170
8171         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8172         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8173         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8174
8175 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8176
8177         * tests/Makefile.am: fix am16 issue
8178
8179 2004-05-09  Benjamin Otte  <otte@gnome.org>
8180
8181         * libs/gst/bytestream/Makefile.am:
8182           we should indeed add .c files to makefiles or they won't be built
8183           (d'oh)
8184
8185 2004-05-08  Benjamin Otte  <otte@gnome.org>
8186
8187         * gst/gstpad.c: (gst_pad_proxy_fixate):
8188           really reduce the set of caps
8189
8190 2004-05-08  Benjamin Otte  <otte@gnome.org>
8191
8192         * tests/Makefile.am:
8193         * tests/spidey_bench.c: (handoff), (main):
8194           add benchmark to test how long spider needs to create a pipeline
8195
8196 2004-05-08  Benjamin Otte  <otte@gnome.org>
8197
8198         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8199           mark links as unengaged when unnegotiating instead of deactivating.
8200           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8201
8202 2004-05-08  Benjamin Otte  <otte@gnome.org>
8203
8204         * docs/manual/helloworld.xml:
8205           s/audiosink/osssink (patch by Patrick Guimond)
8206
8207 2004-05-07  David Schleef  <ds@schleef.org>
8208
8209         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8210         since it contains important stuff.
8211
8212 2004-05-07  David Schleef  <ds@schleef.org>
8213
8214         * testsuite/caps/caps.c: (test3), (main): A check for appending
8215         ANY caps.
8216
8217 2004-05-07  David Schleef  <ds@schleef.org>
8218
8219         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8220         which may contain commas.  Fixes detection of -Wa,-mregnames
8221
8222 2004-05-06  David Schleef  <ds@schleef.org>
8223
8224         Changes to handle compilers that don't have variadic macro
8225         support.  In particular, glib headers define some inlines
8226         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8227         builds.
8228         * gst/Makefile.am:
8229         * gst/cothreads.c:
8230         * gst/elements/gstfdsink.c:
8231         * gst/elements/gstfdsrc.c:
8232         * gst/elements/gstfilesink.c:
8233         * gst/elements/gstfilesrc.c:
8234         * gst/gst_private.h:
8235         * gst/gstatomic.c:
8236         * gst/gstcaps.c: (gst_caps_append):
8237         * gst/gstcpu.c: (gst_cpuid_i386):
8238         * gst/gstelement.c:
8239         * gst/gsterror.c:
8240         * gst/gstfilter.c:
8241         * gst/gstinfo.h:
8242         * gst/gstprobe.c:
8243         * gst/gstquery.c:
8244         * gst/gstregistry.c:
8245         * gst/gststructure.c:
8246         * gst/gsttaginterface.c:
8247         * gst/gsttrace.c: (gst_trace_new):
8248         * gst/gsttrashstack.c:
8249         * gst/gsturi.c:
8250         * gst/gstvalue.c:
8251         * gst/parse/grammar.y:
8252         * gst/parse/parse.l:
8253         * tools/gst-inspect.c: (main):
8254         * tools/gst-launch.c: (main):
8255         * tools/gst-xmlinspect.c: (PUT_STRING):
8256
8257 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8258
8259         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8260         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8261         * gst/elements/gstfilesrc.h:
8262           send NEW_MEDIA events correctly
8263         * gst/elements/gsttypefindelement.c: (start_typefinding),
8264         (gst_type_find_element_handle_event):
8265           restart typefinding when we get a NEW_MEDIA event
8266         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8267         (gst_bin_dispose):
8268           don't die when someone removes elements in callbacks
8269         * gst/gstelement.c: (gst_element_change_state):
8270           improve debugging
8271         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8272           we need a NEW_MEDIA event to engage a link
8273         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8274           don't g_print debugging stuff
8275         * testsuite/caps/simplify.c: (check_caps):
8276
8277 2004-05-04  Benjamin Otte  <otte@gnome.org>
8278
8279         * gst/parse/grammar.y:
8280           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8281
8282 2004-05-04  Benjamin Otte  <otte@gnome.org>
8283
8284         * testsuite/caps/renegotiate.c: (main):
8285           improve output in error case
8286
8287 2004-05-04  Benjamin Otte  <otte@gnome.org>
8288
8289         * gst/parse/grammar.y:
8290           fix assert to not trigger when there's no error argument
8291         * gst/parse/parse.l:
8292           fix definition of caps to allow more than two structures
8293         * testsuite/caps/Makefile.am:
8294         * testsuite/caps/renegotiate.c: (main):
8295           it's sinesrc and works in that case
8296
8297 2004-05-04  Wim Taymans  <wim@fluendo.com>
8298
8299         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8300         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8301         when removing an element from a group, we always need to
8302         decrement the link count that this group had with other 
8303         groups through the element.
8304         added an extra assert to catch inconsistencies when decrementing
8305         the link count.
8306
8307 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8308
8309         * configure.ac:
8310         * docs/gst/Makefile.am:
8311         * docs/gst/gstreamer-sections.txt:
8312         * docs/gst/tmpl/gstcompat.sgml:
8313         * examples/appreader/Makefile.am:
8314         * examples/cutter/Makefile.am:
8315         * examples/events/Makefile.am:
8316         * examples/helloworld/Makefile.am:
8317         * examples/helloworld2/Makefile.am:
8318         * examples/launch/Makefile.am:
8319         * examples/manual/Makefile.am:
8320         * examples/mixer/Makefile.am:
8321         * examples/pingpong/Makefile.am:
8322         * examples/plugins/Makefile.am:
8323         * examples/queue/Makefile.am:
8324         * examples/queue2/Makefile.am:
8325         * examples/queue3/Makefile.am:
8326         * examples/queue4/Makefile.am:
8327         * examples/retag/Makefile.am:
8328         * examples/thread/Makefile.am:
8329         * examples/typefind/Makefile.am:
8330         * examples/xml/Makefile.am:
8331         * gst/Makefile.am:
8332         * gst/autoplug/Makefile.am:
8333         * gst/elements/Makefile.am:
8334         * gst/gstcompat.h:
8335         * gst/indexers/Makefile.am:
8336         * gst/parse/Makefile.am:
8337         * gst/registries/Makefile.am:
8338         * gst/schedulers/Makefile.am:
8339         * libs/gst/bytestream/Makefile.am:
8340         * libs/gst/control/Makefile.am:
8341         * libs/gst/getbits/Makefile.am:
8342         * po/af.po:
8343         * po/az.po:
8344         * po/en_GB.po:
8345         * po/fr.po:
8346         * po/nl.po:
8347         * po/sr.po:
8348         * po/sv.po:
8349         * po/tr.po:
8350         * po/uk.po:
8351         * tests/Makefile.am:
8352         * tests/bufspeed/Makefile.am:
8353         * tests/instantiate/Makefile.am:
8354         * tests/memchunk/Makefile.am:
8355         * tests/muxing/Makefile.am:
8356         * tests/negotiation/Makefile.am:
8357         * tests/probes/Makefile.am:
8358         * tests/sched/Makefile.am:
8359         * tests/seeking/Makefile.am:
8360         * tests/threadstate/Makefile.am:
8361         * testsuite/caps/Makefile.am:
8362         * testsuite/cleanup/Makefile.am:
8363         * testsuite/dlopen/Makefile.am:
8364         * testsuite/dynparams/Makefile.am:
8365         * testsuite/plugin/Makefile.am:
8366         * testsuite/states/Makefile.am:
8367         * tools/Makefile.am:
8368           reorganize compile/link flags to be consistent
8369           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8370
8371 2004-05-04  David Schleef  <ds@schleef.org>
8372
8373         The "once more, with feeling" check-in.
8374         * testsuite/caps/Makefile.am: dist caps_strings
8375         * testsuite/caps/renegotiate.c: (main): This test triggers a
8376           segfault in the core.  Marking as failing.
8377
8378 2004-05-03  David Schleef  <ds@schleef.org>
8379
8380         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8381           by the build bots.
8382         * testsuite/caps/renegotiate.c: (main): Same.
8383
8384 2004-05-03  David Schleef  <ds@schleef.org>
8385
8386         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8387
8388 2004-05-03  David Schleef  <ds@schleef.org>
8389
8390         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8391           variable to find our source file.
8392
8393 2004-05-03  David Schleef  <ds@schleef.org>
8394
8395         * configure.ac:  Link plugins with libgstreamer and dependent
8396           libraries
8397         * testsuite/caps/Makefile.am:
8398         * testsuite/caps/caps_strings:
8399         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8400           through a file of caps strings and test each one
8401
8402 2004-05-04  Benjamin Otte  <otte@gnome.org>
8403
8404         * libs/gst/bytestream/Makefile.am:
8405         * libs/gst/bytestream/adapter.c: 
8406         * libs/gst/bytestream/adapter.h:
8407           add GstAdapter, similar to bytestream, but doesn't require ugly event
8408           handling or uglier loopbased elements
8409
8410 2004-05-03  David Schleef  <ds@schleef.org>
8411
8412         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8413         * testsuite/caps/erathostenes.c:
8414         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8415
8416 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8417
8418         * docs/pwg/pwg.xml:
8419           remove hardcoded stylesheet path (duh)
8420         * docs/random/release:
8421         * docs/gst/gstreamer-sections.txt:
8422         * gst/Makefile.am:
8423         * gst/gst.h:
8424         * gst/gst_private.h:
8425         * gst/gstcaps.c:
8426         * gst/gstevent.c:
8427         * gst/gstformat.c:
8428         * gst/gstinfo.c:
8429         * gst/gstinfo.h:
8430         * gst/gstinterface.c:
8431         * gst/gstmemchunk.c:
8432         * gst/gstprobe.c:
8433         * gst/gstquery.c:
8434         * gst/gstregistry.c:
8435         * gst/gstregistrypool.c:
8436         * gst/gststructure.c:
8437         * gst/gsttaginterface.c:
8438         * gst/gstthread.c:
8439         * gst/gsttrace.c:
8440         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8441         * gst/gsturi.c:
8442         * gst/gstvalue.c:
8443           deprecate gst_info; remove gstlog.h
8444    
8445
8446 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8447
8448         * Makefile.am:
8449         * po/en_GB.po:
8450         * po/sv.po:
8451         * po/uk.po:
8452           updated translations
8453
8454 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8455
8456         * gst/gstbin.c: (gst_bin_dispose):
8457           better debugging
8458
8459 2004-05-03  Johan Dahlin  <johan@gnome.org>
8460
8461         * gst/schedulers/gstoptimalscheduler.c
8462         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8463         really is a GstElement. Avoids critical when running gst-launch -v
8464         and a oggdemux/decoding pipeline.
8465
8466 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8467
8468         * docs/gst/tmpl/gstpipeline.sgml :
8469         * docs/manual/elements-api.xml :
8470                 doc fix by Patrick Guimond (Protector) from devel ML
8471                 reviewed by ronald
8472
8473 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8474
8475         * docs/gst/Makefile.am :
8476         * docs/libs/Makefile.am :
8477                 apply a patch from Arwed v. Merkatz so that gtk-doc
8478                 generated docs install (same for .devhelp file)
8479                 (fixes part 1 of #138836)
8480
8481 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8482
8483         * docs/faq/dependencies.xml: typo
8484         * docs/faq/getting.xml :
8485             - fix download URL for new gstreamer site
8486             - hide sf.net download page as latest version aren't there
8487             - fix apt URLs
8488             - fill "get via CVS" paragraph (link to dev page on the site)
8489         * docs/faq/general.xml:
8490             hide status tables as they no more exists
8491             change case on plugins license file to reflect reality
8492         * docs/faq/troubleshooting.xml:
8493             remove the wiki question/answer as there is no more wiki
8494
8495 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8496
8497         * gst/gsterror.h:
8498           include the headers needed for declarations used in this header
8499
8500 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8501
8502         * docs/random/uraeus/gstreamer_and_midi.txt :
8503           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8504           (fixes #132288)
8505
8506 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8507
8508         reviewed by Benjamin Otte  <otte@gnome.org>
8509
8510         * gst/schedulers/gthread-cothreads.h:
8511           free allocated data for main cothread, too when destroying context
8512           (fixes #141417)
8513
8514 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8515
8516         * docs/manual/goals.xml : remove duplicated paragraph at end 
8517         of doc page (fixes #141448)
8518
8519 2004-04-29  David Schleef  <ds@schleef.org>
8520
8521         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8522         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8523
8524 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8525
8526         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8527           fix property
8528         * gst/gstcaps.c:
8529           fix doc string
8530         * po/POTFILES.in:
8531           rename typefind source file
8532
8533 2004-04-28  David Schleef  <ds@schleef.org>
8534
8535         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8536         * win32/GStreamer.vcproj:
8537         * win32/Makefile:
8538         * win32/config.h:
8539         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8540         (_trewinddir), (_ttelldir), (_tseekdir):
8541         * win32/dirent.h:
8542         * win32/gst-inspect.vcproj:
8543         * win32/gst-launch.vcproj:
8544         * win32/gst-register.vcproj:
8545         * win32/gstbytestream.vcproj:
8546         * win32/gstelements.vcproj:
8547         * win32/gstoptimalscheduler.vcproj:
8548         * win32/gstspider.vcproj:
8549         * win32/gtchar.h:
8550         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8551         * win32/mman.h:
8552         * win32/mman.inl:
8553         * win32/msvc71.sln:
8554
8555 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8556
8557         * gst/gst.c: (init_post):
8558         * gst/gstinfo.c:
8559           remove useless _gst_progname stuff
8560         * tools/gst-inspect.c: (print_field), (print_caps):
8561           improve caps output
8562
8563 2004-04-28  David Schleef  <ds@schleef.org>
8564
8565         Disable parsing of a lot of files that aren't part of the
8566         exported API.  Move corresponding template files to old/,
8567         waiting for removal when they don't contain anything
8568         interesting.
8569         * docs/gst/Makefile.am:
8570         * docs/gst/gstreamer-sections.txt:
8571         * docs/gst/tmpl/cothreads.sgml:
8572         * docs/gst/tmpl/cothreads_compat.sgml:
8573         * docs/gst/tmpl/gettext.sgml:
8574         * docs/gst/tmpl/gobject2gtk.sgml:
8575         * docs/gst/tmpl/grammar.tab.sgml:
8576         * docs/gst/tmpl/gst-i18n-app.sgml:
8577         * docs/gst/tmpl/gst-i18n-lib.sgml:
8578         * docs/gst/tmpl/gst_private.sgml:
8579         * docs/gst/tmpl/gstaggregator.sgml:
8580         * docs/gst/tmpl/gstarch.sgml:
8581         * docs/gst/tmpl/gstatomic_impl.sgml:
8582         * docs/gst/tmpl/gstbufferstore.sgml:
8583         * docs/gst/tmpl/gstdata_private.sgml:
8584         * docs/gst/tmpl/gstdisksink.sgml:
8585         * docs/gst/tmpl/gstdisksrc.sgml:
8586         * docs/gst/tmpl/gstelementfactory.sgml:
8587         * docs/gst/tmpl/gstextratypes.sgml:
8588         * docs/gst/tmpl/gstfakesink.sgml:
8589         * docs/gst/tmpl/gstfakesrc.sgml:
8590         * docs/gst/tmpl/gstfdsink.sgml:
8591         * docs/gst/tmpl/gstfdsrc.sgml:
8592         * docs/gst/tmpl/gstfilesink.sgml:
8593         * docs/gst/tmpl/gstfilesrc.sgml:
8594         * docs/gst/tmpl/gsthttpsrc.sgml:
8595         * docs/gst/tmpl/gstidentity.sgml:
8596         * docs/gst/tmpl/gstindexfactory.sgml:
8597         * docs/gst/tmpl/gstmarshal.sgml:
8598         * docs/gst/tmpl/gstmd5sink.sgml:
8599         * docs/gst/tmpl/gstmultidisksrc.sgml:
8600         * docs/gst/tmpl/gstmultifilesrc.sgml:
8601         * docs/gst/tmpl/gstpadtemplate.sgml:
8602         * docs/gst/tmpl/gstpipefilter.sgml:
8603         * docs/gst/tmpl/gstschedulerfactory.sgml:
8604         * docs/gst/tmpl/gstsearchfuncs.sgml:
8605         * docs/gst/tmpl/gstshaper.sgml:
8606         * docs/gst/tmpl/gstspider.sgml:
8607         * docs/gst/tmpl/gstspideridentity.sgml:
8608         * docs/gst/tmpl/gststatistics.sgml:
8609         * docs/gst/tmpl/gsttee.sgml:
8610         * docs/gst/tmpl/gsttimecache.sgml:
8611         * docs/gst/tmpl/gsttypefind.sgml:
8612         * docs/gst/tmpl/gsttypefindfactory.sgml:
8613         * docs/gst/tmpl/gstxmlregistry.sgml:
8614         * docs/gst/tmpl/gthread-cothreads.sgml:
8615         * docs/gst/tmpl/old/cothreads.sgml:
8616         * docs/gst/tmpl/old/cothreads_compat.sgml:
8617         * docs/gst/tmpl/old/gettext.sgml:
8618         * docs/gst/tmpl/old/gobject2gtk.sgml:
8619         * docs/gst/tmpl/old/grammar.tab.sgml:
8620         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8621         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8622         * docs/gst/tmpl/old/gst_private.sgml:
8623         * docs/gst/tmpl/old/gstaggregator.sgml:
8624         * docs/gst/tmpl/old/gstarch.sgml:
8625         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8626         * docs/gst/tmpl/old/gstbufferstore.sgml:
8627         * docs/gst/tmpl/old/gstdata_private.sgml:
8628         * docs/gst/tmpl/old/gstdisksink.sgml:
8629         * docs/gst/tmpl/old/gstdisksrc.sgml:
8630         * docs/gst/tmpl/old/gstelementfactory.sgml:
8631         * docs/gst/tmpl/old/gstextratypes.sgml:
8632         * docs/gst/tmpl/old/gstfakesink.sgml:
8633         * docs/gst/tmpl/old/gstfakesrc.sgml:
8634         * docs/gst/tmpl/old/gstfdsink.sgml:
8635         * docs/gst/tmpl/old/gstfdsrc.sgml:
8636         * docs/gst/tmpl/old/gstfilesink.sgml:
8637         * docs/gst/tmpl/old/gstfilesrc.sgml:
8638         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8639         * docs/gst/tmpl/old/gstidentity.sgml:
8640         * docs/gst/tmpl/old/gstindexfactory.sgml:
8641         * docs/gst/tmpl/old/gstmarshal.sgml:
8642         * docs/gst/tmpl/old/gstmd5sink.sgml:
8643         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8644         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8645         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8646         * docs/gst/tmpl/old/gstpipefilter.sgml:
8647         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8648         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8649         * docs/gst/tmpl/old/gstshaper.sgml:
8650         * docs/gst/tmpl/old/gstspider.sgml:
8651         * docs/gst/tmpl/old/gstspideridentity.sgml:
8652         * docs/gst/tmpl/old/gststatistics.sgml:
8653         * docs/gst/tmpl/old/gsttee.sgml:
8654         * docs/gst/tmpl/old/gsttimecache.sgml:
8655         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8656         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8657         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8658         * docs/gst/tmpl/old/types.sgml:
8659         * docs/gst/tmpl/types.sgml:
8660
8661         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8662         gtkdoc-scan doesn't like files with the same name in different
8663         directories.
8664         * gst/elements/Makefile.am:
8665         * gst/elements/gstelements.c:
8666         * gst/elements/gsttypefind.c: 
8667         * gst/elements/gsttypefind.h:
8668         * gst/elements/gsttypefindelement.c:
8669         * gst/elements/gsttypefindelement.h:
8670
8671 2004-04-28  David Schleef  <ds@schleef.org>
8672
8673         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8674         patch (bug #141317):
8675         * gst/gst-i18n-lib.h: Allow disabling gettext.
8676         * gst/gstatomic_impl.h: disable warning when it's dumb.
8677         * gst/gstclock.c: fix include
8678         * gst/gstcompat.h: fix variadic macro
8679         * gst/gstinfo.c: fix include
8680         * gst/gstmacros.h: add defines for inlines on MSVC
8681         * gst/gstplugin.c: fix includes
8682         * gst/gstregistry.c: fix includes
8683         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
8684         * gst/gstsystemclock.c: fix include
8685         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
8686         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
8687         * gst/registries/gstxmlregistry.c:
8688         (gst_xml_registry_parse_element_factory): fix use of non-portable
8689         functions
8690         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
8691         * libs/gst/control/dparammanager.h: same
8692
8693 2004-04-28  David Schleef  <ds@schleef.org>
8694
8695         Move a bunch of unused files to old/ with names that are
8696         not case-insensitive-unique.  These files still contain some
8697         useful information that needs to be merged into gstbin.sgml,
8698         etc., so they shouldn't be deleted yet.
8699         * docs/gst/tmpl/GstBin.sgml:
8700         * docs/gst/tmpl/GstBuffer.sgml:
8701         * docs/gst/tmpl/GstCaps.sgml:
8702         * docs/gst/tmpl/GstClock.sgml:
8703         * docs/gst/tmpl/GstCompat.sgml:
8704         * docs/gst/tmpl/GstData.sgml:
8705         * docs/gst/tmpl/GstElement.sgml:
8706         * docs/gst/tmpl/GstEvent.sgml:
8707         * docs/gst/tmpl/GstIndex.sgml:
8708         * docs/gst/tmpl/GstStructure.sgml:
8709         * docs/gst/tmpl/GstTag.sgml:
8710         * docs/gst/tmpl/old/GstBin.sgml:
8711         * docs/gst/tmpl/old/GstBuffer.sgml:
8712         * docs/gst/tmpl/old/GstCaps.sgml:
8713         * docs/gst/tmpl/old/GstClock.sgml:
8714         * docs/gst/tmpl/old/GstCompat.sgml:
8715         * docs/gst/tmpl/old/GstData.sgml:
8716         * docs/gst/tmpl/old/GstElement.sgml:
8717         * docs/gst/tmpl/old/GstEvent.sgml:
8718         * docs/gst/tmpl/old/GstIndex.sgml:
8719         * docs/gst/tmpl/old/GstStructure.sgml:
8720         * docs/gst/tmpl/old/GstTag.sgml:
8721
8722 2004-04-28  David Schleef  <ds@schleef.org>
8723
8724         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
8725         (gst_caps_append), (gst_caps_append_structure),
8726         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
8727         (gst_caps_set_simple), (gst_caps_set_simple_valist),
8728         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
8729         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
8730         (gst_caps_intersect), (gst_caps_normalize),
8731         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
8732         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
8733         * gst/gstcaps.h: use GST_IS_CAPS().
8734
8735 2004-04-26  David Schleef  <ds@schleef.org>
8736
8737         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
8738         assembly.  gcc doesn't handle it correctly. (bug #141083)
8739         * gst/gsttrashstack.h: same
8740
8741 2004-04-25  Benjamin Otte  <otte@gnome.org>
8742
8743         * gst/gstelement.c: (gst_element_change_state):
8744           fix assertion to do an int comparison
8745
8746 2004-04-25  Benjamin Otte  <otte@gnome.org>
8747
8748         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8749           better debugging output on error
8750
8751 2004-04-25  Benjamin Otte  <otte@gnome.org>
8752
8753         * gst/gstcaps.c: (gst_caps_subtract):
8754           fix memleak
8755
8756 2004-04-23  Benjamin Otte  <otte@gnome.org>
8757
8758         * gst/gstvalue.c: (gst_value_compare_buffer),
8759         (_gst_value_initialize):
8760           add comparison function for buffers
8761
8762 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8763
8764         * docs/pwg/pwg.xml:
8765           Just found out that this so-called "ima-wav" format is really
8766           just "dvi adpcm" (according to the MS WAV documentation). So
8767           renaming it. We didn't use it yet anyway.
8768
8769 2004-04-23  Benjamin Otte  <otte@gnome.org>
8770
8771         * gst/gstcaps.c: (gst_caps_is_always_compatible):
8772           call gst_caps_is_subset
8773
8774 2004-04-23  Benjamin Otte  <otte@gnome.org>
8775
8776         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
8777         (gst_caps_is_subset):
8778           add documentation
8779
8780 2004-04-23  Benjamin Otte  <otte@gnome.org>
8781           
8782         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
8783         (gst_caps_structure_subtract), (gst_caps_subtract),
8784         (gst_caps_structure_figure_out_union),
8785         (gst_caps_structure_simplify), (gst_caps_do_simplify):
8786           fix simplifying and subtracting not working correctly with optional
8787           properties
8788           solve assorted problems that make it now simplify ebven more
8789         * docs/gst/tmpl/gstcaps.sgml:
8790         * gst/gstcaps.h:
8791           make gst_caps_do_simplify return a bool to indicate if it simplified
8792         * testsuite/caps/simplify.c: (main):
8793           add more checks. The tests is quite a bit useless right now because
8794           the core is heavily simplifying itself.
8795         * testsuite/caps/caps.h:
8796           fix caps to contain all optional properties
8797
8798 2004-04-22  Benjamin Otte  <otte@gnome.org>
8799
8800         * docs/gst/tmpl/gstcaps.sgml:
8801         * docs/gst/tmpl/gstfilesrc.sgml:
8802         * docs/gst/tmpl/gststructure.sgml:
8803         * docs/gst/tmpl/gstvalue.sgml:
8804           update for recent API changes
8805         * gst/gstcaps.c: (gst_caps_do_simplify):
8806           fix to stop trying with a freed structure
8807         * gst/gstpad.c: (gst_pad_link_fixate):
8808           simplify caps
8809         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
8810           remove C++ comment
8811         * gst/gstpad.h:
8812           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
8813         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8814         (gst_structure_to_string):
8815           keep the correct type when using lists of ranges
8816         * gst/gstvalue.c: (gst_value_list_prepend_value),
8817         (gst_value_list_append_value):
8818           copy the value before adding to the list (d'oh)
8819         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
8820         (gst_value_subtract_int_range_int_range):
8821           handle overflows correctly
8822         * gst/gstvalue.c: (gst_value_subtract_from_list):
8823           fix memleak
8824         * testsuite/caps/caps.h:
8825           add a caps that caused segfaults
8826
8827 2004-04-22  Benjamin Otte  <otte@gnome.org>
8828
8829         * testsuite/refcounting/pad.c: (main):
8830           fix test
8831
8832 2004-04-22  Benjamin Otte  <otte@gnome.org>
8833
8834         * gst/gstcaps.c: (gst_caps_subtract):
8835           allow subtracting ANY and EMPTY from ANY caps
8836
8837 2004-04-22  Benjamin Otte  <otte@gnome.org>
8838
8839         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
8840         (gst_caps_union):
8841           only simplify in functions that create new caps. Simplifying in
8842           gst_caps_append breaks tests.
8843
8844 2004-04-22  Benjamin Otte  <otte@gnome.org>
8845
8846         * gst/gstcaps.c: (gst_caps_structure_simplify):
8847           unset GValue after use
8848         * gst/gstcaps.c: (gst_caps_append), 
8849         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
8850           use gst_caps_simplify (reduces registry size by 30%)
8851         * gst/gstpad.c: (gst_pad_template_new):
8852           don't allow NULL caps
8853
8854 2004-04-22  Benjamin Otte  <otte@gnome.org>
8855
8856         * docs/gst/gstreamer-sections.txt:
8857           add gst_caps_do_simplify
8858         * gst/gstcaps.c:
8859           add documentation for gst_caps_do_simplify
8860         * gst/gstvalue.h:
8861           fix typo in gst_value_register_subtract_func declaration for gst-doc
8862
8863 2004-04-22  Benjamin Otte  <otte@gnome.org>
8864
8865         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8866           fix bug when converting from empty string.
8867         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
8868         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
8869           use gst_caps_new_empty to allocate a new caps. Only that function
8870           allocates memory for caps now.
8871         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
8872         (gst_caps_remove_structure):
8873           add ability to remove one structure (but not to header yet)
8874         * gst/gstcaps.c: (gst_caps_compare_structures),
8875         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
8876         (gst_caps_structure_simplify), (gst_caps_do_simplify),
8877         * gst/gstcaps.h:
8878           add gst_caps_do_simplify that tries to simplify a caps in place.
8879           Deprecate old gst_caps_simplify function.
8880         * testsuite/caps/caps.h:
8881           add caps.h containing a common set of caps to test against.
8882         * testsuite/caps/sets.c: (check_caps), (main):
8883           use it.
8884         * testsuite/caps/.cvsignore:
8885         * testsuite/caps/Makefile.am:
8886         * testsuite/caps/simplify.c: (check_caps), (main):
8887           add test to check correctness and efficency of caps simplification.
8888
8889 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
8890
8891         reviewed by Benjamin Otte  <otte@gnome.org>
8892
8893         * gst/gstparse.c: (_gst_parse_escape):
8894           Free the GString used in _gst_parse_escape()
8895
8896 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8897
8898         * gst/gstpad.c: (gst_pad_link_negotiate):
8899           refuse to link if the link is not possible
8900         * configure.ac:
8901         * testsuite/Makefile.am:
8902         * testsuite/negotiation/.cvsignore:
8903         * testsuite/negotiation/Makefile.am:
8904         * testsuite/negotiation/pad_link.c: (main):
8905           add test that checks the above behaviour
8906
8907 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8908
8909         * docs/gst/gstreamer-sections.txt:
8910           add newly added API
8911
8912 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8913
8914         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8915         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
8916         (gst_filesrc_open_file), (gst_filesrc_close_file),
8917         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
8918         * gst/elements/gstfilesrc.h:
8919           add support for non-regular files (#140734)
8920
8921 2004-04-21  Benjamin Otte  <otte@gnome.org>
8922
8923         * gst/gstpad.c: (gst_pad_link_fixate):
8924           add sophisticated error checking code to see if fixation functions
8925           did their fixation right
8926
8927 2004-04-21  Benjamin Otte  <otte@gnome.org>
8928
8929         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
8930           check for ANY caps before appending/unioning
8931         * gst/gstcaps.c: (gst_caps_is_subset),
8932         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
8933         (gst_caps_structure_subtract), (gst_caps_subtract):
8934         * gst/gstcaps.h:
8935           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
8936           the API. deprecate gst_caps_is_equal_fixed
8937         * gst/gstpad.c: (gst_pad_try_set_caps):
8938         * gst/gstqueue.c: (gst_queue_link):
8939           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
8940         * gst/gststructure.c: (gst_structure_get_name_id):
8941         * gst/gststructure.h:
8942           add function gst_structure_get_name_id
8943         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
8944         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
8945         (gst_value_subtract_int_range_int_range),
8946         (gst_value_subtract_double_double_range),
8947         (gst_value_subtract_double_range_double),
8948         (gst_value_subtract_double_range_double_range),
8949         (gst_value_subtract_from_list), (gst_value_subtract_list),
8950         (gst_value_can_intersect), (gst_value_subtract),
8951         (gst_value_can_subtract), (gst_value_register_subtract_func),
8952         (_gst_value_initialize):
8953         * gst/gstvalue.h:
8954           add support for subtracting values from each other. Note that
8955           subtracting means subtracting as in set theory. Required for caps
8956           stuff above.
8957         * testsuite/caps/.cvsignore:
8958         * testsuite/caps/Makefile.am:
8959         * testsuite/caps/erathostenes.c: (erathostenes), (main):
8960         * testsuite/caps/sets.c: (check_caps), (main):
8961         * testsuite/caps/subtract.c: (check_caps), (main):
8962           add tests for subtraction and equality code.
8963
8964 2004-04-20  David Schleef  <ds@schleef.org>
8965
8966         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
8967         * gst/indexers/Makefile.am:
8968         * gst/schedulers/Makefile.am:
8969         * libs/gst/bytestream/Makefile.am:
8970         * libs/gst/control/Makefile.am:
8971         * libs/gst/getbits/Makefile.am:
8972
8973 2004-04-20  David Schleef  <ds@schleef.org>
8974
8975         * common/as-libtool.mak: Fine-tune DLL building.
8976         * configure.ac: Link plugins against libgstreamer.  Define plugindir
8977         (like gst-plugins)
8978         * examples/plugins/Makefile.am: remove plugindir
8979         * gst/autoplug/Makefile.am: DLL building fixes
8980         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
8981         Windows.
8982         * gst/elements/gstelements.c: Conditionally disable pipefilter.
8983         * gst/indexers/Makefile.am: DLL building fixes
8984         * gst/schedulers/Makefile.am: DLL building fixes.
8985         * libs/gst/bytestream/Makefile.am: DLL building fixes.
8986         * libs/gst/control/Makefile.am: same
8987         * libs/gst/getbits/Makefile.am: same
8988         * testsuite/Makefile.am: New dlopen directory
8989         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
8990         when dlopened.
8991         * testsuite/dlopen/dlopen_gst.c: (main): same
8992         * testsuite/dlopen/loadgst.c: (do_test): same
8993
8994 2004-04-20  David Schleef  <ds@schleef.org>
8995
8996         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
8997         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
8998
8999 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9000
9001         * gst/gstelement.c: (gst_element_wait),
9002         (gst_element_set_time_delay), (gst_element_change_state):
9003           Use GST_TIME_*
9004
9005 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9006
9007         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9008         (gst_spider_identity_plug):
9009           improve debugging messages
9010         * gst/gstbin.c: (gst_bin_remove_func):
9011           make sure the state_change function is only called with simple state
9012           transitions
9013
9014 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9015
9016         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9017         (gst_fakesink_set_property), (gst_fakesink_chain):
9018         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9019         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9020         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9021         * gst/elements/gstidentity.c: (gst_identity_chain),
9022         (gst_identity_set_property):
9023         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9024         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9025           add warnings to _set_property for unknown arguments
9026           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9027
9028 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9029
9030         * Makefile.am:
9031         * docs/manuals.mak:
9032           add .po file download snippet
9033           fix a bug in the doc makefile
9034
9035 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9036
9037         * Makefile.am:
9038         * po/LINGUAS:
9039         * po/en_GB.po:
9040           Added en_GB translation (Gareth Owen)
9041
9042 2004-04-20  Johan Dahlin  <johan@gnome.org>
9043
9044         * gst/gstpad.c (_invent_event): Clean up
9045
9046 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9047
9048         * testsuite/caps/filtercaps.c: (main):
9049           fix test to test things correctly (caps are complicated)
9050
9051 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9052
9053         * testsuite/caps/Makefile.am:
9054         * testsuite/caps/filtercaps.c: (main):
9055           add test (that doesn't work right now, but should)
9056
9057 2004-04-19  David Schleef  <ds@schleef.org>
9058
9059         * configure.ac: Add test for allowing unaligned access.  Add define
9060         to put in gstconfig.h.
9061         * docs/gst/gstreamer-sections.txt: New symbols
9062         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9063         * docs/gst/tmpl/gstfilesrc.sgml:
9064         * docs/gst/tmpl/gstparse.sgml:
9065         * docs/gst/tmpl/gsttypes.sgml:
9066         * docs/gst/tmpl/gstutils.sgml:
9067         * docs/gst/tmpl/gstvalue.sgml:
9068         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9069         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9070         on most !i386/!powerpc architectures.  From Daniel Gazard
9071         <daniel.gazard@free.fr>.  (bug #140156)
9072         * po/af.po: Check in changes made by gettext.
9073         * po/az.po:
9074         * po/fr.po:
9075         * po/nl.po:
9076         * po/sr.po:
9077         * po/sv.po:
9078
9079 2004-04-20  Benjamin Otte  <otte@gnome.org>
9080
9081         * gst/schedulers/entryscheduler.c: 
9082         (gst_entry_scheduler_yield):
9083           refuse to yield when decoupled elements insist on doing that.
9084           At least it's better than crashing
9085
9086 2004-04-19  David Schleef  <ds@schleef.org>
9087
9088         * docs/libs/Makefile.am: Change sinclude to include
9089         * docs/gst/Makefile.am: same
9090         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9091
9092 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9093
9094         * po/LINGUAS:
9095         * po/uk.po:
9096           Added Ukrainian translation (Maxim V. Dziumanenko)
9097
9098 2004-04-19  Johan Dahlin  <johan@gnome.org>
9099
9100         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9101         checking here, do it before calling the function.
9102         Clean up, use for loops instead of while loops while iterating
9103         over lists.
9104
9105         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9106         in debug message.
9107         (gst_spider_create_and_plug): Improve debug message.
9108         General: Replace while loops which iterates over GLists with for
9109         loops. Which are much cleaner, improves readability, especially
9110         for gst_spider_identity_plug
9111
9112         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9113         fixes bug 140477
9114
9115 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9116
9117         * po/LINGUAS:
9118         * po/tr.po:
9119           Added Turkish translation (Baris Cicek)
9120
9121 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9122
9123         * docs/faq/troubleshooting.xml:
9124           Mention gst-register in the FAQ (fixes 139045).
9125
9126 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9127
9128         * docs/gst/gstreamer-sections.txt:
9129
9130 2004-04-17  Benjamin Otte  <otte@gnome.org>
9131
9132         * gst/gstelement.c: (gst_element_dispose):
9133           simplify
9134         * gst/gstpad.c: (gst_pad_call_chain_function):
9135           don't create loads of events due to bad macro usage
9136
9137 2004-04-16  David Schleef  <ds@schleef.org>
9138
9139         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9140         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9141         * gst/gstvalue.c: (gst_value_serialize_buffer),
9142         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9143         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9144         to indicate types that are fixed wrt caps or not.  Switching to
9145         this function fixes (bug #140298).
9146         * gst/gstvalue.h:
9147
9148 2004-04-16  David Schleef  <ds@schleef.org>
9149
9150         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9151         for GST_UNALIGNED_ACESS, since we essentially know which archs
9152         are ok.
9153
9154 2004-04-17  Benjamin Otte  <otte@gnome.org>
9155
9156         * docs/gst/Makefile.am:
9157           ignore gst/parse directory when building docs (fixes #140205)
9158
9159 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9160
9161         * testsuite/refcounting/mem.c: (vmsize):
9162           do error checking
9163
9164 2004-04-16  Johan Dahlin  <johan@gnome.org>
9165
9166         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9167         and gst_pad_call_get_function.
9168
9169 2004-04-15  David Schleef  <ds@schleef.org>
9170
9171         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9172         checks if we can access unaligned memory.
9173         * configure.ac: Use it.
9174
9175 2004-04-16  Benjamin Otte  <otte@gnome.org>
9176
9177         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9178         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9179         * gst/elements/gstfilesrc.h:
9180           s/seek_happened/need_discont/ and require discont before sending any
9181           data
9182
9183 2004-04-15  David Schleef  <ds@schleef.org>
9184
9185         * gst/gstvalue.c: (gst_value_serialize_buffer),
9186         (gst_value_deserialize_buffer), (_gst_value_initialize):
9187         Register these types as fundamental types. (bug #140015)
9188
9189 2004-04-16  Benjamin Otte  <otte@gnome.org>
9190
9191         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9192         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9193         (gst_pad_pull):
9194           implement enforcing discont events before buffers are passed. This
9195           allows state changes of only some elements and later correctly going
9196           on where they left off (or in short: you can now set audio sinks to
9197           NULL to release the device when the pipeline is paused)
9198         * gst/gstpad.c: (gst_pad_call_chain_function),
9199         (gst_pad_call_get_function):
9200         * gst/gstpad.h:
9201           add gst_pad_call_chain_function and gst_pad_call_get_function for
9202           scheduler interaction. They are required because of the changes
9203           above.
9204         * gst/schedulers/entryscheduler.c: (get_buffer),
9205         (gst_entry_scheduler_chain_wrapper),
9206         (gst_entry_scheduler_get_wrapper),
9207         (gst_entry_scheduler_state_transition),
9208         (gst_entry_scheduler_pad_link):
9209         * gst/schedulers/gstbasicscheduler.c:
9210         (gst_basic_scheduler_chain_wrapper),
9211         (gst_basic_scheduler_src_wrapper),
9212         (gst_basic_scheduler_chainhandler_proxy),
9213         (gst_basic_scheduler_gethandler_proxy),
9214         (gst_basic_scheduler_cothreaded_chain),
9215         (gst_basic_scheduler_chain_elements):
9216         * gst/schedulers/gstoptimalscheduler.c:
9217         (get_group_schedule_function), (pad_clear_queued),
9218         (gst_opt_scheduler_pad_link):
9219           use the new functions instead of calling get/chain-functions
9220           directly.
9221
9222 2004-04-15  David Schleef  <ds@schleef.org>
9223
9224         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9225         * docs/gst/tmpl/gstinfo.sgml: same
9226         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9227         gtk-doc put here.
9228         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9229         * examples/queue/queue.c: (main):  We iterate pipelines, not
9230         bins.  (bug #139996)
9231
9232 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9233
9234         * docs/pwg/advanced-types.xml:
9235           Add MS RLE support. Also document Qt RLE although I have no sample
9236           files for that yet. And document an extra property for ADPCM.
9237
9238 2004-04-15  David Schleef  <ds@schleef.org>
9239
9240         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9241         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9242         Windows.
9243
9244 2004-04-15  David Schleef  <ds@schleef.org>
9245
9246         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9247         symbol names to not conflict with new gstinfo.h symbols.
9248         * gst/gstinfo.h: Add inline functions for all those crazy
9249         compilers that don't know how to handle variadic macros (MSVC).
9250
9251 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9252
9253         * configure.ac: bump nano to 1
9254
9255 === release 0.8.1 ===
9256
9257 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9258
9259         * NEWS:
9260         * RELEASE:
9261         * configure.ac:
9262           releasing 0.8.1, "Snow Brigade"
9263
9264 2004-04-14  David Schleef  <ds@schleef.org>
9265
9266         * testsuite/Makefile.am: define tests_ignore
9267         * testsuite/Rules: Added new tests_ignore, which get compiled,
9268         but not run (generally because they're inconsistent or have
9269         heisenbugs).  Now we can ensure all the .c files compile in
9270         testsuite/.
9271         * testsuite/bins/Makefile.am: define tests_ignore
9272         * testsuite/bytestream/Makefile.am:
9273         * testsuite/caps/Makefile.am:
9274         * testsuite/clock/Makefile.am:
9275         * testsuite/debug/Makefile.am:
9276         * testsuite/debug/global.c: (gst_debug_log_one),
9277         (gst_debug_log_two): Fix compilation problem.
9278         * testsuite/dynparams/Makefile.am:
9279         * testsuite/elements/Makefile.am:
9280         * testsuite/ghostpads/Makefile.am:
9281         * testsuite/indexers/Makefile.am:
9282         * testsuite/parse/Makefile.am:
9283         * testsuite/plugin/Makefile.am:
9284         * testsuite/refcounting/Makefile.am:
9285         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9286         results, because it's not calculated correctly.
9287         * testsuite/refcounting/pad.c: (main): same
9288         * testsuite/states/Makefile.am:
9289         * testsuite/tags/Makefile.am:
9290         * testsuite/threads/Makefile.am:
9291
9292 2004-04-14  David Schleef  <ds@schleef.org>
9293
9294         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9295         generating bad code around the cpu detection asm code.
9296
9297 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9298
9299         * tools/gst-inspect.c: (print_element_info):
9300           print numeric version of rank as well, since we added some - 1
9301           rank values to elements
9302
9303 2004-04-13  David Schleef  <ds@schleef.org>
9304
9305         * configure.ac:  Disable various code when compiling for MinGW.
9306         * gst/elements/Makefile.am:
9307         * gst/elements/gstelements.c:
9308         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9309         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9310         * gst/registries/gstxmlregistry.c: (make_dir):
9311
9312 2004-04-13  David Schleef  <ds@schleef.org>
9313
9314         * gst/Makefile.am:
9315         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9316         assembly.
9317         * gst/gstcpuid_i386.s: remove
9318
9319 2004-04-13  David Schleef  <ds@schleef.org>
9320
9321         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9322         seems to think it needs to be done.
9323         * docs/gst/tmpl/gstfakesink.sgml:
9324         * docs/gst/tmpl/gstfakesrc.sgml:
9325         * docs/gst/tmpl/gstfdsink.sgml:
9326         * docs/gst/tmpl/gstfdsrc.sgml:
9327         * docs/gst/tmpl/gstfilesink.sgml:
9328         * docs/gst/tmpl/gstfilesrc.sgml:
9329         * docs/gst/tmpl/gstidentity.sgml:
9330         * docs/gst/tmpl/gstmd5sink.sgml:
9331         * docs/gst/tmpl/gstmultifilesrc.sgml:
9332         * docs/gst/tmpl/gstpipefilter.sgml:
9333         * docs/gst/tmpl/gstshaper.sgml:
9334         * docs/gst/tmpl/gstspider.sgml:
9335         * docs/gst/tmpl/gstspideridentity.sgml:
9336         * docs/gst/tmpl/gststatistics.sgml:
9337         * docs/gst/tmpl/gsttee.sgml:
9338         * docs/gst/tmpl/gsttypefind.sgml:
9339         * docs/gst/tmpl/gstutils.sgml:
9340
9341 2004-04-13  David Schleef  <ds@schleef.org>
9342
9343         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9344         and to build DLLs on Windows.
9345         * gst/Makefile.am:
9346         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9347         (gst_filesrc_open_file):
9348         * gst/schedulers/Makefile.am:
9349
9350 2004-04-13  David Schleef  <ds@schleef.org>
9351
9352         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9353         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9354         fixating lists.
9355
9356 2004-04-12  David Schleef  <ds@schleef.org>
9357
9358         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9359         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9360         to using it.
9361         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9362         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9363         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9364         * gst/gststructure.c: (gst_structure_set_valist),
9365         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9366         support for buffers.
9367         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9368         intended to be const.
9369         * gst/gsttag.h: same
9370         * gst/gstvalue.c: (gst_value_serialize_buffer),
9371         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9372         to (de)serialize buffers.
9373         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9374         * testsuite/caps/string-conversions.c: (main):
9375         * testsuite/caps/value_serialize.c: add new test
9376
9377 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9378
9379         * docs/pwg/advanced-types.xml:
9380           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9381
9382 2004-04-11  Benjamin Otte  <otte@gnome.org>
9383
9384         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9385           rename categories to basic_*
9386         * gst/schedulers/gstbasicscheduler.c: 
9387         (gst_basic_scheduler_chain_wrapper),
9388         (gst_basic_scheduler_chainhandler_proxy),
9389         (gst_basic_scheduler_gethandler_proxy),
9390         (gst_basic_scheduler_eventhandler_proxy):
9391           debugging category fixes - put common stuff in log category
9392         * gst/schedulers/gstbasicscheduler.c: 
9393         (gst_basic_scheduler_chain_elements):
9394           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9395           active and linking two active chains
9396
9397 2004-04-10  Benjamin Otte  <otte@gnome.org>
9398
9399         * docs/pwg/intro-preface.xml:
9400           fix dead links and remove reference to Wiki
9401
9402 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9403
9404         * gst/schedulers/gstbasicscheduler.c:
9405           make sure we can switch back to the main function if we're still in
9406           the main function (supposed to fix #139617)
9407         * gst/schedulers/gthread-cothreads.h:
9408           don't throw an error when switching to the same cothread
9409
9410 2004-04-09  Benjamin Otte  <otte@gnome.org>
9411
9412         * gst/gstbin.c: (gst_bin_get_type):
9413         * gst/gstclock.c: (gst_clock_get_type):
9414         * gst/gstindex.c: (gst_index_get_type):
9415         * gst/gstobject.c: (gst_object_get_type),
9416         (gst_signal_object_get_type):
9417         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9418         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9419         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9420         * gst/gstqueue.c: (gst_queue_get_type):
9421         * gst/gstregistry.c: (gst_registry_get_type):
9422         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9423         * gst/gstthread.c: (gst_thread_get_type):
9424           don't use memchunks for these objects, use malloc instead
9425
9426 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9427
9428         * docs/gst/.cvsignore:
9429         * docs/gst/Makefile.am:
9430         * docs/gst/gstreamer-sections.txt:
9431         * docs/gst/tmpl/gstaggregator.sgml:
9432         * docs/gst/tmpl/gstbuffer.sgml:
9433         * docs/gst/tmpl/gstclock.sgml:
9434         * docs/gst/tmpl/gstelement.sgml:
9435         * docs/gst/tmpl/gstfakesink.sgml:
9436         * docs/gst/tmpl/gstfakesrc.sgml:
9437         * docs/gst/tmpl/gstfdsink.sgml:
9438         * docs/gst/tmpl/gstfdsrc.sgml:
9439         * docs/gst/tmpl/gstfilesink.sgml:
9440         * docs/gst/tmpl/gstfilesrc.sgml:
9441         * docs/gst/tmpl/gstidentity.sgml:
9442         * docs/gst/tmpl/gstindex.sgml:
9443         * docs/gst/tmpl/gstinfo.sgml:
9444         * docs/gst/tmpl/gstmd5sink.sgml:
9445         * docs/gst/tmpl/gstmultifilesrc.sgml:
9446         * docs/gst/tmpl/gstpad.sgml:
9447         * docs/gst/tmpl/gstpipefilter.sgml:
9448         * docs/gst/tmpl/gstpipeline.sgml:
9449         * docs/gst/tmpl/gstpluginfeature.sgml:
9450         * docs/gst/tmpl/gstqueue.sgml:
9451         * docs/gst/tmpl/gstregistry.sgml:
9452         * docs/gst/tmpl/gstscheduler.sgml:
9453         * docs/gst/tmpl/gstshaper.sgml:
9454         * docs/gst/tmpl/gstspider.sgml:
9455         * docs/gst/tmpl/gstspideridentity.sgml:
9456         * docs/gst/tmpl/gststatistics.sgml:
9457         * docs/gst/tmpl/gstsystemclock.sgml:
9458         * docs/gst/tmpl/gsttee.sgml:
9459         * docs/gst/tmpl/gstthread.sgml:
9460         * docs/gst/tmpl/gsttypefind.sgml:
9461         * docs/gst/tmpl/gstutils.sgml:
9462           further doc build fixes
9463
9464 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9465
9466         * docs/gst/Makefile.am:
9467           make docs exit on scanning problems
9468           fix nonsrcdir build issues
9469         * docs/gst/gstreamer-sections.txt:
9470           adding stuff from -unused
9471         * gst/gstqueue.h:
9472           create GstQueueSize
9473         * gst/schedulers/cothreads_compat.h:
9474           fix cothread warnings
9475
9476 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9477
9478         * docs/gst/gstreamer-sections.txt:
9479           remove defines deprecated by Benjamin
9480
9481 2004-04-07  Benjamin Otte  <otte@gnome.org>
9482
9483         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9484           when the buffer is complete, don't check if other buffers are needed
9485         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9486           check that the offset is >0 so we don't try to read before the
9487           beginning of the file
9488         * gst/gstpad.c: (gst_pad_set_pad_template):
9489           sink the template, so we don't end up with 130k pad templates
9490
9491 2004-04-06  Benjamin Otte  <otte@gnome.org>
9492
9493         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9494           don't ref the element, adding already reffed it. And we didn't unref
9495           it later anyway... (huge memleak when you used many spider elements)
9496         * gst/gstelement.c: (gst_element_base_class_finalize):
9497         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9498         (gst_element_register):
9499         * gst/gsturi.c: (gst_element_make_from_uri):
9500           use gst_object_(un)ref instead of g_object(un)ref
9501
9502 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9503
9504         * gst/gstbuffer.h:
9505           remove macro that wouldn't work anymore because struct member has
9506           been removed.
9507         * gst/schedulers/entryscheduler.c: (schedule_forward):
9508           fix segfault for unconnected pads
9509         
9510 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9511
9512         reviewed by David Schleef <ds@schleef.org>
9513
9514         * gst/gstinfo.h:
9515           *_FORMAT modifiers should require putting a % in front of them for
9516           consistency reasons.
9517
9518 2004-04-05  Colin Walters  <walters@redhat.com>
9519
9520         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9521         space.
9522
9523 2004-04-05  Benjamin Otte  <otte@gnome.org>
9524
9525         * configure.ac:
9526         * gst/Makefile.am:
9527         * gst/gst_private.h:
9528         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9529           add support for detecting if GStreamer runs inside valgrind.
9530           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9531           print a big message in valgrind that GStreamer has detected it's
9532           running inside and might now use different code.
9533         * gst/gstmemchunk.c: (populate), (free_area),
9534         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9535         (gst_mem_chunk_free):
9536           flag memchunks for valgrind, so it can detect leaking of chunks.
9537           This allows detecting leaks of GstBuffer and GstEvent correctly
9538           inside valgrind.
9539
9540 2004-04-05  David Schleef  <ds@schleef.org>
9541
9542         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9543           jensgr@gmx.net (Jens Granseuer)
9544
9545 2004-04-05  David Schleef  <ds@schleef.org>
9546
9547         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9548         (gst_buffer_default_free), (gst_buffer_default_copy),
9549         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9550         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9551         structures in one place.
9552
9553 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9554
9555         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9556           (GST_TIME_FORMAT, GST_TIME_ARGS)
9557
9558 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9559
9560         * testsuite/elements/Makefile.am:
9561           disable test until it stops breaking make distcheck
9562
9563 2004-04-05  Johan Dahlin  <johan@gnome.org>
9564
9565         * po/sv.po: Updated translation
9566
9567 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9568
9569         * gst/gstplugin.c: (gst_plugin_load_file):
9570           fix segfault for when original plugin was loaded statically
9571
9572 2004-04-05  Benjamin Otte  <otte@gnome.org>
9573
9574         * testsuite/debug/category.c: (main):
9575         * testsuite/debug/commandline.c: (main):
9576         * testsuite/debug/output.c: (main):
9577           fix tests to work again with debugging enabled
9578
9579 2004-04-05  Benjamin Otte  <otte@gnome.org>
9580
9581         * gst/schedulers/gstbasicscheduler.c:
9582         (gst_basic_scheduler_pad_link):
9583           fix to work with recent scheduling changes
9584
9585 2004-04-05  Benjamin Otte  <otte@gnome.org>
9586
9587         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9588         prepareChangeLog doesn't work when cvs indents):
9589           don't throw an error when no element can be scheduled, there's too
9590           many weird reasons why it doesn't work. Return STOPPED instead.
9591           decoupled elemts' schedulability doesn't depend on bufpens.
9592
9593 2004-04-04  Benjamin Otte  <otte@gnome.org>
9594
9595         * gst/schedulers/gstbasicscheduler.c:
9596         (gst_basic_scheduler_pad_select):
9597           fix uninitialized variable warnings
9598
9599 2004-04-04  Benjamin Otte  <otte@gnome.org>
9600
9601         * gst/gstpad.c: (gst_pad_collect_valist):
9602           fix uninitialized variable warning
9603         * gst/schedulers/entryscheduler.c: (schedule_forward):
9604           fix shadowed variable
9605
9606 2004-04-04  Benjamin Otte  <otte@gnome.org>
9607
9608         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9609         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9610         (gst_pad_select):
9611         * gst/gstpad.h:
9612         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9613         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9614         * gst/gstscheduler.h:
9615           implement gst_pad_collect as replacement for gst_pad_select.
9616           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9617           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9618           new pad_select, lock and unlock calls.
9619         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9620         * gst/cothreads.h:
9621         * gst/schedulers/cothreads_compat.h:
9622         * gst/schedulers/gthread-cothreads.h:
9623           remove unused cothread_lock and cothread_unlock calls
9624         * gst/schedulers/entryscheduler.c:
9625         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9626         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9627         (gst_entry_scheduler_pad_select):
9628           update to new API
9629         * gst/schedulers/gstbasicscheduler.c:
9630         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9631         (gst_basic_scheduler_pad_select):
9632           remove useless lock and unlock calls, update pad_select to new API
9633           (untested)
9634         * gst/schedulers/gstoptimalscheduler.c:
9635         (gst_opt_scheduler_class_init):
9636           remove useless select, lock and unlock function calls
9637         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9638           use gst_pad_collect instead of gst_pad_select
9639
9640 2004-04-04  Benjamin Otte  <otte@gnome.org>
9641
9642         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9643         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9644         (schedule_next_element), (print_entry):
9645           add can_schedule_pad to handle element states.
9646           add schedule_forward to select the correct entry to schedule next
9647
9648 2004-04-03  Benjamin Otte  <otte@gnome.org>
9649
9650         * gst/schedulers/entryscheduler.c: 
9651           remove unused variable, fix error inside Rb, fix compile warning in
9652           unreachable code
9653
9654 2004-04-03  Benjamin Otte  <otte@gnome.org>
9655
9656         * gst/schedulers/entryscheduler.c:
9657           completely revamp the inner workings, so it's a lot easier to
9658           understand and extend
9659
9660 2004-04-03  Andy Wingo  <wingo@pobox.com>
9661
9662         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9663         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9664         This allows better introspection of pipeline topology.
9665         (add_to_chain): Don't do trickery to put loop elements first;
9666         rather, queue a chain sort by marking the chain as dirty.
9667         (remove_from_chain): Mark the chain dirty.
9668         (sort_chain): New function. Sorts the group list so that terminal
9669         sinks are first. This means elements on the sink side will be
9670         preferentially sscheduled before elements on the src side of the
9671         pipeline.
9672         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9673         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9674         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9675         (group_inc_link): Change argument and variable names to match the
9676         new link structure member names (src and sink).
9677         (group_dec_link): Add some description
9678
9679 2004-04-03  Benjamin Otte  <otte@gnome.org>
9680
9681         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9682         * gst/gstinfo.h:
9683         * testsuite/debug/category.c: (main):
9684         * testsuite/debug/commandline.c: (main):
9685         * testsuite/debug/output.c: (main):
9686         * testsuite/debug/printf_extension.c: (main):
9687           fix to successfully build and test with --disable-gst-debug
9688           configure switch (fixes #138705)
9689
9690 2004-04-03  Benjamin Otte  <otte@gnome.org>
9691
9692         * docs/pwg/building-boiler.xml:
9693           add cvs login line and s/anonymous/anoncvs/
9694
9695 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
9696
9697         reviewed by Benjamin Otte  <otte@gnome.org>
9698
9699         * gst/gststructure.c: (gst_structure_free):
9700           memleak fix: free fields array (partial fix for #134839)
9701
9702 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9703
9704         * docs/random/ds/0.9-suggested-changes:
9705           Add a note to change handoff use in fakesrc to be usable in
9706           a more generic way (fakesrc should be renamed to appsrc or so).
9707         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9708           Change signal type to scope, so we can fill the buffer in the
9709           handoff handler (that's the whole use of this signal...).
9710
9711 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9712
9713         * docs/pwg/other-ntoone.xml:
9714           Document muxers and n-to-1 elements.
9715
9716 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
9717
9718         * gst/registries/gstxmlregistry.c
9719         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
9720         determine if a file is a G_MODULE. The old one discards paths
9721         containing "so" somewhere in the middle. My home directory is
9722         called "soto". Go figure...
9723
9724 2004-03-31  David Schleef  <ds@schleef.org>
9725
9726         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
9727         to eventually deprecate gst_buffer_merge().  (bug: #136408)
9728         * gst/gstbuffer.h:
9729
9730 2004-03-31  David Schleef  <ds@schleef.org>
9731
9732         * gst/gstvalue.c: (gst_value_union_int_int_range),
9733         (gst_value_union_int_range_int_range), (gst_value_can_union),
9734         (gst_value_union), (_gst_value_initialize):  Add some union
9735         implementations.  We didn't have any previously.
9736         * testsuite/caps/Makefile.am:
9737         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
9738         (gst_audioscale_getcaps), (test_caps), (main): A little test
9739         that is the same as the caps manipulation in audioscale.
9740
9741 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9742
9743         * docs/faq/general.xml:
9744           add entry about "does gst support format X?"
9745
9746 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9747
9748         * gst/gstthread.c:
9749           fix docs
9750         * gst/gstutils.h:
9751           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
9752
9753 2004-03-30  Benjamin Otte  <otte@gnome.org>
9754
9755         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9756           set the offset of the buffer to the requested offset
9757         * gst/elements/gsttypefind.c: (stop_typefinding):
9758           revert patch 1.18 (which I unfortunately don't know the reason for).
9759           This is needed to allow downstream elements to seek. Otherwise
9760           typefind might overwrite a previous seek by downstream elements.
9761           This lead to errors with id3tag and typefind on some mp3s.
9762         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9763         (gst_entry_scheduler_iterate):
9764           be more verbose when debugging
9765
9766 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9767
9768         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9769           make sure we don't get NULL strings
9770
9771 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9772
9773         * gst/gstcaps.c:
9774         * gst/gstelement.c:
9775         * gst/gstelementfactory.c: (gst_element_factory_get_type):
9776         * gst/gstindex.c: (gst_index_resolver_get_type),
9777         (gst_index_get_type), (gst_index_factory_get_type):
9778         * gst/gstinfo.c:
9779         * gst/gstpad.c:
9780         * gst/gstplugin.c:
9781         * gst/gsturi.c: (gst_uri_handler_get_type):
9782         * gst/gstvalue.c:
9783           first batch of documentation fixes
9784
9785 2004-03-29  David Schleef  <ds@schleef.org>
9786
9787         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
9788         * docs/gst/gstreamer-docs.sgml:  More hacking
9789         * docs/gst/gstreamer-sections.txt:
9790         * docs/gst/tmpl/cothreads_compat.sgml:
9791         * docs/gst/tmpl/gstcaps.sgml:
9792         * docs/gst/tmpl/gstclock.sgml:
9793         * docs/gst/tmpl/gstelement.sgml:
9794         * docs/gst/tmpl/gstevent.sgml:
9795         * docs/gst/tmpl/gstpad.sgml:
9796         * docs/gst/tmpl/gstutils.sgml:
9797         * docs/gst/tmpl/gstxml.sgml:
9798         * docs/gst/tmpl/gthread-cothreads.sgml:
9799         * docs/random/ds/0.9-suggested-changes:
9800         * gst/elements/gstfakesink.h: doc fixes
9801         * gst/elements/gstfakesrc.h: doc fixes
9802         * gst/gstcaps.c: doc fixes
9803         * gst/gstcaps.h: doc fixes
9804         * gst/gstelement.c: doc fixes
9805         * gst/gstelement.h: doc fixes
9806         * gst/gstindex.c: doc fixes
9807         * gst/gstinfo.c: doc fixes
9808         * gst/gstpad.c: doc fixes
9809         * gst/gstpad.h: doc fixes
9810         * gst/gstplugin.c: doc fixes
9811         * gst/gsttypefind.h: doc fixes
9812         * gst/gsturi.c: doc fixes
9813         * gst/gstvalue.c: doc fixes
9814
9815 2004-03-29  Colin Walters  <walters@redhat.com>
9816
9817         * gst/registries/gstxmlregistry.c (get_time)
9818         (plugin_times_older_than_recurse):
9819         Use the result of stat to determine whether a path is a file,
9820         so we don't attempt to opendir() files.
9821
9822 2004-03-29  Benjamin Otte  <otte@gnome.org>
9823
9824         * gst/gstpad.c: (gst_pad_set_explicit_caps):
9825           print caps in debugging output when setting caps failed
9826         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9827         (schedule_next_element), (get_buffer), (run_chainhandler),
9828         (element_may_start), (gst_entry_scheduler_chain_handler),
9829         (gst_entry_scheduler_get_handler),
9830         (gst_entry_scheduler_state_transition),
9831         (gst_entry_scheduler_pad_link):
9832           make this scheduler a testcase for mandatory
9833           discont-before-first-buffer which is needed if we want to allow apps
9834           to release the sound device.
9835           add SCHED_ASSERT macro to print scheduler state before an assertion
9836           triggers.
9837
9838 2004-03-29  Benjamin Otte  <otte@gnome.org>
9839
9840         * COPYING:
9841           replace by LGPL (former COPYING.LIB). The core is completely
9842           licensed LGPL.
9843         * COPYING.LIB:
9844           remove
9845
9846 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9847
9848         * po/af.po:
9849         * po/sv.po:
9850           updated Afrikaans and Swedish
9851
9852 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9853
9854         * po/LINGUAS:
9855         * po/az.po:
9856           adding Azerbaijani (Mətin Əmirov)
9857
9858 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
9859
9860         * gst/gstelement.h: 
9861         * gst/gstelement.c (gst_element_set_time_delay): New function for
9862         setting element time taking into account a hardware buffering
9863         delay.
9864         (gst_element_set_time): Now just an invocation of
9865         gst_element_set_time_delay.
9866         * gst/gstclock.h: 
9867         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
9868         allowing to set event times in the future.
9869         (gst_clock_get_event_time): Now just an invocation of
9870         gst_clock_get_event_time_delay.
9871
9872 2004-03-28  Benjamin Otte  <otte@gnome.org>
9873
9874         * gst/gstbin.c: (gst_bin_set_element_sched),
9875         (gst_bin_unset_element_sched):
9876           don't add decoupled elements to schedulers - otherwise it's
9877           impossible to control if a link to a decoupled element was already
9878           removed from a scheduler or not.
9879         * gst/schedulers/cothreads_compat.h:
9880         * gst/schedulers/gthread-cothreads.h:
9881           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
9882           is no "unused" warning.
9883         * gst/schedulers/Makefile.am:
9884         * gst/schedulers/entryscheduler.c:
9885           add new scheduler, based on ideas from talking to David and Martin.
9886           It's supposed to be small and correct. Currently it's also slow (but
9887           it's not noticable)
9888         * examples/retag/retag.c: (main):
9889         * testsuite/bytestream/test1.c: (main):
9890           fix missing NULLs at end of variadic functions
9891         * testsuite/elements/.cvsignore:
9892           update
9893
9894 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
9895
9896         * gst/gstevent.h:
9897         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
9898
9899 2004-03-25  David Schleef  <ds@schleef.org>
9900
9901         * docs/gst/gstreamer-sections.txt:  More doc hacking.
9902         * docs/gst/tmpl/gstaggregator.sgml:
9903         * docs/gst/tmpl/gstautoplugfactory.sgml:
9904         * docs/gst/tmpl/gstbin.sgml:
9905         * docs/gst/tmpl/gstbuffer.sgml:
9906         * docs/gst/tmpl/gstbufferstore.sgml:
9907         * docs/gst/tmpl/gstfakesink.sgml:
9908         * docs/gst/tmpl/gstfakesrc.sgml:
9909         * docs/gst/tmpl/gstmd5sink.sgml:
9910         * docs/gst/tmpl/gstreamer-unused.sgml:
9911         * docs/gst/tmpl/gstsearchfuncs.sgml:
9912         * docs/gst/tmpl/gstshaper.sgml:
9913         * docs/gst/tmpl/gstspider.sgml:
9914         * docs/gst/tmpl/gsttee.sgml:
9915         * docs/gst/tmpl/gstutils.sgml:
9916         * docs/gst/tmpl/gstvalue.sgml:
9917         * docs/gst/tmpl/gstxml.sgml:
9918         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
9919         and we don't support it.
9920         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
9921         (gst_use_threads), (gst_has_threads): same
9922         * gst/gstthreaddummy.c: same
9923         * gst/autoplug/gstspider.c: Make gst_spider_details static.
9924         * gst/autoplug/gstspider.h: same
9925         * gst/elements/gstaggregator.h: Remove bogus function from header
9926         * gst/elements/gstfakesink.h: same
9927         * gst/elements/gstfakesrc.h: same
9928         * gst/elements/gstmd5sink.h: same
9929         * gst/elements/gstshaper.h: same
9930         * gst/elements/gsttee.h: same
9931         * gst/gstbin.c: doc fixes
9932         * gst/gstbin.h: Remove unused definition.
9933         * gst/gstbuffer.c: doc fixes
9934         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
9935         * gst/gstfilter.c: doc fixes
9936         * gst/gsttag.c: doc fixes
9937         * gst/gstvalue.c: doc fixes
9938
9939 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9940
9941         * docs/pwg/advanced-types.xml:
9942           Document typefinding.
9943         * docs/pwg/other-oneton.xml:
9944           Document one-to-n elements, demuxers and parsers.
9945
9946 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
9947
9948         reviewed by: David Schleef  <ds@schleef.org>
9949
9950         * configure.ac: Check bison version (bug #127838)
9951
9952 2004-03-25  David Schleef  <ds@schleef.org>
9953
9954         * docs/gst/gstreamer-docs.sgml: More fine tuning.
9955         * docs/gst/gstreamer-sections.txt:
9956         * docs/gst/tmpl/gstautoplug.sgml:
9957         * docs/gst/tmpl/gststaticautoplug.sgml:
9958         * docs/gst/tmpl/gststaticautoplugrender.sgml:
9959         * docs/gst/tmpl/gstutils.sgml:
9960         * docs/gst/tmpl/gstxml.sgml:
9961
9962 2004-03-24  David Schleef  <ds@schleef.org>
9963
9964         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
9965         manual being such complete crap, that I decided to do major
9966         hacking of it.  This checkin replaces any fine tuning that
9967         may have been done previously, with the benefit of actually
9968         being complete for much of the API that was changed since
9969         0.6.  Further fine tuning will occur shortly.  (bug #134721)
9970         * docs/gst/gstreamer-sections.txt:
9971         * docs/gst/tmpl/GstBin.sgml:
9972         * docs/gst/tmpl/GstBuffer.sgml:
9973         * docs/gst/tmpl/GstCaps.sgml:
9974         * docs/gst/tmpl/GstClock.sgml:
9975         * docs/gst/tmpl/GstCompat.sgml:
9976         * docs/gst/tmpl/GstData.sgml:
9977         * docs/gst/tmpl/GstElement.sgml:
9978         * docs/gst/tmpl/GstEvent.sgml:
9979         * docs/gst/tmpl/GstIndex.sgml:
9980         * docs/gst/tmpl/GstStructure.sgml:
9981         * docs/gst/tmpl/GstTag.sgml:
9982         * docs/gst/tmpl/cothreads.sgml:
9983         * docs/gst/tmpl/cothreads_compat.sgml:
9984         * docs/gst/tmpl/gettext.sgml:
9985         * docs/gst/tmpl/grammar.tab.sgml:
9986         * docs/gst/tmpl/gst-i18n-app.sgml:
9987         * docs/gst/tmpl/gst-i18n-lib.sgml:
9988         * docs/gst/tmpl/gst.sgml:
9989         * docs/gst/tmpl/gst_private.sgml:
9990         * docs/gst/tmpl/gstaggregator.sgml:
9991         * docs/gst/tmpl/gstarch.sgml:
9992         * docs/gst/tmpl/gstatomic.sgml:
9993         * docs/gst/tmpl/gstatomic_impl.sgml:
9994         * docs/gst/tmpl/gstbin.sgml:
9995         * docs/gst/tmpl/gstbuffer.sgml:
9996         * docs/gst/tmpl/gstbufferstore.sgml:
9997         * docs/gst/tmpl/gstcaps.sgml:
9998         * docs/gst/tmpl/gstclock.sgml:
9999         * docs/gst/tmpl/gstcompat.sgml:
10000         * docs/gst/tmpl/gstconfig.sgml:
10001         * docs/gst/tmpl/gstcpu.sgml:
10002         * docs/gst/tmpl/gstdata.sgml:
10003         * docs/gst/tmpl/gstdata_private.sgml:
10004         * docs/gst/tmpl/gstelement.sgml:
10005         * docs/gst/tmpl/gstenumtypes.sgml:
10006         * docs/gst/tmpl/gsterror.sgml:
10007         * docs/gst/tmpl/gstevent.sgml:
10008         * docs/gst/tmpl/gstfakesink.sgml:
10009         * docs/gst/tmpl/gstfakesrc.sgml:
10010         * docs/gst/tmpl/gstfilesink.sgml:
10011         * docs/gst/tmpl/gstfilter.sgml:
10012         * docs/gst/tmpl/gstindex.sgml:
10013         * docs/gst/tmpl/gstinfo.sgml:
10014         * docs/gst/tmpl/gstinterface.sgml:
10015         * docs/gst/tmpl/gstlog.sgml:
10016         * docs/gst/tmpl/gstmacros.sgml:
10017         * docs/gst/tmpl/gstmarshal.sgml:
10018         * docs/gst/tmpl/gstmd5sink.sgml:
10019         * docs/gst/tmpl/gstmultifilesrc.sgml:
10020         * docs/gst/tmpl/gstobject.sgml:
10021         * docs/gst/tmpl/gstpad.sgml:
10022         * docs/gst/tmpl/gstparse.sgml:
10023         * docs/gst/tmpl/gstpipeline.sgml:
10024         * docs/gst/tmpl/gstplugin.sgml:
10025         * docs/gst/tmpl/gstpluginfeature.sgml:
10026         * docs/gst/tmpl/gstqueue.sgml:
10027         * docs/gst/tmpl/gstreamer-unused.sgml:
10028         * docs/gst/tmpl/gstregistry.sgml:
10029         * docs/gst/tmpl/gstregistrypool.sgml:
10030         * docs/gst/tmpl/gstscheduler.sgml:
10031         * docs/gst/tmpl/gstsearchfuncs.sgml:
10032         * docs/gst/tmpl/gstshaper.sgml:
10033         * docs/gst/tmpl/gstspider.sgml:
10034         * docs/gst/tmpl/gstspideridentity.sgml:
10035         * docs/gst/tmpl/gststructure.sgml:
10036         * docs/gst/tmpl/gstsystemclock.sgml:
10037         * docs/gst/tmpl/gsttag.sgml:
10038         * docs/gst/tmpl/gsttaginterface.sgml:
10039         * docs/gst/tmpl/gsttee.sgml:
10040         * docs/gst/tmpl/gstthread.sgml:
10041         * docs/gst/tmpl/gsttrace.sgml:
10042         * docs/gst/tmpl/gsttrashstack.sgml:
10043         * docs/gst/tmpl/gsttypefind.sgml:
10044         * docs/gst/tmpl/gsttypes.sgml:
10045         * docs/gst/tmpl/gsturi.sgml:
10046         * docs/gst/tmpl/gsturitype.sgml:
10047         * docs/gst/tmpl/gstutils.sgml:
10048         * docs/gst/tmpl/gstvalue.sgml:
10049         * docs/gst/tmpl/gstversion.sgml:
10050         * docs/gst/tmpl/gstxml.sgml:
10051         * docs/gst/tmpl/gstxmlregistry.sgml:
10052         * docs/gst/tmpl/gthread-cothreads.sgml:
10053         * docs/gst/tmpl/types.sgml:
10054
10055 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10056
10057         * docs/pwg/other-sink.xml:
10058         * docs/pwg/other-source.xml:
10059           Documentation on how to write source and sink elements. Other
10060           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10061           manager, autoplugger) are all still pending.
10062
10063 2004-03-25  Benjamin Otte  <otte@gnome.org>
10064
10065         * testsuite/elements/Makefile.am:
10066         * testsuite/elements/gst-compprep-check:
10067           add check to make sure gst-compprep works
10068         * testsuite/elements/gst-inspect-check.in:
10069           improve initialization output
10070         * testsuite/Makefile.am:
10071         * testsuite/gst-inspect-check:
10072           remove old file
10073
10074 2004-03-24  David Schleef  <ds@schleef.org>
10075
10076         * testsuite/elements/Makefile.am:
10077         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10078         to the testsuite.
10079
10080 2004-03-24  Benjamin Otte  <otte@gnome.org>
10081
10082         * libs/gst/control/dparam.c: (gst_dparam_attach),
10083         (gst_dparam_detach):
10084         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10085           fix lvalue casts for real
10086
10087 2004-03-24  Benjamin Otte  <otte@gnome.org>
10088
10089         * gst/schedulers/gstbasicscheduler.c:
10090         (gst_basic_scheduler_src_wrapper):
10091         * gst/schedulers/gstoptimalscheduler.c:
10092         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10093         (pad_clear_queued), (gst_opt_scheduler_add_element),
10094         (gst_opt_scheduler_remove_element):
10095           fix GStreamer to not have issues with lvalue casts anymore (fixes
10096           #136841)
10097
10098 2004-03-24  Benjamin Otte  <otte@gnome.org>
10099
10100         * gst/gstelement.c:
10101           add documentation about a gobject quirk where the object hasn't the
10102           correct class pointer set on initialization
10103         * gst/schedulers/gstbasicscheduler.c:
10104         (gst_basic_scheduler_src_wrapper):
10105           make sure to not run into an infinite loop
10106
10107 2004-03-22  Benjamin Otte  <otte@gnome.org>
10108
10109         * gst/gstutils.c: (gst_util_dump_mem):
10110         * gst/gstutils.h:
10111           first argument of gst_util_dump_mem should be const
10112
10113 2004-03-22  Johan Dahlin  <johan@gnome.org>
10114
10115         * gst/gstvalue.h: Clean up a little bit.
10116
10117 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10118
10119         reviewed by Benjamin Otte  <otte@gnome.org>
10120
10121         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10122         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10123         (gst_aggregator_class_init), (gst_aggregator_init):
10124         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10125         (gst_filesrc_dispose), (gst_filesrc_set_location):
10126         * gst/elements/gstidentity.c: (gst_identity_finalize),
10127         (gst_identity_class_init), (gst_identity_chain):
10128         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10129         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10130         (gst_statistics_class_init):
10131         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10132         (gst_tee_get_property):
10133           clean up used memory in this elements correctly on teardown (closes
10134           #137279)
10135
10136 2004-03-20  Colin Walters  <walters@redhat.com>
10137
10138         * gst/registries/gstxmlregistry.c:
10139         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10140         registry saving atomic.
10141
10142 2004-03-20  Colin Walters  <walters@redhat.com>
10143
10144         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10145         Just use
10146         access() instead of actually creating and deleting files.
10147
10148 2004-03-18  David Schleef  <ds@schleef.org>
10149
10150         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10151         (bug #137625)
10152
10153 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10154
10155         * po/sv.po: updated translation (Christian Rose)
10156
10157 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10158
10159         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10160         (gst_filesink_get_query_types), (_do_init),
10161         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10162           return FALSE silently
10163         * po/af.po: updated translation (Petri Jooste)
10164
10165 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10166
10167         * Makefile.am:
10168         * configure.ac:
10169           dist common properly
10170         * po/af.po:
10171         * po/fr.po:
10172         * po/nl.po:
10173         * po/sr.po:
10174         * po/sv.po:
10175           refreshing translations
10176
10177 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10178
10179         * po/LINGUAS:
10180         * po/sv.po:
10181         * po/af.po:
10182           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10183
10184 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10185
10186         * Makefile.am: use common/release.mak
10187
10188 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10189
10190         * docs/faq/gst-uninstalled:
10191           adding gst-monkeysaudio to the list of possible plugin dirs
10192
10193 2004-03-16  David Schleef  <ds@schleef.org>
10194
10195         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10196         (gst_init_check_with_popt_table):  Fix some gettext strings to
10197         make them easier to translate.  Required making the strings
10198         non-const.
10199
10200 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10201
10202         * configure.ac: bump nano to 1
10203
10204 === release 0.8.0 ===
10205
10206 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10207
10208         * configure.ac: release 0.8.0, "Executive Slacks"
10209
10210 2004-03-16  Johan Dahlin  <johan@gnome.org>
10211
10212         * gst/schedulers/gstoptimalscheduler.c
10213         (gst_opt_scheduler_pad_unlink): Remove double ;,
10214         spotted by Scott Wheeler
10215
10216 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10217
10218         * configure.ac: bump libtool version
10219
10220 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10221
10222         * gst/gstcaps.h:
10223         * gst/gststructure.h:
10224           add reserved padding
10225
10226 2004-03-15  Benjamin Otte  <otte@gnome.org>
10227
10228         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10229           set the first parameter for select call correctly.
10230           (fixes #137230)
10231
10232 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10233
10234         * *.c,*.h: don't mix tabs and spaces
10235
10236 2004-03-15  Johan Dahlin  <johan@gnome.org>
10237
10238         * gst/schedulers/gstoptimalscheduler.c
10239         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10240         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10241
10242         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10243         
10244 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10245
10246         * testsuite/Rules:
10247           fix gst-register rules
10248
10249 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10250
10251         * testsuite/Rules:
10252           use versioned gst-register
10253
10254 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10255
10256         * docs/libs/gstreamer-libs-sections.txt:
10257           remove </SUBSECTION>
10258         * gst/gstplugin.c:
10259         * gst/gstregistry.c: (gst_registry_add_plugin):
10260         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10261         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10262           add debugging and fix some comment blocks
10263
10264 2004-03-15  Johan Dahlin  <johan@gnome.org>
10265
10266         * *.h: Revert indent changes.
10267         
10268 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10269
10270         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10271           g_error_free the g_error
10272         * tools/gst-feedback-m.m:
10273           check for other versions of gstreamer
10274         * tools/gst-indent:
10275           use sh, not bash
10276
10277 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10278
10279         * tools/gst-register.c: do not spill paths when registries are not
10280           writable, until we fix the "user running gst-register" case.
10281
10282 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10283
10284         * *.c, *.h: commit of gst-indent run on core
10285
10286 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10287
10288         * tools/gst-indent:
10289         * tools/Makefile.am:
10290           add our indentation style as a script
10291
10292 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10293
10294         * po/sr.po:
10295         * po/LINGUAS:
10296           added Serbian translation
10297
10298 2004-03-13  Benjamin Otte  <otte@gnome.org>
10299
10300         * gst/gstelement.c:
10301           add documentation note about gst_element_found_tags_for_pad not
10302           being usable in getfunctions. (see #137042)
10303
10304 2004-03-12  David Schleef  <ds@schleef.org>
10305
10306         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10307         change API right now!  Readd gst_caps_is_simple() macro.
10308         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10309         uninitialized variable.  I'd bet this caused crashes.
10310         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10311
10312 2004-03-12  Johan Dahlin  <johan@gnome.org>
10313
10314         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10315         * gst/gstcaps.h: Clean up
10316
10317         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10318         _gst_caps_initalize()
10319
10320         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10321         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10322
10323         * gst/gststructure.c (gst_structure_get_type): Ditto
10324
10325         * gst/gststructure.h: Ditto
10326         
10327 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10328
10329         * gst/gstqueue.c: (gst_queue_init):
10330           Reset default max. values in queues. Reason is simply to avoid
10331           braindead use. If you want wider values, use the properties. The
10332           default is supposed to always work. Wider values would make this
10333           beast a memory hog by default (250 full-PAL RGB32 video frames?
10334           That's 440 MB! No thank you).
10335
10336 2004-03-10  David Schleef  <ds@schleef.org>
10337
10338         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10339         were found.  (bug #136793)
10340
10341 2004-03-10  Johan Dahlin  <johan@gnome.org>
10342
10343         * gst/schedulers/gstoptimalscheduler.c
10344         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10345         links to elements within the same group, so we can finally remove
10346         that annoying warning. Refactor the code a little bit
10347         (group_dec_links_for_element): Split out
10348
10349 2004-03-09  David Schleef  <ds@schleef.org>
10350
10351         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10352         (bug #134863)
10353
10354 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10355
10356         * configure.ac: first bug fix due to major/minor bump
10357
10358 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10359
10360         * configure.ac: bump nano to 1
10361
10362 === release 0.7.6 ===
10363
10364 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10365
10366         * NEWS:
10367         * RELEASE:
10368         * configure.ac:
10369           releasing 0.7.6, "Almost"
10370         * po/fr.po:
10371         * po/nl.po:
10372         * tools/Makefile.am:
10373         * tools/gst-feedback-m.m:
10374           unversioned source
10375
10376 2004-03-09  Johan Dahlin  <johan@gnome.org>
10377
10378         Reviewed by: Thomas Vander Stichele
10379
10380         * gst/gstelement.c (gst_element_class_init): register second
10381         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10382         language bindings can (de)marshall correctly.
10383
10384         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10385
10386         * gst/gsterror.c (gst_g_error_get_type): New function
10387
10388         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10389         with VOID:OBJECT,OBJECT,STRING 
10390
10391 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10392
10393         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10394         Free a leaked g_timer on early returns.
10395
10396 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10397
10398         * docs/pwg/advanced-types.xml:
10399           Add cinepak description.
10400
10401 2004-03-07  David Schleef  <ds@schleef.org>
10402
10403         * docs/random/mimetypes:  Added cinepak description
10404
10405 2004-03-07  Andy Wingo  <wingo@pobox.com>
10406
10407         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10408
10409         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10410         there are no links to other groups when a group is destroyed.
10411         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10412         removed from a group, make sure the link count to elements linked
10413         to other pads is appropriately decremented. This really fixes
10414         #135672.
10415
10416         The 1.60->1.61 patch has been reapplied in light of this fix.
10417
10418         * gst/gstelement.c (gst_element_dispose): Really protect against
10419         multiple invocations this time.
10420
10421 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10422
10423         * docs/gst/gstreamer-sections.txt:
10424         * docs/gst/tmpl/gsttag.sgml:
10425           remove some deprecated functions, document some existing ones
10426         * gst/gsttag.c: (gst_tag_get_flag):
10427         * gst/gsttag.h:
10428           add accessor function
10429
10430 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10431
10432         * docs/gst/gstreamer-sections.txt:
10433         * docs/gst/tmpl/gsttag.sgml:
10434         * docs/gst/tmpl/gstxml.sgml:
10435         * gst/gsttag.c: (gst_tag_get_flag):
10436         * gst/gsttag.h:
10437
10438 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10439
10440         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10441         leak
10442
10443 2004-03-05  David Schleef  <ds@schleef.org>
10444
10445         * REQUIREMENTS: Add bison and flex.
10446         * configure.ac: Fix comment about bison.
10447         * docs/random/ds/0.9-suggested-changes: yer ma
10448         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10449
10450 2004-03-05  Benjamin Otte  <otte@gnome.org>
10451
10452         * gst/gstelement.c: (gst_element_error_full):
10453           revert recent recursive state changing commit - messing with other
10454           elements' states is evil and should be done by apps only.
10455
10456 2004-03-05  Benjamin Otte  <otte@gnome.org>
10457
10458         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10459           check for empty intersection instead of NULL caps
10460         (gst_element_get_compatible_pad_filtered):
10461           remove old workaround that is only a bug nowadays
10462
10463 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10464
10465         * gst/gstelement.c: (gst_element_error_full):
10466           make elements try to recursively change state to PAUSED on all
10467           parents after an error to suppress ensuing warnings
10468         * gst/parse/grammar.y:
10469           make it check if it was able to sync the state, and throw an error
10470           if not, so stuff like
10471           oggdemux ! vorbisdec ! osssink gets caught
10472
10473 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10474
10475         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10476           it contains lib64; use AS_AC_EXPAND to handle it properly
10477
10478 2004-03-05  David Schleef  <ds@schleef.org>
10479
10480         * gst/gstcpuid_i386.s:  Remove unused code
10481         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10482         (gst_getbits_newbuf): Remove MMX code
10483         * libs/gst/getbits/getbits.h: Remove MMX code
10484
10485 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10486
10487         * debian/.cvsignore:
10488         * debian/README.Debian:
10489         * debian/changelog:
10490         * debian/control:
10491         * debian/control.in:
10492         * debian/copyright:
10493         * debian/gstreamer-core-libs-dev.files:
10494         * debian/gstreamer-core-libs.files:
10495         * debian/gstreamer-core.files:
10496         * debian/gstreamer-core.postinst:
10497         * debian/gstreamer-core.postrm:
10498         * debian/gstreamer-doc.files:
10499         * debian/gstreamer-doc.links:
10500         * debian/gstreamer-doc.lintian:
10501         * debian/gstreamer-runtime.files:
10502         * debian/gstreamer-runtime.manpages:
10503         * debian/gstreamer-runtime.postinst:
10504         * debian/gstreamer-runtime.postrm:
10505         * debian/gstreamer-tools.files:
10506         * debian/gstreamer-tools.manpages:
10507         * debian/libgstreamer-dev.files:
10508         * debian/libgstreamer0.4.1.files:
10509         * debian/libgstreamerVERSION.files:
10510         * debian/rules:
10511         Debian package info not maintained here.
10512
10513 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10514
10515         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10516         * gst/gstbin.c: (gst_bin_class_init):
10517         * gst/gstelement.c: (gst_element_class_init):
10518         * gst/gstindex.c: (gst_index_class_init):
10519         * gst/gstobject.c: (gst_object_class_init),
10520         (gst_signal_object_class_init):
10521         * gst/gstpad.c: (gst_pad_template_class_init):
10522         * gst/gstregistry.c: (gst_registry_class_init):
10523         * gst/gsturi.c: (gst_uri_handler_base_init):
10524         * gst/gstxml.c: (gst_xml_class_init):
10525         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10526         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10527           make all signal names use dashes instead of underscore
10528
10529 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10530
10531         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10532
10533 2004-03-03  Benjamin Otte  <otte@gnome.org>
10534
10535         * gst/schedulers/gstoptimalscheduler.c:
10536           revert last commit by Andy Wingo. It causes segfaults on unreffing
10537           in Rhythmbox. (see bug #135672)
10538
10539 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10540
10541         * po/fr.po: fix typo
10542
10543 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10544
10545         * tools/gst-inspect.c: (main): 
10546         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10547
10548 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10549
10550         * configure.ac:
10551           get GLIB_ONLY and POPT flags for the nonversioned binaries
10552         * tools/Makefile.am:
10553           use them
10554
10555 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10556
10557         * gst/gst.c: (init_post):
10558           change so that GST_REGISTRY now is where the global registry gets
10559           saved, since that is where plugins now get attached to first, and
10560           spilled over to the user registry.  Note that in the case of using
10561           GST_REGISTRY env var, we don't want to affect any real registries
10562           beyond the one given by this var, and thus we don't set a user
10563           registry to spill to.  So make sure GST_REGISTRY is writable.
10564
10565 2004-03-01  David Schleef  <ds@schleef.org>
10566
10567         * AUTHORS:  Added some names.  Add yourself if you're missing.
10568
10569 2004-03-01  David Schleef  <ds@schleef.org>
10570
10571         * MAINTAINERS: Add
10572
10573 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10574
10575         * configure.ac:
10576           remove whitespace
10577         * docs/gst/tmpl/gstbuffer.sgml:
10578         * docs/gst/tmpl/gstdata.sgml:
10579         * docs/gst/tmpl/gstreamer-unused.sgml:
10580         * docs/gst/tmpl/gstxml.sgml:
10581           doc update
10582         * docs/manuals.mak:
10583           add a FIXME
10584         * docs/pwg/intro-preface.xml:
10585         * docs/pwg/pwg.xml:
10586           remove GNOME
10587         * gst/gst.c: (init_post):
10588           try GST_PLUGIN_PATH paths for the _global_registry first
10589         * gst/gstelement.h:
10590           add the error message as well, otherwise (null) debug info doesn't
10591           make much sense
10592         * tools/gst-register.c: (main):
10593           spill paths to next registry if this registry is not writable
10594         * po/fr.po:
10595         * po/nl.po:
10596           translation updates
10597
10598 2004-03-01  Johan Dahlin  <johan@gnome.org>
10599
10600         * gst/gstbuffer.c (_gst_buffer_initialize): 
10601         * gst/gstdata.c (gst_data_get_type): 
10602         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10603         instead of ref, since some applications that uses GBoxed
10604         routines depends on a function that actually returns a copy.
10605
10606 2004-02-27  Benjamin Otte  <otte@gnome.org>
10607
10608         * gst/gstbuffer.h:
10609           remove gst_buffer_free, use gst_data_unref
10610         * gst/gstdata.c: (gst_data_get_type):
10611           use refcounting in GstData GBoxed registration
10612         * gst/gstdata.h:
10613           remove gst_data_free, use gst_data_unref
10614
10615 2004-02-27  Johan Dahlin  <johan@gnome.org>
10616
10617         * gst/gstdata.c (gst_data_get_type): New function, register
10618         GstData as a GBoxed type.
10619
10620         * gst/gstdata.h (GST_TYPE_DATA): New macro
10621
10622 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10623
10624         * Makefile.am:
10625         * gstreamer.spec.in:
10626           put back RELEASE
10627         * gst/Makefile.am:
10628           clean up non-disting of built files
10629         * testsuite/debug/commandline.c:
10630           test fix for option rename
10631
10632 2004-02-26  David Schleef  <ds@schleef.org>
10633
10634         * configure.ac:  We don't really need glib-2.3.  Also remove
10635         some unneeded checks for library functions.
10636         * gst/Makefile.am:  Instead, we need to not dist files created
10637         by glib-genmarshal.
10638
10639 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10640
10641         * configure.ac:
10642           bump glib required version to 2.3.0 for g_value_takes_boxed
10643
10644  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10645
10646         * common/m4/gst-docs.m4
10647         change flavour text from enable to disable as enable is our default
10648         closes bug Bug 135304
10649
10650 === release 0.7.5 ===
10651  
10652  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10653  
10654         * NEWS:
10655           instate NEWS file
10656         * Makefile.am:
10657         * gstreamer.spec.in:
10658         * RELEASE:
10659           put back release
10660         * configure.ac:
10661         * docs/random/release:
10662           more updates
10663
10664 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10665
10666         * gst/gsttag.c: (_gst_tag_initialize):
10667         * po/fr.po:
10668         * po/nl.po:
10669           remove hyphen from codec tags
10670
10671 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10672
10673         * gst/parse/Makefile.am:
10674           fix dependency so that a make from a clean build works the first
10675           time
10676
10677 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10678
10679         * docs/random/release:
10680           update release strategy
10681         * po/fr.po:
10682           auto-update po file
10683         * po/nl.po:
10684           update dutch translation
10685
10686 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10687
10688         * docs/manual/debugging.xml:
10689         fix manual for new debugging system
10690
10691 2004-02-25  Andy Wingo  <wingo@pobox.com>
10692
10693         * gst/gstpad.c (gst_pad_link_prepare): Re-add
10694         gst_pad_link_prepare. Please email the list with specific reasons
10695         for reverting.
10696
10697 2004-02-24  Andy Wingo  <wingo@pobox.com>
10698
10699         * gst/gstelement.c (gst_element_dispose): Protect against multiple
10700         invocations.
10701
10702         * gst/schedulers/gstoptimalscheduler.c:
10703         I added a mess of prototypes at the top of the file by way of
10704         documentation. Some of the operations on chains and groups were
10705         re-organized.
10706
10707         (create_group): Added a type argument so if the group is enabled,
10708         the setup_group_scheduler knows what to do.
10709         (group_elements): Added a type argument here, too, to be passed on
10710         to create_group.
10711         (group_element_set_enabled): If an unlinked PLAYING element is
10712         added to a bin, we have to create a new group to hold the element,
10713         and this function will be called before the group is added to the
10714         chain. Thus we have a valid case for group->chain==NULL. Instead
10715         of calling chain_group_set_enabled, just set the flag on the group
10716         (the chain's status will be set when the group is added to it).
10717         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
10718         Setup the group scheduler when the group is enabled, not
10719         specifically when an element goes PAUSED->PLAYING. This means
10720         PLAYING elements can be added, linked, and scheduled into a
10721         PLAYING pipeline, as was intended.
10722         (add_to_group): Don't ref the group twice. I don't know when this
10723         double-ref got in here. Removing it has the potential to cause
10724         segfaults if other parts of the scheduler are buggy. If you find
10725         that the scheduler is segfaulting for you, put in an extra ref
10726         here and see if that hacks over the underlying issue. Of course,
10727         then find out what code is unreffing a group it doesn't own...
10728         (create_group): Make the extra refcount floating, and remove it
10729         after adding the element. This means that...
10730         (unref_group): Destroy when the refcount reaches 0, not 1, like
10731         every other refcounted object in the known universe.
10732         (remove_from_group): When a group becomes empty, set it to be not
10733         active, and remove it from its chain. Don't unref it again,
10734         there's no floating reference any more.
10735         (destroy_group): We have to remove the group from the chain in
10736         remove_from_group (rather than here) to break refcounting cycles
10737         (the chain always has a ref on the group). So assert that
10738         group->chain==NULL.
10739         (ref_group_by_count): Removed, it was commented out anyway.
10740         (merge_chains): Use the remove_from_chain and add_to_chain
10741         primitives to do the reparenting, instead of rolling our own
10742         implementation.
10743         (add_to_chain): The first non-disabled group in the chain's group
10744         list will be the entry point for the chain. Because buffers can
10745         accumulate in loop elements' peer bufpens, we preferentially
10746         schedule loop groups before get groups to avoid unnecessary
10747         execution of get-based groups when the bufpens are already full.
10748         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
10749         (get_group_schedule_function): Ditto.
10750         (loop_group_schedule_function): Ditto.
10751         (gst_opt_scheduler_loop_wrapper): Ditto.
10752         (gst_opt_scheduler_iterate): Ditto.
10753
10754         I understand the opt scheduler now, yippee!
10755
10756         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
10757         (gst_pad_get_name, gst_pad_set_chain_function) 
10758         (gst_pad_set_get_function, gst_pad_set_event_function) 
10759         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
10760         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
10761         (gst_pad_set_query_function, gst_pad_get_query_types) 
10762         (gst_pad_get_query_types_default) 
10763         (gst_pad_set_internal_link_function) 
10764         (gst_pad_set_formats_function, gst_pad_set_link_function) 
10765         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
10766         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
10767         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
10768         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
10769         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
10770         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
10771         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
10772         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
10773         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
10774         (gst_pad_event_default_dispatch, gst_pad_event_default) 
10775         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
10776         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
10777         (gst_pad_get_formats_default, gst_pad_get_formats): Better
10778         argument checks, and some doc fixes.
10779
10780         (gst_pad_custom_new_from_template): Um, does anyone
10781         use these functions? Actually make a custom pad instead of a
10782         normal one.
10783         (gst_pad_try_set_caps): Transpose some checks.
10784         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
10785         the pad is in negotiation.
10786         (gst_pad_try_relink_filtered): Use pad_link_prepare.
10787         
10788         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
10789
10790         * gst/gstelement.h: 
10791         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
10792         on the list.
10793
10794 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10795
10796         * gst/gstbin.c: (gst_bin_add):
10797           add error for not being able to add elements
10798
10799 2004-02-22  Julien MOUTTE <julien@moutte.net>
10800
10801         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
10802         audio-codec and video-codec.
10803
10804 2004-02-22  Benjamin Otte  <otte@gnome.org>
10805
10806         reported by: Padraig O'Briain <padraig.obriain@sun.com>
10807
10808         * autogen.sh:
10809           replace test -e with test -x for mkinstalldirs to be more portable.
10810           (fixes #134816)
10811
10812 2004-02-22  Benjamin Otte  <otte@gnome.org>
10813
10814         * gst/gstpad.c:
10815           revert last patch from Andy, it makes gst_pad_can_link_filtered much
10816           too noisy
10817         * gst/gsttag.c: (_gst_tag_initialize):
10818         * gst/gsttag.h:
10819           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
10820         * libs/gst/control/dparam.c: (gst_dparam_attach):
10821         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
10822           check that types for attached dparams match
10823
10824 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10825
10826         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10827         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10828         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10829           fix errors
10830
10831 2004-02-20  Andy Wingo  <wingo@pobox.com>
10832
10833         * gst/gstbin.c:
10834         * gst/gstbuffer.c:
10835         * gst/gstplugin.c:
10836         * gst/registries/gstxmlregistry.c: 
10837         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
10838
10839         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
10840         (gst_element_add_pad): DEBUG->INFO, some fixes.
10841         (gst_element_get_compatible_pad_template): Just see if the
10842         templates' caps intersect, not if one is a strict subset of the
10843         other. This conforms more to what gst_pad_link_intersect() does.
10844         (gst_element_class_add_pad_template): Don't memcpy the pad
10845         template, just ref it.
10846         (gst_element_get_compatible_pad_filtered): Clean up debug messages
10847
10848         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
10849         (gst_pad_link_filtered): Debug changes.
10850         (gst_pad_link_prepare): New function, consolidated from
10851         can_link_filtered and link_filtered.
10852
10853         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
10854         look more like that of the functions in gstelement.c
10855
10856         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
10857         object, and return the empty string if object is NULL.
10858
10859         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
10860         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
10861         LOG, not DEBUG. We still get flex info on debug.
10862
10863         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
10864         debug string more verbose.
10865         (plugin_times_older_than): DEBUG->LOG.
10866
10867 2004-02-20  Julien MOUTTE <julien@moutte.net>
10868
10869         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
10870         will emit found_tag for each stream they demux with the codec.
10871
10872 2004-02-20  Benjamin Otte  <otte@gnome.org>
10873
10874         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
10875           copy navigation event correctly. Check freeing tag lists. 
10876         * gst/gstthread.c: (gst_thread_change_state):
10877           don't abort() on state changing mess - it might happen because of
10878           bugs.
10879         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
10880           use boxed functions
10881         * gst/gstvalue.h:
10882           fix GST_VALUE_HOLDS_CAPS
10883
10884 2004-02-19  David Schleef  <ds@schleef.org>
10885
10886         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
10887         and use it for GST_FUNCTION.  (bug #134750)
10888
10889 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10890
10891         * po/fr.po:
10892         * po/nl.po:
10893           updating translations
10894
10895 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10896
10897         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
10898
10899 2004-02-18  kost@imn.htwk-leipzig.de
10900
10901         reviewed by: David Schleef  <ds@schleef.org>
10902
10903         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
10904         for libgstcontrol.
10905
10906 2004-02-18  David Schleef  <ds@schleef.org>
10907
10908         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10909         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10910         (gst_dpsmooth_new): Additional fixes to get double dparams working.
10911         * tools/gst-inspect.c: (print_element_info): Support dumping of
10912         double dparam information.
10913
10914 2004-02-17  David Schleef  <ds@schleef.org>
10915
10916         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10917         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
10918         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
10919         Use GST_TYPE_CAPS in signal prototype.
10920         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
10921         Convert GST_TYPE_CAPS to boxed.
10922         * gst/gstelement.c: (gst_element_class_init):
10923         Use GST_TYPE_TAG_LIST in signal prototype.
10924         * gst/gstindex.c: (gst_index_class_init):
10925         * gst/gstindex.h:
10926         Add GST_TYPE_INDEX_ENTRY type.
10927         * gst/gstmarshal.list:
10928         Add necessary marshal types.
10929         * gst/gstpad.c: (gst_real_pad_class_init),
10930         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
10931         (gst_pad_recover_caps_error):
10932         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
10933         * gst/gststructure.c: (_gst_structure_initialize),
10934         (gst_structure_copy), (_gst_structure_copy_conditional):
10935         * gst/gststructure.h:
10936         Convert GST_TYPE_STRUCTURE to boxed.
10937         * gst/gsttag.c: (gst_tag_list_get_type):
10938         * gst/gsttag.h:
10939         Add GST_TYPE_TAG_LIST type.
10940
10941 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10942
10943         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
10944         to what we agreed with david.
10945         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
10946
10947 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10948
10949         * po/nl.po: update translation
10950
10951 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10952
10953         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10954           throw an error if spider is trying to play a mime type there is
10955           no decoder for
10956         * po/POTFILES.in:
10957           add gst/autoplug/gstspider.c for translation
10958
10959 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10960
10961         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
10962         silently when the pad is negotiating.
10963
10964 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10965
10966         * docs/faq/Makefile.am:
10967           add script to run gstreamer uninstalled 
10968         * docs/faq/faq.xml:
10969         * docs/faq/developing.xml:
10970         * docs/faq/gst-uninstalled:
10971           extract script to run gstreamer uninstalled
10972         * docs/manuals.mak:
10973           add EXTRA_SOURCES variable for Makefile.am's to set to
10974           use additional SOURCE files for the doc build
10975
10976 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10977
10978         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
10979
10980 2004-02-15  Julien MOUTTE  <julien@moutte.net>
10981
10982         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
10983         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
10984         an error was thrown by osssink. Basically a state change failure for
10985         an element in a different scheduling group was considered as
10986         successful, which means that caps nego was going on and weird stuff
10987         happened. Like I wrote in the comment there, if someone wants to
10988         revert that please drop me a mail explaining why because I really see
10989         no point in keeping that broken behaviour there.
10990         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
10991         be empty, we then return NULL which will trigger a nice error when 
10992         pulling from the pad.
10993
10994 2004-02-13  David Schleef  <ds@schleef.org>
10995
10996         * libs/gst/control/dparam.c: (gst_dparam_class_init),
10997         (gst_dparam_get_property), (gst_dparam_set_property),
10998         (gst_dparam_do_update_default):
10999         * libs/gst/control/dparam.h:
11000         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11001         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11002         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11003         (gst_dpsmooth_do_update_double):
11004         * libs/gst/control/dparam_smooth.h:
11005         * libs/gst/control/dparammanager.c:
11006         (gst_dpman_inline_direct_update):
11007         Add support for double dparams.
11008
11009 2004-02-13  David Schleef  <ds@schleef.org>
11010
11011         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11012         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11013
11014 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11015
11016         reviewed by: David Schleef  <ds@schleef.org>
11017
11018         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11019         (gst_fdsrc_init), (gst_fdsrc_set_property),
11020         (gst_fdsrc_get_property), (gst_fdsrc_get):
11021         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11022         and sends an EOS event if file descriptor reading times out.
11023
11024 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11025
11026         * configure.ac:
11027           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11028
11029 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11030
11031         * configure.ac: pass required libxml version as argument
11032         (bug reported by Christophe Fergeau)
11033
11034 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11035   
11036         * docs/gst/gstreamer-docs.sgml:
11037         * docs/gst/tmpl/gstxml.sgml:
11038         * docs/libs/gstreamer-libs-docs.sgml:
11039           version API docs
11040
11041 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11042
11043         * gst/gstinfo.c:
11044         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11045         (gst_registry_pool_feature_filter):
11046         * gst/gstthread.c: (gst_thread_class_init):
11047         * gst/gstvalue.c:
11048           add includes exposed by building without libxml
11049         * gst/indexers/Makefile.am:
11050           do not build fileindex when LOADSAVE disabled; we should have
11051           a better libxml check later since fileindex depends on xml, not
11052           LOADSAVE or REGISTRY
11053         * libs/gst/control/Makefile.am:
11054           link with m
11055         * tools/Makefile.am:
11056           fix wrong source code for gst-xmlinspect
11057
11058 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11059
11060         * configure.ac:
11061           fix gcov help output
11062           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11063         * docs/random/release:
11064           some updated releasing notes
11065         * gstreamer.spec.in:
11066           more updates
11067
11068 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11069
11070         * docs/faq/faq.xml:
11071         * docs/manual/manual.xml:
11072         * docs/pwg/pwg.xml:
11073         * docs/pwg/titlepage.xml:
11074           put version in documentation
11075
11076 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11077
11078         * tools/Makefile.am: fix man page installation
11079
11080 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11081
11082         * configure.ac:
11083           don't check for libxml when load/save and registry disabled (#105844)
11084         * gstreamer.spec.in:
11085           sync with fedora candidate spec
11086
11087 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11088
11089         * po/fr.po:
11090         * po/nl.po:
11091           replace multidisksrc with multifilesrc
11092
11093 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11094
11095         * po/POTFILES.in:
11096           update to multidisksrc => multifilesrc file renaming (#134145)
11097
11098 2004-02-11  David Schleef  <ds@schleef.org>
11099
11100         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11101         * docs/gst/tmpl/gstpadtemplate.sgml: same
11102         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11103         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11104         fixing dance.
11105         * gst/gstutils.c: Remove disabled code that uses GstProps.
11106         * gst/registries/gstxmlregistry.h: same
11107         * docs/random/ds/0.9-suggested-changes: random notes
11108
11109 2004-02-11  kost@imn.htwk-leipzig.de
11110
11111         reviewed by: David Schleef  <ds@schleef.org>
11112
11113         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11114         initialisation of clock (bug #134128)
11115
11116 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11117
11118         * configure.ac:
11119         * gst/elements/Makefile.am:
11120         * gst/elements/gstelements.c:
11121         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11122         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11123         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11124         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11125         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11126         * gst/elements/gstmultifilesrc.h:
11127           rename multidisksrc to multifilesrc (part of #122200)
11128
11129 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11130
11131         * docs/manuals.mak:
11132           fix automake complaints
11133         * gst-element-check.m4:
11134           fix unquotedness
11135
11136 2004-02-11  David Schleef  <ds@schleef.org>
11137
11138         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11139         * gst/gstatomic_impl.h: Disable sparc implementation.
11140
11141 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11142
11143         * gst-element-check.m4:
11144           fix underquoted macros as reported by automake 1.8.x (#133800)
11145         * configure.ac:
11146           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11147           by autopoint (fixes #132996)
11148
11149 2004-02-10  Andy Wingo  <wingo@pobox.com>
11150
11151         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11152         way to do inheritance.
11153         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11154         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11155         Routine docs.
11156         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11157         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11158         doc.
11159         (gst_pad_unlink, gst_pad_is_linked): Docs.
11160         (gst_pad_renegotiate): A brief description of capsnego.
11161         (gst_pad_try_set_caps): Document.
11162         (gst_pad_try_set_caps_nonfixed): Document.
11163         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11164         (gst_pad_set_parent): Deprecated (although not out of the API).
11165         (gst_pad_get_parent): Deprecated, although many plugins use this.
11166         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11167         are private and will go away in 0.9.
11168         (gst_pad_perform_negotiate): Doc.
11169         (gst_pad_link_unnegotiate): I think this is meant to be static.
11170         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11171         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11172         (gst_pad_get_peer): Doc updates.
11173         (gst_pad_caps_change_notify): Doc.
11174         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11175         (gst_ghost_pad_new): Doc fixes.
11176
11177         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11178         (gst_object_check_uniqueness): 
11179
11180         * gst/gstelement.c (gst_element_add_pad) 
11181         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11182         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11183         (gst_element_get_static_pad, gst_element_get_pad_list) 
11184         (gst_element_class_get_pad_template_list) 
11185         (gst_element_class_get_pad_template): Work on the docs.
11186         (gst_element_get_pad_template_list): Uses the class method.
11187         (gst_element_get_compatible_pad_template): Docs, and consolidate
11188         some test conditions. 
11189         (gst_element_get_pad_from_template): New static function.
11190         (gst_element_request_compatible_pad): Docs, and work with
11191         non-request compatible templates. 
11192         (gst_element_get_compatible_pad_filtered): Docs and remove
11193         redundant checks.
11194         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11195         (gst_element_link_filtered, gst_element_link_many) 
11196         (gst_element_link, gst_element_link_pads) 
11197         (gst_element_unlink_many): Docs.
11198
11199 2004-02-05  Andy Wingo  <wingo@pobox.com>
11200
11201         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11202         s/pointer/boxed/.
11203
11204         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11205
11206         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11207         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11208         with the type=GST_TYPE_CAPS. This allows language bindings to know
11209         what kind of data they're dealing with.
11210
11211         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11212         to NULL when g_value_init is called. GstCaps, which rolls its own
11213         type implementation, now does the same instead of allocating empty
11214         caps.
11215         (_gst_caps_initialize, _gst_caps_collect_value,
11216         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11217         table methods. This allows G_VALUE_COLLECT to work.
11218
11219 2004-02-05  Andy Wingo  <wingo@pobox.com>
11220
11221         * configure.ac:
11222         * testsuite/Makefile.am (SUBDIRS): 
11223         * testsuite/ghostpads/Makefile.am: 
11224         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11225
11226         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11227         These two routines are the only ones that set
11228         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11229         pad template. They should be made static, depending on ABI needs.
11230         (gst_real_pad_dispose): Handle the case of ghost pads without a
11231         parent. Assert after dealing with ghost pads that the ghost pad
11232         list is empty.
11233         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11234         set after creation.
11235         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11236         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11237         functions. set_property will call add_ghost_pad/remove_ghost_pad
11238         as appropriate.
11239         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11240
11241         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11242         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11243         (gst_element_remove_pad): Handle ghost pads as well.
11244         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11245         depending on API-stability needs).
11246
11247 2004-02-05  Andy Wingo  <wingo@pobox.com>
11248
11249         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11250         of course they're const
11251
11252 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11253
11254         * tools/Makefile.am:
11255         * tools/gst-feedback:
11256         * tools/gst-feedback-0.7:
11257           make gst-feedback versioned too for consistency
11258
11259 2004-02-11  David Schleef  <ds@schleef.org>
11260
11261         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11262         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11263
11264 2004-02-10  Julien MOUTTE <julien@moutte.net>
11265
11266         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11267         the structure does not contain a valid tag list. Adding a safety check
11268         to remove a noisy warning in that case.
11269
11270 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11271
11272         * gst/gst.c: fix name to be in line with others
11273
11274 2004-02-09  Julien MOUTTE <julien@moutte.net>
11275
11276         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11277         not shout that loud when len is 0. Just return 0 silently.
11278
11279 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11280
11281         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11282         because data_unref has one and I prefer the debug to be symetric.
11283         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11284         were refed when added to the queue and unrefed only once when the queue
11285         was flushed. Now the flush handler unref the buffers two times : first
11286         unref for the ref added when pushing in the queue's tail and second
11287         unref to destroy the flushed buffer.
11288
11289 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11290
11291         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11292
11293 2004-02-06  David Schleef  <ds@schleef.org>
11294
11295         * docs/random/ds/0.9-suggested-changes: Random ramblings
11296         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11297         to int before printing.
11298         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11299         * gst/parse/parse.l: same.  See bug #129600
11300
11301 2004-02-06  David Schleef  <ds@schleef.org>
11302
11303         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11304         (gst_index_add_entry), (gst_index_add_associationv),
11305         (gst_index_add_association): Add gst_index_add_associationv()
11306         and clean up gst_index_add_association(). #127133
11307
11308 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11309
11310         * autogen.sh: check out common with right tag if CVS/Tag exists
11311
11312 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11313
11314         * testsuite/ghostpads/ghostpads.c: (main):
11315           fix testsuite from segfaulting
11316
11317 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11318
11319         * Makefile.am: add release target
11320         * configure.ac: bump nano to 1
11321         * docs/random/release:
11322
11323 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11324
11325         * gst/gstcaps.h:
11326         * gst/gstelement.c: (gst_element_base_class_init),
11327         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11328         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11329         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11330         (gst_real_pad_dispose):
11331         * gst/gststructure.c: (gst_structure_free),
11332         (gst_structure_from_string):
11333           put reverted patch back in
11334         * gst/gstelement.c: (gst_element_remove_pad):
11335           free explicit caps if they're set
11336         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11337           copy the structure when fixating
11338
11339 2004-02-05  David Schleef  <ds@schleef.org>
11340
11341         * gst/gstmarshal.list:
11342         * gst/gstpad.c: (gst_real_pad_class_init),
11343         (_gst_real_pad_fixate_accumulator):
11344         Revert POINTER->BOXED change in signal marshaller.
11345
11346 === release 0.7.4 ===
11347                                                                                 
11348 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11349                                                                                 
11350         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11351         * configure.ac: changed for release
11352
11353 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11354
11355         * gstreamer.spec.in:
11356           bump required version of gtk-doc
11357
11358 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11359
11360         * gst/gstcaps.h:
11361         * gst/gstelement.c: (gst_element_base_class_init),
11362         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11363         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11364         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11365         (gst_real_pad_dispose):
11366         * gst/gststructure.c: (gst_structure_free),
11367         (gst_structure_from_string):
11368           revert patch that breaks applications, reapply after release
11369           to get this fixed properly
11370
11371 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11372
11373         * gst/gsttag.c: (_gst_tag_initialize):
11374         * gst/gsttag.h:
11375           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11376
11377 2004-02-04  David Schleef  <ds@schleef.org>
11378
11379         Fix some memleaks:
11380         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11381         (gst_spider_plug_from_srcpad):
11382         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11383
11384 2004-02-04  David Schleef  <ds@schleef.org>
11385
11386         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11387         a GstRealPad before accessing its structure members.
11388
11389 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11390
11391         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11392         (gst_clock_get_speed):
11393         * gst/gstclock.h:
11394           reset padding, remove unused fields
11395
11396 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11397
11398         * gst/autoplug/gstspideridentity.c:
11399         (gst_spider_identity_sink_loop_type_finding):
11400           use get_allowed_caps, not get_caps (fixes #132519)
11401         * gst/elements/gsttypefind.c: (stop_typefinding):
11402           use correct order when sending buffers and seeking
11403
11404 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11405
11406         * configure.ac:
11407         * gst/gstelement.h:
11408         * gst/gstpad.h:
11409         * gst/gstqueue.h:
11410           upgrade libtool CURRENT, reset padding
11411
11412 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11413
11414         * configure.ac:
11415           bump to prerelease
11416           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11417
11418 2004-02-04  David Schleef  <ds@schleef.org>
11419
11420         * docs/random/ds/0.9-suggested-changes: random notes
11421         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11422         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11423         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11424         expansion.
11425         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11426         (gst_filesink_get_query_types): same
11427         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11428         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11429         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11430         to use new GST_PTR_FORMAT.
11431         * gst/gstelement.h: deprecate function factory macros
11432         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11433         These are our last variadic macros that can't be replaced with
11434         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11435         attempting to deprecate gst_element_clock_wait().
11436         * gst/gstevent.h: same
11437         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11438         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11439         * gst/gstpad.h: deprecate function factory macros similar to above.
11440
11441 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11442
11443         * configure.ac:
11444         * tools/Makefile.am:
11445         * tools/gst-run.c: (popt_callback), (hash_print_key),
11446         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11447         (get_candidates), (main):
11448           add new source file to generate non-versioned wrapper binaries
11449           for our tools.
11450
11451 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11452
11453         * gst/gstevent.c: (_gst_event_free):
11454           actually break; inside the switch statement
11455         * gst/parse/grammar.y:
11456           fix memleak where GValues weren't unset
11457
11458 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11459
11460         * gst/gststructure.c: (gst_structure_from_string):
11461           fix huge memleak
11462         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11463         (new_entry), (gst_type_find_element_chain):
11464         * gst/gstelement.c: (gst_element_base_class_init),
11465         (gst_element_class_set_details):
11466         * gst/gstpad.c: (gst_pad_can_link_filtered):
11467           fix smaller memleaks
11468         * gst/gstpad.c: (gst_real_pad_dispose):
11469           check that explicit caps are gone
11470         * gst/gststructure.c: (gst_structure_free):
11471           actually free the structure
11472         * gst/gstelement.c: (gst_element_clear_pad_caps):
11473           unset explicit caps
11474
11475 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11476
11477         * tools/Makefile.am:
11478           use AM_CFLAGS since all the CFLAGS are the same
11479           use AM_LDFAGS
11480
11481 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11482
11483         * docs/manual/gnome.xml:
11484           expand example a little
11485         * gst/gst.c: (gst_init_with_popt_table),
11486         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11487           make sure popt option displays are done with right textdomain
11488           use GstPoptOption type
11489         * gst/gst.h:
11490           create GstPoptOption type
11491
11492 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11493
11494         * gst/gsterror.c: (_gst_stream_errors_init):
11495         * gst/gsterror.h:
11496           adding error type for no codec
11497         * po/POTFILES.in:
11498           add gst-inspect
11499         * po/nl.po:
11500           update dutch translation
11501         * tools/gst-inspect.c: (print_element_list), (main):
11502           do proper internationalization
11503         * tools/gst-launch.c: (idle_func):
11504           remove commented out function call
11505
11506 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11507
11508         * docs/README:
11509           add some error fixing notes
11510         * docs/gst/gstreamer-sections.txt:
11511           remove double entries
11512         * docs/gst/tmpl/gstbin.sgml:
11513         * docs/gst/tmpl/gstclock.sgml:
11514           remove override
11515         * docs/gst/tmpl/gstelement.sgml:
11516         * docs/gst/tmpl/gstindex.sgml:
11517         * docs/gst/tmpl/gstobject.sgml:
11518         * docs/gst/tmpl/gstpadtemplate.sgml:
11519         * docs/gst/tmpl/gstreamer-unused.sgml:
11520         * docs/gst/tmpl/gsttag.sgml:
11521         * docs/gst/tmpl/gstthread.sgml:
11522         * docs/gst/tmpl/gstxml.sgml:
11523         * gst/gsttag.h:
11524           sync header prototypes with c decls
11525         * gst/gsttaginterface.c:
11526           fix doc headers
11527
11528 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11529
11530         * gst/parse/Makefile.am:
11531         * gst/gstobject.h:
11532           get rid of gstmarshal.h dependency. It's not needed.
11533         * gst/gst.h:
11534         * gst/elements/gstfakesink.c:
11535         * gst/elements/gstfakesrc.c:
11536         * gst/elements/gstidentity.c:
11537         * gst/gstbin.c:
11538         * gst/gstelement.c:
11539         * gst/gstindex.c:
11540         * gst/gstobject.c:
11541         * gst/gstpad.c:
11542         * gst/gstthread.c:
11543         * gst/gstxml.c:
11544         * libs/gst/control/dparam.c:
11545         * libs/gst/control/dparammanager.c:
11546           include gstmarshal.h.
11547         Fixes #132045
11548
11549 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11550
11551         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11552         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11553         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11554         * gst/elements/gstfilesrc.h:
11555           don't ref the filesrc when creating mmaped buffers. Don't keep a
11556           list of not-yet-destroyed buffers.
11557         * gst/gstbuffer.h:
11558           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11559
11560 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11561
11562         * gst/gst.c: (init_pre):
11563           remove textdomain
11564
11565 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11566
11567         * docs/pwg/advanced-events.xml:
11568         * docs/pwg/advanced-scheduling.xml:
11569         * docs/pwg/intro-basics.xml:
11570         * docs/pwg/other-manager.xml:
11571         * docs/pwg/other-nton.xml:
11572         * docs/pwg/other-ntoone.xml:
11573         * docs/pwg/other-oneton.xml:
11574         * docs/pwg/pwg.xml:
11575           All sort of documentation... Forgot what. Point is that I want this
11576           in before I leave. The 'other-*' will be the last section and will
11577           explain issues specific to these type of elements.
11578
11579 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11580
11581         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11582         (gst_filesrc_get_read):
11583           set all the values on buffers that we can
11584
11585 2004-02-02  David Schleef  <ds@schleef.org>
11586
11587         Change usage of isblah() to g_ascii_isblah() to be more locale
11588         independent.  (#133076)
11589         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11590         * gst/gstutils.c:
11591         * gst/parse/parse.l:
11592
11593 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11594
11595         reviewed by: David Schleef  <ds@schleef.org>
11596
11597         Fix memory leaks:
11598         * gst/gstcaps.c: (gst_caps_to_string):
11599         * gst/registries/gstxmlregistry.c:
11600         (gst_xml_registry_add_path_list_func),
11601         (gst_xml_registry_parse_padtemplate):
11602
11603 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11604
11605         * gst/gstelement.c: (gst_element_default_error):
11606           suffix error messages with period
11607
11608 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11609
11610         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11611         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11612         * gst/gsterror.c: (gst_error_get_message):
11613           Suffix with dots
11614         * po/fr.po:
11615         * po/nl.po:
11616           Update translation files
11617
11618 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11619
11620         * gst/autoplug/gstspideridentity.c:
11621         (gst_spider_identity_sink_loop_type_finding):
11622         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11623         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11624         (gst_filesink_close_file), (gst_filesink_handle_event),
11625         (gst_filesink_chain):
11626         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11627         (gst_filesrc_get_read), (gst_filesrc_open_file):
11628         * gst/elements/gstidentity.c: (gst_identity_chain):
11629         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11630         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11631         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11632         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11633         * gst/gsterror.c: (_gst_core_errors_init),
11634         (_gst_library_errors_init), (_gst_resource_errors_init),
11635         (_gst_stream_errors_init), (gst_error_get_message):
11636         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11637         (gst_pad_recover_caps_error), (gst_pad_pull):
11638         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11639         * gst/schedulers/gstbasicscheduler.c:
11640         (gst_basic_scheduler_chainhandler_proxy),
11641         (gst_basic_scheduler_gethandler_proxy),
11642         (gst_basic_scheduler_cothreaded_chain):
11643           Suffix error messages with period.
11644           Use (NULL) instead of NULL
11645
11646 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11647
11648         * docs/gst/tmpl/gstelement.sgml:
11649         * docs/gst/tmpl/gstxml.sgml:
11650         * gst/gstelement.c: (gst_element_error_full):
11651           add element path to error
11652
11653 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11654
11655         * docs/random/mimetypes:
11656           update raw int/float info
11657         * gst/gsttag.c: (_gst_tag_initialize):
11658         * gst/gsttag.h:
11659           add GST_TAG_ENCODER
11660
11661 2004-01-30  David Schleef  <ds@schleef.org>
11662
11663         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11664           missing (#132991)
11665
11666 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11667
11668         reviewed by Benjamin Otte 
11669           parts of the patch submitted in bug #113913
11670
11671         * configure.ac:
11672           use AC_C_INLINE. Use = instead of == with test
11673         * examples/plugins/example.c:
11674         * gst/autoplug/gstspideridentity.c:
11675         * gst/elements/gstfdsrc.c:
11676         * gst/elements/gstfilesrc.c:
11677         * gst/elements/gstidentity.c:
11678         * gst/elements/gstmultidisksrc.c:
11679         * gst/elements/gststatistics.c:
11680         * gst/gstelement.c:
11681         * gst/gstobject.c:
11682         * gst/gstpad.c:
11683         * gst/gstpipeline.c:
11684         * gst/gstthread.c:
11685           don't end enums with a comma
11686         * gst/gstindex.c: (gst_index_compare_func):
11687           do explicit casting to gint
11688         * gst/gsttrace.c: (gst_trace_text_flush):
11689           #define strsize as a macro
11690
11691 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11692
11693         * docs/README:
11694         * docs/gst/gstreamer-docs.sgml:
11695         * docs/gst/gstreamer-sections.txt:
11696         * docs/gst/tmpl/gstelement.sgml:
11697         * docs/gst/tmpl/gsterror.sgml:
11698         * docs/gst/tmpl/gstinterface.sgml:
11699         * docs/gst/tmpl/gstreamer-unused.sgml:
11700         * docs/gst/tmpl/gststructure.sgml:
11701         * docs/gst/tmpl/gsttag.sgml:
11702         * docs/gst/tmpl/gsttaginterface.sgml:
11703         * docs/gst/tmpl/gstvalue.sgml:
11704         make sure all API ends up in the built docs
11705         * gst/gstinterface.c:
11706         * gst/gststructure.c: (gst_structure_id_set_value),
11707         (gst_structure_set_value), (gst_structure_id_get_value):
11708         * gst/gststructure.h:
11709         * gst/gstvalue.h:
11710         sync .h with .c declarations
11711
11712 2004-01-30  Julien Moutte  <julien@moutte.net>
11713
11714         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
11715         Ronald will fix riffread.
11716
11717 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11718
11719         * docs/pwg/advanced-interfaces.xml:
11720           Added tuner interface docs.
11721
11722 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11723
11724         * docs/random/mimetypes:
11725           correct Theora information
11726         * gst/gstelement.h:
11727           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
11728
11729 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11730
11731         * gst/gstelement.c: (gst_element_error_full):
11732         * gst/gstelement.h:
11733           GST_ELEMENT_ERROR in enum -> _IN_ERROR
11734
11735 2004-01-29  Julien MOUTTE  <julien@moutte.net>
11736
11737         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11738         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
11739         again and even before DISCONT.
11740         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
11741         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
11742         bytestream so that it's not stopping to fill the bytestream if events
11743         different than EOS or DISCONT are received. Instead it process them so
11744         that they go downstream.
11745
11746 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11747
11748         * docs/gst/tmpl/gstelement.sgml:
11749         * docs/gst/tmpl/gstreamer-unused.sgml:
11750         * docs/gst/tmpl/gstxml.sgml:
11751         * gst/autoplug/gstspideridentity.c:
11752         (gst_spider_identity_sink_loop_type_finding):
11753         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11754         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11755         (gst_filesink_close_file), (gst_filesink_handle_event),
11756         (gst_filesink_chain):
11757         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11758         (gst_filesrc_get_read), (gst_filesrc_open_file):
11759         * gst/elements/gstidentity.c: (gst_identity_chain):
11760         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11761         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11762         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11763         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11764         * gst/gstelement.h:
11765         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11766         (gst_pad_recover_caps_error), (gst_pad_pull):
11767         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11768         * gst/schedulers/gstbasicscheduler.c:
11769         (gst_basic_scheduler_chainhandler_proxy),
11770         (gst_basic_scheduler_gethandler_proxy),
11771         (gst_basic_scheduler_cothreaded_chain):
11772           gst_element_error -> GST_ELEMENT_ERROR
11773
11774 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11775
11776         * docs/Makefile.am:
11777         * docs/gst/tmpl/gstelement.sgml:
11778         * docs/gst/tmpl/gstxml.sgml:
11779         * docs/manuals.mak:
11780         * docs/pwg/advanced-request.xml:
11781         * docs/pwg/advanced-scheduling.xml:
11782         * docs/pwg/advanced-tagging.xml:
11783           fix non-validating docbook using CDATA
11784           make sure make check-local gets run first to check if it validates
11785
11786 2004-01-29  Julien MOUTTE <julien@moutte.net>
11787
11788         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
11789         handling (up and downstream).
11790         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
11791         my_filter thing.
11792
11793 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11794
11795         * docs/pwg/advanced-tagging.xml:
11796           Add docs about tag writing.
11797
11798 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11799
11800         * docs/pwg/advanced-tagging.xml:
11801           Add a part about tag reading and application signalling... Tag
11802           writing still needs to be documented.
11803         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11804           We can set file locations in READY, too.
11805
11806 2004-01-29  Julien MOUTTE <julien@moutte.net>
11807
11808         * docs/random/ds/element-checklist: Adding some notes about src
11809         events.
11810
11811 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11812
11813         * docs/random/mimetypes:
11814           Update docs to point to correct elements for various mimetypes, and
11815           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
11816           <stephane.loeuillet@tiscali.fr>.
11817
11818 2004-01-28  David Schleef  <ds@schleef.org>
11819
11820         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
11821
11822 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11823
11824         * docs/random/mimetypes:
11825           update docs for audio/x-raw-float. Add "buffer-frames=0 means
11826           undefined"
11827         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11828           make it only work in NULL.
11829         * gst/gstcaps.c:
11830           don't posion NULL caps
11831         * gst/gstelement.c: (gst_element_set_time):
11832           add debugging statement
11833         * gst/gstelement.c: (gst_element_emit_found_tag),
11834         (gst_element_found_tag_func), (gst_element_found_tags):
11835         * gst/gstelement.h:
11836           These functions take const taglists
11837         * gst/gstpad.c: (gst_pad_proxy_getcaps):
11838           fix memleak
11839         * gst/gstpad.c: (gst_pad_event_default):
11840           make more effort on handling discont and clocks, g_warn if everything
11841           fails
11842         * gst/gststructure.c: (gst_structure_remove_fields),
11843         (gst_structure_remove_fields_valist):
11844         * gst/gststructure.h:
11845           add gst_structure_remove_fields(_valist)
11846         * gst/gsttag.c:
11847           fix doc glitch
11848
11849 2004-01-28  David Schleef  <ds@schleef.org>
11850
11851         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
11852         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
11853         Fix memory leakage of gst_caps_to_string().
11854
11855         Use GST_PTR_FORMAT instead of gst_caps_to_string():
11856         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
11857         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
11858         (gst_spider_identity_sink_loop_type_finding):
11859         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11860         (find_suggest):
11861         * gst/gstpad.c: (gst_pad_try_relink_filtered),
11862         (gst_pad_set_explicit_caps):
11863         * gst/parse/grammar.y:
11864
11865 2004-01-28  David Schleef  <ds@schleef.org>
11866
11867         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
11868         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
11869         * docs/random/ds/0.9-suggested-changes: Notes from Company.
11870         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
11871         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
11872         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
11873         (gst_debug_log_default), (_gst_info_printf_extension),
11874         (_gst_info_printf_extension_arginfo):  Add printf extension.
11875         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
11876         * gst/gststructure.c: (gst_structure_to_string),
11877         (_gst_structure_parse_value): Use gst_value_deserialize() and
11878         remove old code.
11879         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
11880         (gst_value_deserialize_boolean), (gst_strtoi),
11881         (gst_value_deserialize_int), (gst_value_deserialize_double),
11882         (gst_value_deserialize_string), (gst_value_deserialize): Implement
11883         a bunch of deserialize functions and gst_value_deserialize.
11884         * gst/gstvalue.h: er, _de_serialize, not unserialize
11885         * testsuite/caps/string-conversions.c: (main): We don't currently
11886         handle (float) in caps, so convert these to (double).
11887         * testsuite/debug/Makefile.am: Add new test for the printf extension
11888         * testsuite/debug/printf_extension.c: (main): same
11889
11890 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11891
11892         * docs/random/company/time:
11893           Add some docs about clocking and time
11894
11895 2004-01-28  Julien MOUTTE <julien@moutte.net>
11896
11897         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
11898
11899 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11900
11901         * docs/pwg/advanced-clock.xml:
11902         * docs/pwg/advanced-dparams.xml:
11903         * docs/pwg/advanced-events.xml:
11904         * docs/pwg/advanced-interfaces.xml:
11905         * docs/pwg/advanced-midi.xml:
11906         * docs/pwg/advanced-request.xml:
11907         * docs/pwg/advanced-scheduling.xml:
11908         * docs/pwg/advanced-tagging.xml:
11909         * docs/pwg/advanced-types.xml:
11910         * docs/pwg/appendix-checklist.xml:
11911         * docs/pwg/building-boiler.xml:
11912         * docs/pwg/building-chainfn.xml:
11913         * docs/pwg/building-filterfactory.xml:
11914         * docs/pwg/building-pads.xml:
11915         * docs/pwg/building-props.xml:
11916         * docs/pwg/building-signals.xml:
11917         * docs/pwg/building-state.xml:
11918         * docs/pwg/building-testapp.xml:
11919         * docs/pwg/intro-basics.xml:
11920         * docs/pwg/intro-preface.xml:
11921         * docs/pwg/other-autoplugger.xml:
11922         * docs/pwg/other-sink.xml:
11923         * docs/pwg/other-source.xml:
11924         * docs/pwg/titlepage.xml:
11925           fix up id's
11926
11927 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11928
11929         * docs/95NonPath:
11930         * docs/HACKING:
11931         * docs/README:
11932         * docs/building-the-docs-on-debian:
11933           collect relevant bits of doc info
11934
11935 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11936
11937         * docs/pwg/advanced_tagging.xml:
11938           Half-assed commit so Thomas can re-arrange document IDs here to be
11939           consistent, too.
11940
11941 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11942
11943         * docs/manual/autoplugging.xml:
11944         * docs/manual/bins-api.xml:
11945         * docs/manual/bins.xml:
11946         * docs/manual/buffers-api.xml:
11947         * docs/manual/buffers.xml:
11948         * docs/manual/clocks.xml:
11949         * docs/manual/components.xml:
11950         * docs/manual/cothreads.xml:
11951         * docs/manual/debugging.xml:
11952         * docs/manual/dparams-app.xml:
11953         * docs/manual/dynamic.xml:
11954         * docs/manual/elements-api.xml:
11955         * docs/manual/elements.xml:
11956         * docs/manual/factories.xml:
11957         * docs/manual/gnome.xml:
11958         * docs/manual/goals.xml:
11959         * docs/manual/helloworld.xml:
11960         * docs/manual/helloworld2.xml:
11961         * docs/manual/init-api.xml:
11962         * docs/manual/intro.xml:
11963         * docs/manual/links-api.xml:
11964         * docs/manual/links.xml:
11965         * docs/manual/manual.xml:
11966         * docs/manual/motivation.xml:
11967         * docs/manual/pads-api.xml:
11968         * docs/manual/pads.xml:
11969         * docs/manual/plugins-api.xml:
11970         * docs/manual/plugins.xml:
11971         * docs/manual/programs.xml:
11972         * docs/manual/queues.xml:
11973         * docs/manual/quotes.xml:
11974         * docs/manual/schedulers.xml:
11975         * docs/manual/states-api.xml:
11976         * docs/manual/states.xml:
11977         * docs/manual/threads.xml:
11978         * docs/manual/typedetection.xml:
11979         * docs/manual/xml.xml:
11980           use chapter, part, section or misc as id starts for all bits
11981
11982 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11983
11984         * docs/gst/gstreamer-sections.txt:
11985           Fix up TITLE of the sections
11986
11987 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11988
11989         * docs/pwg/advanced_interfaces.xml:
11990           Add documentation on propertyprobing.
11991         * docs/pwg/advanced_events.xml:
11992         * docs/pwg/advanced_tagging.xml:
11993         * docs/pwg/building_boiler.xml:
11994         * docs/pwg/building_filterfactory.xml:
11995         * docs/pwg/pwg.xml:
11996           Move filterfactory and tagging into their own chapter, add a chapter
11997           on events. all these are empty placeholders that will be filled in
11998           some day.
11999
12000 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12001
12002         * docs/pwg/advanced_interfaces.xml:
12003           Docs for mixer interface. Also a check for website uploading.
12004
12005 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12006
12007         * docs/HACKING:
12008         * docs/Makefile.am:
12009         * docs/faq/Makefile.am:
12010         * docs/gst/Makefile.am:
12011         * docs/gst/tmpl/gstelement.sgml:
12012         * docs/gst/tmpl/gstplugin.sgml:
12013         * docs/gst/tmpl/gstreamer-unused.sgml:
12014         * docs/libs/Makefile.am:
12015         * docs/manual/Makefile.am:
12016         * docs/manuals.mak:
12017         * docs/pwg/Makefile.am:
12018         * docs/upload.mak:
12019           Separate out upload target and make it similar for
12020           both docbook and gtk-doc docs
12021
12022 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12023
12024         * docs/manuals.mak:
12025           Fix upload target to work with freedesktop
12026
12027 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12028
12029         * docs/pwg/advanced_types.xml:
12030           Add notes on creating your own types.
12031         * docs/pwg/building_boiler.xml:
12032         * docs/pwg/building_pads.xml:
12033         * docs/pwg/building_state.xml:
12034           Add some stuff about how to retrieve values from structures, how
12035           that relates to types and change layout slightly again to be almost
12036           perfect.
12037
12038 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12039
12040         * docs/pwg/advanced_dparams.xml:
12041         * docs/pwg/advanced_scheduling.xml:
12042           Change index layout slightly.
12043
12044 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12045
12046         * docs/pwg/advanced_clock.xml:
12047         * docs/pwg/advanced_interfaces.xml:
12048         * docs/pwg/advanced_midi.xml:
12049           General placeholders for now.
12050         * docs/pwg/advanced_request.xml:
12051           Explanation about sometimes and request pads.
12052         * docs/pwg/advanced_scheduling.xml:
12053           Concept of bytestream, loopfunctions and schedulers.
12054         * docs/pwg/building_boiler.xml:
12055           Add something about plugin-init.
12056
12057 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12058
12059         * docs/pwg/building_pads.xml:
12060           Fix broken docbook
12061
12062 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12063
12064         * docs/pwg/advanced_interfaces.xml:
12065         * docs/pwg/pwg.xml:
12066           Add as a placeholder for future filling-in.
12067         * docs/pwg/basics_autoplugging.xml:
12068         * docs/pwg/basics_buffers.xml:
12069         * docs/pwg/basics_elements.xml:
12070         * docs/pwg/basics_events.xml:
12071         * docs/pwg/basics_plugins.xml:
12072         * docs/pwg/basics_types.xml:
12073           Remove, because unused (this is all in intro_basics.xml).
12074         * docs/pwg/building_signals.xml:
12075           Short intro to signals + reference to GObject docs - we really
12076           shouldn't go into these sort of things to deply because we don't
12077           use them that extensively anyway.
12078         * docs/pwg/building_state.xml:
12079           Explanation of states. Benjamin, please check.
12080         * docs/pwg/building_testapp.xml:
12081           Put everything in one page - putting only a few lines of content
12082           per page doesn't really make sense.
12083
12084           Time to get into the advanced topics. ;).
12085
12086 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12087
12088         * docs/pwg/advanced_types.xml:
12089           Finish documenting the current state of mimetypes.
12090         * docs/pwg/building_boiler.xml:
12091         * docs/pwg/building_chainfn.xml:
12092         * docs/pwg/building_pads.xml:
12093         * docs/pwg/building_props.xml:
12094         * docs/pwg/building_testapp.xml:
12095           Start documenting the "how to build a simple audio filter" part
12096           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12097           states and (maybe?) a short introduction to capsnego in the chapter
12098           on pads (building_pads.xml). Capsnego should probably be explained
12099           fully in advanced_capsnego.xml or so.
12100
12101 2004-01-26  David Schleef  <ds@schleef.org>
12102
12103         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12104         * gst/gstpad.h: Add new function to allow element to (somewhat)
12105         specify non-fixed caps on a pad.
12106         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12107         that I added a few weeks ago.
12108
12109 2004-01-26  David Schleef  <ds@schleef.org>
12110
12111         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12112           making try_set_caps() work with non-fixed caps.
12113
12114 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12115
12116         * docs/pwg/advanced_types.xml:
12117         * docs/pwg/intro_basics.xml:
12118         * docs/pwg/intro_preface.xml:
12119         * docs/pwg/pwg.xml:
12120         * docs/pwg/titlepage.xml:
12121           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12122           in here (docs/random/mimetypes), and will from there on work on both
12123           updating outdated parts and adding missing parts.
12124           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12125
12126 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12127
12128         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12129           policy is set
12130
12131 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12132
12133         * gst/gstelement.h:
12134           remove gst_element_factory_get_version. It doesn't exist anymore.
12135         * gst/gstplugin.c:
12136         * gst/gstplugin.h:
12137           remove gst_plugin_set_name and change gst_plugin_get_longname to
12138           gst_plugin_get_description to match code.
12139         * gst/gsterror.h:
12140           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12141         * gst/gstpad.c: (gst_pad_try_set_caps):
12142           make it work with nonfixed caps.
12143           Note that even in the nonfixed case the link function of the pad
12144           that tries to set caps isn't called.
12145
12146 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12147
12148         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12149           fix bug where buffer was not assembled correctly
12150         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12151           silence by default
12152         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12153           only seek if there's no more buffers that could work without seeking
12154
12155 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12156
12157         * gst/gsttag.c: (_gst_tag_initialize):
12158         * gst/gsttag.h:
12159           Add application tag (for encoding/muxing app).
12160
12161 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12162
12163         * autogen.sh:
12164           make autopoint force, and libtoolize not copy
12165         * common/m4/as-docbook.m4:
12166           added docbook xml catalog setup check
12167         * common/m4/gst-doc.m4:
12168           use docbook check
12169
12170 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12171
12172         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12173         * gst/gsttag.h:
12174           add GstTagFlag
12175
12176 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12177
12178         * docs/gst/gstreamer-sections.txt:
12179         * docs/gst/tmpl/gst.sgml:
12180         * docs/gst/tmpl/gstbuffer.sgml:
12181         * docs/gst/tmpl/gstclock.sgml:
12182         * docs/gst/tmpl/gstelement.sgml:
12183         * docs/gst/tmpl/gstreamer-unused.sgml:
12184         * docs/gst/tmpl/gstxml.sgml:
12185           sync latest API changes to docs
12186
12187 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12188
12189         * gst/gstpluginfeature.c:
12190           fix doc snippet
12191         * tools/gst-inspect.c: (print_element_list):
12192           fix output of typefind
12193           add GPL header
12194         * tools/gst-launch.c:
12195           add GPL header
12196
12197 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12198
12199         * gst/elements/Makefile.am:
12200         * gst/elements/gstelements.c:
12201         * gst/elements/gsttypefindelement.c:
12202         * gst/elements/gsttypefindelement.h:
12203         * po/POTFILES.in:
12204         * po/fr.po:
12205         * po/nl.po:
12206           renamed gsttypefindelement to gsttypefind, conserving CVS history
12207
12208 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12209
12210         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12211         * gst/gsttag.h:
12212           add some tags used in ogg as well
12213           fix _ in replaygain tags
12214
12215 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12216
12217         * gst/gsterror.h:
12218           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12219
12220 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12221
12222         * gst/gstelement.c: (gst_element_error_full):
12223         * gst/gstelement.h:
12224           change _extended to _full
12225
12226 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12227
12228         reviewed by: <delete if not using a buddy>
12229
12230         * docs/gst/tmpl/gst.sgml:
12231         * docs/gst/tmpl/gstbuffer.sgml:
12232         * docs/gst/tmpl/gstclock.sgml:
12233         * docs/gst/tmpl/gstelement.sgml:
12234         * docs/gst/tmpl/gstreamer-unused.sgml:
12235         * docs/gst/tmpl/gstxml.sgml:
12236         * gst/gstelement.c: (gst_element_error_full):
12237         * gst/gstelement.h:
12238
12239 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12240
12241         * gst/gstelement.h: fix _gst_element_error_printf prototype
12242
12243 2004-01-20  David Schleef  <ds@schleef.org>
12244
12245         * gst/gststructure.c: (gst_structure_to_string):
12246         Convert function to use gst_value_serialize().
12247         * gst/gstvalue.c: (gst_value_serialize_list),
12248         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12249         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12250         (gst_value_serialize_int), (gst_value_serialize_double),
12251         (gst_string_wrap), (gst_value_serialize_string),
12252         (gst_value_serialize), (gst_value_deserialize):
12253         * gst/gstvalue.h:
12254         Add implementations for serialize.
12255
12256 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12257
12258         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12259         we want to keep that one in the future or change xvidenc.c to use 
12260         another error.
12261
12262 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12263
12264         * gst/gstelement.c: (_gst_element_error_printf):
12265         * gst/gstelement.h:
12266           privatise function
12267
12268 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12269
12270         * docs/random/error:
12271           doc explaining error system
12272         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12273           cleanup
12274
12275 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12276
12277         * gst/gst-i18n-app.h:
12278         * gst/gst-i18n-lib.h:
12279           remove inclusion of config.h
12280         * po/POTFILES.in:
12281         * po/nl.po:
12282           add gst/gstelement.c
12283
12284 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12285
12286         * po/nl.po: updated Dutch translation
12287
12288 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12289
12290         * gst/gsterror.c: (_gst_core_errors_init),
12291         (_gst_library_errors_init), (_gst_resource_errors_init),
12292         (_gst_stream_errors_init):
12293         remove ending punctuation dots
12294
12295 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12296
12297         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12298         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12299         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12300         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12301         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12302         use GST_ERROR_SYSTEM
12303
12304 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12305
12306         * gst/gstelement.c: (gst_element_error_printf),
12307         (gst_element_error_extended):
12308         * gst/gstelement.h:
12309           add a helper printf function so we can have NULL values passed.
12310
12311 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12312
12313         * gst/gstelement.h:
12314           add G_STMT macros to gst_element_error, which isn't strictly
12315           necessary but people tell me to anyway.
12316
12317 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12318
12319         * gst/Makefile.am:
12320         * gst/autoplug/gstspideridentity.c:
12321         (gst_spider_identity_sink_loop_type_finding):
12322         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12323         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12324         (gst_filesink_close_file), (gst_filesink_handle_event),
12325         (gst_filesink_chain):
12326         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12327         (gst_filesrc_map_region), (gst_filesrc_get_read),
12328         (gst_filesrc_open_file):
12329         * gst/elements/gstidentity.c: (gst_identity_chain):
12330         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12331         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12332         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12333         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12334         * gst/gst.h:
12335         * gst/gst_private.h:
12336         * gst/gstelement.c: (gst_element_class_init),
12337         (gst_element_default_error), (gst_element_error_func),
12338         (gst_element_error_extended):
12339         * gst/gstelement.h:
12340         * gst/gsterror.c: (_gst_core_errors_init),
12341         (_gst_library_errors_init), (_gst_resource_errors_init),
12342         (_gst_stream_errors_init), (gst_error_get_message):
12343         * gst/gsterror.h:
12344         * gst/gstinfo.c: (_gst_debug_init):
12345         * gst/gstmarshal.list:
12346         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12347         (gst_pad_recover_caps_error), (gst_pad_pull):
12348         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12349         * gst/schedulers/gstbasicscheduler.c:
12350         (gst_basic_scheduler_chainhandler_proxy),
12351         (gst_basic_scheduler_gethandler_proxy),
12352         (gst_basic_scheduler_cothreaded_chain):
12353         * po/POTFILES.in:
12354         * po/fr.po:
12355         * po/nl.po:
12356           change error signal
12357           add error categories
12358
12359 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12360
12361         * gst/gsttag.c: (_gst_tag_initialize):
12362         * gst/gsttag.h:
12363         Add replaygain tag
12364
12365 2004-01-18  Colin Walters  <walters@verbum.org>
12366
12367         * examples/retag/retag.c: Call gst_init before processing
12368         program args.  Add g_assert to _link_many call.
12369
12370 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12371
12372         * gst/gstpad.c: (gst_pad_alloc_buffer):
12373           Return a newly allocated buffer when the pad has no peer.
12374
12375 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12376
12377         * gst/gstclock.c: (gst_clock_get_time):
12378           make it compile with gcc 2.95 again.
12379           Patch by Scott Wheeler
12380
12381 2004-01-15  David Schleef  <ds@schleef.org>
12382
12383         * gst/gstcaps.h:
12384         Added gst_caps_is_simple() macro.
12385         * testsuite/caps/caps.c: (test1):
12386         * testsuite/caps/intersect2.c: (main):
12387         * testsuite/caps/intersection.c: (main):
12388         Fixes to make 'make check' work again after removing
12389         gst_caps_is_chained().
12390
12391 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12392
12393         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12394         and additions to the MIDI document.
12395
12396 2004-01-15  David Schleef  <ds@schleef.org>
12397
12398         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12399         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12400         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12401
12402 2004-01-15  David Schleef  <ds@schleef.org>
12403
12404         * gst/gstqueue.c:
12405         * gst/gstqueue.h:
12406         Fix the spelling of "treshold" and make min_threshold actually
12407         affect the queue.
12408
12409 2004-01-15  David Schleef  <ds@schleef.org>
12410
12411         * gst/gstcaps.c:
12412         Add lots of documentation.
12413         * gst/gstcaps.h:
12414         Deprecate a few functions.
12415         * gst/gstpad.c:
12416         Removed use of deprecated functions.
12417
12418 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12419
12420         * gst/gstpad.c: (gst_pad_is_linked):
12421         * gst/gstpad.h:
12422           implement gst_pad_is_linked
12423         * gst/gstelement.h:
12424           reserve space for initiate_state_change
12425
12426 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12427
12428         * gst/autoplug/gstspideridentity.c:
12429         (gst_spider_identity_sink_loop_type_finding):
12430           break infinite loop by just returning instead of looping
12431         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12432           set event time difference correctly. Set it to 1 second instead
12433           of 100ms to be more tolerant
12434         * gst/gstelement.c: (gst_element_set_time):
12435           add debugging output
12436
12437 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12438
12439         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12440           query if buffers are inside the pool, ignore events
12441
12442 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12443
12444         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12445         (gst_clock_set_speed), (gst_clock_set_active),
12446         (gst_clock_is_active), (gst_clock_reset),
12447         (gst_clock_handle_discont):
12448         * gst/gstclock.h:
12449           deprecate old interface and disable functions that aren't in use
12450           anymore.
12451         * gst/gstelement.h:
12452         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12453         (gst_element_set_time), (gst_element_adjust_time):
12454           add concept of "element time" and functions to get/set this time.
12455         * gst/gstelement.c: (gst_element_change_state):
12456           update element time correctly.
12457         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12458           This is a debug message, not a g_critical.
12459         * gst/gstpad.c: (gst_pad_event_default):
12460           handle discontinuous events right with element time.
12461         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12462           update to clocking fixes.
12463           set clocks on elements in READY=>PAUSED. The old behaviour caused
12464           a wrong element time on the first element that started playing.
12465         * gst/schedulers/gstbasicscheduler.c:
12466         (gst_basic_scheduler_class_init):
12467         * gst/schedulers/gstoptimalscheduler.c:
12468         (gst_opt_scheduler_class_init):
12469           remove code that just implements the default behaviour.
12470         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12471           update to use new clocking functions
12472         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12473         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12474           update to test new element time.
12475         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12476           use _get_allowed_caps instead of _get_caps. This catches filtered
12477           caps correctly.
12478         * testsuite/debug/commandline.c:
12479           update for new GST_DEBUG syntax.
12480         * testsuite/threads/Makefile.am:
12481           disable a test that only works sometimes.
12482
12483 2004-01-13  Julien MOUTTE <julien@moutte.net>
12484
12485         * po/LINGUAS: Adding fr.
12486         * po/fr.po: Adding french translation.
12487
12488 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12489
12490         * gst/parse/grammar.y:
12491         * po/POTFILES.in:
12492         * po/nl.po:
12493         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12494           translate parsing error messages
12495
12496 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12497
12498         * po/POTFILES.in: adding gst-launch
12499         * po/nl.po: updated translation, all 99 strings translated
12500         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12501         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12502           fix strings for translation
12503
12504 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12505
12506         * gst/gst.c:
12507           - capitalize beginnings of popt options
12508           - fix strings for translation
12509           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12510
12511 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12512
12513         * po/README: add some notes on how to update translations
12514
12515 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12516
12517         * ABOUT-NLS: removed, is autogenerated from autopoint
12518         * autogen.sh: add autopoint stuff
12519         * configure.ac: fix up gettext stuff
12520         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12521         * gst/elements/gsttypefindelement.c: add header include
12522         * gst/gettext.h: add header, copy from system-installed header
12523         * gst/gst-i18n-app.h: to be included by each app having translations
12524         * gst/gst-i18n-lib.h: to be included by each lib having translations
12525         * gst/gst.c: (init_pre): fix up gettext calls
12526         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12527         * po/LINGUAS: the new way to specify translations present
12528         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12529         * po/Makevars: the variables filled in for GStreamer
12530         * po/POTFILES.in: added new files with translations
12531         * po/de.po: has new strings
12532         * po/nl.po: readded, has new strings
12533
12534 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12535
12536         * gst/gsttag.c: fix some strings marked for translation
12537
12538 2004-01-13  Iain <iain@prettypeople.org>
12539
12540         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12541         group when we add an element to it, cos we unref it when we remove one
12542
12543 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12544
12545         * testsuite/debug/commandline.c: (debug_not_reached):
12546         * testsuite/debug/output.c: (check_message):
12547           fix testsuite
12548
12549 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12550
12551         * examples/cutter/.cvsignore:
12552         * examples/helloworld/.cvsignore:
12553         * examples/launch/.cvsignore:
12554         * examples/manual/.cvsignore:
12555         * examples/mixer/.cvsignore:
12556         * examples/pingpong/.cvsignore:
12557         * examples/plugins/.cvsignore:
12558         * examples/queue/.cvsignore:
12559         * examples/queue2/.cvsignore:
12560         * examples/queue3/.cvsignore:
12561         * examples/queue4/.cvsignore:
12562         * examples/retag/.cvsignore:
12563         * examples/thread/.cvsignore:
12564         * examples/typefind/.cvsignore:
12565         * examples/xml/.cvsignore:
12566         * gst/.cvsignore:
12567         * gst/autoplug/.cvsignore:
12568         * gst/elements/.cvsignore:
12569         * gst/indexers/.cvsignore:
12570         * gst/parse/.cvsignore:
12571         * gst/registries/.cvsignore:
12572         * gst/schedulers/.cvsignore:
12573         * libs/gst/bytestream/.cvsignore:
12574         * libs/gst/control/.cvsignore:
12575         * libs/gst/getbits/.cvsignore:
12576         * tests/.cvsignore:
12577         * tests/bufspeed/.cvsignore:
12578         * tests/instantiate/.cvsignore:
12579         * tests/memchunk/.cvsignore:
12580         * tests/muxing/.cvsignore:
12581         * tests/sched/.cvsignore:
12582         * tests/seeking/.cvsignore:
12583         * tests/threadstate/.cvsignore:
12584         * testsuite/.cvsignore:
12585         * testsuite/caps/.cvsignore:
12586         * testsuite/cleanup/.cvsignore:
12587         * testsuite/dynparams/.cvsignore:
12588         * testsuite/plugin/.cvsignore:
12589         * tools/.cvsignore:
12590           update - this is huge, because it includes *.bb, *.bbg and *.da files
12591           which are generated for gcov.
12592
12593 2004-01-11  David Schleef  <ds@schleef.org>
12594
12595         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12596         a function to parse integers in ways that strto[u]l() does not.
12597
12598 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12599
12600         * tools/gst-inspect.c: (print_caps):
12601           improve output of caps a bit
12602
12603 2004-01-11  David Schleef  <ds@schleef.org>
12604
12605         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12606         inherit correct flags (READONLY and DONTKEEP).
12607
12608 2004-01-11  David Schleef  <ds@schleef.org>
12609
12610         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12611         (gst_filesrc_map_region):
12612         * gst/gstbuffer.c: (_gst_buffer_initialize),
12613         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12614         (gst_buffer_new), (gst_buffer_create_sub),
12615         (gst_buffer_is_span_fast), (gst_buffer_span):
12616         * gst/gstbuffer.h:
12617         Change GstBuffer private structure element names. (all files)
12618         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12619         (gst_queue_link):
12620         * gst/gstqueue.h:
12621         Implement getcaps/pad_link functions that handle the case where
12622         there are data in the queue.
12623
12624 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12625
12626         * gst/elements/gstbufferstore.c:
12627           initialize debugging structure correctly
12628         * gst/elements/gsttee.c: (gst_tee_set_property):
12629           g_object_notify when property was changed
12630         * gst/elements/gsttypefindelement.c:
12631         (gst_type_find_element_change_state):
12632           clear caps correctly
12633
12634 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12635
12636         * gst/gstqueue.c: (gst_queue_init):
12637           Use better defaults for when a queue should block. This
12638           gets rid of jerky playback for quite a few files.
12639           It takes more memory.
12640
12641 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12642
12643         (gst_xml_registry_parse_padtemplate):
12644           make critical message slightly more useful
12645
12646 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12647
12648         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12649         (gst_debug_message_get), (gst_debug_log_default):
12650         * gst/gstinfo.h:
12651           Change gst_debug_log(_valist) to take a const format string.
12652           Change prototype of log function and functions using those to 
12653           take a GstDebugMessage instead of a string that requires using
12654           gst_debug_message_get.
12655
12656 2004-01-08  David Schleef  <ds@schleef.org>
12657
12658         * Makefile.am:
12659         * configure.ac:
12660         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12661         and -ftest-coverage, which allows gcov to show information about
12662         testsuite coverage.
12663
12664 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12665
12666         * gst/gstutils.h:
12667           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12668           GST_PARENT_CALL_WITH_DEFAULT
12669         * gst/elements/gstaggregator.c: 
12670         * gst/elements/gstbufferstore.c: 
12671         * gst/elements/gstfakesink.c: 
12672         * gst/elements/gstfakesrc.c: 
12673         * gst/elements/gstfdsink.c: 
12674         * gst/elements/gstfdsrc.c: 
12675         * gst/elements/gstfilesink.c: 
12676         * gst/elements/gstfilesrc.c: 
12677         * gst/elements/gstidentity.c: 
12678         * gst/elements/gstmd5sink.c: 
12679         * gst/elements/gstmultidisksrc.c:
12680         * gst/elements/gstpipefilter.c: 
12681         * gst/elements/gstshaper.c:
12682         * gst/elements/gststatistics.c:
12683         * gst/elements/gsttee.c:
12684         * gst/elements/gsttypefindelement.c:
12685           use them.
12686
12687 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
12688
12689         * docs/gst/gstreamer-docs.sgml: remove props
12690         * docs/gst/gstreamer-sections.txt: remove props
12691         * docs/gst/tmpl/gst.sgml:
12692         * docs/gst/tmpl/gstbin.sgml:
12693         * docs/gst/tmpl/gstbuffer.sgml:
12694         * docs/gst/tmpl/gstcaps.sgml:
12695         * docs/gst/tmpl/gstclock.sgml:
12696         * docs/gst/tmpl/gstelement.sgml:
12697         * docs/gst/tmpl/gstindex.sgml:
12698         * docs/gst/tmpl/gstobject.sgml:
12699         * docs/gst/tmpl/gstpad.sgml:
12700         * docs/gst/tmpl/gstpadtemplate.sgml:
12701         * docs/gst/tmpl/gstreamer-unused.sgml:
12702         * docs/gst/tmpl/gstthread.sgml:
12703         * docs/gst/tmpl/gstxml.sgml:
12704           sync with code reorganization
12705
12706 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
12707
12708         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12709         Make the 'Could not find compatible pad' message more informative.
12710
12711 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12712                                                                                 
12713         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
12714           Fix for if we pass NULL as property to location.
12715         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
12716         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
12717           Fix for instantiate-test (see below).
12718         * gst/gststructure.c: (_gst_structure_parse_value):
12719           Fix compile error on gcc-2.96.
12720         * configure.ac:
12721         * tests/Makefile.am:
12722         * tests/instantiate/Makefile.am:
12723         * tests/instantiate/create.c: (create_all_elements), (main):
12724           Add a test that instantiates all elements. This makes it easy to
12725           track dead code for old API/design (like setting event functions
12726           on sink pads and so on).
12727
12728 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
12729
12730         * gst/gstcaps.c: (gst_caps_append_structure):
12731           Move the poisoning to allow a NULL structure
12732         * gst/gstevent.c: (_gst_event_free):
12733           When freeing a navigation event, free the structure
12734           also
12735
12736 2004-01-04  David Schleef  <ds@schleef.org>
12737
12738         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12739         Remove usage of gst_pad_proxy_fixate.
12740         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
12741         (gst_caps_split_one), (gst_caps_replace):
12742         Add poisoning code.
12743         * gst/gstmarshal.list:
12744         Add pointer__pointer for fixate signal
12745         * gst/gstpad.c: (gst_real_pad_class_init),
12746         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12747         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
12748         (gst_pad_set_explicit_caps), (gst_pad_template_new):
12749         Add poisoning code. Add fixate signal on RealPad. Change
12750         set_explicit_caps() to take const GstCaps, like try_set_caps().
12751         * gst/gstpad.h:
12752         * testsuite/caps/Makefile.am:
12753         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
12754
12755 2004-01-03  David Schleef  <ds@schleef.org>
12756
12757         * gst/elements/gsttypefindelement.c:
12758         (gst_type_find_element_have_type), (gst_type_find_element_init):
12759         Use gst_pad_use_explicit_caps for src pad.
12760         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
12761         before using it.
12762
12763 2004-01-03  David Schleef  <ds@schleef.org>
12764
12765         * gst/gstelement.c: (gst_element_link_pads_filtered),
12766         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
12767         that linking was successful.
12768         * gst/gstpad.c: (gst_pad_link_free),
12769         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
12770         (gst_pad_link_try), (gst_pad_link_unnegotiate),
12771         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
12772         GstPadLinkReturn correctly between functions, and don't fail
12773         when DELAYED is used (DELAYED is very important).  Better
12774         cleanup on unlinking and unnegotiation.  Should fix some spider
12775         bugs.
12776
12777 2004-01-02  David Schleef  <ds@schleef.org>
12778
12779         * gst/gstelement.c: (gst_element_class_init),
12780         (gst_element_base_class_init): ->padtemplates should be cleared
12781         in base_init, since we need to have a fresh list for every
12782         class.  (Alternately, we chould copy the list and share the
12783         actual pad templates (not the list), but that would require
12784         changing every plugin to move pad template registration from
12785         base_init to class_init.)
12786
12787 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12788
12789         * gst/gstelement.c: (gst_element_class_add_pad_template):
12790           Refuse registering a pad template if another pad template
12791           with the same name already exists (#114715).
12792
12793 2004-01-02  David Schleef  <ds@schleef.org>
12794
12795         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
12796         (gst_caps_is_equal_fixed): Add new function.
12797         * gst/gstcaps.h: ditto.
12798         * gst/gstpad.c: (gst_real_pad_class_init),
12799         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
12800         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
12801         check new caps against existing caps -- if they're the same, return
12802         OK without renegotiating.  caps-nego-failed signal fixed so that
12803         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
12804         to save an extra caps copy.  Don't complete negotiation if a pad
12805         link function returns DELAYED.
12806
12807 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12808
12809         * gst/gstpad.c: (gst_pad_try_relink_filtered):
12810           Fix wrong g_return_if_fail
12811
12812 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
12813
12814         * gst/gstbin.c: (gst_bin_class_init):
12815         Change the marshalling of element_added/element_removed
12816         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
12817         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
12818
12819 2004-01-01  David Schleef  <ds@schleef.org>
12820
12821         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12822         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
12823         (gst_pad_use_explicit_caps):
12824         * gst/gstpad.h:
12825         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
12826         to use an internal getcaps and link fuction so that negotiation
12827         always results in the explicitly set caps.
12828         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
12829         are particularly useful for decoders.
12830
12831 2003-12-31  David Schleef  <ds@schleef.org>
12832
12833         * gst/elements/gstidentity.c: (gst_identity_class_init),
12834         (gst_identity_init), (gst_identity_chain),
12835         (gst_identity_set_property), (gst_identity_get_property):
12836         * gst/elements/gstidentity.h:
12837         * gst/gstqueue.c: (gst_queue_init):
12838           Negotiation fixes.
12839
12840 2003-12-31  David Schleef  <ds@schleef.org>
12841
12842         * gst/gstcaps.c: (gst_caps_intersect),
12843         (_gst_caps_normalize_foreach), (gst_caps_normalize):
12844           Implement gst_caps_normalize().
12845         * testsuite/caps/normalisation.c: (main):
12846           Add an additional test
12847
12848 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12849
12850         * gst/gstqueue.c: (gst_queue_init):
12851           use gst_pad_proxy_getcaps()
12852
12853 2003-12-31  David Schleef  <ds@schleef.org>
12854
12855         * gst/elements/gstshaper.c: (gst_shaper_link):
12856         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12857         * gst/gstqueue.c: (gst_queue_link):
12858           Negotiation fixes.
12859
12860 2003-12-31  David Schleef  <ds@schleef.org>
12861
12862         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
12863         * gst/gstpad.h: Add functions that are useful as default pad
12864         link and fixate functions for elements.
12865
12866 2003-12-30  David Schleef  <ds@schleef.org>
12867
12868         * gst/gstpad.c: (gst_pad_link_try):
12869           Fix segfault when attempting to return to old caps
12870
12871 2003-12-29  David Schleef  <ds@schleef.org>
12872
12873         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
12874         (gst_caps_structure_simplify), (gst_caps_simplify):
12875         * gst/gstcaps.h:
12876           Add simplify function
12877         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
12878         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
12879         * gst/gstpad.h:
12880           Copy over srcnotify, sinknotify when calling old pad_link
12881           functions.  Add new is_negotiated() function.
12882         * gst/gststructure.c: (gst_structure_copy):
12883           Fix an incredibly stupid bug that should have been noticed
12884           weeks ago.  _copy() returned the argument, not the new copy.
12885
12886 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12887
12888         * gst/gstcaps.c: (gst_caps_append):
12889           add sanity checks
12890         * gst/gstcaps.h: (gst_caps_debug):
12891           remove, it doesn't exist anymore.
12892         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
12893         (gst_element_threadsafe_properties_post_run):
12894           make debugging messages not clutter up THREAD debug category
12895         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
12896         (gst_element_change_state):
12897           update to new caps API
12898         * gst/gstinterface.c: (gst_implements_interface_cast):
12899           don't put vital code in g_return_if_fail
12900         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
12901         (gst_pad_link_filtered):
12902           add pst_pad_try_link and use it.
12903         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
12904           implement correctly, deprecate first one.
12905         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
12906           add and implement.
12907         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
12908           implement.
12909         (gst_pad_get_negotiated_caps):
12910           add and implement. Make GST_PAD_CAPS call this function.
12911         (gst_pad_get_caps):
12912           remove unneeded check..
12913         (gst_pad_recover_caps_error):
12914           disable, always return FALSE.
12915         (gst_real_pad_dispose):
12916           don't free caps and appfilter anymore, they're unused.
12917         * gst/gstpad.h:
12918           Reflect changes mentioned above.
12919         * gst/gstsystemclock.c: (gst_system_clock_wait):
12920           Make 'clock is way behind' a debugging message.
12921         * gst/gstthread.c: (gst_thread_change_state):
12922           Fix debugging message
12923
12924 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12925
12926         * gst/gstinfo.h:
12927           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
12928         * docs/gst/tmpl/gstreamer-unused.sgml:
12929           removed all traces of cvs conflicts
12930
12931 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12932
12933         * configure.ac:
12934         * gst/schedulers/cothreads_compat.h:
12935         * libs/Makefile.am:
12936           remove last instances of wingo cothread usage
12937
12938 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12939
12940         * gst/gstplugin.c:
12941         * gst/gstversion.h.in:
12942         * gst/parse/grammar.y:
12943           change comment block from /** to /* when not gtk-doc comments
12944
12945 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12946
12947         * gst/gst.c: whitespace and doc style fixes
12948
12949 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12950
12951         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
12952
12953 2003-12-24  Colin Walters  <walters@verbum.org>
12954
12955         * gst/elements/gsttypefindelement.c:
12956           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
12957           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
12958           Don't double-free caps.
12959
12960 2003-12-23  David Schleef  <ds@schleef.org>
12961
12962         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
12963           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
12964           Many little fixes and additions of debug statements to
12965           get rhythmbox working.
12966
12967 2003-12-23  Colin Walters  <walters@verbum.org>
12968
12969         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
12970         Use GST_PAD_LINK_SUCCESSFUL.
12971
12972 2003-12-23  David Schleef  <ds@schleef.org>
12973
12974         * gst/elements/gstaggregator.c:
12975         * gst/elements/gsttee.c:
12976           Use gst_pad_proxy_getcaps().
12977         * gst/gstpad.c:
12978         * gst/gstpad.h:
12979           Add gst_pad_proxy_getcaps(), which filter elements can use
12980           as a generic getcaps implementation.
12981           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
12982           was advertised.
12983
12984 2003-12-23  David Schleef  <ds@schleef.org>
12985
12986         * gst/gstpad.c:
12987           Rearrange/rewrite much of the pad negotiation code, since it
12988           resembled pasta.  This actually changes the way some
12989           negotiation works, since the previous code was inconsistent
12990           depending on how it was invoked.  Add (internal) structure
12991           GstPadLink, which is used to hold some information (more in
12992           the future) about the link between two pads.  Fixes a number
12993           of bugs, including random lossage of filter caps when the
12994           initial negotiation is delayed.  A few functions are still
12995           unimplemented.
12996         * gst/gstpad.h:
12997           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
12998           these when testing GstPadLinkReturn values instead of comparing
12999           directly.
13000
13001 2003-12-23  David Schleef  <ds@schleef.org>
13002
13003         * gst/gstvalue.c: 
13004         * gst/gstvalue.h:
13005           Rearrange lots of code.  Change registration of compare function
13006           into registration of compare/serialize/deserialize functions.
13007           Doesn't include implementation of gst_value_[de]serialize(),
13008           but that should be easy.
13009
13010 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13011
13012         * docs/gst/gstreamer-sections.txt:
13013         * docs/gst/tmpl/gstprops.sgml: removed
13014         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13015           David removed props and caps code, so let's remove their docs as well.
13016           Removed all no longer existing symbols from gstreamer-sections.txt
13017           
13018 2003-12-22  Colin Walters  <walters@verbum.org>
13019
13020         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13021           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13022           of tags directly.
13023
13024 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13025
13026         * gst/elements/gstelements.c:
13027           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13028         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13029           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13030           gst_caps (peer).
13031
13032 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13033
13034         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13035         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13036         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13037         (gst_spider_identity_sink_loop_type_finding):
13038         * gst/autoplug/gstspideridentity.h:
13039           Fix autoplugging in spider element, so it works with new caps.
13040           This was mainly caused by identifying empty caps incorrectly.
13041
13042 2003-12-22  David Schleef  <ds@schleef.org>
13043
13044         * gststructure.c, gstvalue.c, gstvalue.h: Add
13045           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13046           using g_value_copy()
13047
13048 2003-12-21  David Schleef  <ds@schleef.org>
13049
13050         * many, many files: Merge CAPS branch.  This includes:
13051           - implemention of GstValue and several GstValue types
13052           - implemention of GstStructure
13053           - entire rewrite of GstCaps
13054           - removal of GstProps
13055           - many changes to GstPad to compensate for new caps paradigm
13056           - removal of GstBufferpool
13057         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13058         gstvalue.h, gst/gstcaps[2]*.[ch]:
13059           - rename gstcaps2.[ch] to gstcaps.[ch]
13060
13061 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13062
13063         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13064         (gst_queue_chain), (gst_queue_handle_src_event):
13065           implement timeout for sending events. Workaround for if the
13066           pipeline on this queue is not passing any data.
13067
13068 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13069                                                                                 
13070         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13071         * moved CVS to freedesktop.org
13072