Oops, ignore the result of gst_pad_push_event here.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
2
3         * gst/base/gstbasesrc.c: (gst_base_src_loop):
4           Oops, ignore the result of gst_pad_push_event here.
5
6 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
7
8         * gst/base/gstbasesrc.c: (gst_base_src_loop),
9         (gst_base_src_activate_push):
10           Send discont event from the loop function, as pads
11           aren't activated yet in the activate_push handler.
12
13         * gst/gstbin.c: (bin_bus_handler):
14           Don't leak element name.
15
16 2005-07-18  Andy Wingo  <wingo@pobox.com>
17
18         * configure.ac: Use AS_LIBTOOL_TAGS.
19
20 2005-07-18  Wim Taymans  <wim@fluendo.com>
21
22         * docs/gst/gstreamer.types:
23         Remove deleted types.
24
25 2005-07-18  Wim Taymans  <wim@fluendo.com>
26
27         * check/elements/gstfakesrc.c: (GST_START_TEST):
28         * configure.ac:
29         * gst/Makefile.am:
30         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
31         (init_popt_callback):
32         * gst/gst.h:
33         * gst/gst_private.h:
34         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
35         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
36         * gst/gstbin.h:
37         * gst/gstbus.h:
38         * gst/gstconfig.h.in:
39         * gst/gstelement.c: (gst_element_class_init),
40         (gst_element_set_base_time), (gst_element_get_base_time),
41         (iterator_fold_with_resync), (gst_element_change_state),
42         (gst_element_dispose), (gst_element_get_bus):
43         * gst/gstelement.h:
44         * gst/gstelementfactory.h:
45         * gst/gsterror.c: (_gst_core_errors_init):
46         * gst/gsterror.h:
47         * gst/gstevent.h:
48         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
49         * gst/gstindex.c:
50         * gst/gstinfo.c: (_gst_debug_init):
51         * gst/gstmessage.c: (_gst_message_copy):
52         * gst/gstmessage.h:
53         * gst/gstminiobject.h:
54         * gst/gstobject.c:
55         * gst/gstobject.h:
56         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
57         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
58         * gst/gstpad.h:
59         * gst/gstparse.h:
60         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
61         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
62         (gst_pipeline_get_last_stream_time):
63         * gst/gstpipeline.h:
64         * gst/gstpluginfeature.h:
65         * gst/gstquery.h:
66         * gst/gstscheduler.c:
67         * gst/gstscheduler.h:
68         * gst/gststructure.h:
69         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
70         (gst_task_finalize), (gst_task_func), (gst_task_create),
71         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
72         (gst_task_stop), (gst_task_pause):
73         * gst/gsttask.h:
74         * gst/gsttypefind.h:
75         * gst/gsttypes.h:
76         * gst/registries/gstlibxmlregistry.c: (load_feature),
77         (gst_xml_registry_load), (gst_xml_registry_save_feature):
78         * gst/registries/gstxmlregistry.c:
79         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
80         * gst/schedulers/threadscheduler.c:
81         * libs/gst/control/dparammanager.h:
82         * tools/gst-inspect.c: (print_element_list),
83         (print_plugin_features), (print_element_features):
84         * tools/gst-xmlinspect.c: (print_element_list),
85         (print_plugin_info), (main):
86         Removed plugable schedulers.
87         Removed Scheduler/Manager from elements.
88         Removed gsttypes.h, rearranged includes.
89         Removed dependency pad<->element, element<>pipeline, and
90         various others,  fix includes.
91         implement gst_pad_get_parent() with gst_object_get_parent()
92         Make GstTask sefcontained.
93         Fix _get_state() on GstBin, it did not return ASYNC with a 0
94         timeout.
95         Fix endless loop in iterator_fold_with_resync.
96
97
98 2005-07-18  Wim Taymans  <wim@fluendo.com>
99
100         * gst/Makefile.am:
101         * gst/gstarch.h:
102         Remove old file.
103
104 2005-07-18  Wim Taymans  <wim@fluendo.com>
105
106         * gst/Makefile.am:
107         No more cothreads.h
108
109 2005-07-18  Wim Taymans  <wim@fluendo.com>
110
111         * gst/cothreads.c:
112         * gst/cothreads.h:
113         Let's remove these.
114
115 2005-07-18  Wim Taymans  <wim@fluendo.com>
116
117         * docs/design/part-dynamic.txt:
118         * docs/design/part-events.txt:
119         * docs/design/part-seeking.txt:
120         Some more docs in the works.
121
122         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
123         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
124         (gst_base_transform_setcaps), (gst_base_transform_get_size),
125         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
126         (gst_base_transform_handle_buffer),
127         (gst_base_transform_sink_activate_push),
128         (gst_base_transform_src_activate_pull),
129         (gst_base_transform_set_passthrough),
130         (gst_base_transform_is_passthrough):
131         Refcounting fixes.
132
133         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
134         Cleanups.
135
136         * gst/gstevent.c: (gst_event_finalize):
137         Set SRC to NULL.
138
139         * gst/gstutils.c: (gst_element_unlink),
140         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
141         (gst_pad_proxy_setcaps):
142         * gst/gstutils.h:
143         Add _get_parent_element() to get a pads parent as an element.
144
145 2005-07-18  Wim Taymans  <wim@fluendo.com>
146
147         * check/gst/gstbin.c: (GST_START_TEST):
148         Remove bogus test.
149
150 2005-07-18  Wim Taymans  <wim@fluendo.com>
151
152         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
153         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
154         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
155         (gst_base_sink_event), (gst_base_sink_do_sync),
156         (gst_base_sink_chain), (gst_base_sink_loop),
157         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
158         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
159         Refcounting fixes.
160         Fix logic for returning ASYNC when not prerolled.
161
162 2005-07-18  Wim Taymans  <wim@fluendo.com>
163
164         * gst/gstqueue.c: (gst_queue_handle_sink_event):
165         Fix nasty refcount bug.
166
167 2005-07-16 Philippe Khalaf <burger@speedy.org>
168         * gst/elements/gstfdsrc.c:
169         * gst/elements/gstfdsrc.h:
170         * gst/elements/gstelements.c:
171         * gst/elements/Makefile.am:
172         Ported fdsrc to 0.9.
173
174 2005-07-16  Wim Taymans  <wim@fluendo.com>
175
176         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
177         (gst_base_sink_do_sync):
178         Fix compile error.
179
180 2005-07-16  Wim Taymans  <wim@fluendo.com>
181
182         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
183         (gst_base_sink_event), (gst_base_sink_get_times),
184         (gst_base_sink_do_sync), (gst_base_sink_change_state):
185         * gst/base/gstbasesink.h:
186         Store and use discont values when syncing buffers as described
187         in design docs.
188         
189         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
190         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
191         (gst_base_src_activate_push):
192         Push discont event when starting.
193
194         * gst/elements/gstidentity.c: (gst_identity_transform):
195         Small cleanups.
196
197         * gst/gstbin.c: (gst_bin_change_state):
198         Small cleanups in base_time  distribution.
199
200         * gst/gstelement.c: (gst_element_set_base_time),
201         (gst_element_get_base_time), (gst_element_change_state):
202         * gst/gstelement.h:
203         Added methods for the base_time of the element.
204         Some MT fixes.
205
206         * gst/gstpipeline.c: (gst_pipeline_send_event),
207         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
208         (gst_pipeline_get_last_stream_time):
209         * gst/gstpipeline.h:
210         MT fixes.
211         Handle seeking as described in design doc, remove stream_time
212         hack.
213         Cleanups clock and stream_time selection code. Added accessors
214         for the stream_time.
215         
216
217 2005-07-16  Andy Wingo  <wingo@pobox.com>
218
219         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
220         (#305291).
221
222 2005-07-16  Wim Taymans  <wim@fluendo.com>
223
224         * check/gst/gstbin.c: (GST_START_TEST):
225         Make elements silent as the deep_notify refs the
226         parent, which might make the test fail.
227
228         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
229         Don't hold the lock for too long.
230
231 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
232
233         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
234           Don't unref the caps we passed to gst_caps_make_writable() after
235           passing them. gst_caps_make_writable() will do that for us.
236
237 2005-07-15  Andy Wingo  <wingo@pobox.com>
238
239         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
240         (#157311).
241
242         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
243         own marshalling function for the handoff signal. Properly type the
244         buffer as a buffer. Fixes some warnings. Should do a more general
245         solution.
246         (gst_identity_class_init): Plug into the right marshaller.
247
248 2005-07-15  Wim Taymans  <wim@fluendo.com>
249
250         * docs/design/part-TODO.txt:
251         * docs/design/part-clocks.txt:
252         * docs/design/part-element-sink.txt:
253         * docs/design/part-events.txt:
254         * docs/design/part-gstpipeline.txt:
255         Updated docs, mostly DISCONT related.
256
257 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
258
259         * docs/pwg/building-pads.xml:
260           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
261
262 2005-07-15  Andy Wingo  <wingo@pobox.com>
263
264         * tools/gst-typefind.c: Update, add copyright block.
265
266         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
267         Normalize and truncate caps before fixation.
268
269         * gst/gstcaps.h:
270         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
271         discards all but the first structure from its argument.
272
273 2005-07-15  Wim Taymans  <wim@fluendo.com>
274
275         * gst/base/gstbasetransform.c: (gst_base_transform_init),
276         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
277         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
278         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
279         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
280         (gst_base_transform_chain), (gst_base_transform_change_state),
281         (gst_base_transform_set_passthrough),
282         (gst_base_transform_is_passthrough):
283         * gst/base/gstbasetransform.h:
284         Make passthrough work using the bufferpools.
285         Changed API a bit, subclasses have to write into a buffer
286         provided by the base class.
287         More debug info in nego functions.
288         
289         * gst/elements/gstidentity.c: (gst_identity_init),
290         (gst_identity_transform):
291         Port to new base class.
292
293 2005-07-15  Wim Taymans  <wim@fluendo.com>
294
295         * gst/gstmessage.c: (gst_message_new_state_changed):
296         * tools/gst-launch.c: (event_loop), (main):
297         Totally dump messages in -launch with the -m option.
298         Fix message name for State messages,
299
300 2005-07-14  Wim Taymans  <wim@fluendo.com>
301
302         * gst/base/gstbasesrc.c: (gst_base_src_loop):
303         Post error messages on errors.
304
305 2005-07-14  Wim Taymans  <wim@fluendo.com>
306
307         * gst/gstcaps.c: (gst_caps_do_simplify):
308         Remove debug info.
309
310         * gst/gsterror.h:
311         Define error for stream stopped.
312
313         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
314         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
315         Do proper return values.
316
317         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
318         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
319         (gst_pad_get_range):
320         Better return values.
321
322         * gst/gstpad.h:
323         Reorganise return values, add macro to check for fatal errors.
324
325         * gst/gstqueue.c: (gst_queue_chain):
326         Return proper GstFlowReturn values,
327
328 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
329
330         * docs/gst/gstreamer-sections.txt:
331         * docs/gst/gstreamer.types:
332         * docs/gst/tmpl/gst.sgml:
333         * docs/gst/tmpl/gstbasesink.sgml:
334         * docs/gst/tmpl/gstbasesrc.sgml:
335         * docs/gst/tmpl/gstbasetransform.sgml:
336         * docs/gst/tmpl/gstbin.sgml:
337         * docs/gst/tmpl/gstbuffer.sgml:
338         * docs/gst/tmpl/gstcaps.sgml:
339         * docs/gst/tmpl/gstclock.sgml:
340         * docs/gst/tmpl/gstcompat.sgml:
341         * docs/gst/tmpl/gstconfig.sgml:
342         * docs/gst/tmpl/gstelement.sgml:
343         * docs/gst/tmpl/gstelementdetails.sgml:
344         * docs/gst/tmpl/gstelementfactory.sgml:
345         * docs/gst/tmpl/gstenumtypes.sgml:
346         * docs/gst/tmpl/gsterror.sgml:
347         * docs/gst/tmpl/gstevent.sgml:
348         * docs/gst/tmpl/gstfakesink.sgml:
349         * docs/gst/tmpl/gstfakesrc.sgml:
350         * docs/gst/tmpl/gstfilesink.sgml:
351         * docs/gst/tmpl/gstfilesrc.sgml:
352         * docs/gst/tmpl/gstfilter.sgml:
353         * docs/gst/tmpl/gstformat.sgml:
354         * docs/gst/tmpl/gstghostpad.sgml:
355         * docs/gst/tmpl/gstimplementsinterface.sgml:
356         * docs/gst/tmpl/gstindex.sgml:
357         * docs/gst/tmpl/gstindexfactory.sgml:
358         * docs/gst/tmpl/gstinfo.sgml:
359         * docs/gst/tmpl/gstiterator.sgml:
360         * docs/gst/tmpl/gstmacros.sgml:
361         * docs/gst/tmpl/gstmemchunk.sgml:
362         * docs/gst/tmpl/gstminiobject.sgml:
363         * docs/gst/tmpl/gstobject.sgml:
364         * docs/gst/tmpl/gstpad.sgml:
365         * docs/gst/tmpl/gstpadtemplate.sgml:
366         * docs/gst/tmpl/gstparse.sgml:
367         * docs/gst/tmpl/gstpipeline.sgml:
368         * docs/gst/tmpl/gstplugin.sgml:
369         * docs/gst/tmpl/gstpluginfeature.sgml:
370         * docs/gst/tmpl/gstquery.sgml:
371         * docs/gst/tmpl/gstqueue.sgml:
372         * docs/gst/tmpl/gstregistry.sgml:
373         * docs/gst/tmpl/gstregistrypool.sgml:
374         * docs/gst/tmpl/gstscheduler.sgml:
375         * docs/gst/tmpl/gstschedulerfactory.sgml:
376         * docs/gst/tmpl/gststructure.sgml:
377         * docs/gst/tmpl/gstsystemclock.sgml:
378         * docs/gst/tmpl/gsttaglist.sgml:
379         * docs/gst/tmpl/gsttagsetter.sgml:
380         * docs/gst/tmpl/gsttrace.sgml:
381         * docs/gst/tmpl/gsttrashstack.sgml:
382         * docs/gst/tmpl/gsttypefind.sgml:
383         * docs/gst/tmpl/gsttypefindfactory.sgml:
384         * docs/gst/tmpl/gsttypes.sgml:
385         * docs/gst/tmpl/gsturihandler.sgml:
386         * docs/gst/tmpl/gsturitype.sgml:
387         * docs/gst/tmpl/gstutils.sgml:
388         * docs/gst/tmpl/gstvalue.sgml:
389         * docs/gst/tmpl/gstversion.sgml:
390         * docs/gst/tmpl/gstxml.sgml:
391         * docs/libs/tmpl/gstcontrol.sgml:
392         * docs/libs/tmpl/gstdataprotocol.sgml:
393         * docs/libs/tmpl/gstdparam.sgml:
394         * docs/libs/tmpl/gstdplinint.sgml:
395         * docs/libs/tmpl/gstdpman.sgml:
396         * docs/libs/tmpl/gstdpsmooth.sgml:
397         * docs/libs/tmpl/gstgetbits.sgml:
398         * docs/libs/tmpl/gstunitconvert.sgml:
399         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
400         (gst_push_src_base_init), (gst_push_src_class_init),
401         (gst_push_src_init), (gst_push_src_create):
402         * gst/base/gstpushsrc.h:
403         * gst/elements/gstelements.c:
404         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
405         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
406         (gst_fake_sink_init), (gst_fake_sink_set_property),
407         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
408         (gst_fake_sink_event), (gst_fake_sink_preroll),
409         (gst_fake_sink_render), (gst_fake_sink_change_state):
410         * gst/elements/gstfakesink.h:
411         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
412         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
413         (gst_fake_src_base_init), (gst_fake_src_class_init),
414         (gst_fake_src_init), (gst_fake_src_event_handler),
415         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
416         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
417         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
418         (gst_fake_src_create_buffer), (gst_fake_src_create),
419         (gst_fake_src_start), (gst_fake_src_stop):
420         * gst/elements/gstfakesrc.h:
421         * gst/elements/gstfilesink.c: (_do_init),
422         (gst_file_sink_base_init), (gst_file_sink_class_init),
423         (gst_file_sink_init), (gst_file_sink_dispose),
424         (gst_file_sink_set_location), (gst_file_sink_set_property),
425         (gst_file_sink_get_property), (gst_file_sink_open_file),
426         (gst_file_sink_close_file), (gst_file_sink_query),
427         (gst_file_sink_event), (gst_file_sink_render),
428         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
429         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
430         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
431         * gst/elements/gstfilesink.h:
432         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
433         (gst_file_src_class_init), (gst_file_src_init),
434         (gst_file_src_finalize), (gst_file_src_set_location),
435         (gst_file_src_set_property), (gst_file_src_get_property),
436         (gst_file_src_map_region), (gst_file_src_map_small_region),
437         (gst_file_src_create_mmap), (gst_file_src_create_read),
438         (gst_file_src_create), (gst_file_src_is_seekable),
439         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
440         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
441         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
442         (gst_file_src_uri_handler_init):
443         * gst/elements/gstfilesrc.h:
444           more autistic cleanliness in functions/names/defines
445
446 2005-07-13  Andy Wingo  <wingo@pobox.com>
447
448         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
449         source couldn't negotiate.
450
451         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
452         connections again.
453
454         * gst/gstutils.h:
455         * gst/gstutils.c (gst_element_link_pads_filtered): New old
456         function. I am channeling Hades. Put your boots on suckers!!!
457
458 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
459
460         * testsuite/caps/Makefile.am:
461         * testsuite/caps/value_compare.c:
462         * testsuite/caps/value_intersect.c:
463         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
464           move two testsuite apps over to the check dir
465
466 2005-07-12  Wim Taymans  <wim@fluendo.com>
467
468         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
469         Added more debug info in the negotiate process.
470
471         * gst/gstmessage.h:
472         Prepare for segment playback.
473
474         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
475         Better debugging.
476
477         * gst/gstutils.c:
478         Some more docs.
479
480         * tools/gst-launch.c: (main):
481         NULL pipeline on errors.
482
483 2005-07-12  Andy Wingo  <wingo@pobox.com>
484
485         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
486         not it comes from a malloc region. Make sure our copy gets freed.
487
488 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
489
490         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
491         * check/gst/gstmessage.c: (GST_START_TEST):
492         * check/gst/gststructure.c: (GST_START_TEST),
493         (gst_structure_suite), (main):
494           more testing
495         * gst/gstelement.c: (gst_element_message_full):
496           clean up GError and debug string now that they get copied
497         * gst/gstmessage.c: (gst_message_new_error),
498         (gst_message_new_warning), (gst_message_parse_error),
499         (gst_message_parse_warning):
500           use GST_TYPE_G_ERROR for structure_new, and take copies of
501           arguments, so that we don't mess up refcounting
502
503 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
504
505         * check/Makefile.am:
506           add per-test valgrind targets
507         * check/gst-libs/gdp.c: (GST_START_TEST),
508         (gst_data_protocol_suite), (main):
509           clean up
510
511 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
512
513         * check/Makefile.am:
514           instate more valgrindable tests
515         * check/elements/gstfakesrc.c: (chain_func), (event_func),
516         (GST_START_TEST), (fakesrc_suite):
517         * check/gst/gstpad.c: (GST_START_TEST):
518         * check/gst/gststructure.c: (GST_START_TEST):
519           fix test leaks
520         * docs/gst/tmpl/gstminiobject.sgml:
521         * gst/gstpad.c: (gst_pad_finalize):
522           fix the static mutex leak
523
524 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
525
526         * check/Makefile.am:
527           add two more tests for valgrinding
528         * check/gst/gstvalue.c: (GST_START_TEST):
529           test refcount of deserialized buffer, found a leak
530         * docs/gst/gstreamer-docs.sgml:
531         * docs/gst/gstreamer-sections.txt:
532         * docs/gst/gstreamer.types:
533         * docs/gst/tmpl/gstminiobject.sgml:
534           add miniobject to docs
535         * gst/gstminiobject.c:
536           add some docs
537         * gst/gstvalue.c: (gst_value_deserialize_buffer),
538         (gst_string_unwrap):
539           fix a hard-to-find invalid write for one of the tests
540           fix a leak for deserialized buffers
541
542 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
543
544         * docs/pwg/advanced-events.xml:
545         * docs/pwg/advanced-request.xml:
546         * docs/pwg/advanced-scheduling.xml:
547         * docs/pwg/appendix-porting.xml:
548         * docs/pwg/building-boiler.xml:
549         * docs/pwg/intro-preface.xml:
550         * docs/pwg/other-ntoone.xml:
551           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
552           of example code and explanation for pad activation, loop() and
553           getrange() functions and a bit more. Remove old comments pointing
554           to loop-functions.
555         * examples/pwg/Makefile.am:
556           Add loop/getrange examples.
557
558 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
559
560         * configure.ac:
561           check for valgrind binary + some fixes
562         * check/gst.supp:
563           valgrind suppressions for the tests
564         * check/Makefile.am:
565           add a valgrind: target that valgrinds the unit tests
566         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
567         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
568         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
569         * check/gst/gstghostpad.c:
570           added some cleanup
571         * check/gst/gstdata.c:
572           removed
573         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
574         (thread_unref), (gst_mini_object_suite), (main):
575           added
576         * gst/gst.c: (gst_deinit):
577         * gst/gst.h:
578           add a method to clean up.
579         * gst/gstsystemclock.c: (gst_system_clock_dispose),
580         (gst_system_clock_obtain):
581           allow for disposing the system clock.
582         * tools/gst-launch.c: (main):
583           deinit
584
585 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
586
587         * docs/gst/tmpl/gstbasesrc.sgml:
588         * docs/gst/tmpl/gstfakesrc.sgml:
589         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
590         (gst_base_src_init), (gst_base_src_set_property),
591         (gst_base_src_get_property), (gst_base_src_get_range),
592         (gst_base_src_start):
593         * gst/base/gstbasesrc.h:
594           add num-buffers property
595         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
596         (gst_fakesrc_init), (gst_fakesrc_set_property),
597         (gst_fakesrc_get_property), (gst_fakesrc_create),
598         (gst_fakesrc_start):
599           remove num-buffers property
600
601 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
602
603         * docs/gst/gstreamer-sections.txt:
604         * docs/gst/tmpl/gstbasesink.sgml:
605         * docs/gst/tmpl/gstbasesrc.sgml:
606         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
607         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
608         (gst_base_sink_finalize), (gst_base_sink_set_clock),
609         (gst_base_sink_set_property), (gst_base_sink_get_property),
610         (gst_base_sink_handle_object), (gst_base_sink_event),
611         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
612         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
613         (gst_base_sink_loop), (gst_base_sink_deactivate),
614         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
615         (gst_base_sink_change_state):
616         * gst/base/gstbasesink.h:
617         * gst/base/gstbasesrc.h:
618         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
619         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
620         (gst_filesink_init):
621           more macro splitting
622
623 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
624
625         * gst/gstelement.c: (gst_element_get_bus):
626           add debug
627         * tools/gst-launch.c: (check_intr), (event_loop):
628           fix bus leaks
629
630 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
631
632         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
633           fix a caps leak
634
635 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
636
637         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
638         (gst_base_src_finalize):
639           add finalize method and clean up properly
640         * gst/gstpipeline.c: (gst_pipeline_dispose):
641           add debug
642
643 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
644
645         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
646         (gst_bin_suite):
647           add more things to check
648         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
649         * gst/gstelement.c:
650           more debug
651
652 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
653
654         * check/elements/gstfakesrc.c: (chain_func), (event_func),
655         (GST_START_TEST), (fakesrc_suite):
656         * check/gst-libs/gdp.c: (GST_START_TEST):
657         * check/gst/gst.c: (GST_START_TEST):
658         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
659         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
660         * check/gst/gstbus.c: (GST_START_TEST):
661         * check/gst/gstcaps.c: (GST_START_TEST):
662         * check/gst/gstdata.c: (GST_START_TEST):
663         * check/gst/gstelement.c: (GST_START_TEST):
664         * check/gst/gstghostpad.c: (GST_START_TEST):
665         * check/gst/gstiterator.c: (GST_START_TEST):
666         * check/gst/gstmessage.c: (GST_START_TEST):
667         * check/gst/gstobject.c: (GST_START_TEST):
668         * check/gst/gstpad.c: (GST_START_TEST):
669         * check/gst/gststructure.c: (GST_START_TEST):
670         * check/gst/gstsystemclock.c: (GST_START_TEST),
671         (gst_systemclock_suite):
672         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
673         * check/gst/gstvalue.c: (GST_START_TEST):
674         * check/pipelines/cleanup.c: (GST_START_TEST):
675         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
676         * check/states/sinks.c: (GST_START_TEST):
677         * check/gstcheck.c: (gst_check_init):
678         * check/gstcheck.h:
679           add debugging category
680           use GST_START_TEST now, so we add a debug line
681
682 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
683
684         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
685           add test for state change message on a bin
686         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
687           add another test
688         * gst/gstbin.c: (gst_bin_init):
689         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
690         * gst/gstelement.c: (gst_element_post_message),
691         (gst_element_set_state):
692         * gst/gstelementfactory.c: (gst_element_factory_create):
693         * gst/gstmessage.c: (gst_message_new):
694         * gst/gstscheduler.c:
695           various debugging additions and cleanups
696
697 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
698
699         * check/Makefile.am:
700         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
701         (main):
702           adding tests for elements
703         * gst/gstelement.c: (gst_element_dispose):
704
705 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
706
707         * gst/registries/gstlibxmlregistry.c: (load_feature):
708           plug more leaks.  A simple gst_init() now is leakfree, yay.
709
710 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
711
712         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
713         (gst_xml_registry_load):
714           plug another memleak
715
716 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
717
718         * configure.ac:
719           use GST_SET_ERROR_CFLAGS
720         * docs/faq/cvs.xml:
721           change to ERROR_CFLAGS
722
723 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
724
725         * configure.ac:
726           make GST_ERROR_CFLAGS overridable and re-enable Werror
727         * docs/faq/cvs.xml:
728           add a note about error CFLAGS
729         * docs/gst/tmpl/gstfakesrc.sgml:
730         * gst/elements/gstfakesrc.c:
731           comment out some unused code
732         * gst/gst.c: (split_and_iterate):
733         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
734         (load_feature):
735           plug some memleaks
736
737 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
738
739         * common/Makefile.am:
740         * common/gtk-doc.mak:
741         * docs/gst/Makefile.am:
742           factor out gtk-doc.mak
743
744 2005-07-07  Wim Taymans  <wim@fluendo.com>
745
746         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
747         (gst_thread_scheduler_dispose):
748         Unlock the STREAM_LOCK completely.
749
750 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
751
752         * check/Makefile.am:
753         * check/elements/.cvsignore:
754         * check/elements/gstfakesrc.c: (chain_func), (event_func),
755         (START_TEST), (fakesrc_suite), (main):
756         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
757         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
758         (gst_fakesrc_create), (gst_fakesrc_start):
759         * gst/elements/gstfakesrc.h:
760           adding a first element test
761
762 2005-07-07  Andy Wingo  <wingo@pobox.com>
763
764         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
765         debug message.
766
767 2005-07-07  Wim Taymans  <wim@fluendo.com>
768
769         * gst/gstquery.c:
770         * gst/gstquery.h:
771         Remove old types
772
773 2005-07-07  Wim Taymans  <wim@fluendo.com>
774
775         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
776         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
777         Allow subclasses to implement their own negotiation.
778
779 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
780
781         * docs/design/part-gstbin.txt:
782         * docs/design/part-gstpipeline.txt:
783           Update design notes to reflect the movement of
784           responsibility for bus handling from GstPipeline to
785           GstBin
786
787 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
788
789         * configure.ac:
790           Remove unnecessary queue2/3/4 examples.
791
792 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
793
794         * examples/Makefile.am:
795         * examples/helloworld/helloworld.c: (event_loop), (main):
796         * examples/queue/queue.c: (event_loop), (main):
797         * examples/queue2/queue2.c: (main):
798           Update a couple of the examples to work again.
799
800         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
801         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
802          Spelling corrections and extra debug.
803         
804         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
805         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
806         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
807         * gst/gstbin.h:
808         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
809         (gst_pipeline_change_state):
810         * gst/gstpipeline.h:
811           Move the bus handler for children to the GstBin, and create a
812           separate bus for receiving messages from children to the one the
813           bus sends 'upwards' on.
814
815 2005-07-06  Wim Taymans  <wim@fluendo.com>
816
817         * gst/base/README:
818         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
819         (gst_base_sink_handle_object), (gst_base_sink_loop),
820         (gst_base_sink_change_state):
821         * gst/base/gstbasesink.h:
822         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
823         (gst_base_src_init), (gst_base_src_setcaps),
824         (gst_base_src_getcaps), (gst_base_src_loop),
825         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
826         (gst_base_src_start), (gst_base_src_change_state):
827         * gst/base/gstbasesrc.h:
828         Make basesrc negotiate.
829         Handle the case where preroll fails in basesink.
830         Update README.
831
832 2005-07-06  Wim Taymans  <wim@fluendo.com>
833
834         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
835         Implement the fixate function.
836         Clean up acceptcaps.
837
838 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
839
840         * docs/pwg/building-filterfactory.xml:
841         * docs/pwg/pwg.xml:
842           Remove never-written filter-factory chapter; I'll add the various
843           base classes to part 4 ("other element types") later on.
844
845 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
846
847         * docs/pwg/advanced-negotiation.xml:
848         * docs/pwg/building-boiler.xml:
849         * docs/pwg/building-pads.xml:
850         * docs/pwg/pwg.xml:
851         * examples/pwg/Makefile.am:
852           Add a chapter on caps negotiation, simplify the original code
853           samples a bit w.r.t. caps negotiation, add link to the advanced
854           section. Add a bunch of examples showing different use cases of
855           different types of caps negotiation. Upstream renegotiation isn't
856           fully documented yet since nobody knows how that works.
857
858 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
859
860         * check/gst/gstpad.c:
861         * check/gstcheck.c:
862         * gst/gstpad.c: (gst_pad_get_internal_links_default):
863           if pad has no parent, return NULL as list of internal links
864
865 2005-07-05  Andy Wingo  <wingo@pobox.com>
866
867         * gst/elements/gstfilesrc.c:
868         * gst/elements/gstfakesrc.c: 
869         * gst/base/gstpushsrc.c:
870         * gst/base/gstbasesrc.h: 
871         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
872         
873 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
874
875         * Makefile.am:
876           better report generation target (lcov needs a patch)
877
878 2005-07-05  Andy Wingo  <wingo@pobox.com>
879
880         * gst/elements, testsuite: Null if we got it...
881
882 2005-07-05  Wim Taymans  <wim@fluendo.com>
883
884         * configure.ac:
885         * libs/gst/dataprotocol/Makefile.am:
886         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
887         * libs/gst/dataprotocol/dataprotocol.h:
888         * pkgconfig/Makefile.am:
889         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
890         * pkgconfig/gstreamer-dataprotocol.pc.in:
891         Ported dataprotol to 0.9. 
892         Added pkgconfig files.
893
894 2005-07-05  Andy Wingo  <wingo@pobox.com>
895
896         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
897         Default to returning TRUE for the case when tranform_caps returns
898         a fixed caps, like for identity or volume.
899
900         * check/gst/gstbus.c (pound_bus_with_messages): 
901         * check/gst/gstmessage.c (START_TEST): 
902         * check/pipelines/simple_launch_lines.c (got_handoff): Application
903         message API change.
904
905         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
906         logic weaks here: always run transform_caps, trying passthrough
907         operation only if the original caps intersects with the transform.
908
909         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
910         source and sink caps.
911
912         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
913         Intersect the peer caps with the pad template before going into
914         transform_caps.
915         (gst_base_transform_transform_caps): More debugging.
916
917         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
918         src argument.
919
920 2005-07-04  Edward Hervey  <edward@fluendo.com>
921
922         * gst/gstutils.c:
923         * gst/gstutils.h:
924         (gst_pad_add_*_probe): now returns the signal id for better wrapping
925         in bindings.
926
927 2005-07-04  Andy Wingo  <wingo@pobox.com>
928
929         * check/gst/gstpad.c: Only set explicit caps on pads.
930
931 2005-07-01  Andy Wingo  <wingo@pobox.com>
932
933         * tests/network-clock.scm: Commentary update.
934
935         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
936         Didn't really make sense, not implementable with basetransform,
937         etc.
938         (gst_identity_transform): Unref inbuf via make_writable. Feeble
939         attempt at implementing the sync property, needs an unlock method.
940
941         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
942         New func, by default returns the same caps (the identity
943         transformation).
944         (gst_base_transform_getcaps): Uses transform_caps to return
945         something sensible.
946         (gst_base_transform_setcaps): Complicated logic to get caps on
947         both pads, even if they are different, and to call set_caps once
948         for every time both pads get their caps set.
949         (gst_base_transform_handle_buffer): Give the ref to the transform
950         function. Allows in-place modification of the buffer.
951
952         * gst/base/gstbasetransform.h (transform_caps): New class method.
953         Given caps on one side, what can I do on the other.
954         (set_caps): Take two caps, one for each side of the element.
955
956         * gst/gstpad.h:
957         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
958         caps in place. This is safe because we can check the mutability of
959         the caps, and a good idea because fixate functions are just called
960         as a matter of last resort. (Not actually implemented.)
961         (gst_pad_set_caps): If the caps we're setting is actually the same
962         as the existing pad caps, just update the pointer without calling
963         setcaps. Assert that caps is either NULL or fixed, as per the
964         docs.
965
966         * gst/gstghostpad.c: Update for fixate changes.
967
968 2005-07-02  Andy Wingo  <wingo@pobox.com>
969
970         * gst/gstcaps.c:
971         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
972         two refcounts makes it immutable, which is enough. Doc more.
973
974 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
975
976         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
977           Put the mini_object into GValue as a mini_object,
978           not a gpointer, since that's how we declared
979           the signal.
980
981 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
982
983         * examples/pwg/Makefile.am:
984           Fix buildbot again.
985
986 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
987
988         * docs/pwg/building-testapp.xml:
989           Add extra check.
990         * examples/pwg/Makefile.am:
991           Fix buildbot.
992
993 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
994
995         * configure.ac:
996         * examples/Makefile.am:
997         * examples/pwg/Makefile.am:
998         * examples/pwg/extract.pl:
999           Enable building the PWG examples.
1000         * docs/pwg/advanced-interfaces.xml:
1001           Add URI interface stub.
1002         * docs/pwg/advanced-types.xml:
1003         * docs/pwg/other-autoplugger.xml:
1004         * docs/pwg/appendix-porting.xml:
1005         * docs/pwg/pwg.xml:
1006           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1007         * docs/pwg/building-boiler.xml:
1008         * docs/pwg/building-chainfn.xml:
1009         * docs/pwg/building-pads.xml:
1010         * docs/pwg/building-props.xml:
1011         * docs/pwg/building-state.xml:
1012         * docs/pwg/building-testapp.xml:
1013           Update the building-*.xml parts for 0.9 changes. All examples
1014           code blocks compile in examples/pwg/*.
1015
1016 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1017
1018         * docs/manual/advanced-autoplugging.xml:
1019         * docs/manual/appendix-checklist.xml:
1020         * docs/manual/appendix-integration.xml:
1021         * docs/manual/highlevel-components.xml:
1022           Fix playbin/decodebin examples, update docs a bit, mention bus
1023           instead of signals in various places, mention kmplayer and
1024           kaffeine since they have a working GStreamer backend in the KDE
1025           section.
1026
1027 2005-06-30  Wim Taymans  <wim@fluendo.com>
1028
1029         * CHANGES-0.9:
1030         * docs/design/draft-ghostpads.txt:
1031         * docs/design/draft-push-pull.txt:
1032         * docs/design/draft-query.txt:
1033         * docs/design/part-TODO.txt:
1034         * docs/design/part-query.txt:
1035         Added CHANGES-0.9 doc, updated status of other docs.
1036         
1037         * gst/gstquery.h:
1038         Remove "hmm" macro
1039
1040 2005-06-30  Wim Taymans  <wim@fluendo.com>
1041
1042         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1043         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1044         (gst_base_sink_change_state):
1045         * gst/base/gstbasesink.h:
1046         Some tweaks, only EOS and a buffer complete a preroll.
1047
1048 2005-06-30  Andy Wingo  <wingo@pobox.com>
1049
1050         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1051         activate_push down to the internal pad as well.
1052
1053 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1054
1055         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1056
1057         * gst/gsttaginterface.c:
1058           Some documentation fixes (#307394 and #307397).
1059
1060 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1061
1062         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1063
1064         * gst/gstvalue.c: (gst_value_intersect_list):
1065           Fix memleak (#309125).
1066
1067 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1068
1069         * docs/manual/advanced-dataaccess.xml:
1070           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1071         * docs/manual/basics-pads.xml:
1072           Add reference for filtered caps to above chapter.
1073
1074 2005-06-30  Wim Taymans  <wim@fluendo.com>
1075
1076         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1077         (gst_bin_change_state):
1078         Probes are gone.
1079         Lame attempt at making the state change function a bit
1080         more readable.
1081
1082 2005-06-30  Wim Taymans  <wim@fluendo.com>
1083
1084         * docs/design/part-clocks.txt:
1085         * docs/design/part-element-sink.txt:
1086         * docs/design/part-events.txt:
1087         * docs/design/part-preroll.txt:
1088         * docs/design/part-states.txt:
1089         Some more tweeks and additions to the docs.
1090
1091 2005-06-30  Wim Taymans  <wim@fluendo.com>
1092
1093         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1094         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1095         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1096         (gst_pad_check_pull_range), (gst_pad_get_range),
1097         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1098         * gst/gstpad.h:
1099         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1100         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1101         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1102         (gst_pad_remove_buffer_probe):
1103         Removed atomic operations, use existing LOCK.
1104         Move exception handling out of main code path.
1105
1106 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1107
1108         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1109         (silly_return_true_function), (gst_pad_class_init),
1110         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1111         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1112         (gst_pad_send_event):
1113           Fix accumulator, add default value by using _emitv() instead
1114           of _emit() for signal emission.
1115
1116 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1117
1118         * docs/manual/advanced-dataaccess.xml:
1119         * examples/manual/Makefile.am:
1120           Add probe example.
1121         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1122           Make work (??).
1123
1124 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1125
1126         * gst/elements/gstfilesink.c: (gst_filesink_render):
1127           Simplify code so that we don't have to handle short
1128           writes and return GST_FLOW_ERROR if an error occured.
1129
1130 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1131
1132         * docs/gst/gstreamer-docs.sgml:
1133           Remove probes more.
1134
1135 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1136
1137         * docs/gst/gstreamer-sections.txt:
1138         * docs/gst/tmpl/gstpad.sgml:
1139         * docs/gst/tmpl/gstprobe.sgml:
1140         * gst/Makefile.am:
1141         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1142         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1143         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1144         (gst_pad_push_event), (gst_pad_send_event):
1145         * gst/gstpad.h:
1146         * gst/gstutils.c: (gst_pad_add_data_probe),
1147         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1148         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1149         (gst_pad_remove_buffer_probe):
1150         * gst/gstutils.h:
1151           Remove old probes, add new g-signal-based probes and some utility
1152           functions.
1153
1154 2005-06-29  Edward Hervey  <edward@fluendo.com>
1155
1156         * gst/gstelementfactory.c:
1157         * gst/gstutils.h:
1158         * gst/gstutils.c:
1159         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1160         the definition to the header file.
1161
1162 2005-06-29  Andy Wingo  <wingo@pobox.com>
1163
1164         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1165         plugins from the source directory.
1166
1167 2005-06-29  Wim Taymans  <wim@fluendo.com>
1168
1169         * docs/gst/tmpl/gstbuffer.sgml:
1170         * docs/gst/tmpl/gstclock.sgml:
1171         Some fixings for blantently wrong text.
1172
1173 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1174
1175         * check/Makefile.am:
1176         * gst/gst.c: (add_path_func), (init_pre):
1177         * gst/gstregistry.c: (gst_registry_add_path):
1178           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1179           only scan the GST_PLUGIN_PATH locations, and not add
1180           system locations
1181
1182 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1183
1184         * docs/gst/gstreamer-sections.txt:
1185         * docs/gst/tmpl/gstbasesrc.sgml:
1186         * gst/gstelement.c:
1187         * gst/gstelement.h:
1188         * gst/gstevent.c:
1189         * gst/gstutils.c:
1190           doc fixes
1191
1192 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1193
1194         * docs/manual/advanced-autoplugging.xml:
1195           Fix autoplugging example.
1196
1197 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1198
1199         * docs/manual/advanced-autoplugging.xml:
1200         * docs/manual/mime-world.fig:
1201           Try to get autoplugging working, fix type detection. Fix text
1202           in hello-world image.
1203
1204 2005-06-29  Wim Taymans  <wim@fluendo.com>
1205
1206         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1207         (gst_base_sink_change_state):
1208         Small debug line.
1209
1210         * gst/gstclock.h:
1211         map SIGNAL and BROADCAST to the right function.
1212
1213         * gst/gstobject.h:
1214         Remove redundant braces.
1215
1216         * gst/gstpad.c: (gst_pad_set_caps):
1217         Don't call setcaps function when reseting caps to NULL.
1218
1219         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1220         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1221         (gst_system_clock_id_unschedule):
1222         Use BROADCAST as this is what we do.
1223
1224 2005-06-29  Wim Taymans  <wim@fluendo.com>
1225
1226         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1227         We are actually prerolling before commiting the state
1228         change. 
1229
1230 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1231
1232         * docs/manual/advanced-clocks.xml:
1233         * docs/manual/advanced-interfaces.xml:
1234         * docs/manual/advanced-metadata.xml:
1235         * docs/manual/advanced-position.xml:
1236         * docs/manual/advanced-schedulers.xml:
1237         * docs/manual/advanced-threads.xml:
1238         * docs/manual/appendix-porting.xml:
1239         * docs/manual/basics-bins.xml:
1240         * docs/manual/basics-bus.xml:
1241         * docs/manual/basics-elements.xml:
1242         * docs/manual/basics-helloworld.xml:
1243         * docs/manual/basics-pads.xml:
1244         * docs/manual/highlevel-components.xml:
1245         * docs/manual/manual.xml:
1246         * docs/manual/thread.fig:
1247           Update (until threads/scheduling) Application Development Manual;
1248           remove GstThread, add GstBus, add simple porting checklist, add
1249           documentation for tag writing, clocks, make all examples until this
1250           part compile and run.
1251         * examples/manual/Makefile.am:
1252           Update from changes to Application Development Manual; add bus
1253           example, remove thread example.
1254
1255 2005-06-28  Wim Taymans  <wim@fluendo.com>
1256
1257         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1258         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1259         (gst_bus_source_dispatch):
1260         Add debugging messages.
1261         Make internal methods static.
1262         Handle the case where the bus is flushed in the handler.
1263         
1264         * gst/gstelement.c: (gst_element_get_bus):
1265         Fix refcount in _get_bus();
1266
1267         * gst/gstpipeline.c: (gst_pipeline_change_state),
1268         (gst_pipeline_get_clock_func):
1269         Clock refcounting fixes.
1270         Handle the case where preroll timed out more gracefully.
1271         
1272         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1273         Clean up the internal thread in dispose. This is needed
1274         for subclasses that actually get disposed.
1275         
1276         * gst/schedulers/threadscheduler.c:
1277         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1278         (gst_thread_scheduler_dispose):
1279         Free thread pool in dispose.
1280
1281 2005-06-28  Andy Wingo  <wingo@pobox.com>
1282
1283         * tests/network-clock-utils.scm (debug, print-event): New utils.
1284
1285         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1286         (*packet-loss*): Unified loss probability.
1287         (network-time): Report out-of-band events.
1288
1289         * tests/plot-data: Add support for out-of-band events. Hack it
1290         into this script instead of passing it down the pipe; should fix
1291         this later.
1292
1293 2005-06-28  Wim Taymans  <wim@fluendo.com>
1294
1295         * docs/gst/gstreamer.types:
1296         * docs/gst/tmpl/gstbasesrc.sgml:
1297         * docs/gst/tmpl/gstpad.sgml:
1298         Docs fixes.
1299
1300 2005-06-28  Wim Taymans  <wim@fluendo.com>
1301
1302         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1303         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1304         (gst_proxy_pad_do_fixatecaps):
1305         Correctly proxy the check_pull_range function.
1306
1307 2005-06-28  Andy Wingo  <wingo@pobox.com>
1308
1309         * tests/network-clock.scm: Removed need for slib.
1310         
1311 2005-06-28  Wim Taymans  <wim@fluendo.com>
1312
1313         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1314         (gst_basesink_preroll_queue_flush):
1315         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1316         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1317         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1318         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1319         (gst_proxy_pad_set_property):
1320         * gst/gstpad.c:
1321         * gst/gstpad.h:
1322         * gst/gstqueue.c: (gst_queue_init):
1323         The deprecated pad loop function is removed now.
1324
1325 2005-06-28  Andy Wingo  <wingo@pobox.com>
1326
1327         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1328         New parameters, simulate network packet loss.
1329
1330         * tests/network-clock-utils.scm: Initialize the RNG.
1331
1332 2005-06-28  Wim Taymans  <wim@fluendo.com>
1333
1334         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1335         (gst_basesink_event), (gst_basesink_deactivate):
1336         Flushing the preroll queue always needs to unlock the waiters.
1337
1338 2005-06-28  Edward Hervey  <edward@fluendo.com>
1339
1340         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1341         Wheen a seek was successful on a pipeline, set the stream_time to the
1342         seek offset in order to have a synchronized stream_time.
1343
1344 2005-06-28  Wim Taymans  <wim@fluendo.com>
1345
1346         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1347         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1348         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1349         (gst_proxy_pad_do_fixatecaps):
1350         Call wrapper function instead of just calling the function
1351         pointers. This takes care of any locking and whatmore.
1352
1353 2005-06-28  Wim Taymans  <wim@fluendo.com>
1354
1355         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1356         (gst_pad_pull_range):
1357         * gst/gstpad.h:
1358         CONNECTED -> LINKED.
1359
1360 2005-06-28  Andy Wingo  <wingo@pobox.com>
1361
1362         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1363         source-munging commit!!!
1364
1365         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1366         (gst_object_sink): Take gpointer arguments, not GstObject --
1367         avoids casts. Like GLib.
1368
1369         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1370         activate.
1371
1372 2005-06-27  Andy Wingo  <wingo@pobox.com>
1373
1374         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1375         remaining buffer.
1376
1377         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1378         returns a sorted copy of the trace list.
1379         (gst_alloc_trace_print_live): New API, only prints traces with
1380         live objects. Sort the list.
1381         (gst_alloc_trace_print_all): Sort the list.
1382         (gst_alloc_trace_print): Align columns.
1383
1384         * gst/elements/gstttypefindelement.c:
1385         * gst/elements/gsttee.c:
1386         * gst/base/gstbasesrc.c:
1387         * gst/base/gstbasesink.c:
1388         * gst/base/gstbasetransform.c:
1389         * gst/gstqueue.c: Adapt for pad activation changes.
1390
1391         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1392         sched.
1393         (gst_pipeline_dispose): Drop ref on sched.
1394
1395         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1396         (gst_pad_activate_default): Push mode by default.
1397         (pre_activate_switch, post_activate_switch): New stubs, things to
1398         do before and after switching activation modes on pads.
1399         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1400         the pad's activate function to choose which mode to activate.
1401         Shortcut on deactivation and call the right function directly.
1402         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1403         mode.
1404         (gst_pad_activate_push): New API, same for push mode.
1405         (gst_pad_set_activate_function) 
1406         (gst_pad_set_activatepull_function) 
1407         (gst_pad_set_activatepush_function): Setters for new API.
1408
1409         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1410         Trace all miniobjects.
1411         (gst_mini_object_make_writable): Unref the arg if we copy, like
1412         gst_caps_make_writable.
1413
1414         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1415
1416         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1417         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1418         Adapt for new pad API.
1419
1420         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1421
1422         * gst/gstelement.h:
1423         * gst/gstelement.c (gst_element_iterate_src_pads) 
1424         (gst_element_iterate_sink_pads): New API functions.
1425         
1426         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1427         should fold into gstiterator.c in some form.
1428         (gst_element_pads_activate): Simplified via use of fold and
1429         delegation of decisions to gstpad->activate.
1430
1431         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1432         help in debugging.
1433
1434         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1435         class once in init, like gstmessage. Didn't run into this issue
1436         but it seems correct. Don't initialize a trace, gstminiobject does
1437         that.
1438
1439         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1440         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1441         to the bus.
1442         (assert_live_count): New util function, uses alloc traces to check
1443         cleanup.
1444
1445         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1446         To be modified when unlink drops the internal pad.
1447
1448 2005-06-27  Wim Taymans  <wim@fluendo.com>
1449
1450         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1451         (gst_bin_change_state):
1452         Cleanup the get_state() function a little, make sure it
1453         iterates the same set of elements.
1454         Added stub iterate_state_order().
1455
1456 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1457
1458         * docs/gst/gstreamer-docs.sgml:
1459         * docs/gst/gstreamer-sections.txt:
1460         * docs/gst/gstreamer.types:
1461         * docs/gst/tmpl/gstbasesink.sgml:
1462         * docs/gst/tmpl/gstbasesrc.sgml:
1463         * docs/gst/tmpl/gstbasetransform.sgml:
1464         * docs/gst/tmpl/gstelement.sgml:
1465         * docs/gst/tmpl/gstiterator.sgml:
1466         * gst/base/gstbasesrc.c:
1467         * gst/base/gstbasesrc.h:
1468         * gst/base/gstbasetransform.h:
1469         * gst/gstelement.c:
1470         * gst/gstiterator.h:
1471           adding basetransform and iterator docs
1472
1473 2005-06-27  Andy Wingo  <wingo@pobox.com>
1474
1475         * docs/design/part-activation.txt: Notes on how activation should
1476         work -- not quite implemented yet.
1477
1478 2005-06-25  Wim Taymans  <wim@fluendo.com>
1479
1480         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1481         At least get the chain function correct, needs more
1482         fixing.
1483
1484 2005-06-25  Wim Taymans  <wim@fluendo.com>
1485
1486         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1487         (gst_basesink_handle_object), (gst_basesink_event),
1488         (gst_basesink_do_sync), (gst_basesink_handle_event),
1489         (gst_basesink_change_state):
1490         * gst/gsttask.h:
1491         Right, two problems here: ghostpads don't take locks and
1492         glib _rec_mutex_lock_full() with depth==0 still locks.
1493         Catch illegal locking and g_warn them.
1494
1495 2005-06-25  Wim Taymans  <wim@fluendo.com>
1496
1497         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1498         Have to check for completion now...
1499
1500 2005-06-25  Wim Taymans  <wim@fluendo.com>
1501
1502         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1503         (gst_basesink_handle_object), (gst_basesink_event),
1504         (gst_basesink_do_sync), (gst_basesink_handle_event),
1505         (gst_basesink_change_state):
1506         * gst/gstpad.h:
1507         Unlock STREAM_LOCK whatever the recursion was.
1508
1509 2005-06-25  Wim Taymans  <wim@fluendo.com>
1510
1511         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1512         (gst_basesink_preroll_queue_empty),
1513         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1514         (gst_basesink_event), (gst_basesink_do_sync),
1515         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1516         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1517         (gst_basesink_change_state):
1518         Reworked the base sink, handle event and buffer serialisation
1519         correctly and removed possible deadlock.
1520         Handle EOS correctly.
1521
1522 2005-06-25  Wim Taymans  <wim@fluendo.com>
1523
1524         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1525         (gst_pipeline_change_state):
1526         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1527         Allow elements to post EOS in the state change function.
1528         Fix up -launch, make it exit the poll loop when the
1529         pipeline actually changed state.
1530         Fix up warning parsing in -launch.
1531
1532 2005-06-25  Wim Taymans  <wim@fluendo.com>
1533
1534         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1535         (gst_tee_sink_activate):
1536         Core takes STREAM_LOCK for us now.
1537
1538 2005-06-25  Wim Taymans  <wim@fluendo.com>
1539
1540         * gst/gstelement.c: (gst_element_get_state_func),
1541         (gst_element_set_state):
1542         * gst/gstelement.h:
1543         * gst/gstmessage.c: (gst_message_parse_error),
1544         (gst_message_parse_warning):
1545         Keep track of current target state while performing a state
1546         change so that subclasses can do something interesting.
1547         Fix parsing of warning/error messages when GError is NULL.
1548
1549 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1550
1551         * docs/gst/Makefile.am:
1552         * docs/gst/gstreamer-docs.sgml:
1553         * docs/gst/gstreamer-sections.txt:
1554         * docs/gst/gstreamer.types:
1555         * docs/gst/tmpl/gstbasesink.sgml:
1556         * docs/gst/tmpl/gstbasesrc.sgml:
1557         * docs/gst/tmpl/gstbin.sgml:
1558         * docs/gst/tmpl/gstcompat.sgml:
1559         * docs/gst/tmpl/gstfakesink.sgml:
1560         * docs/gst/tmpl/gstfakesrc.sgml:
1561         * docs/gst/tmpl/gstfilesink.sgml:
1562         * docs/gst/tmpl/gstfilesrc.sgml:
1563         * docs/gst/tmpl/gstindex.sgml:
1564         * docs/manual/appendix-quotes.xml:
1565         * gst/base/gstbasesrc.h:
1566         * gst/elements/gstfakesrc.h:
1567         * gst/gstmessage.h:
1568           start pulling in base classes and elements in our docs
1569
1570 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1571
1572         * docs/gst/Makefile.am:
1573         * docs/libs/Makefile.am:
1574           fixed make distcheck with gtk-doc 1.3
1575
1576 2005-06-23  Wim Taymans  <wim@fluendo.com>
1577
1578         * gst/gstelement.c: (gst_element_get_state_func),
1579         (gst_element_set_state), (gst_element_change_state):
1580         When the state did not change, also report NO_PREROLL
1581         when it matters.
1582
1583 2005-06-23  Wim Taymans  <wim@fluendo.com>
1584
1585         * gst/gstpad.c: (gst_pad_event_default):
1586         * gst/gstqueue.c: (gst_queue_loop):
1587         No unsafe task pausing please.
1588
1589 2005-06-23  Wim Taymans  <wim@fluendo.com>
1590
1591         * gst/schedulers/threadscheduler.c:
1592         (gst_thread_scheduler_task_start),
1593         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1594         Ref the task before pushing it on the threadpool. This
1595         makes sure that we have a ref when the threadfunction is
1596         actually called.
1597
1598 2005-06-23  Andy Wingo  <wingo@pobox.com>
1599
1600         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1601         offset is greater than the file's size.
1602
1603         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1604         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1605         * gst/gstobject.c (gst_object_class_init): Make the class lock
1606         recursive. Wim won't let me drop deep_notify. Decodebin works
1607         again, whoopdy doo.
1608
1609         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1610         internal pad, and hacks accordingly. Doesn't do it on the target
1611         pad because we change its caps. Probably catches all cases of
1612         interest tho.
1613         (gst_ghost_pad_set_property): Connect to notify::caps as
1614         appropritate.
1615
1616         * tests/network-clock.scm (plot-simulation): Pipe data to the
1617         elite python skript.
1618
1619         * tests/network-clock-utils.scm (define-parameter): New macro,
1620         defines a parameter that can be set via the command line.
1621         (set-parameter!, parse-parameter-arguments): Command line args
1622         parser.
1623
1624         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1625         stdin.
1626
1627 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1628
1629         * gst/elements/gsttypefindelement.c:
1630         (gst_type_find_element_handle_event):
1631           Don't restart typefinding on a discont.
1632         * gst/gstelement.c: (gst_element_set_state):
1633           Debug spelling fix.
1634         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1635           Allow changing mode of an active pad.
1636           Debug output fixes.
1637         * gst/registries/gstlibxmlregistry.c: (load_feature):
1638           Don't cast a static pad template to a normal pad template.
1639
1640 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1641
1642         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1643         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1644           remove gst_strtoll completely, since it didn't actually do
1645           anything more than what g_ascii_strtoull already does.
1646           check for range errors when deserializing
1647           do a cast for the unsigned cases; but further fixing needs
1648           a decision on what the interpretation of "(int)" and
1649           deserialization should be for values that fall outside the
1650           type's boundaries (ie, refuse, or interpret as casting)
1651
1652 2005-06-23  Wim Taymans  <wim@fluendo.com>
1653
1654         * check/Makefile.am:
1655         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1656         * docs/design/part-live-source.txt:
1657         * docs/design/part-states.txt:
1658         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1659         (gst_basesrc_set_live), (gst_basesrc_is_live),
1660         (gst_basesrc_get_range), (gst_basesrc_activate),
1661         (gst_basesrc_change_state):
1662         * gst/base/gstbasesrc.h:
1663         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1664         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1665         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1666         * gst/gstelement.c: (gst_element_get_state_func),
1667         (gst_element_set_state):
1668         * gst/gstelement.h:
1669         * gst/gsttypes.h:
1670         * tools/gst-launch.c: (event_loop), (main):
1671         Added support for live sources and other elements that
1672         cannot do preroll.
1673         Updated design docs, added live-source design doc.
1674         Implemented live source functionality in basesrc
1675         Fix error condition in _bin_get_state()
1676         Implement live source handling in -launch.
1677         Added check for live sources.
1678         Fixed case in GstBin where elements were changed state
1679         multiple times.
1680
1681
1682 2005-06-23  Andy Wingo  <wingo@pobox.com>
1683
1684         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1685         borken refcounting.
1686
1687         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1688         gst_caps_replace takes care of this for us.
1689
1690         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1691         gst_pad_set_caps on the target, not just its setcaps() function.
1692
1693         * tests/network-clock.scm: 
1694         * tests/network-clock-utils.scm: A network clock simulator.
1695         Something of an algorithmic testbed before doing something in C.
1696
1697 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1698
1699         * check/Makefile.am:
1700         * check/gst/capslist.h:
1701           copy over from 0.8, and add two with bitmasks specified with
1702           (int) 0xFF...
1703         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1704           add test to parse everything from capslist.h
1705         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
1706         (main):
1707           add test for structure deserialization
1708         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1709           add tests for deserialization of strings to int types
1710         * gst/gststructure.c: (gst_structure_nth_field_name):
1711         * gst/gststructure.h:
1712           add a way to get the name of a field referenced by index
1713         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1714           instead of checking if the resulting long long lies between
1715           min and max, we check if the long long would fit into
1716           a number of bytes for the final type.
1717           This fixes cases where a string represents 2^32 - 1, which
1718           when cast to int would be the (valid) -1, but is bigger than
1719           G_MAXINT
1720
1721 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1722
1723         * gst/parse/grammar.y:
1724           add a log line for type deserialization
1725
1726 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1727
1728         * check/gst/gstvalue.c: (START_TEST):
1729         * gst/gstvalue.c: (gst_value_deserialize):
1730           return long long, not int, so gint64 deserialization actually
1731           works.  Is there any flag that makes the compiler check this ?
1732           Fixes #308559
1733
1734 2005-06-22  Wim Taymans  <wim@fluendo.com>
1735
1736         * gst/gstbuffer.h:
1737         Added convenience macros for setting buffers in GValue.
1738
1739 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1740
1741         * check/gst/.cvsignore:
1742         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1743           add a test deserializing int64, and comment part out because
1744           it fails, yay !
1745
1746 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1747
1748         * check/Makefile.am:
1749         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
1750         * testsuite/Makefile.am:
1751         * testsuite/caps/Makefile.am:
1752         * testsuite/caps/value_serialize.c:
1753         * testsuite/test_gst_init.c:
1754           move a value_serialize test over
1755
1756 2005-06-20  Wim Taymans  <wim@fluendo.com>
1757
1758         * gst/gstpad.c:
1759         Small doc updates.
1760         
1761         * gst/gstvalue.c: (gst_value_compare_buffer),
1762         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
1763         (gst_value_compare_flags), (gst_value_serialize_flags),
1764         (gst_value_deserialize_flags), (_gst_value_initialize):
1765         Fix serialisation of buffers, they are not boxed types anymore
1766
1767 2005-06-20  Wim Taymans  <wim@fluendo.com>
1768
1769         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1770         Testcase to show error in buffer-on-caps serialisation.
1771
1772 2005-06-20  Andy Wingo  <wingo@pobox.com>
1773
1774         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
1775         will be adding to later.
1776
1777         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
1778         if its socks fill with rocks.
1779         (gst_system_clock_obtain): Set the name on object construction.
1780         Avoid double-checked locking.
1781
1782 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
1783
1784         * gst/gsturi.c: (gst_element_make_from_uri):
1785           Fix potential endless loop.
1786
1787 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1788
1789         * check/Makefile.am:
1790           add gsttag
1791         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
1792         (main):
1793           move over from testsuite dir and clean up
1794         * configure.ac:
1795         * gst/gsttag.c:
1796         * testsuite/Makefile.am:
1797         * testsuite/tags/.cvsignore:
1798         * testsuite/tags/Makefile.am:
1799         * testsuite/tags/merge.c:
1800           remove testsuite/tags
1801
1802 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1803
1804         * docs/gst/gstreamer-sections.txt:
1805         * docs/gst/tmpl/gstenumtypes.sgml:
1806         * win32/gstenumtypes.c:
1807           clean up documentation build a little
1808
1809 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1810
1811         * check/gstcheck.h:
1812           add macros for checking refcounts on objects and caps
1813         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
1814           add some more unit tests
1815         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1816         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
1817           fix leaked refcounts (I hope :)) so unittest works
1818         * gst/gstpad.h:
1819           whitespace removal
1820
1821 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1822
1823         * configure.ac: back to HEAD
1824
1825 === release 0.9.1 ===
1826
1827 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1828
1829         * NEWS:
1830         * RELEASE:
1831           updated
1832
1833 2005-06-17  Andy Wingo  <wingo@pobox.com>
1834
1835         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
1836         assert; it's always possible that the pad gets deactivated in
1837         between the checks in gstpad.c and the implementation. Rely on
1838         finish_preroll() to return a FLUSHING or similar instead of on the
1839         assert.
1840         
1841         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
1842         clock and post an EOS message if we come out of finish_preroll in
1843         the playing state.
1844
1845 2005-06-16  David Schleef  <ds@schleef.org>
1846
1847         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
1848         (gst_capsfilter_set_property): Allow NULL as possible value
1849         for filter_caps property, indicating GST_CAPS_ANY.
1850
1851 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1852
1853         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
1854           fix debug output
1855         * gst/schedulers/Makefile.am:
1856           use libgst prefix
1857         * gstreamer.spec.in:
1858           fix spec for it
1859
1860 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1861
1862         * gstreamer.spec.in:
1863           clean up
1864
1865 2005-06-08  Andy Wingo  <wingo@pobox.com>
1866
1867         * gst/gstutils.c: RPAD fixes all around.
1868         (gst_element_link_pads): Refcounting fixes.
1869
1870         * tools/gst-inspect.c:
1871         * tools/gst-xmlinspect.c:
1872         * parse/grammar.y:
1873         * gst/base/gsttypefindhelper.c:
1874         * gst/base/gstbasesink.c:
1875         * gst/gstqueue.c: RPAD fixes.
1876
1877         * gst/gstghostpad.h:
1878         * gst/gstghostpad.c: New ghost pad implementation as full proxy
1879         pads. The tricky thing is they provide both source and sink
1880         interfaces, since they proxy the internal pad for the external
1881         pad, and vice versa. Implement with lower-level ProxyPad objects,
1882         with the interior proxy pad as a child of the exterior ghost pad.
1883         Should write a doc on this.
1884         
1885         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
1886         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
1887         gst_object API.
1888         
1889         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
1890         pads are real pads. No ghost pads in this file. Not documenting
1891         the myriad s/RPAD/PAD/ and REALIZE fixes.
1892         (gst_pad_class_init): Add properties for "direction" and
1893         "template". Both are construct-only, so they can't change during
1894         the life of the pad. Fixes properly deriving from GstPad.
1895         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
1896         derived objects, just set properties when creating the objects via
1897         g_object_new.
1898         (gst_pad_get_parent): Implement as a function, return NULL if the
1899         parent is not an element.
1900         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
1901         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
1902         
1903         * gst/gstobject.c (gst_object_class_init): Make name a construct
1904         property. Don't set it in the object init.
1905
1906         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
1907         with UNKNOWN direction.
1908         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
1909         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
1910         (gst_element_remove_pad): Remove ghost-pad special cases.
1911         (gst_element_pads_activate): Remove rpad cruft.
1912
1913         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
1914         catch the pad's-parent-not-an-element case.
1915
1916         * gst/gst.h: Include gstghostpad.h.
1917
1918         * gst/gst.c (init_post): No more real, ghost pads.
1919
1920         * gst/Makefile.am: Add gstghostpad.[ch].
1921
1922         * check/Makefile.am:
1923         * check/gst/gstbin.c:
1924         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
1925         into a bin creates ghost pads, and that the refcounts are right.
1926         Partly moved from gstbin.c.
1927
1928 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1929
1930         * check/gst-libs/.cvsignore:
1931         * check/gst/.cvsignore:
1932         * check/pipelines/.cvsignore:
1933           ignore more
1934         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
1935         (START_TEST), (cleanup_suite), (main):
1936           add some tests related to cleanup after running pipelines
1937
1938 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1939
1940         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
1941           add a testsuite for GstBuffer
1942
1943 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1944
1945         * gst/gstminiobject.h:
1946           add defines for accessing the refcount
1947
1948 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
1949
1950         * Makefile.am: added support for html unit test coverage reports
1951
1952 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
1953
1954         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
1955           Free existing caps if the capsfilter changes. Add a FIXME about
1956           setting those caps on the pads.
1957
1958         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
1959           Before adding a ghost pad to a parent bin, check that there isn't
1960           already one for the element on the bin. Prevents infinite recursion
1961           when using decodebin in parse pipelines. Andy says he'll rewrite the
1962           way this works anyway, so ignore the hack.
1963
1964 2005-06-02  Andy Wingo  <wingo@pobox.com>
1965
1966         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
1967         file size, pass it on to the type find helper.
1968
1969         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
1970         segment_start and segment_end properly according to the seek
1971         method. Segment_end is still a bit flaky because offset can be
1972         negative for CUR and END cases, but it takes -1 as an "unset"
1973         value.
1974
1975 2005-06-02  Wim Taymans  <wim@fluendo.com>
1976
1977         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
1978         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
1979         (gst_basesink_activate):
1980         * gst/base/gstbasesink.h:
1981         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1982         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1983         (gst_pad_query), (gst_pad_start_task):
1984         * gst/gstpad.h:
1985         * gst/gstqueue.c: (gst_queue_bufferalloc),
1986         (gst_queue_handle_sink_event), (gst_queue_chain):
1987         Bufferalloc: return GstFlowReturn to more accuratly report
1988         why allocation failed.
1989
1990 2005-06-02  Wim Taymans  <wim@fluendo.com>
1991
1992         * gst/gstpipeline.c: (gst_pipeline_send_event):
1993         Take snapshot of state without blocking.
1994
1995 2005-06-02  Wim Taymans  <wim@fluendo.com>
1996
1997         * docs/design/part-TODO.txt:
1998         * docs/design/part-caps.txt:
1999         * docs/design/part-clocks.txt:
2000         * docs/design/part-negotiation.txt:
2001         * docs/design/part-preroll.txt:
2002         Small doc updates 
2003
2004 2005-05-30  Wim Taymans  <wim@fluendo.com>
2005
2006         * gst/elements/gstidentity.c: (gst_identity_event),
2007         (gst_identity_transform), (gst_identity_get_property):
2008         Protect last_message property as it is accessed from
2009         multiple threads.
2010
2011 2005-05-30  Wim Taymans  <wim@fluendo.com>
2012
2013         * gst/gstelement.c: (gst_element_init),
2014         (gst_element_pads_activate), (gst_element_change_state):
2015         Slicker pad activation code.
2016
2017 2005-05-30  Wim Taymans  <wim@fluendo.com>
2018
2019         * gst/Makefile.am:
2020         * gst/gstelement.h:
2021         * gst/gstelementfactory.h:
2022         * gst/gsttypes.h:
2023         Move elementfactory methods to separate .h file.
2024
2025 2005-05-30  Wim Taymans  <wim@fluendo.com>
2026
2027         * docs/design/part-overview.txt:
2028         * gst/gstsystemclock.h:
2029         Small typo fixes, doc updates.
2030
2031 2005-05-30  Wim Taymans  <wim@fluendo.com>
2032
2033         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2034         (init_popt_callback):
2035         Remove cpu-opt flag.
2036
2037 2005-05-30  Wim Taymans  <wim@fluendo.com>
2038
2039         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2040         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2041         * gst/gstbuffer.h:
2042         Avoid typechecking in places where not needed.
2043         Added accessor for malloc_data.
2044
2045 2005-05-30  Wim Taymans  <wim@fluendo.com>
2046
2047         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2048         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2049         (gst_pad_configure_sink), (gst_pad_configure_src),
2050         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2051         (gst_pad_start_task):
2052         Propagate errors from _set_caps() in configure_src/sink
2053         functions instead of returning TRUE.
2054         FLUSH events can travel up and downstream
2055
2056
2057 2005-05-30  Wim Taymans  <wim@fluendo.com>
2058
2059         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2060         (gst_basesink_activate):
2061         Handle EOS in preroll.
2062
2063 2005-05-30  Wim Taymans  <wim@fluendo.com>
2064
2065         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2066         (gst_queue_loop), (gst_queue_handle_src_event):
2067         Remove old pieces of code
2068         Flushing the queue in an upstream event is a very bad idea.
2069
2070 2005-05-26  Andy Wingo  <wingo@pobox.com>
2071
2072         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2073         gst_value_set_mini_object so as to add a ref on the object (which
2074         will be removed when the value is unset).
2075
2076         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2077         arg type in ::handoff.
2078
2079         * gst/gstelement.c (gst_element_change_state): Also deactivate
2080         pads in READY->NULL, just in case the element didn't make it to
2081         PAUSED. Wingo tested, Wim approved.
2082
2083 2005-05-26  Wim Taymans  <wim@fluendo.com>
2084
2085         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2086         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2087         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2088         A flushing pad cannot be used to alloc_buffer from.
2089
2090 2005-05-26  Wim Taymans  <wim@fluendo.com>
2091
2092         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2093         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2094         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2095         (gst_bus_create_watch), (gst_bus_add_watch_full):
2096         * gst/gstbus.h:
2097         Implement a real GSource and use g_main_context_wakeup() to
2098         signal new messages instead of the socketpair.
2099
2100 2005-05-25  Wim Taymans  <wim@fluendo.com>
2101
2102         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2103         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2104         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2105         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2106         (gst_pad_send_event), (gst_pad_start_task):
2107         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2108         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2109         (gst_queue_sink_activate), (gst_queue_src_activate),
2110         (gst_queue_change_state):
2111         * gst/gstqueue.h:
2112         Fix state changes for non sinks. We now change sinks, then elements
2113         with unconnected srcpads, then the rest.
2114         More efficient queue unlocking in flush and state changes.
2115         Set the pad activate mode even if it does not have an activate
2116         function.
2117
2118 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2119
2120         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2121           Don't go in pull mode for non-seekable sources.
2122         * gst/elements/gsttypefindelement.h:
2123         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2124         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2125         (free_entry), (stop_typefinding),
2126         (gst_type_find_element_handle_event), (find_peek),
2127         (gst_type_find_element_chain), (do_pull_typefind),
2128         (gst_type_find_element_change_state):
2129           Allow typefinding (w/o seeking) in push-mode, simplified version
2130           of what was in 0.8.
2131         * gst/gstutils.c: (gst_buffer_join):
2132         * gst/gstutils.h:
2133           gst_buffer_join() from 0.8.
2134
2135 2005-05-25  Wim Taymans  <wim@fluendo.com>
2136
2137         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2138         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2139         (gst_pad_send_event), (gst_pad_start_task):
2140         Disable attempt at mode switching until it is figured out.
2141
2142 2005-05-25  Wim Taymans  <wim@fluendo.com>
2143
2144         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2145         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2146         (gst_basesink_finish_preroll), (gst_basesink_chain),
2147         (gst_basesink_loop), (gst_basesink_activate),
2148         (gst_basesink_change_state):
2149         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2150         (gst_basesrc_get_range), (gst_basesrc_loop),
2151         (gst_basesrc_activate):
2152         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2153         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2154         (gst_real_pad_init), (gst_real_pad_set_property),
2155         (gst_real_pad_get_property), (gst_pad_set_active),
2156         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2157         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2158         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2159         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2160         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2161         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2162         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2163         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2164         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2165         (gst_pad_stop_task):
2166         * gst/gstpad.h:
2167         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2168         (gst_queue_loop), (gst_queue_src_activate):
2169         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2170         (gst_task_get_state):
2171         * gst/gsttask.h:
2172         * gst/schedulers/threadscheduler.c:
2173         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2174         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2175         in task function.
2176         Remove ACTIVE pad flag, use FLUSHING everywhere
2177         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2178         functions.
2179         Add locks around IS_FLUSHING when reading.
2180         Take STREAM lock in chain(), get_range() functions so plugins
2181         don't need to take it anymore.
2182         
2183
2184
2185 2005-05-25  Wim Taymans  <wim@fluendo.com>
2186
2187         * tools/gst-launch.c: (event_loop):
2188         Unref message after using its contents instead of
2189         before.
2190
2191 2005-05-24  Wim Taymans  <wim@fluendo.com>
2192
2193         * docs/design/draft-ghostpads.txt:
2194         * docs/design/draft-push-pull.txt:
2195         * docs/design/draft-query.txt:
2196         * docs/design/part-overview.txt:
2197         Docs updates, added general overview doc.
2198
2199 2005-05-21  David Schleef  <ds@schleef.org>
2200
2201         * docs/gst/tmpl/old/GstBin.sgml:
2202         * docs/gst/tmpl/old/GstBuffer.sgml:
2203         * docs/gst/tmpl/old/GstCaps.sgml:
2204         * docs/gst/tmpl/old/GstClock.sgml:
2205         * docs/gst/tmpl/old/GstCompat.sgml:
2206         * docs/gst/tmpl/old/GstData.sgml:
2207         * docs/gst/tmpl/old/GstElement.sgml:
2208         * docs/gst/tmpl/old/GstEvent.sgml:
2209         * docs/gst/tmpl/old/GstIndex.sgml:
2210         * docs/gst/tmpl/old/GstStructure.sgml:
2211         * docs/gst/tmpl/old/GstTag.sgml:
2212         * docs/gst/tmpl/old/cothreads.sgml:
2213         * docs/gst/tmpl/old/cothreads_compat.sgml:
2214         * docs/gst/tmpl/old/gettext.sgml:
2215         * docs/gst/tmpl/old/gobject2gtk.sgml:
2216         * docs/gst/tmpl/old/grammar.tab.sgml:
2217         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2218         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2219         * docs/gst/tmpl/old/gst_private.sgml:
2220         * docs/gst/tmpl/old/gstaggregator.sgml:
2221         * docs/gst/tmpl/old/gstarch.sgml:
2222         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2223         * docs/gst/tmpl/old/gstbufferstore.sgml:
2224         * docs/gst/tmpl/old/gstdata_private.sgml:
2225         * docs/gst/tmpl/old/gstdisksink.sgml:
2226         * docs/gst/tmpl/old/gstdisksrc.sgml:
2227         * docs/gst/tmpl/old/gstelementfactory.sgml:
2228         * docs/gst/tmpl/old/gstextratypes.sgml:
2229         * docs/gst/tmpl/old/gstfakesink.sgml:
2230         * docs/gst/tmpl/old/gstfakesrc.sgml:
2231         * docs/gst/tmpl/old/gstfdsink.sgml:
2232         * docs/gst/tmpl/old/gstfdsrc.sgml:
2233         * docs/gst/tmpl/old/gstfilesink.sgml:
2234         * docs/gst/tmpl/old/gstfilesrc.sgml:
2235         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2236         * docs/gst/tmpl/old/gstidentity.sgml:
2237         * docs/gst/tmpl/old/gstindexfactory.sgml:
2238         * docs/gst/tmpl/old/gstmarshal.sgml:
2239         * docs/gst/tmpl/old/gstmd5sink.sgml:
2240         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2241         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2242         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2243         * docs/gst/tmpl/old/gstpipefilter.sgml:
2244         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2245         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2246         * docs/gst/tmpl/old/gstshaper.sgml:
2247         * docs/gst/tmpl/old/gstspider.sgml:
2248         * docs/gst/tmpl/old/gstspideridentity.sgml:
2249         * docs/gst/tmpl/old/gststatistics.sgml:
2250         * docs/gst/tmpl/old/gsttee.sgml:
2251         * docs/gst/tmpl/old/gsttimecache.sgml:
2252         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2253         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2254         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2255         * docs/gst/tmpl/old/types.sgml:
2256           I didn't intend to add these or check them in.
2257
2258 2005-05-19  David Schleef  <ds@schleef.org>
2259
2260         * configure.ac: Use -no-common everywhere.  In a sane world, it
2261           would be the default in libtool, because without it, you can't
2262           build DLLs on Windows.
2263         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2264         * docs/gst/gstreamer-sections.txt:
2265         * docs/gst/tmpl/gstcpu.sgml:
2266         * docs/gst/tmpl/gstdata.sgml:
2267         * docs/gst/tmpl/gstthread.sgml:
2268
2269 2005-05-19  David Schleef  <ds@schleef.org>
2270
2271         * gst/gstminiobject.c: (gst_value_set_mini_object),
2272         (gst_value_take_mini_object), (gst_value_get_mini_object):
2273         * gst/gstminiobject.h: Add GValue set/get functions.
2274
2275 2005-05-19  Wim Taymans  <wim@fluendo.com>
2276
2277         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2278         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2279         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2280         * gst/gstbuffer.h:
2281         * gst/gstbus.c: (gst_bus_post):
2282         * gst/gstelement.c: (gst_element_get_random_pad):
2283         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2284         Make subbufer unref the parent in finalize.
2285         some more debugging info.
2286
2287
2288 2005-05-19  Wim Taymans  <wim@fluendo.com>
2289
2290         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2291         (gst_basesink_init), (gst_basesink_finalize),
2292         (gst_basesink_activate), (gst_basesink_change_state):
2293         Don't free preroll queue too early.
2294
2295 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2296
2297         * gst/Makefile.am:
2298         * gst/ROADMAP:
2299           Hi, I'm outdated. Please shoot me.
2300
2301 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2302
2303         * gst/gstpipeline.c: (gst_pipeline_send_event):
2304           Do not access variables after they have been deleted.
2305
2306 2005-05-19  Wim Taymans  <wim@fluendo.com>
2307
2308         * tools/gst-inspect.c: (print_plugin_features):
2309         A plugin feature does unfortunatly not use the
2310         object name yet...
2311
2312 2005-05-18  Wim Taymans  <wim@fluendo.com>
2313
2314         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2315         Port _span() functions to new subbuffers.
2316
2317 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2318
2319         * gst/gstbin.c: (gst_bin_add_func):
2320           Fix clock settery in bins when adding kids after the clock has
2321           been selected.
2322
2323 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2324
2325         * gst/elements/gstidentity.c: (gst_identity_class_init):
2326           Workaround until signals support GstMiniObject.
2327
2328 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2329
2330         * gst/gstbuffer.c:
2331         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2332
2333 2005-05-18  Wim Taymans  <wim@fluendo.com>
2334
2335         * gst/base/Makefile.am:
2336         * gst/base/gstadapter.c: (gst_adapter_base_init),
2337         (gst_adapter_class_init), (gst_adapter_init),
2338         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2339         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2340         (gst_adapter_flush), (gst_adapter_available),
2341         (gst_adapter_available_fast):
2342         * gst/base/gstadapter.h:
2343         Ported and added adapter to the base classes.
2344
2345 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2346
2347         * gst/gst.c:
2348         * gst/gstmessage.c:
2349           Make sure the class is reffed/unreffed once before threads can be
2350           used.  Fixes #304551.
2351
2352 2005-05-17  Wim Taymans  <wim@fluendo.com>
2353
2354         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2355         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2356         * gst/gstminiobject.c: (gst_mini_object_get_type),
2357         (gst_mini_object_free):
2358         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2359         (gst_pad_push), (gst_pad_push_event):
2360         * gst/gstqueue.c: (gst_queue_change_state):
2361         Don't queue buffers in basesink when we are flushing.
2362         Unref buffer when flushing in basesink.
2363         Flush queue when going to READY
2364         Unref buffer when _push() returns an error.
2365         Don't free MiniObject instance when refcount is incremented
2366         in _finalize() so that we can recover objects.
2367
2368 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2369
2370         * docs/manual/advanced-schedulers.xml:
2371         * docs/manual/appendix-checklist.xml:
2372         * docs/pwg/advanced-clock.xml:
2373         * docs/pwg/advanced-interfaces.xml:
2374         * docs/pwg/advanced-request.xml:
2375         * docs/pwg/advanced-types.xml:
2376         * docs/pwg/intro-preface.xml:
2377         * examples/plugins/example.c: (gst_example_get_type),
2378         (gst_example_class_init), (gst_example_chain),
2379         (gst_example_set_property), (gst_example_get_property),
2380         (gst_example_change_state), (plugin_init):
2381         * examples/plugins/example.h:
2382           small doc fixes
2383
2384 2005-05-17  Wim Taymans  <wim@fluendo.com>
2385
2386         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2387         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2388         * gst/gstqueue.c: (gst_queue_change_state):
2389         Clear queue when going to READY.
2390         Remove IN_SETCAPS flag too.
2391
2392 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2393
2394         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2395           Remove implicit cast from gboolean to GstElementStateReturn;
2396           make sure we still return failure in paused => ready case if
2397           the parent class fails to change state and our own stop 
2398           vfunc succeeds.
2399
2400 2005-05-17  Wim Taymans  <wim@fluendo.com>
2401
2402         * tools/gst-launch.c: (event_loop):
2403         Message was unreffed too soon.
2404
2405 2005-05-16  Andy Wingo  <wingo@pobox.com>
2406
2407         * gst/gstbin.c (sink_iterator_filter): Err... um...
2408
2409         * check/gst/gstbin.c (test_ghost_pads): New test for the
2410         ghosting-if-elements-not-in-same-bin behavior.
2411
2412 2005-05-16  David Schleef  <ds@schleef.org>
2413
2414         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2415         accessing refcount directly.
2416
2417 2005-05-15  David Schleef  <ds@schleef.org>
2418
2419         * check/Makefile.am: remove GstData checks
2420         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2421         * gst/Makefile.am: add miniobject, remove data
2422         * gst/gst.h: add miniobject, remove data
2423         * gst/gstdata.c: remove
2424         * gst/gstdata.h: remove
2425         * gst/gstdata_private.h: remove
2426         * gst/gsttypes.h: remove GstEvent and GstMessage
2427         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2428         * gst/gstmarshal.list: change BOXED -> OBJECT
2429
2430         Implement GstMiniObject.
2431         * gst/gstminiobject.c:
2432         * gst/gstminiobject.h:
2433
2434         Modify to be subclasses of GstMiniObject.
2435         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2436         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2437         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2438         (gst_subbuffer_get_type), (gst_subbuffer_init),
2439         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2440         (gst_buffer_span):
2441         * gst/gstbuffer.h:
2442         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2443         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2444         (_gst_event_copy), (gst_event_new):
2445         * gst/gstevent.h:
2446         * gst/gstmessage.c: (_gst_message_initialize),
2447         (gst_message_get_type), (gst_message_class_init),
2448         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2449         (gst_message_new), (gst_message_new_error),
2450         (gst_message_new_warning), (gst_message_new_tag),
2451         (gst_message_new_state_changed), (gst_message_new_application):
2452         * gst/gstmessage.h:
2453         * gst/gstprobe.c: (gst_probe_perform),
2454         (gst_probe_dispatcher_dispatch):
2455         * gst/gstprobe.h:
2456         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2457         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2458         (_gst_query_copy), (gst_query_new):
2459
2460         Update elements for GstData -> GstMiniObject changes
2461         * gst/gstquery.h:
2462         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2463         (gst_queue_chain), (gst_queue_loop):
2464         * gst/elements/gstbufferstore.c:
2465         (gst_buffer_store_add_buffer_func),
2466         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2467         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2468         (gst_fakesink_render):
2469         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2470         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2471         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2472         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2473         (gst_filesrc_create_read):
2474         * gst/elements/gstidentity.c: (gst_identity_class_init):
2475         * gst/elements/gsttypefindelement.c:
2476         (gst_type_find_element_src_event), (free_entry_buffers),
2477         (gst_type_find_element_handle_event):
2478         * libs/gst/dataprotocol/dataprotocol.c:
2479         (gst_dp_header_from_buffer):
2480         * libs/gst/dataprotocol/dataprotocol.h:
2481         * libs/gst/dataprotocol/dp-private.h:
2482
2483 2005-05-15  David Schleef  <ds@schleef.org>
2484
2485         * gst/elements/gstelements.c: Don't include headers that were
2486         just removed.
2487
2488 2005-05-15  David Schleef  <ds@schleef.org>
2489
2490         * gst/elements/Makefile.am: Remove some elements that don't
2491         need to be in the core (or even exist at all).
2492         * gst/elements/gstaggregator.c:
2493         * gst/elements/gstaggregator.h:
2494         * gst/elements/gstmd5sink.c:
2495         * gst/elements/gstmd5sink.h:
2496         * gst/elements/gstmultifilesrc.c:
2497         * gst/elements/gstmultifilesrc.h:
2498         * gst/elements/gstpipefilter.c:
2499         * gst/elements/gstpipefilter.h:
2500         * gst/elements/gstshaper.c:
2501         * gst/elements/gstshaper.h:
2502         * gst/elements/gststatistics.c:
2503         * gst/elements/gststatistics.h:
2504         * po/POTFILES.in: Remove above files.
2505
2506 2005-05-14  Andy Wingo  <wingo@pobox.com>
2507
2508         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2509         so as to get the refs right.
2510         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2511         unreffing objects that don't pass the filter.
2512
2513         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2514         gst_element_set_bus.
2515         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2516         normal cases, this will destroy the bus.
2517
2518         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2519         object.
2520
2521         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2522         has no sinks.
2523
2524 2005-05-13  Andy Wingo  <wingo@pobox.com>
2525
2526         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2527         gst_pad_link, call pad_link_maybe_ghosting,
2528         (pad_link_maybe_ghosting): Links pads, making sure that the
2529         elements being linked are in the same bin.
2530         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2531         Helpers for pad_link_maybe_ghosting.
2532
2533 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2534
2535         * configure.ac:
2536           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2537
2538 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2539
2540         * docs/design/part-element-source.txt:
2541           Mention GstPushSrc
2542
2543 2005-05-12  Wim Taymans  <wim@fluendo.com>
2544
2545         * gst/base/gstbasesink.c: (gst_basesink_init),
2546         (gst_basesink_activate):
2547         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2548         (gst_basesrc_is_seekable):
2549         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2550         (bin_element_is_sink), (gst_bin_change_state):
2551         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2552         * gst/gstelement.h:
2553         Identify sinks by their flag to avoid overly complicated
2554         checks (fow now).
2555         Do state changes even for elements not reachable from the
2556         sinks.
2557         BaseSink is a sink now :)
2558         Some more debugging info in the basesrc.
2559
2560
2561 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2562
2563         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2564           Implement _query on a bin, similar to _send_event.
2565
2566 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2567
2568         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2569           Discont event offset format should be GST_FORMAT_BYTES,
2570           not GST_FORMAT_TIME.
2571
2572 2005-05-12  Wim Taymans  <wim@fluendo.com>
2573
2574         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2575         Same fix as Ronald's but without the signal. 
2576
2577 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2578
2579         * gst/gstutils.c: (gst_element_query_position):
2580           No, an element is not a pad.
2581
2582 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2583
2584         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2585         (gst_bin_get_state):
2586           If a child is removed from a bin while we remove the child from
2587           the bin and while we're retrieving its state, signal this to the
2588           get_state function so we abort the wait (instead of waiting for
2589           a timeout) and can immediately re-iterate over all other elements.
2590
2591 2005-05-12  Wim Taymans  <wim@fluendo.com>
2592
2593         * gst/base/Makefile.am:
2594         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2595         (gst_basesrc_start):
2596         * gst/base/gstbasesrc.h:
2597         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2598         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2599         (gst_pushsrc_init), (gst_pushsrc_create):
2600         * gst/base/gstpushsrc.h:
2601         Added is_seekable to BaseSrc
2602         Added simple PushSrc.
2603
2604 2005-05-11  Wim Taymans  <wim@fluendo.com>
2605
2606         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2607         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2608         (gst_element_link_pads), (gst_element_query_position),
2609         (gst_element_query_convert), (intersect_caps_func),
2610         (gst_pad_query_position), (gst_pad_query_convert):
2611         Fix refcounting in utils function.
2612         No point in trying to activate a pad when it's added, it could
2613         be added from the state change function and then we deadlock, the
2614         element has to decide what to do.
2615
2616 2005-05-10  Andy Wingo  <wingo@pobox.com>
2617
2618         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2619         *all* the arguments.
2620
2621         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2622         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2623         lock (according to the docs -- if this is wrong change the docs).
2624
2625         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2626         flush messages in the NULL state.
2627
2628         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2629         message immediately and return.
2630         (gst_bus_set_flushing): New function. If a bus is flushing, it
2631         flushes out any queued messages and immediately unrefs new
2632         messages. This is so when an element goes to NULL, all of the
2633         unhandled messages coming from it can be freed, and their
2634         references to the element dropped. In other words: message source
2635         ref considered harmful :P
2636
2637         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2638         we're finished with it.
2639
2640         * gst/gstmessage.c (gst_message_new_state_changed): 
2641
2642 2005-05-10  Wim Taymans  <wim@fluendo.com>
2643
2644         * gst/gstvalue.c: (gst_value_compare_flags),
2645         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2646         (_gst_value_initialize):
2647         Added flags serialize/deserialize/compare code.
2648
2649 2005-05-09  Andy Wingo  <wingo@pobox.com>
2650
2651         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2652         Intersect the peer's caps with our caps.
2653
2654 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2655
2656         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2657         * gst/elements/gsttypefindelement.c: (find_peek):
2658           Handle negative offsets better. Fixes decodebin.
2659
2660 2005-05-09  Wim Taymans  <wim@fluendo.com>
2661
2662         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2663         (gst_base_transform_event):
2664         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2665         Implement accept_caps.
2666         Fix silly lock/unlock mismatch in base class.
2667
2668 2005-05-09  Wim Taymans  <wim@fluendo.com>
2669
2670         * docs/design/draft-push-pull.txt:
2671         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2672         * gst/elements/gstfilesink.c: (gst_filesink_init),
2673         (gst_filesink_query):
2674         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2675         (gst_type_find_handle_src_query), (find_element_get_length):
2676         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2677         * gst/gstelement.h:
2678         * gst/gstmessage.c:
2679         * gst/gstmessage.h:
2680         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2681         (gst_real_pad_get_caps_unlocked),
2682         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2683         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2684         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2685         (gst_real_pad_dispose), (gst_real_pad_finalize),
2686         (gst_pad_load_and_link), (gst_pad_save_thyself),
2687         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2688         (gst_pad_check_pull_range), (gst_pad_pull_range),
2689         (gst_pad_template_get_type), (gst_pad_template_class_init),
2690         (gst_pad_template_init), (gst_pad_template_dispose),
2691         (name_is_valid), (gst_static_pad_template_get),
2692         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2693         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2694         (gst_pad_get_element_private), (gst_pad_start_task),
2695         (gst_pad_pause_task), (gst_pad_stop_task),
2696         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2697         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2698         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
2699         (gst_ghost_pad_new):
2700         * gst/gstpad.h:
2701         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
2702         (gst_query_new_position), (gst_query_set_position),
2703         (gst_query_parse_position), (gst_query_new_convert),
2704         (gst_query_set_convert), (gst_query_parse_convert):
2705         * gst/gstquery.h:
2706         * gst/gstqueryutils.c:
2707         * gst/gstqueryutils.h:
2708         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2709         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2710         (gst_queue_handle_src_query):
2711         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2712         (gst_element_query_position), (gst_element_query_convert),
2713         (intersect_caps_func), (gst_pad_query_position),
2714         (gst_pad_query_convert):
2715         * gst/gstutils.h:
2716         * tools/gst-inspect.c: (print_pad_info):
2717         * tools/gst-xmlinspect.c: (print_element_info):
2718         Remove old query functions. Ported old code.
2719         Added position/convert helper functions to gstutils.
2720         Reordered gstpad.c code, grouping relevant things.
2721         Remove gst_message_new(), always need to speficy a specific
2722         message.
2723
2724
2725 2005-05-09  Andy Wingo  <wingo@pobox.com>
2726
2727         * gst/gstiterator.h: Add some includes.
2728
2729         * gst/gstqueryutils.h: Include more headers.
2730
2731         * gst/gstpad.h:
2732         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
2733         some uses of gst_pad_query.
2734
2735         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
2736         NULL out parameters.
2737         (gst_query_new_position): New proc, allocates a new position
2738         query.
2739
2740         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
2741         gstqueryutils.c to the build.
2742
2743         * gst/gststructure.c (gst_structure_set_valist): Implement with
2744         the generic G_VALUE_COLLECT.
2745         
2746 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
2747
2748         * gst/Makefile.am: (gst_headers):
2749         Added gstqueryutils.h to the list of headers to install, that was
2750         a 'nachty' move wingo :)
2751
2752 2005-05-06  Andy Wingo  <wingo@pobox.com>
2753
2754         * gst/gstquery.h
2755         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
2756         GstData, init a memchunk.
2757         (standard_definitions): Add a few query types, deprecate a few.
2758         (gst_query_get_type): New proc.
2759         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
2760         implementation.
2761         (gst_query_new_application, gst_query_get_structure): New public
2762         procs.
2763
2764         * docs/design/draft-query.txt: Removed LINKS from the query types,
2765         because all the rest can be dispatched to other pads -- seemed
2766         ugly to have a query that couldn't be dispatched. internal_links
2767         is fine as a pad method.
2768
2769         * gst/gstpad.h: Add query2 as a pad method, add the new functions
2770         in gstpad.c, but maintain binary compatibility for the moment.
2771         Will fix before 0.9 is out.
2772
2773         * gst/gstqueryutils.c: 
2774         * gst/gstqueryutils.h: New files, implement 3 methods for each
2775         query type: parse_query, parse_response, and set. Probably need an
2776         allocator as well.
2777
2778         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
2779
2780         * gst/elements/gstfilesink.c (gst_filesink_query2):
2781         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
2782         query_types, and formats methods.
2783
2784         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
2785         (gst_pad_set_query2_function): New functions.
2786         (gst_real_pad_init): Set query2_default as the default query2
2787         function. Basically just dispatches to internally linked pads.
2788
2789         Needs review!
2790         
2791         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
2792         without using the atomic operations. Only one thread can possibly
2793         be accessing the data at this point. Changed so as to avoid
2794         gst_atomic operations.
2795
2796 2005-05-06  Wim Taymans  <wim@fluendo.com>
2797
2798         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
2799         Also set caps if we use the fallback buffer alloc.
2800
2801 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
2802
2803         * docs/gst/Makefile.am:
2804         * docs/gst/gstreamer-docs.sgml:
2805         * docs/gst/gstreamer-sections.txt:
2806         * docs/gst/tmpl/gstatomic.sgml:
2807         * docs/gst/tmpl/gstmemchunk.sgml:
2808         * testsuite/elements/struct_i386.h:
2809         * win32/GStreamer.vcproj:
2810         * win32/Makefile:
2811           Purge GstAtomic stuff from docs and win32 makefiles as well
2812
2813 2005-05-06  Wim Taymans  <wim@fluendo.com>
2814
2815         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
2816         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
2817         * gst/gstpad.c: (gst_pad_peer_get_caps):
2818         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2819         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2820         (gst_queue_src_activate), (gst_queue_change_state):
2821         * gst/gstqueue.h:
2822         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2823         (intersect_caps_func):
2824         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
2825         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
2826         Some fixes for the peer_get_caps() change.
2827
2828 2005-05-06  Wim Taymans  <wim@fluendo.com>
2829
2830         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2831         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
2832         (gst_basesink_activate):
2833         Actually do something with error codes returned from the push
2834         functions.
2835
2836 2005-05-06  Wim Taymans  <wim@fluendo.com>
2837
2838         * docs/design/part-element-sink.txt:
2839         * docs/design/part-element-source.txt:
2840         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2841         (gst_basesink_event), (gst_basesink_activate):
2842         * gst/base/gstbasesink.h:
2843         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
2844         (gst_basesrc_activate):
2845         * gst/base/gstbasesrc.h:
2846         * gst/gstelement.c: (gst_element_pads_activate):
2847         Some more documentation.
2848         Fixed scheduling decision in _pads_activate().
2849
2850 2005-05-05  Andy Wingo  <wingo@pobox.com>
2851
2852         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
2853         the test suite.
2854
2855 2005-05-05  Wim Taymans  <wim@fluendo.com>
2856
2857         * gst/base/Makefile.am:
2858         * gst/base/gstbasesink.h:
2859         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2860         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
2861         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
2862         (gst_collectpads_class_init), (gst_collectpads_init),
2863         (gst_collectpads_finalize), (gst_collectpads_new),
2864         (gst_collectpads_set_function), (gst_collectpads_add_pad),
2865         (find_pad), (gst_collectpads_remove_pad),
2866         (gst_collectpads_is_active), (gst_collectpads_collect),
2867         (gst_collectpads_collect_range), (gst_collectpads_start),
2868         (gst_collectpads_stop), (gst_collectpads_peek),
2869         (gst_collectpads_pop), (gst_collectpads_available),
2870         (gst_collectpads_read), (gst_collectpads_flush),
2871         (gst_collectpads_chain):
2872         * gst/base/gstcollectpads.h:
2873         * gst/elements/Makefile.am:
2874         * gst/elements/gstelements.c:
2875         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2876         (gst_fakesink_get_times), (gst_fakesink_event),
2877         (gst_fakesink_preroll), (gst_fakesink_render):
2878         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2879         (gst_filesink_init), (gst_filesink_set_location),
2880         (gst_filesink_open_file), (gst_filesink_close_file),
2881         (gst_filesink_pad_query), (gst_filesink_event),
2882         (gst_filesink_render), (gst_filesink_change_state):
2883         * gst/elements/gstfilesink.h:
2884         Added object to help in making collect pad based elements.
2885         Ported filesink.
2886         Make event function in sink baseclass return gboolean.
2887
2888 2005-05-05  Wim Taymans  <wim@fluendo.com>
2889
2890         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
2891         (gst_bin_get_by_name):
2892         * gst/gstbuffer.h:
2893         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
2894         (gst_clock_finalize):
2895         * gst/gstdata.c: (gst_data_replace):
2896         * gst/gstdata.h:
2897         * gst/gstelement.c: (gst_element_request_pad),
2898         (gst_element_pads_activate):
2899         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
2900         (gst_object_unref):
2901         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2902         (gst_pad_set_checkgetrange_function),
2903         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
2904         (gst_pad_check_pull_range), (gst_pad_pull_range),
2905         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2906         (gst_pad_pause_task), (gst_pad_stop_task):
2907         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2908         (gst_element_request_pad), (gst_pad_proxy_getcaps):
2909         Fix name lookup in GstBin.
2910         Added _data_replace() function and _buffer_replace()
2911         Use finalize method to clean up clock.
2912         Fix refcounting on request pads.
2913         Fix pad schedule mode error.
2914         Some more object refcounting debug info,
2915
2916
2917 2005-05-04  Andy Wingo <wingo@pobox.com>
2918
2919         * check/Makefile.am:
2920         * docs/gst/tmpl/gstatomic.sgml:
2921         * docs/gst/tmpl/gstplugin.sgml:
2922         * gst/base/gstbasesink.c: (gst_basesink_activate):
2923         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
2924         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
2925         (gst_basesrc_query), (gst_basesrc_set_property),
2926         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
2927         (gst_basesrc_activate):
2928         * gst/base/gstbasesrc.h:
2929         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
2930         (gst_base_transform_src_activate):
2931         * gst/elements/gstelements.c:
2932         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2933         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2934         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2935         * gst/elements/gsttypefindelement.c: (find_element_get_length),
2936         (gst_type_find_element_checkgetrange),
2937         (gst_type_find_element_activate):
2938         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
2939         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
2940         (gst_caps_load_thyself):
2941         * gst/gstelement.c: (gst_element_pads_activate),
2942         (gst_element_save_thyself), (gst_element_restore_thyself):
2943         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
2944         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
2945         * gst/gstpad.h:
2946         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
2947         (gst_xml_parse_file), (gst_xml_parse_memory),
2948         (gst_xml_get_element), (gst_xml_make_element):
2949         * gst/indexers/gstfileindex.c: (gst_file_index_load),
2950         (_file_index_id_save_xml), (gst_file_index_commit):
2951         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
2952         (read_enum), (load_pad_template), (load_feature), (load_plugin),
2953         (load_paths):
2954         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
2955         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
2956         * tools/gst-complete.c: (main):
2957         * tools/gst-compprep.c: (main):
2958         * tools/gst-inspect.c: (print_element_properties_info):
2959         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
2960         * tools/gst-xmlinspect.c: (print_element_properties):
2961         GCC 4 fixen.
2962         
2963 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
2964
2965         * gst/gstplugin.c: (gst_plugin_check_module),
2966         (gst_plugin_check_file), (gst_plugin_load_file):
2967             apply patch from #172526 to make register work on MacOSX
2968
2969 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2970
2971         * docs/gst/tmpl/gstconfig.sgml:
2972         * gst/gstconfig.h.in:
2973           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
2974         * testsuite/debug/printf_extension.c: (main):
2975           Do not use GST_PTR_FORMAT on pointers to types with
2976           sizeof < sizeof(gpointer).  Fixes test on 64-bit
2977         * testsuite/elements/property.h:
2978           use correct printf format
2979
2980 2005-05-02  Wim Taymans  <wim@fluendo.com>
2981
2982         * docs/design/draft-push-pull.txt:
2983         * docs/design/draft-query.txt:
2984         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
2985         (gst_basesrc_start):
2986         Added draft for new query API.
2987         Added draft for better selecting scheduling methods.
2988         Make basesrc ignore length if the subclass does not support
2989         it.
2990
2991 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2992
2993         * gst/Makefile.am:
2994           possible fixes for automake-1.5 - _LIBADD is reserved
2995
2996 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2997
2998         * docs/faq/Makefile.am:
2999         * docs/manual/Makefile.am:
3000         * docs/manuals.mak:
3001         * docs/pwg/Makefile.am:
3002         * gst/Makefile.am:
3003           possible fixes for automake-1.5
3004
3005 2005-04-28  Wim Taymans  <wim@fluendo.com>
3006
3007         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3008         (gst_basesink_pad_getcaps), (gst_basesink_init),
3009         (gst_basesink_do_sync):
3010         * gst/gstclock.c: (gst_clock_entry_new):
3011         * gst/gstevent.c: (gst_event_discont_get_value):
3012         * gst/gstpipeline.c: (pipeline_bus_handler),
3013         (gst_pipeline_change_state):
3014         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3015         Better debugging of clocking info.
3016         Allow NULL values when getting discont values.
3017
3018 2005-04-27  Wim Taymans  <wim@fluendo.com>
3019
3020         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3021         * check/gst/gstpad.c: (gst_pad_suite):
3022         Increase timeout for checks.
3023
3024 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3025
3026         * check/Makefile.am:
3027           fix the broken rule for cleanup.  Apparently this rule is
3028           only needed on FC2, so maybe this warrants further autotool
3029           inspection.
3030
3031 2005-04-26  Wim Taymans  <wim@fluendo.com>
3032
3033         * gst/gsttrashstack.h:
3034         Ooohh. a nasty one! After having a failed pop() from the stack,
3035         it's possible that the stack is empty. In that case, don't
3036         follow the NULL pointer.
3037
3038 2005-04-25  Wim Taymans  <wim@fluendo.com>
3039
3040         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3041         (gst_pad_set_checkgetrange_function),
3042         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3043         (gst_pad_check_pull_range), (gst_pad_pull_range),
3044         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3045         (gst_pad_pause_task), (gst_pad_stop_task):
3046         * gst/gstplugin.c: (gst_plugin_load):
3047         * gst/gstplugin.h:
3048         Remove gst_library_load as it does more harm than good with
3049         the new g_module flags.
3050         Revert bogus caps template check in pad linking, pad caps
3051         are important when linking not the template, which is more
3052         general than the current caps.
3053
3054 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3055
3056         * gst/autoplug/.cvsignore:
3057         * gst/autoplug/Makefile.am:
3058         * gst/autoplug/gstsearchfuncs.c:
3059         * gst/autoplug/gstsearchfuncs.h:
3060         * gst/autoplug/gstspider.c:
3061         * gst/autoplug/gstspider.h:
3062         * gst/autoplug/gstspideridentity.c:
3063         * gst/autoplug/gstspideridentity.h:
3064         * gst/autoplug/spidertest.c:
3065           Die, spider, die.
3066
3067 2005-04-25  Wim Taymans  <wim@fluendo.com>
3068
3069         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3070         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3071         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3072         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3073         * gst/gstpad.h:
3074         Added stubs for unimplemented functions. 
3075
3076 2005-04-24  David Schleef  <ds@schleef.org>
3077
3078         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3079         please fix.
3080
3081 2005-04-24  David Schleef  <ds@schleef.org>
3082
3083         Convert everything from GstAtomicInt to g_atomic_int_*, and
3084         remove gstatomic.
3085         * gst/Makefile.am:
3086         * gst/gstatomic.c:
3087         * gst/gstatomic.h:
3088         * gst/gstatomic_impl.h:
3089         * gst/gstbuffer.c:
3090         * gst/gstcaps.c:
3091         * gst/gstcaps.h:
3092         * gst/gstclock.c:
3093         * gst/gstclock.h:
3094         * gst/gstdata.c:
3095         * gst/gstdata.h:
3096         * gst/gstdata_private.h:
3097         * gst/gstevent.c:
3098         * gst/gstinfo.c:
3099         * gst/gstinfo.h:
3100         * gst/gstmessage.c:
3101         * gst/gstobject.c:
3102         * gst/gstobject.h:
3103         * gst/gststructure.c:
3104         * gst/gststructure.h:
3105         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3106         * gst/gstutils.h:
3107
3108 2005-04-24  David Schleef  <ds@schleef.org>
3109
3110         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3111         make the regressions tests work.  Remove some code that is no
3112         longer true.
3113         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3114         Disable warning for pads without templates.
3115
3116 2005-04-24  David Schleef  <ds@schleef.org>
3117
3118         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3119         functions that handle filtered links.
3120         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3121         removed functions.
3122         * gst/gstutils.c: Fix/remove utility functions that handle
3123         filtered caps.
3124         * gst/gstutils.h:
3125         * gst/gstvalue.c: Add serialization/deserialization of caps
3126         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3127         requires fixing so that the filter caps notation creates
3128         a capsfilter element and sets the filter_caps property.  I
3129         think everyone probably wants to keep the shorthand notation.
3130         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3131         * docs/gst/tmpl/gstpad.sgml:
3132
3133         * gst/elements/gstelements.c: Register capsfilter element.
3134         * gst/Makefile.am: fix spacing
3135         * docs/random/ds/0.9-suggested-changes: random
3136
3137 2005-04-23  David Schleef  <ds@schleef.org>
3138
3139         * gst/elements/Makefile.am:
3140         * gst/elements/gstcapsfilter.c: New element that acts like an
3141         identity, but filters caps.  Will eventually replace filtered
3142         caps in pad linking.
3143         * gst/gstutils.c: (gst_element_create_all_pads): New function
3144         to create all the ALWAYS pads that are registered with an
3145         element class.  This functionality should eventually be
3146         merged in with GstElement initialization.
3147         * gst/gstutils.h:
3148         * testsuite/trigger/README: part of trigger test code that should
3149         have been checked in a long time ago.
3150
3151 2005-04-23  David Schleef  <ds@schleef.org>
3152
3153         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3154         needed with new versions of libtool (nobody will confirm this),
3155         and hard to carry around.
3156         * gst/autoplug/Makefile.am:
3157         * gst/base/Makefile.am:
3158         * gst/elements/Makefile.am:
3159         * gst/indexers/Makefile.am:
3160         * gst/schedulers/Makefile.am:
3161         * libs/gst/bytestream/Makefile.am:
3162         * libs/gst/control/Makefile.am:
3163         * libs/gst/dataprotocol/Makefile.am:
3164         * libs/gst/getbits/Makefile.am:
3165
3166 2005-04-21  Wim Taymans  <wim@fluendo.com>
3167
3168         * docs/design/draft-push-pull.txt:
3169         * docs/design/part-MT-refcounting.txt:
3170         * docs/design/part-TODO.txt:
3171         * docs/design/part-caps.txt:
3172         * docs/design/part-events.txt:
3173         * docs/design/part-gstbus.txt:
3174         * docs/design/part-gstpipeline.txt:
3175         * docs/design/part-messages.txt:
3176         * docs/design/part-push-pull.txt:
3177         * docs/design/part-query.txt:
3178         Some more docs.
3179
3180 2005-04-21  Wim Taymans  <wim@fluendo.com>
3181
3182         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3183         (gst_message_new), (gst_message_new_error),
3184         (gst_message_new_warning), (gst_message_new_tag),
3185         (gst_message_new_state_changed), (gst_message_new_application),
3186         (gst_message_get_structure):
3187         * gst/gstmessage.h:
3188         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3189         (gst_structure_copy_conditional):
3190         Use parent refcount in GstMessage to ensure GstStructure
3191         consistency.
3192         Cleaned up headers a bit.
3193         
3194
3195 2005-04-20  Wim Taymans  <wim@fluendo.com>
3196
3197         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3198         (gst_basesink_pad_getcaps), (gst_basesink_init),
3199         (gst_basesink_chain_unlocked):
3200         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3201         (gst_type_find_helper):
3202         * gst/elements/gsttypefindelement.c:
3203         (gst_type_find_element_have_type), (gst_type_find_element_init),
3204         (stop_typefinding), (gst_type_find_element_handle_event),
3205         (find_suggest), (gst_type_find_element_chain),
3206         (gst_type_find_element_checkgetrange),
3207         (gst_type_find_element_getrange), (do_typefind),
3208         (gst_type_find_element_activate):
3209         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3210         (gst_buffer_default_free), (gst_buffer_default_copy),
3211         (gst_buffer_set_caps):
3212         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3213         (gst_caps_replace):
3214         * gst/gstmessage.c: (gst_message_new),
3215         (gst_message_new_state_changed):
3216         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3217         (gst_pad_set_checkgetrange_function),
3218         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3219         (gst_pad_set_caps), (gst_pad_check_pull_range),
3220         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3221         * gst/gstpad.h:
3222         * gst/gsttypefind.c: (gst_type_find_register):
3223         Make gst_caps_replace() work like other _replace() functions.
3224         Use _caps_replace() where possible.
3225         Make sure _message_new() initialises its field.
3226         Add gst_static_pad_template_get_caps()
3227
3228
3229 2005-04-18  Andy Wingo  <wingo@pobox.com>
3230
3231         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3232         on the peer, not the pad. I think that was a typo. Pass an extra
3233         arg to see if random access is possible. Activate the pads as
3234         PULL_RANGE if possible.
3235
3236         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3237
3238         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3239         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3240         to PROP_....
3241
3242 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3243
3244         * docs/faq/using.xml:
3245           Add note on gstreamer-properties (#154996).
3246
3247 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3248
3249         * docs/random/bbb/optional-properties:
3250           Some analysis on optional properties.
3251
3252 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3253
3254         * docs/gst/tmpl/gstelementfactory.sgml:
3255         * gst/gstelement.h:
3256         * gst/gstelementfactory.c: (gst_element_factory_init),
3257         (gst_element_factory_cleanup), (gst_element_register),
3258         (__gst_element_factory_add_static_pad_template),
3259         (gst_element_factory_get_static_pad_templates),
3260         (gst_element_factory_can_src_caps),
3261         (gst_element_factory_can_sink_caps):
3262         * gst/registries/Makefile.am:
3263         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3264         (gst_xml_registry_class_init), (gst_xml_registry_init),
3265         (gst_xml_registry_new), (gst_xml_registry_set_property),
3266         (gst_xml_registry_get_property), (get_time), (make_dir),
3267         (gst_xml_registry_get_perms_func),
3268         (plugin_times_older_than_recurse), (plugin_times_older_than),
3269         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3270         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3271         (add_to_char_array), (read_string), (read_uint), (read_enum),
3272         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3273         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3274         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3275         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3276         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3277         (gst_xml_registry_rebuild):
3278         * gst/registries/gstlibxmlregistry.h:
3279         * tools/gst-compprep.c: (main):
3280         * tools/gst-inspect.c: (print_pad_templates_info):
3281         * tools/gst-xmlinspect.c: (print_element_info):
3282           Use libxml2 for registry parsing, use staticpadtemplates in
3283           elementfactories. Makes gst_init() +/- 10x faster.
3284
3285 2005-04-12  Wim Taymans  <wim@fluendo.com>
3286
3287         * gst/base/Makefile.am:
3288         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3289         (gst_basesink_pad_getcaps), (gst_basesink_init),
3290         (gst_basesink_event), (gst_basesink_change_state):
3291         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3292         (gst_basesrc_init), (gst_basesrc_query),
3293         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3294         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3295         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3296         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3297         (gst_basesrc_stop), (gst_basesrc_activate),
3298         (gst_basesrc_change_state):
3299         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3300         (helper_find_suggest), (gst_type_find_helper):
3301         * gst/base/gsttypefindhelper.h:
3302         * gst/elements/Makefile.am:
3303         * gst/elements/gstelements.c:
3304         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3305         (gst_fakesink_get_times), (gst_fakesink_event),
3306         (gst_fakesink_preroll), (gst_fakesink_render):
3307         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3308         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3309         (gst_fakesrc_get_property), (gst_fakesrc_create),
3310         (gst_fakesrc_start), (gst_fakesrc_stop):
3311         * gst/elements/gstfakesrc.h:
3312         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3313         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3314         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3315         (gst_filesrc_create_read), (gst_filesrc_create),
3316         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3317         (gst_filesrc_start):
3318         * gst/elements/gsttypefindelement.c:
3319         (gst_type_find_element_have_type), (gst_type_find_element_init),
3320         (start_typefinding), (stop_typefinding), (push_buffer_store),
3321         (gst_type_find_element_handle_event),
3322         (gst_type_find_element_chain),
3323         (gst_type_find_element_checkgetrange),
3324         (gst_type_find_element_getrange), (do_typefind),
3325         (gst_type_find_element_activate),
3326         (gst_type_find_element_change_state):
3327         * gst/elements/gsttypefindelement.h:
3328         * gst/gstpipeline.c: (pipeline_bus_handler):
3329         Added typefind helper.
3330         Small preroll fix in the base sink.
3331         Disable typefind code in basesrc.
3332         Crude port of typefindelement.
3333         Fakesrc cleanups.
3334
3335
3336 2005-04-11  Wim Taymans  <wim@fluendo.com>
3337
3338         * check/gst/gstbus.c: (gstbus_suite):
3339         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3340         * check/gstcheck.h:
3341           Fix up the timeout so that the test does not fail.
3342
3343 2005-04-06  Wim Taymans  <wim@fluendo.com>
3344
3345         * gst/base/README:
3346         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3347         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3348         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3349         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3350         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3351         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3352         (gst_basesrc_stop), (gst_basesrc_activate),
3353         (gst_basesrc_change_state), (basesrc_find_peek),
3354         (basesrc_find_suggest), (gst_basesrc_type_find):
3355         * gst/base/gstbasesrc.h:
3356         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3357         (gst_filesrc_class_init), (gst_filesrc_init),
3358         (gst_filesrc_finalize), (gst_filesrc_set_location),
3359         (gst_filesrc_set_property), (gst_filesrc_get_property),
3360         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3361         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3362         (gst_filesrc_create_read), (gst_filesrc_create),
3363         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3364         * gst/elements/gstfilesrc.h:
3365         * gst/gstelement.c: (gst_element_get_state_func),
3366         (gst_element_lost_state), (gst_element_pads_activate):
3367         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3368         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3369         (gst_pad_pull_range):
3370         * gst/gstpad.h:
3371         More work on the generic source base class, implement seeking,
3372         query.
3373         Make filesrc extend the base source class.
3374         Added gst_pad_set_checkgetrange_function to GstPad.
3375
3376 2005-04-06  Andy Wingo  <wingo@pobox.com>
3377
3378         * pkgconfig/gstreamer-base.pc.in:
3379         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3380
3381         * pkgconfig/Makefile.am:
3382         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3383
3384 2005-04-04  Wim Taymans  <wim@fluendo.com>
3385
3386         * gst/base/Makefile.am:
3387         * gst/base/README:
3388         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3389         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3390         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3391         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3392         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3393         (gst_basesrc_base_init), (gst_basesrc_class_init),
3394         (gst_basesrc_init), (gst_basesrc_get_formats),
3395         (gst_basesrc_get_query_types), (gst_basesrc_query),
3396         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3397         (gst_basesrc_set_property), (gst_basesrc_get_property),
3398         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3399         (gst_basesrc_loop), (gst_basesrc_activate),
3400         (gst_basesrc_change_state):
3401         * gst/base/gstbasesrc.h:
3402         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3403         (gst_fakesrc_class_init), (gst_fakesrc_init),
3404         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3405         (gst_fakesrc_get_property), (gst_fakesrc_create):
3406         * gst/elements/gstfakesrc.h:
3407         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3408         (gst_filesrc_open_file), (gst_filesrc_loop),
3409         (gst_filesrc_activate), (filesrc_find_peek),
3410         (gst_filesrc_type_find):
3411         Made base source class, make fakesrc extend it.
3412         Add comments to basesink class.
3413         Some filesrc cleanup.
3414
3415 2005-03-31  David Schleef  <ds@schleef.org>
3416
3417         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3418         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3419         expected to link against libgstreamer.
3420         * gst/base/Makefile.am: link against libgstreamer
3421         * gst/elements/Makefile.am: same
3422
3423 2005-03-31  Andy Wingo  <wingo@pobox.com>
3424
3425         * tests/instantiate/Makefile.am:
3426         * tests/instantiate/caps.c: Add test to test speed of caps copy
3427         and free.
3428
3429         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3430         GMemChunk to be fair.
3431
3432         * gst/gsttrashstack.h: Remove warning about using the fallback
3433         trash stack implementation, it's still faster than malloc.
3434
3435 2005-03-30  Andy Wingo  <wingo@pobox.com>
3436
3437         * tests/complexity.c: Add a copyright.
3438
3439 2005-03-31  Wim Taymans  <wim@fluendo.com>
3440
3441         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3442         (gst_base_transform_class_init), (gst_base_transform_init),
3443         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3444         (gst_base_transform_get_property),
3445         (gst_base_transform_sink_activate),
3446         (gst_base_transform_src_activate),
3447         (gst_base_transform_change_state):
3448         * gst/base/gstbasetransform.h:
3449         * gst/elements/gstidentity.c: (gst_identity_class_init),
3450         (gst_identity_event), (gst_identity_check_perfect),
3451         (gst_identity_transform), (gst_identity_start),
3452         (gst_identity_stop):
3453         Added start/stop methods to transform base class so subclasses 
3454         don't need to deal with state changes even.
3455
3456 2005-03-31  Wim Taymans  <wim@fluendo.com>
3457
3458         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3459         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3460         * gst/gstevent.h:
3461         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3462         (gst_pad_pull_range):
3463         Added rate to the discont event to prepare for variable speed
3464         and reverse playback.
3465
3466 2005-03-29  David Schleef  <ds@schleef.org>
3467
3468         * configure.ac:
3469         * testsuite/trigger/Makefile.am:
3470         * testsuite/trigger/trigger.c: A little example program to show
3471         how trigger-based elements can work.
3472
3473 2005-03-29  Wim Taymans  <wim@fluendo.com>
3474
3475         * gst/base/Makefile.am:
3476         * gst/base/README:
3477         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3478         (gst_basesink_base_init), (gst_basesink_class_init),
3479         (gst_basesink_pad_getcaps), (gst_basesink_init),
3480         (gst_basesink_activate), (gst_basesink_change_state):
3481         * gst/base/gstbasesink.h:
3482         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3483         (gst_base_transform_base_init), (gst_base_transform_finalize),
3484         (gst_base_transform_class_init), (gst_base_transform_init),
3485         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3486         (gst_base_transform_event), (gst_base_transform_getrange),
3487         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3488         (gst_base_transform_set_property),
3489         (gst_base_transform_get_property),
3490         (gst_base_transform_sink_activate),
3491         (gst_base_transform_src_activate),
3492         (gst_base_transform_change_state):
3493         * gst/base/gstbasetransform.h:
3494         * gst/elements/gstidentity.c: (gst_identity_finalize),
3495         (gst_identity_class_init), (gst_identity_init),
3496         (gst_identity_event), (gst_identity_check_perfect),
3497         (gst_identity_transform), (gst_identity_set_property),
3498         (gst_identity_get_property), (gst_identity_change_state):
3499         * gst/elements/gstidentity.h:
3500         * gst/gstelement.c: (gst_element_get_state_func),
3501         (gst_element_lost_state), (gst_element_pads_activate):
3502         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3503         (gst_pad_check_pull_range), (gst_pad_pull_range):
3504         * gst/gstpad.h:
3505         Simplify pad activation.
3506         Added function to check if pull_range can be performed.
3507         Error out when pulling inactive or flushing pads.
3508         Removed const from refcounted types as it does not make sense.
3509         Simplify pad templates in basesink
3510         Added base class for simple 1-to-1 transforms.
3511         Make identity subclass the base transform.
3512
3513 2005-03-29  Andy Wingo  <wingo@pobox.com>
3514
3515         * docs/libs/gstreamer-libs-overrides.txt: 
3516         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3517         really don't understand what's going on, but like whatever. I want
3518         green buildbot!
3519
3520         * docs/gst/Makefile.am:
3521         * docs/libs/Makefile.am: Dist the overrides files.
3522
3523         * check/Makefile.am (clean-local): Remove .libs directories.
3524
3525         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3526         elements to EXTRA_DIST, so po/ files are happy.
3527
3528         * po/POTFILES.in: Er, remove it here.
3529
3530         * po/POTFILES: Remove gstspider.c.
3531
3532         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3533
3534         * docs/libs/gstreamer-libs-docs.sgml: 
3535         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3536         bytestream.
3537
3538         * tests/complexity.c (main): Set the length of the preroll queue
3539         on the sinks to prevent a lockup.
3540
3541         * libs/gst/dataprotocol/Makefile.am: 
3542         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3543         the same as the one in check/gst-libs/gdp.c.
3544
3545         * po/, docs/gst/: Commit automatic changes to docs and po files.
3546
3547         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3548         the versioned libgstbase.
3549
3550         * check/Makefile.am: Depend on an unversioned gst-register, seems
3551         to make autoconf happier.
3552
3553         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3554
3555 2005-03-28  Wim Taymans  <wim@fluendo.com>
3556
3557         * configure.ac:
3558         * docs/design/part-gstelement.txt:
3559         * docs/design/part-negotiation.txt:
3560         * docs/design/part-preroll.txt:
3561         * docs/design/part-scheduling.txt:
3562         * docs/design/part-states.txt:
3563         * gst/Makefile.am:
3564         * gst/base/Makefile.am:
3565         * gst/base/README:
3566         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3567         (gst_basesink_base_init), (gst_basesink_class_init),
3568         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3569         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3570         (gst_basesink_set_pad_functions),
3571         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3572         (gst_basesink_set_property), (gst_basesink_get_property),
3573         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3574         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3575         (gst_basesink_preroll_queue_push),
3576         (gst_basesink_preroll_queue_empty),
3577         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3578         (gst_basesink_event), (gst_basesink_get_times),
3579         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3580         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3581         (gst_basesink_loop), (gst_basesink_activate),
3582         (gst_basesink_change_state):
3583         * gst/base/gstbasesink.h:
3584         * gst/elements/Makefile.am:
3585         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3586         (gst_fakesink_class_init), (gst_fakesink_init),
3587         (gst_fakesink_set_property), (gst_fakesink_get_property),
3588         (gst_fakesink_get_times), (gst_fakesink_event),
3589         (gst_fakesink_preroll), (gst_fakesink_render),
3590         (gst_fakesink_change_state):
3591         * gst/elements/gstfakesink.h:
3592         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3593         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3594         * gst/gstelement.c: (gst_element_add_pad),
3595         (gst_element_get_state_func), (gst_element_abort_state),
3596         (gst_element_commit_state), (gst_element_lost_state),
3597         (gst_element_set_state), (gst_element_pads_activate):
3598         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3599         * gst/gstpipeline.c: (gst_pipeline_send_event),
3600         (gst_pipeline_change_state):
3601         Added state change code.
3602         Added/updated docs.
3603         Added sink base class, make fakesink extend the base class.
3604         Small cleanups in GstPipeline.
3605
3606 2005-03-26  David Schleef  <ds@schleef.org>
3607
3608         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3609         is broken and should be implemented in a different library.
3610         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3611         * gst/gst.h: remove gstcpu.h
3612         * gst/gstcpu.c: remove
3613         * gst/gstcpu.h: remove
3614         * gst/Makefile.am.future: Remove this file.  It's ancient.
3615
3616 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3617
3618         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3619         (gst_bin_send_event):
3620           Add default event/set_manager handlers. The set_manager handler
3621           takes care that the manager is distributed over kids that were
3622           already in the bin before the manager was set. The event handler
3623           is a utility virtual function that sends the event over all sinks,
3624           so that gst_element_send_event (bin, event); has the expected
3625           behaviour.
3626         * gst/gstpad.c: (gst_pad_event_default):
3627           Re-install default event handling for discontinuities, so that
3628           seeking works without requiring hacks in applications or extra
3629           code in sinks.
3630         * gst/gstpipeline.c: (gst_pipeline_class_init),
3631         (gst_pipeline_send_event):
3632           Half hack, half utility: set a pipeline to PAUSED for seek events,
3633           since that is the only way we can guarantee a/v sync. Means that
3634           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3635           and it "just works".
3636
3637 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3638
3639         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3640           Lock/unlock mismatch.
3641
3642 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3643
3644         * docs/faq/gst-uninstalled:
3645           add gst-plugins-base
3646         * docs/gst/Makefile.am:
3647           don't error out until docs are fixed
3648         * docs/gst/gstreamer.types:
3649           remove thread
3650
3651 2005-03-22  Wim Taymans  <wim@fluendo.com>
3652
3653         * check/Makefile.am:
3654         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3655         * gst/gststructure.c: (gst_structure_set_valist),
3656         (gst_structure_copy_conditional):
3657         Activated more tests.
3658         Added message test.
3659         Added G_TYPE_POINTER to GstStructure.
3660         
3661
3662 2005-03-22  Wim Taymans  <wim@fluendo.com>
3663
3664         * docs/design/part-TODO.txt:
3665         * docs/design/part-events.txt:
3666         * docs/design/part-gstbin.txt:
3667         * docs/design/part-gstbus.txt:
3668         * docs/design/part-gstpipeline.txt:
3669         * docs/design/part-messages.txt:
3670         * gst/gstbus.c:
3671         * gst/gstmessage.c:
3672         Docs updates
3673
3674 2005-03-21  Wim Taymans  <wim@fluendo.com>
3675
3676         * gst/gstbus.c: (gst_bus_post):
3677         Fix copy-and-paste error.
3678
3679 2005-03-21  Wim Taymans  <wim@fluendo.com>
3680
3681         * check/Makefile.am:
3682         * gst/Makefile.am:
3683         * gst/elements/Makefile.am:
3684         * gst/elements/gstelements.c:
3685         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3686         (gst_fakesink_event), (gst_fakesink_chain):
3687         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3688         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3689         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3690         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3691         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3692         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3693         (gst_fakesrc_loop), (gst_fakesrc_activate),
3694         (gst_fakesrc_change_state):
3695         * gst/elements/gstfakesrc.h:
3696         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3697         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
3698         (gst_filesrc_open_file), (gst_filesrc_loop),
3699         (gst_filesrc_activate), (gst_filesrc_change_state),
3700         (filesrc_find_peek), (filesrc_find_suggest),
3701         (gst_filesrc_type_find):
3702         * gst/elements/gstidentity.c: (gst_identity_finalize),
3703         (gst_identity_class_init), (gst_identity_init),
3704         (gst_identity_proxy_getcaps), (identity_queue_push),
3705         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
3706         (gst_identity_getrange), (gst_identity_chain),
3707         (gst_identity_sink_loop), (gst_identity_src_loop),
3708         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
3709         (gst_identity_set_property), (gst_identity_get_property),
3710         (gst_identity_change_state):
3711         * gst/elements/gstidentity.h:
3712         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
3713         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
3714         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
3715         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
3716         (gst_tee_sink_activate):
3717         * gst/elements/gsttee.h:
3718         * gst/gst.c: (gst_register_core_elements), (init_post):
3719         * gst/gst.h:
3720         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
3721         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
3722         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
3723         (gst_bin_change_state):
3724         * gst/gstbin.h:
3725         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
3726         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
3727         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
3728         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
3729         (gst_bus_set_sync_handler), (gst_bus_create_watch),
3730         (bus_watch_callback), (bus_watch_destroy),
3731         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
3732         (poll_timeout), (gst_bus_poll):
3733         * gst/gstbus.h:
3734         * gst/gstcaps.h:
3735         * gst/gstdata.h:
3736         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3737         (gst_element_post_message), (gst_element_message_full),
3738         (gst_element_get_state_func), (gst_element_get_state),
3739         (gst_element_abort_state), (gst_element_commit_state),
3740         (gst_element_lost_state), (gst_element_set_state),
3741         (gst_element_pads_activate), (gst_element_change_state),
3742         (gst_element_dispose), (gst_element_set_manager_func),
3743         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
3744         (gst_element_set_manager), (gst_element_get_manager),
3745         (gst_element_set_bus), (gst_element_get_bus),
3746         (gst_element_set_scheduler), (gst_element_get_scheduler):
3747         * gst/gstelement.h:
3748         * gst/gstevent.c: (gst_event_new_segment_seek),
3749         (gst_event_new_flush):
3750         * gst/gstevent.h:
3751         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
3752         (_gst_message_free), (gst_message_get_type), (gst_message_new),
3753         (gst_message_new_eos), (gst_message_new_error),
3754         (gst_message_new_warning), (gst_message_new_tag),
3755         (gst_message_new_state_changed), (gst_message_new_application),
3756         (gst_message_get_structure), (gst_message_parse_tag),
3757         (gst_message_parse_state_changed), (gst_message_parse_error),
3758         (gst_message_parse_warning):
3759         * gst/gstmessage.h:
3760         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
3761         (gst_real_pad_set_property), (gst_pad_set_active),
3762         (gst_pad_is_active), (gst_pad_set_blocked_async),
3763         (gst_pad_set_blocked), (gst_pad_is_blocked),
3764         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
3765         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
3766         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
3767         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
3768         (gst_pad_link_filtered), (gst_pad_relink_filtered),
3769         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
3770         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
3771         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
3772         (gst_pad_set_caps), (gst_pad_configure_sink),
3773         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
3774         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
3775         (gst_real_pad_dispose), (gst_real_pad_finalize),
3776         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
3777         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3778         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
3779         * gst/gstpad.h:
3780         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
3781         (pipeline_bus_handler), (gst_pipeline_change_state),
3782         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
3783         * gst/gstpipeline.h:
3784         * gst/gstprobe.h:
3785         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
3786         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
3787         (gst_queue_link_src), (gst_queue_bufferalloc),
3788         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
3789         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
3790         (gst_queue_loop), (gst_queue_handle_src_event),
3791         (gst_queue_handle_src_query), (gst_queue_src_activate),
3792         (gst_queue_change_state):
3793         * gst/gstqueue.h:
3794         * gst/gstscheduler.c: (gst_scheduler_init),
3795         (gst_scheduler_dispose), (gst_scheduler_create_task),
3796         (gst_scheduler_factory_create):
3797         * gst/gstscheduler.h:
3798         * gst/gststructure.c: (gst_structure_get_type),
3799         (gst_structure_copy_conditional):
3800         * gst/gststructure.h:
3801         * gst/gsttaginterface.h:
3802         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
3803         (gst_task_init), (gst_task_dispose), (gst_task_create),
3804         (gst_task_get_state), (gst_task_start), (gst_task_stop),
3805         (gst_task_pause):
3806         * gst/gsttask.h:
3807         * gst/gstthread.c:
3808         * gst/gstthread.h:
3809         * gst/gsttypes.h:
3810         * gst/schedulers/Makefile.am:
3811         * gst/schedulers/cothreads_compat.h:
3812         * gst/schedulers/entryscheduler.c:
3813         * gst/schedulers/faircothreads.c:
3814         * gst/schedulers/faircothreads.h:
3815         * gst/schedulers/fairscheduler.c:
3816         * gst/schedulers/gstbasicscheduler.c:
3817         * gst/schedulers/gstoptimalscheduler.c:
3818         * gst/schedulers/gthread-cothreads.h:
3819         * gst/schedulers/threadscheduler.c:
3820         (gst_thread_scheduler_task_get_type),
3821         (gst_thread_scheduler_task_class_init),
3822         (gst_thread_scheduler_task_init),
3823         (gst_thread_scheduler_task_start),
3824         (gst_thread_scheduler_task_stop),
3825         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
3826         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
3827         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
3828         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
3829         (plugin_init):
3830         * libs/gst/Makefile.am:
3831         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
3832         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
3833         (gst_file_pad_parent_set):
3834         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3835         (gst_dp_event_from_packet):
3836         * tests/complexity.c: (main):
3837         * tests/mass_elements.c: (main):
3838         * testsuite/states/locked.c: (message_received), (main):
3839         * testsuite/states/parent.c: (main):
3840         * tools/gst-inspect.c: (print_element_flag_info),
3841         (print_implementation_info), (print_pad_info):
3842         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
3843         (main):
3844         * tools/gst-md5sum.c: (event_loop), (main):
3845         * tools/gst-typefind.c: (main):
3846         * tools/gst-xmlinspect.c: (print_element_info):
3847         Next big merge.
3848         Added GstBus for mainloop integration.
3849         Added GstMessage for sending notifications on the bus.
3850         Added GstTask as an abstraction for pipeline entry points.
3851         Removed GstThread.
3852         Removed Schedulers.
3853         Simplified GstQueue for multithreaded core.
3854         Made _link threadsafe, removed old capsnego.
3855         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
3856         Added pad blocking functions.
3857         Reworked scheduling functions in GstPad to prepare for
3858         scheduling updates soon.
3859         Moved events out of data stream.
3860         Simplified GstEvent types.
3861         Added return values to push/pull.
3862         Removed clocking from GstElement.
3863         Added prototypes for state change function for next merge.
3864         Removed iterate from bins and state change management.
3865         Fixed some elements, disabled others for now.
3866         Fixed -inspect and -launch.
3867         Added check for GstBus.
3868
3869 2005-03-10  Wim Taymans  <wim@fluendo.com>
3870
3871         * docs/design/part-MT-refcounting.txt:
3872         * docs/design/part-clocks.txt:
3873         * docs/design/part-gstelement.txt:
3874         * docs/design/part-gstobject.txt:
3875         * docs/design/part-standards.txt:
3876         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3877         (gst_bin_remove_func), (gst_bin_remove):
3878         * gst/gstbin.h:
3879         * gst/gstbuffer.c:
3880         * gst/gstcaps.h:
3881         * testsuite/clock/clock1.c: (main):
3882         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
3883         (main):
3884         * testsuite/dlopen/loadgst.c: (do_test):
3885         * testsuite/refcounting/bin.c: (add_remove_test1),
3886         (add_remove_test2), (main):
3887         * testsuite/refcounting/element.c: (main):
3888         * testsuite/refcounting/element_pad.c: (main):
3889         * testsuite/refcounting/pad.c: (main):
3890         * tools/gst-launch.c: (sigint_handler_sighandler):
3891         * tools/gst-typefind.c: (main):
3892         Doc updates.
3893         Added doc about clock.
3894         removed gst_bin_iterate_recurse_up(), marked methods
3895         for removal.
3896         Fix more testsuites.
3897
3898 2005-03-09  Wim Taymans  <wim@fluendo.com>
3899
3900         * gst/gstpad.c: (gst_pad_get_direction),
3901         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
3902         (gst_pad_collect_valist):
3903         * testsuite/bins/interface.c: (main):
3904         * testsuite/caps/audioscale.c: (test_caps):
3905         * testsuite/caps/caps.c: (test1), (test2), (test3):
3906         * testsuite/caps/deserialize.c: (main):
3907         * testsuite/caps/enumcaps.c: (main):
3908         * testsuite/caps/filtercaps.c: (main):
3909         * testsuite/caps/intersect2.c: (main):
3910         * testsuite/caps/random.c: (main):
3911         * testsuite/caps/renegotiate.c: (my_fixate), (main):
3912         * testsuite/caps/sets.c: (check_caps):
3913         * testsuite/caps/simplify.c: (check_caps), (main):
3914         * testsuite/caps/subtract.c: (check_caps):
3915         Fix _pad_get_direction wrt ghostpads.
3916         Fix caps testsuite.
3917
3918 2005-03-09  Wim Taymans  <wim@fluendo.com>
3919
3920         * check/Makefile.am:
3921         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
3922         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
3923         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
3924         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
3925         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
3926         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
3927         (gst_bin_remove), (gst_bin_iterate_recurse_up),
3928         (bin_element_is_sink), (gst_bin_iterate_sinks),
3929         (gst_bin_iterate_all_by_interface):
3930         * gst/gstbin.h:
3931         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
3932         (gst_element_change_state), (gst_element_dispose),
3933         (gst_element_finalize), (gst_element_set_loop_function):
3934         * gst/gstelement.h:
3935         * gst/gstiterator.c: (find_custom_fold_func):
3936         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3937         (gst_pad_collectv), (gst_pad_collect_valist),
3938         (gst_pad_template_new):
3939         * gst/gstpipeline.c: (gst_pipeline_class_init),
3940         (gst_pipeline_dispose), (gst_pipeline_set_property),
3941         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
3942         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
3943         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
3944         * gst/gstutils.h:
3945         * gst/schedulers/entryscheduler.c:
3946         * gst/schedulers/gstbasicscheduler.c:
3947         (gst_basic_scheduler_cothreaded_chain),
3948         (gst_basic_scheduler_chain_add_element):
3949         * testsuite/bins/interface.c: (main):
3950         Added GstBin test.
3951         Added GstSystemClock test.
3952         Implemented clock distribution code in GstBin.
3953         Implemented iterate sinks method for future use.
3954         Rearranged gstelement.h
3955         Fix GstIterator comparison bug.
3956         Moved some code to GstPipeline, mostly clocking related.
3957
3958 2005-03-09  Wim Taymans  <wim@fluendo.com>
3959
3960         * configure.ac:
3961         * gst/gst_private.h:
3962         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3963         (gst_bin_remove_func), (gst_bin_remove),
3964         (gst_bin_get_by_name_recurse_up):
3965         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
3966         (gst_clock_id_compare_func), (gst_clock_id_wait),
3967         (gst_clock_id_wait_async), (gst_clock_init),
3968         (gst_clock_adjust_unlocked), (gst_clock_get_time):
3969         * gst/gstelement.h:
3970         * gst/gstinfo.c: (_gst_debug_init):
3971         * gst/gstobject.h:
3972         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3973         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
3974         * gst/gstpad.h:
3975         Bump version number, we're now 0.9.0
3976         Add future debugging category.
3977         Fix NULL _unref() in _get_by_name_recurse_up
3978         Rearrange gstpad.h.
3979         Update some docs.
3980
3981 2005-03-08  Wim Taymans  <wim@fluendo.com>
3982
3983         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
3984         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3985         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3986         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
3987         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
3988         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
3989         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
3990         * gst/elements/gstidentity.c: (gst_identity_class_init):
3991         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
3992         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
3993         * gst/elements/gstshaper.c: (gst_shaper_class_init):
3994         * gst/elements/gststatistics.c: (gst_statistics_class_init):
3995         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
3996         (gst_tee_link):
3997         * gst/gstelement.c: (gst_element_class_init),
3998         (gst_element_base_class_init), (gst_element_init),
3999         (gst_element_get_random_pad), (gst_element_wait_state_change),
4000         (gst_element_change_state), (gst_element_dispose),
4001         (gst_element_finalize), (gst_element_set_loop_function):
4002         * gst/gstelement.h:
4003         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4004         * gst/gstthread.c: (gst_thread_class_init),
4005         (gst_thread_release_children_locks), (gst_thread_change_state):
4006         * gst/schedulers/gstbasicscheduler.c:
4007         (gst_basic_scheduler_loopfunc_wrapper),
4008         (gst_basic_scheduler_chain_wrapper),
4009         (gst_basic_scheduler_src_wrapper),
4010         (gst_basic_scheduler_remove_element):
4011         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4012         Remove threadsafe properties. Fix elements because GObject
4013         complains when installing a property before declaring a
4014         set/get_property handler.
4015         Rearrange gstelement.h file, use STATE macros for state locks.
4016         Free mutexes in the finalize method instead of dispose.
4017
4018 2005-03-08  Wim Taymans  <wim@fluendo.com>
4019
4020         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4021         * gst/gstthread.c: (gst_thread_release_children_locks):
4022         Added parentage check.
4023         Fix build og GstThread again.
4024
4025 2005-03-08  Wim Taymans  <wim@fluendo.com>
4026
4027         * docs/design/part-MT-refcounting.txt:
4028         * docs/design/part-conventions.txt:
4029         * docs/design/part-gstobject.txt:
4030         * docs/design/part-relations.txt:
4031         * docs/design/part-standards.txt:
4032         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4033         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4034         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4035         (gst_bin_iterate_all_by_interface):
4036         * gst/gstbuffer.h:
4037         * gst/gstclock.h:
4038         * gst/gstelement.c: (gst_element_class_init),
4039         (gst_element_change_state), (gst_element_set_loop_function):
4040         * gst/gstelement.h:
4041         * gst/gstiterator.c:
4042         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4043         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4044         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4045         (gst_object_set_parent), (gst_object_unparent),
4046         (gst_object_check_uniqueness):
4047         * gst/gstobject.h:
4048         Docs updates, clean up some headers.
4049
4050 2005-03-07  Wim Taymans  <wim@fluendo.com>
4051
4052         * check/.cvsignore:
4053         * check/Makefile.am:
4054         * check/gst-libs/.cvsignore:
4055         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4056         * check/gst/.cvsignore:
4057         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4058         (START_TEST), (gstbus_suite), (main):
4059         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4060         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4061         (gst_data_suite), (main):
4062         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4063         (add_fold_func), (gstiterator_suite), (main):
4064         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4065         (thread_name_object), (thread_name_object_default),
4066         (gst_object_name_compare), (gst_object_suite), (main):
4067         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4068         (gst_pad_suite), (main):
4069         * check/gstcheck.c: (gst_check_log_message_func),
4070         (gst_check_log_critical_func), (gst_check_init):
4071         * check/gstcheck.h:
4072         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4073         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4074         Added checks.
4075
4076 2005-03-07  Wim Taymans  <wim@fluendo.com>
4077
4078         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4079         (gst_list_iterator_next), (gst_list_iterator_resync),
4080         (gst_list_iterator_free), (gst_iterator_new_list),
4081         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4082         (gst_iterator_free), (gst_iterator_push), (filter_next),
4083         (filter_resync), (filter_uninit), (filter_free),
4084         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4085         (gst_iterator_foreach), (find_custom_fold_func),
4086         (gst_iterator_find_custom):
4087         * gst/gstiterator.h:
4088         Added missing files.
4089
4090 2005-03-07  Wim Taymans  <wim@fluendo.com>
4091
4092         * Makefile.am:
4093         * configure.ac:
4094         * docs/design/part-MT-refcounting.txt:
4095         * docs/design/part-conventions.txt:
4096         * docs/design/part-gstobject.txt:
4097         * docs/design/part-relations.txt:
4098         * examples/mixer/mixer.c: (main):
4099         * examples/thread/thread.c: (eos), (main):
4100         * gst/Makefile.am:
4101         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4102         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4103         (gst_spider_plug_from_srcpad):
4104         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4105         (gst_spider_identity_change_state),
4106         (gst_spider_identity_sink_loop_type_finding):
4107         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4108         * gst/elements/gstidentity.c: (gst_identity_init):
4109         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4110         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4111         * gst/elements/gsttypefindelement.c: (free_entry):
4112         * gst/gst.c:
4113         * gst/gst.h:
4114         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4115         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4116         (gst_bin_set_index), (gst_bin_set_element_sched),
4117         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4118         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4119         (gst_bin_iterate_elements), (iterate_child_recurse),
4120         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4121         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4122         (compare_interface), (gst_bin_get_by_interface),
4123         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4124         * gst/gstbin.h:
4125         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4126         (gst_buffer_default_free), (gst_buffer_default_copy),
4127         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4128         (gst_buffer_create_sub):
4129         * gst/gstbuffer.h:
4130         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4131         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4132         (gst_caps_unref), (gst_static_caps_get),
4133         (gst_caps_remove_and_get_structure), (gst_caps_append),
4134         (gst_caps_append_structure), (gst_caps_remove_structure),
4135         (gst_caps_copy_nth), (gst_caps_set_simple),
4136         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4137         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4138         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4139         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4140         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4141         (gst_caps_structure_figure_out_union),
4142         (gst_caps_switch_structures), (gst_caps_do_simplify),
4143         (gst_caps_replace), (gst_caps_from_string),
4144         (gst_caps_copy_conditional):
4145         * gst/gstcaps.h:
4146         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4147         (_gst_clock_id_free), (gst_clock_id_unref),
4148         (gst_clock_id_compare_func), (gst_clock_id_wait),
4149         (gst_clock_id_wait_async), (gst_clock_class_init),
4150         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4151         (gst_clock_get_time), (gst_clock_set_time_adjust),
4152         (gst_clock_set_property), (gst_clock_get_property):
4153         * gst/gstclock.h:
4154         * gst/gstcompat.h:
4155         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4156         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4157         * gst/gstdata.h:
4158         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4159         (gst_element_requires_clock), (gst_element_provides_clock),
4160         (gst_element_set_clock), (gst_element_clock_wait),
4161         (gst_element_wait), (gst_element_set_time_delay),
4162         (gst_element_is_indexable), (gst_element_add_pad),
4163         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4164         (pad_compare_name), (gst_element_get_static_pad),
4165         (gst_element_request_pad), (gst_element_get_request_pad),
4166         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4167         (gst_element_class_get_pad_template_list),
4168         (gst_element_class_get_pad_template), (gst_element_error_func),
4169         (gst_element_get_random_pad), (gst_element_get_event_masks),
4170         (gst_element_send_event), (gst_element_seek),
4171         (gst_element_get_query_types), (gst_element_query),
4172         (gst_element_get_formats), (gst_element_convert),
4173         (gst_element_is_locked_state), (gst_element_set_locked_state),
4174         (gst_element_sync_state_with_parent), (gst_element_change_state),
4175         (gst_element_finalize), (gst_element_yield),
4176         (gst_element_interrupt), (gst_element_set_scheduler),
4177         (gst_element_get_scheduler), (gst_element_set_loop_function):
4178         * gst/gstelement.h:
4179         * gst/gstevent.h:
4180         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4181         (gst_format_get_by_nick), (gst_format_get_details),
4182         (gst_format_iterate_definitions):
4183         * gst/gstformat.h:
4184         * gst/gstindex.c: (gst_index_gtype_resolver):
4185         * gst/gstinfo.c:
4186         * gst/gstinfo.h:
4187         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4188         (gst_mem_chunk_free):
4189         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4190         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4191         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4192         (gst_object_dispatch_properties_changed),
4193         (gst_object_set_name_default), (gst_object_set_name),
4194         (gst_object_get_name), (gst_object_set_name_prefix),
4195         (gst_object_get_name_prefix), (gst_object_set_parent),
4196         (gst_object_get_parent), (gst_object_unparent),
4197         (gst_object_check_uniqueness), (gst_object_save_thyself),
4198         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4199         (gst_object_set_property), (gst_object_get_property),
4200         (gst_object_get_path_string):
4201         * gst/gstobject.h:
4202         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4203         (gst_real_pad_init), (gst_real_pad_get_property),
4204         (gst_pad_custom_new), (gst_pad_get_direction),
4205         (gst_pad_set_active), (gst_pad_is_active),
4206         (gst_pad_set_event_function), (gst_pad_is_linked),
4207         (gst_pad_link_free), (gst_pad_link_intersect),
4208         (gst_pad_link_fixate), (gst_pad_set_caps),
4209         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4210         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4211         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4212         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4213         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4214         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4215         (gst_pad_realize), (gst_pad_get_allowed_caps),
4216         (gst_real_pad_dispose), (gst_real_pad_finalize),
4217         (gst_pad_collectv), (gst_pad_collect_valist),
4218         (gst_pad_template_dispose), (gst_pad_template_new),
4219         (gst_pad_get_internal_links):
4220         * gst/gstpad.h:
4221         * gst/gstpipeline.c: (gst_pipeline_dispose),
4222         (gst_pipeline_change_state):
4223         * gst/gstpipeline.h:
4224         * gst/gstplugin.c:
4225         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4226         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4227         * gst/gstpluginfeature.h:
4228         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4229         * gst/gstquery.c: (_gst_query_type_initialize),
4230         (gst_query_type_register), (gst_query_type_get_by_nick),
4231         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4232         * gst/gstquery.h:
4233         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4234         * gst/gstscheduler.c: (gst_scheduler_add_element),
4235         (gst_scheduler_factory_create):
4236         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4237         (gst_structure_free), (gst_structure_set_name),
4238         (gst_structure_id_set_value), (gst_structure_set_value),
4239         (gst_structure_set_valist), (gst_structure_remove_field),
4240         (gst_structure_remove_fields),
4241         (gst_structure_remove_fields_valist),
4242         (gst_structure_remove_all_fields), (gst_structure_foreach),
4243         (gst_structure_map_in_place),
4244         (gst_caps_structure_fixate_field_nearest_int),
4245         (gst_caps_structure_fixate_field_nearest_double):
4246         * gst/gststructure.h:
4247         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4248         (gst_system_clock_init), (gst_system_clock_dispose),
4249         (gst_system_clock_async_thread),
4250         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4251         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4252         * gst/gstsystemclock.h:
4253         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4254         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4255         * gst/gsttaginterface.c:
4256         * gst/gstthread.c: (gst_thread_dispose),
4257         (gst_thread_release_children_locks), (gst_thread_change_state),
4258         (gst_thread_main_loop):
4259         * gst/gsttrashstack.h:
4260         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4261         * gst/gsttypes.h:
4262         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4263         (gst_element_request_pad), (gst_element_get_pad_from_template),
4264         (gst_element_request_compatible_pad),
4265         (gst_element_get_compatible_pad_filtered),
4266         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4267         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4268         (gst_element_link_many), (gst_element_link),
4269         (gst_element_link_pads), (gst_element_unlink_pads),
4270         (gst_element_unlink_many), (gst_element_unlink),
4271         (gst_pad_can_link_filtered), (gst_pad_can_link),
4272         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4273         (gst_object_default_error), (gst_bin_add_many),
4274         (gst_bin_remove_many), (gst_element_populate_std_props),
4275         (gst_element_class_install_std_props), (gst_buffer_merge),
4276         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4277         (link_fold_func), (gst_pad_proxy_setcaps):
4278         * gst/gstutils.h:
4279         * gst/gstvalue.c: (gst_value_deserialize_string):
4280         * gst/parse/grammar.y:
4281         * gst/schedulers/gstbasicscheduler.c:
4282         (gst_basic_scheduler_cothreaded_chain),
4283         (gst_basic_scheduler_chain_recursive_add),
4284         (gst_basic_scheduler_pad_link):
4285         * gst/schedulers/gstoptimalscheduler.c:
4286         (get_group_schedule_function),
4287         (gst_opt_scheduler_state_transition),
4288         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4289         * libs/gst/bytestream/bytestream.c:
4290         * libs/gst/dataprotocol/dataprotocol.c:
4291         (gst_dp_header_from_buffer):
4292         * po/nb.po:
4293         * po/ru.po:
4294         * tests/threadstate/threadstate2.c: (eos):
4295         * tools/gst-compprep.c: (main):
4296         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4297         (print_pad_info), (print_children_info):
4298         * tools/gst-launch.c: (idle_func), (main):
4299         * tools/gst-md5sum.c: (idle_func), (main):
4300         * tools/gst-xmlinspect.c: (print_element_info):
4301         First THREADED backport attempt, focusing on adding locks and
4302         making sure the API is threadsafe. Needs more work. More docs
4303         follow this week.
4304
4305 2005-02-24  Andy Wingo  <wingo@pobox.com>
4306
4307         * tests/bench-complexity.scm:
4308         * tests/complexity.gnuplot: New files, good for running complexity
4309         benchmarks.
4310
4311         * tests/Makefile.am:
4312         * tests/complexity.c: New test, sets up N elements, at each level
4313         teeing into M streams per element. Eeeenteresting.
4314
4315         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4316         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4317         running bench-mass_elements.scm.
4318
4319         * tests/bench-mass_elements.scm: New script, runs mass_elements
4320         for various numbers of identities, outputting the results to a
4321         file. Requires guile 1.6. Just for testing.
4322
4323 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4324
4325         * gst/schedulers/fairscheduler.c:
4326           compile with debug disabled
4327
4328 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4329
4330         * configure.ac:
4331           hunting season on 0.9 is now OPEN
4332
4333 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4334
4335         * docs/libs/tmpl/gstcontrol.sgml:
4336         * docs/libs/tmpl/gstdparam.sgml:
4337         * docs/libs/tmpl/gstdplinint.sgml:
4338         * docs/libs/tmpl/gstdpman.sgml:
4339         * docs/libs/tmpl/gstdpsmooth.sgml:
4340         * docs/libs/tmpl/gstunitconvert.sgml:
4341           more docs for the state of dparams
4342
4343 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4344
4345         * gst/gstelementfactory.c: (gst_element_factory_create):
4346         * gst/gstobject.c: (gst_object_init),
4347         (gst_object_set_name_default), (gst_object_set_name):
4348           name objects by default, not in gst_element_factory_create. Allows
4349           using elements created with g_object_new. (fixes #167283)
4350
4351 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4352
4353         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4354           make the time that debugging functions print relative to when
4355           gst_init was called
4356
4357 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4358
4359         * gst/gsttaginterface.c:
4360           Fix inline docs: tag setter vararg functions are NULL-terminated,
4361           GST_TAG_INVALID doesn't exist any more.
4362
4363 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4364
4365         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4366         Allocate the 1 byte more memory that was forgotten!!!!!
4367         fixes memory corruption on 64bit platforms
4368
4369 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4370
4371         * docs/pwg/building-pads.xml:
4372         * docs/pwg/intro-basics.xml:
4373           fixed a few typos, relabeled introductionary list of types
4374         * docs/random/ensonic/dparams.txt:
4375           more notes abut dparam changes
4376         * libs/gst/control/dparam.c: (gst_dparam_attach):
4377         * libs/gst/control/dparammanager.c:
4378         * libs/gst/control/dparammanager.h:
4379           - many comments and notes on dparam implementation
4380           - new dparams are were not initialized to the default value
4381             from param spec
4382
4383 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4384
4385         submitted by: Peter Astakhov
4386
4387         * po/LINGUAS:
4388         * po/ru.po:
4389           adding Russian translation
4390
4391 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4392
4393         * configure.ac:
4394         * docs/gst/Makefile.am:
4395         * docs/libs/Makefile.am:
4396           make sure popt is added to gtk-doc flags.  Fixes #147782.
4397
4398 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4399
4400         * docs/faq/using.xml:
4401           Fix typo in FAQ (artssink => artsdsink)
4402
4403 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4404
4405         * tools/gst-launch.1.in:
4406           Fix typo (#166699).
4407
4408 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4409
4410         * docs/faq/using.xml:
4411           Add -v argument to fakesrc/fakesink gst-launch line,
4412           so that the promised output will actually show up.
4413
4414 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4415
4416         * gst/gstthread.c: (gst_thread_change_state):
4417           Implement state-change error handling (#166073).
4418
4419 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4420
4421         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4422           Release interrupt after handling (#166250).
4423
4424 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4425
4426         * configure.ac:
4427           back to HEAD
4428
4429 === release 0.8.9 ===
4430
4431 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4432
4433         * NEWS:
4434         * RELEASE:
4435         * configure.ac:
4436           releasing 0.8.9, "Like Eating Glass"
4437
4438 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4439
4440         submitted by: Clytie Siddall
4441
4442         * po/vi.po: Added Vietnamese translation
4443
4444 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4445
4446         patch by: Tim Philipp-Müller
4447
4448         * configure.ac:
4449         * gst/gstpad.c:
4450           unref data when probe function returns FALSE.  Fixes #166362
4451
4452 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4453
4454         * gst/gst.c: (gst_init_get_popt_table):
4455           Fix typo (#166269).
4456
4457 2005-02-04  Andy Wingo  <wingo@pobox.com>
4458
4459         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4460         the debugging on whether the caps are compatible.
4461
4462 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4463
4464         * docs/manual/basics-elements.xml:
4465           Fix two typos.
4466
4467 2005-02-02  Wim Taymans  <wim@fluendo.com>
4468
4469         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4470         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4471         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4472         Remove some FIXMEs after analysing and commenting why they
4473         are not issues.
4474
4475 2005-02-02  Wim Taymans  <wim@fluendo.com>
4476
4477         * gst/schedulers/gstoptimalscheduler.c:
4478         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4479         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4480         (get_invalid_call), (chain_invalid_call),
4481         (get_group_schedule_function), (loop_group_schedule_function),
4482         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4483         (gst_opt_scheduler_state_transition),
4484         (gst_opt_scheduler_add_element),
4485         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4486         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4487         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4488         (gst_opt_scheduler_show):
4489         Added lock to protect scheduler data structures.
4490
4491 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4492
4493         * testsuite/threads/threadi.c: (cb_data):
4494           Fix buglet in test.
4495
4496 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4497
4498         * testsuite/threads/Makefile.am:
4499         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4500           On Wim's request, split the test in three separately-compiled
4501           tests that each test a very specific bug. Two of them still fail,
4502           will create bugs for those. threadi.c indicates why they fail.
4503
4504 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4505
4506         * gst/schedulers/gstoptimalscheduler.c:
4507         (get_group_schedule_function):
4508           Try to work with the threading mess that queue_link is.
4509
4510 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4511
4512         * gst/gstbin.c: (gst_bin_remove_func):
4513           Explicitely make an element release locks in a group when being
4514           remove from a bin.
4515         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4516           If there's no scheduler, always return immediately (similar to
4517           gst_element_interrupt).
4518
4519 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4520
4521         * gst/gstbin.c: (gst_bin_child_state_change_func):
4522           Remove a piece of code that could never be reached.
4523         * docs/gst/gstreamer-sections.txt:
4524         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4525         (gst_pad_call_get_function):
4526         * gst/gstpad.h:
4527         * testsuite/pad/Makefile.am:
4528           Fix #150546, enable tests.
4529
4530 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4531
4532         * docs/pwg/advanced-types.xml:
4533           Fix description for buffer-frames=0.
4534         * docs/gst/tmpl/gstbin.sgml:
4535         * gst/gstbin.c: (gst_bin_child_state_change_func),
4536         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4537         * gst/gstbin.h:
4538         * testsuite/threads/Makefile.am:
4539         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4540         (cb_state), (cb_play), (main):
4541           Fix non-recursive state changes to *really* change the state
4542           of the object, and not just call parent_class->state_change.
4543           Fix a lot of lockups caused by this. Fixes #132775. Add test
4544           for the problem. Also enable test to show #142588 (fixed).
4545         * gst/gstthread.c: (gst_thread_change_state),
4546         (gst_thread_child_state_change):
4547           Don't exit the thread if we go to NULL and are inside thread
4548           context. Instead, return control to the main thread context
4549           and exit from there.
4550         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4551           Don't unset virtual functions, since those may still be used.
4552           That's not necessarily correct, but suffices for now.
4553         * configure.ac:
4554         * testsuite/Makefile.am:
4555         * testsuite/pad/Makefile.am:
4556         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4557         (gst_test_sink_base_init), (gst_test_sink_chain),
4558         (gst_test_sink_init), (main):
4559         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4560         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4561         (main):
4562         * testsuite/pad/link.c: (gst_test_element_class_init),
4563         (gst_test_element_base_init), (gst_test_src_get),
4564         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4565         (gst_test_filter_loop), (gst_test_filter_init),
4566         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4567         (cb_error), (main):
4568           Add tests to show #150546. Pass, but should fail (currently
4569           disabled from the testsuite).
4570         * gst/gstscheduler.c: (gst_scheduler_dispose):
4571           Dereference child schedulers on dispose (#94464).
4572         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4573           Fix typo.
4574         * testsuite/threads/thread.c: (main):
4575           Add more debug.
4576
4577 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4578
4579         * gst/gstpad.c: (gst_pad_push):
4580           Oops, revert previous commit, broke testsuite...
4581
4582 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4583
4584         * gst/gstpad.c: (gst_pad_push):
4585           Add check that the pad on which the push is performed is not a
4586           get-based pad (#150546).
4587
4588 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4589
4590         * gst/elements/gsttypefindelement.c:
4591         (gst_type_find_element_handle_event):
4592           Fix buffer pushing if stream EOSes during typefinding.
4593
4594 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4595
4596         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4597
4598         * gst/gstvalue.c: (gst_string_wrap):
4599           Allow NULL-strings as argument (#165365).
4600
4601 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4602
4603         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4604
4605         * gst/schedulers/faircothreads.c:
4606         (gst_fair_scheduler_cothread_queue_show):
4607           Fix build without debug enabled.
4608
4609 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4610
4611         * docs/gst/gstreamer-sections.txt:
4612         * docs/libs/gstreamer-libs-docs.sgml:
4613         * docs/libs/gstreamer-libs-sections.txt:
4614         * docs/libs/tmpl/gstcontrol.sgml:
4615         * docs/libs/tmpl/gstdparam.sgml:
4616         * docs/libs/tmpl/gstdplinint.sgml:
4617         * docs/libs/tmpl/gstdpman.sgml:
4618         * docs/libs/tmpl/gstdpsmooth.sgml:
4619         * docs/libs/tmpl/gstputbits.sgml:
4620         * docs/libs/tmpl/gstunitconvert.sgml:
4621         * libs/gst/control/dparam.c:
4622         * libs/gst/control/dparam.h:
4623         * libs/gst/control/dparammanager.c:
4624         (gst_dpman_add_required_dparam_callback),
4625         (gst_dpman_add_required_dparam_direct),
4626         (gst_dpman_add_required_dparam_array),
4627         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4628         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4629         (gst_dpman_get_manager)
4630           restructured DParam docs
4631
4632 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4633
4634         * gst-element-check.m4:
4635           Only check for gst-inspect if we haven't already
4636           found it in previous element check runs
4637
4638 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4639
4640         * docs/gst/Makefile.am:
4641         * docs/libs/Makefile.am:
4642           fixed install rules to treat style.css as optional
4643
4644 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4645
4646         * docs/gst/Makefile.am:
4647         * docs/libs/Makefile.am:
4648           install style.css along with docs
4649         * docs/gst/tmpl/gstbin.sgml:
4650         * docs/gst/tmpl/gstclock.sgml:
4651         * docs/gst/tmpl/gstdata.sgml:
4652         * docs/gst/tmpl/gstelement.sgml:
4653         * gst/gstbin.h:
4654         * gst/gstelement.c: (gst_element_class_init):
4655         * gst/gstelement.h:
4656           fixing incomplete docs
4657
4658 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4659
4660         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4661           Don't unref seek event twice when fflush() fails
4662           
4663 2005-01-22  David Schleef  <ds@schleef.org>
4664
4665         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4666
4667 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4668
4669         * docs/gst/Makefile.am:
4670         * docs/libs/Makefile.am:
4671           added params for deprecation guards
4672         * gst/gst.c:
4673         * gst/gst.h:
4674         * gst/gsterror.c: (_gst_resource_errors_init),
4675         (_gst_stream_errors_init):
4676         * gst/gsterror.h:
4677           documented some more enums
4678
4679 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4680         * gst/autoplug/gstspideridentity.c:
4681         Cosmetic fix - spider_find_peek should be static
4682         * gst/parse/parse.l:
4683         Applying fix for #164261
4684
4685 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4686
4687         * docs/gst/gstreamer-sections.txt:
4688         * docs/gst/tmpl/gstplugin.sgml:
4689         * docs/libs/gstreamer-libs-sections.txt:
4690         * docs/libs/tmpl/gstcontrol.sgml:
4691         * gst/gstbuffer.h:
4692         * gst/gsttag.h:
4693         * gst/gstvalue.c:
4694           added docs for the TAG defines
4695
4696 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4697
4698         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4699           Only unref entry if there is an entry.
4700
4701 2005-01-17  Wim Taymans  <wim@fluendo.com>
4702
4703         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4704         (remove_from_group), (schedule_group), (normalize_group),
4705         (gst_opt_scheduler_iterate):
4706         Also ref/unref decoupled elements before iterating the
4707         group since they are not added to the list of elements.
4708
4709 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4710
4711         * docs/manual/highlevel-components.xml:
4712           Add subtitle/streamselection as new features to playbin.
4713
4714 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4715
4716         * docs/manual/manual.xml:
4717           Re-enable dataaccess docs (oops).
4718
4719 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4720
4721         * docs/pwg/advanced-types.xml:
4722         * docs/random/mimetypes:
4723           Add documentation on libsndfile types (#163309), by Steve Baker
4724           <steve@stevebaker.org>.
4725         * gst/gstelement.c: (gst_element_release_request_pad):
4726           If an element has no explicit function, just remove the pad.
4727
4728 2005-01-17  Luca Ognibene  <luogni@tin.it>
4729
4730         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4731
4732         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
4733           Fix memleak (#163801).
4734
4735 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4736
4737         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
4738           I think this is actually more correct...
4739
4740 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4741
4742         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4743           Another workaround for memory access while destroyed in callback.
4744           Please, someone with refcount knowledge, have a look at this.
4745
4746 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4747
4748         * docs/faq/faq.xml:
4749         * docs/faq/legal.xml:
4750           move the legal Q&A here
4751
4752 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4753
4754         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
4755         (gst_tee_request_new_pad):
4756           Fix negotiation.
4757
4758 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4759
4760         * docs/random/omega/caps2:
4761         * testsuite/caps/caps_strings:
4762           replace framerate aproximations by their real value
4763           (24000/1001, 30000/1001, 60000/1001)
4764           Partially fixes bug #164049
4765
4766 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4767
4768         * docs/gst/Makefile.am:
4769           don't fail on the stupid GstPoptOption
4770
4771 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4772
4773         * gst/gstpad.h:
4774         * gst/gstprobe.c:
4775           allow probes to work on ghost pads by realizing the pad
4776           probe debugging
4777
4778 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4779
4780         * docs/gst/gstreamer-sections.txt:
4781         * docs/gst/tmpl/gstpad.sgml:
4782         * gst/gstpad.c: (gst_pad_set_active_recursive):
4783         * gst/gstpad.h:
4784           Add gst_pad_set_active_recursive().
4785
4786 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4787
4788         * docs/random/release:
4789           updates
4790         * gst/gst_private.h:
4791         * gst/gstinfo.c:
4792         * gst/gstobject.c:
4793           move deep_notify logging to a new category
4794         * gst/gstprobe.c:
4795         * gst/gstprobe.h:
4796           add stuff so bindings can wrap probes
4797
4798 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4799
4800         * gst/gstplugin.c: (gst_plugin_load):
4801           Fix plugin loading if plugin/lib was already loaded. Fixes
4802           #163383
4803
4804 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
4805
4806         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4807
4808         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
4809           Protect plugin loading by a mutex so it's threadsafe. Fixes
4810           #163234.
4811
4812 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4813
4814         * gst/gstevent.c: (_gst_event_copy):
4815           Reference source object when copying events, since it'll be
4816           dereferenced on event dereferencing as well.
4817
4818 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4819
4820         * docs/gst/gstreamer-sections.txt:
4821         * docs/gst/tmpl/gstevent.sgml:
4822         * gst/gstevent.c: (gst_event_new_filler_stamped),
4823         (gst_event_filler_get_duration):
4824         * gst/gstevent.h:
4825           Add two new functions for filler events (which are used to
4826           synchronize streams if one of them is not having any data
4827           for a while) without interrupting the actual data-stream.
4828           Basically a no-op.
4829         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4830         (gst_queue_link_sink), (gst_queue_link_src),
4831         (gst_queue_change_state):
4832           Allow for renegotiation while filled. Required for stream
4833           switching while playing.
4834
4835 2005-01-08  Benjamin Otte  <otte@gnome.org>
4836
4837         * gst/gstelement.c: (gst_element_link_many):
4838           fix up g_return_if_fail's
4839         * po/LINGUAS:
4840         * po/de.po:
4841           add German translation, that was somehow not included
4842
4843 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4844
4845         * docs/random/mimetypes:
4846           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
4847           do not add them to riff-lib as they are not common
4848
4849 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4850
4851         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4852           Check for existence of probe after performing the probe before
4853           re-accessing it to prevent segfaults caused by removal of the
4854           probe in the callback.
4855
4856 2005-01-05  David Schleef  <ds@schleef.org>
4857
4858         * testsuite/registry/Makefile.am:
4859         * testsuite/registry/gst-print-formats.c:
4860         (print_pad_templates_info), (print_element_list),
4861         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
4862         (g_list_uniqify), (get_pad_templates_info),
4863         (get_element_mime_list), (print_mime_list), (main): A little
4864         program that looks through the registry to find elements of
4865         a given type.  Not particularly interesting as a test, except
4866         that there's no other test covering the same area.
4867
4868 2005-01-05  David Schleef  <ds@schleef.org>
4869
4870         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
4871         (fault_handler_sigaction), (fault_spin),
4872         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
4873         in signal.h-type signal handlers by not calling forbidden functions,
4874         including gst_element_set_state().
4875
4876 2005-01-05  David Schleef  <ds@schleef.org>
4877
4878         * gst/gstvalue.h: Mark _gst_reserved[] as private
4879
4880 2005-01-05  David Schleef  <ds@schleef.org>
4881
4882         * gst/gstvalue.c: Fix doc build problem.
4883
4884 2005-01-05  David Schleef  <ds@schleef.org>
4885
4886         * gst/gstvalue.c: Add some documentation
4887
4888 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
4889
4890         * docs/README:
4891           another shell oneliner for empty return value docs
4892         * gst/gstcaps.c:
4893         * gst/gstvalue.c:
4894         * libs/gst/control/dparam.c:
4895           more doc fixes (parameters and return values)
4896
4897 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
4898
4899         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4900
4901         * gst/gstregistry.h:
4902         * gst/registries/gstxmlregistry.c:
4903           Fix macro's for Mingw (fixes #162276).
4904
4905 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
4906
4907         * docs/README:
4908           quick shell oneliner to find undocumented members
4909         * docs/gst/tmpl/gstplugin.sgml:
4910         * docs/gst/tmpl/gstscheduler.sgml:
4911         * docs/gst/tmpl/gstthread.sgml:
4912           more enumtypes cleanup
4913         * gst/gsterror.h:
4914           activated documentation comments, now someone needs to document
4915           the enums :(
4916
4917 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4918
4919         * docs/manual/manual.xml:
4920           Add dataaccess part (doh!).
4921
4922 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4923
4924         * docs/manual/advanced-autoplugging.xml:
4925           Fix typo (intiate -> initiate).
4926
4927 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4928
4929         * docs/random/bbb/streamselection:
4930           Add some notes on how to handle multi-subtitle/-audio streams.
4931
4932 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
4933
4934         * docs/gst/gstreamer-docs.sgml:
4935         * docs/gst/gstreamer-sections.txt:
4936         * docs/gst/tmpl/gstenumtypes.sgml:
4937         * docs/gst/tmpl/gsterror.sgml:
4938         * docs/gst/tmpl/gstevent.sgml:
4939         * docs/gst/tmpl/gstpad.sgml:
4940         * docs/gst/tmpl/gstpadtemplate.sgml:
4941         * docs/gst/tmpl/gstthread.sgml:
4942           removed gstenumtypes section from docs and put all the enums into
4943           their sections
4944
4945 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4946
4947         * gst/gstplugin.c:
4948           document gst_library_load a bit more (riff special case + return
4949           value if already loaded)
4950         * testsuite/bytestream/filepadsink.c:
4951           plugin name is 'gstbytestream', not 'bytestream'
4952
4953 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4954
4955         * docs/random/bbb/subtitles:
4956           Add some first mind rumblings on proper subtitle support.
4957
4958 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
4959
4960         * po/ca.po:
4961         * po/sv.po:
4962           updated translations
4963
4964 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4965
4966         * docs/manual/advanced-dataaccess.xml:
4967           Add section on how to use fakesrc/fakesink/identity in your
4968           application, plus section on how to embed plugins. Also mention
4969           probes.
4970         * docs/manual/appendix-checklist.xml:
4971         * docs/manual/appendix-debugging.xml:
4972         * docs/manual/appendix-gnome.xml:
4973         * docs/manual/appendix-integration.xml:
4974           Debug -> checklist, GNOME -> integration, add sections on Linux,
4975           KDE integration and add other things useful for application
4976           development.
4977         * docs/manual/manual.xml:
4978           Remove some fixmes, update some file pointers.
4979         * docs/pwg/appendix-checklist.xml:
4980           Fix typo.
4981         * docs/pwg/building-boiler.xml:
4982           Remove ugly header and add commented fixme.
4983         * docs/pwg/pwg.xml:
4984           Add fixme.
4985         * examples/manual/Makefile.am:
4986           Add example for added docs.
4987
4988 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4989
4990         * configure.ac:
4991           back to HEAD
4992
4993 === release 0.8.8 ===
4994
4995 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4996
4997         * NEWS:
4998         * RELEASE:
4999         * configure.ac:
5000           Releasing 0.8.8, "I'll Take Care Of You"
5001
5002 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5003
5004         * configure.ac:
5005           second prerelease
5006
5007 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5008
5009         patch by: Wim Taymans
5010
5011         * gst/gstbin.c:
5012           Fix for #159852 - make iterate emission threadsafe
5013
5014 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5015
5016         * docs/faq/cvs.xml:
5017           notes about new fdo account request
5018
5019 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5020
5021         * docs/gst/gstreamer-docs.sgml:
5022         * docs/gst/tmpl/gstenumtypes.sgml:
5023         * docs/gst/tmpl/gstplugin.sgml:
5024         * docs/libs/gstreamer-libs-docs.sgml:
5025           Added missing short docs. Added ids for navigation.
5026
5027 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5028
5029         * docs/manual/advanced-autoplugging.xml:
5030         * docs/manual/advanced-schedulers.xml:
5031         * docs/manual/advanced-threads.xml:
5032           Rewrites. Remove cothreads, go a bit into opt specifically,
5033           document threads and their gotchas, and do some technical stuff
5034           on autoplugging plus add some working examples. Fixes #157395.
5035         * examples/manual/Makefile.am:
5036           Add typefind/autoplugger example (one that actually works).
5037           Remove queue example since it's a duplicate of the thread one.
5038
5039 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5040
5041         * gst/gstvalue.c: (gst_value_deserialize_string):
5042           use deprecated g_value_set_string_take_ownership to keep compatible
5043           with glib 2.2
5044
5045 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5046
5047         * gst/gstvalue.c: (gst_value_deserialize_string):
5048           revert last patch, only dom a g_utf8_validate now before accepting
5049           the string - caps parsing strips " from strings so we can't rely on
5050           them
5051         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5052           disable a test that tested the above and comment it
5053
5054 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5055
5056         Patch reviewed by David Schleef  <ds@schleef.org>
5057
5058         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5059         bug #153882)
5060         * win32/gstenumtypes.h: same
5061
5062 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5063
5064         * gst/gstpad.c: (gst_pad_query):
5065           Do query on realized pad, similar to how convert/send_event handle
5066           this. Also makes sense, since this pad belongs to the function to
5067           which this query will be sent. Fixes #158163.
5068
5069 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5070
5071         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5072
5073 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5074
5075         * docs/faq/general.xml: fix pipeline to actually work
5076
5077 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5078
5079         * gst/gstvalue.c: (gst_value_deserialize_string):
5080           check that a simple string that gets deserialized does not contain
5081           invalid characters
5082         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5083           remove a test that tested a wring behaviour
5084
5085 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5086
5087         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5088
5089         * docs/manual/intro-motivation.xml:
5090           Fix typos.
5091
5092 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5093
5094         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5095
5096         * docs/gst/tmpl/gstprobe.sgml:
5097           Fix documentation of probe callback - it is supposed to return
5098           FALSE, not TRUE, to remove data from the stream (#159087).
5099
5100 2004-12-16  Daniel Gazard  <dany42@free.fr>
5101
5102         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5103
5104         * gst/gstelementfactory.c: (gst_element_factory_create):
5105           Fix compile failure if compiling without libxml2 support (#149936).
5106
5107 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5108
5109         * docs/manual/advanced-autoplugging.xml:
5110         * docs/manual/highlevel-components.xml:
5111           Move spider from autoplugging to components. Autoplugging is for
5112           internals, not for solutions. ;-).
5113
5114 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5115
5116         * docs/random/ds/0.9-suggested-changes:
5117           Make note on device/location/uri property names.
5118
5119 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5120
5121         * docs/manual/advanced-autoplugging.xml:
5122         * docs/manual/advanced-clocks.xml:
5123         * docs/manual/advanced-interfaces.xml:
5124         * docs/manual/advanced-metadata.xml:
5125         * docs/manual/advanced-position.xml:
5126         * docs/manual/advanced-schedulers.xml:
5127         * docs/manual/advanced-threads.xml:
5128         * docs/manual/appendix-gnome.xml:
5129         * docs/manual/appendix-programs.xml:
5130         * docs/manual/appendix-quotes.xml:
5131         * docs/manual/autoplugging.xml:
5132         * docs/manual/basics-bins.xml:
5133         * docs/manual/basics-data.xml:
5134         * docs/manual/basics-elements.xml:
5135         * docs/manual/basics-helloworld.xml:
5136         * docs/manual/basics-init.xml:
5137         * docs/manual/basics-pads.xml:
5138         * docs/manual/basics-plugins.xml:
5139         * docs/manual/bins-api.xml:
5140         * docs/manual/bins.xml:
5141         * docs/manual/buffers-api.xml:
5142         * docs/manual/buffers.xml:
5143         * docs/manual/clocks.xml:
5144         * docs/manual/components.xml:
5145         * docs/manual/cothreads.xml:
5146         * docs/manual/debugging.xml:
5147         * docs/manual/dparams-app.xml:
5148         * docs/manual/dynamic.xml:
5149         * docs/manual/elements-api.xml:
5150         * docs/manual/elements.xml:
5151         * docs/manual/factories.xml:
5152         * docs/manual/gnome.xml:
5153         * docs/manual/goals.xml:
5154         * docs/manual/helloworld.xml:
5155         * docs/manual/helloworld2.xml:
5156         * docs/manual/highlevel-components.xml:
5157         * docs/manual/highlevel-xml.xml:
5158         * docs/manual/init-api.xml:
5159         * docs/manual/intro-basics.xml:
5160         * docs/manual/intro-motivation.xml:
5161         * docs/manual/intro-preface.xml:
5162         * docs/manual/intro.xml:
5163         * docs/manual/links-api.xml:
5164         * docs/manual/links.xml:
5165         * docs/manual/manual.xml:
5166         * docs/manual/motivation.xml:
5167         * docs/manual/pads-api.xml:
5168         * docs/manual/pads.xml:
5169         * docs/manual/plugins-api.xml:
5170         * docs/manual/plugins.xml:
5171         * docs/manual/programs.xml:
5172         * docs/manual/queues.xml:
5173         * docs/manual/quotes.xml:
5174         * docs/manual/schedulers.xml:
5175         * docs/manual/states-api.xml:
5176         * docs/manual/states.xml:
5177         * docs/manual/threads.xml:
5178         * docs/manual/typedetection.xml:
5179         * docs/manual/win32.xml:
5180         * docs/manual/xml.xml:
5181           Try 2. This time, include a short preface as a "general
5182           introduction", also add code blocks around all code samples
5183           so they get compiled. We still need a way to tell readers
5184           the filename of the code sample. In some cases, don't show
5185           all code in the documentation, but do include it in the generated
5186           code. This allows for focussing on specific bits in the docs,
5187           while still having a full test application available.
5188         * examples/manual/Makefile.am:
5189           Fix up examples for new ADM. Add several of the new examples that
5190           were either added or were missing from the build system.
5191         * examples/manual/extract.pl:
5192           Allow nameless blocks.
5193
5194 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5195
5196         * docs/manual/elements-api.xml:
5197         * docs/manual/helloworld.xml:
5198         * examples/manual/extract.pl:
5199           fix last example.  Add example of adding code blocks that are not
5200           shown in docbook output.
5201
5202 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5203
5204         * docs/manual/dynamic.xml:
5205         * docs/manual/elements-api.xml:
5206         * docs/manual/gnome.xml:
5207         * docs/manual/helloworld2.xml:
5208         * docs/manual/init-api.xml:
5209         * docs/manual/queues.xml:
5210         * docs/manual/threads.xml:
5211         * docs/manual/xml.xml:
5212         * examples/manual/extract.pl:
5213           Make it possible to extract example code from separate blocks.
5214           Should make Ronald happy.
5215
5216 2004-12-15  Wim Taymans  <wim@fluendo.com>
5217
5218         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5219         (remove_from_group), (group_elements_set_visited),
5220         (normalize_group), (gst_opt_scheduler_iterate):
5221         Fix bug where a flag was not updated on a decoupled entry point 
5222         because we were just checking the group element list and decoupled
5223         elements are not in that list..
5224
5225 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5226
5227         * docs/manual/advanced-autoplugging.xml:
5228         * docs/manual/advanced-clocks.xml:
5229         * docs/manual/advanced-dparams.xml:
5230         * docs/manual/advanced-interfaces.xml:
5231         * docs/manual/advanced-metadata.xml:
5232         * docs/manual/advanced-position.xml:
5233         * docs/manual/advanced-schedulers.xml:
5234         * docs/manual/advanced-threads.xml:
5235         * docs/manual/appendix-debugging.xml:
5236         * docs/manual/appendix-gnome.xml:
5237         * docs/manual/appendix-programs.xml:
5238         * docs/manual/appendix-quotes.xml:
5239         * docs/manual/appendix-win32.xml:
5240         * docs/manual/autoplugging.xml:
5241         * docs/manual/basics-bins.xml:
5242         * docs/manual/basics-data.xml:
5243         * docs/manual/basics-elements.xml:
5244         * docs/manual/basics-helloworld.xml:
5245         * docs/manual/basics-init.xml:
5246         * docs/manual/basics-pads.xml:
5247         * docs/manual/basics-plugins.xml:
5248         * docs/manual/bins-api.xml:
5249         * docs/manual/bins.xml:
5250         * docs/manual/buffers-api.xml:
5251         * docs/manual/buffers.xml:
5252         * docs/manual/clocks.xml:
5253         * docs/manual/components.xml:
5254         * docs/manual/cothreads.xml:
5255         * docs/manual/debugging.xml:
5256         * docs/manual/dparams-app.xml:
5257         * docs/manual/dynamic.xml:
5258         * docs/manual/elements-api.xml:
5259         * docs/manual/elements.xml:
5260         * docs/manual/factories.xml:
5261         * docs/manual/gnome.xml:
5262         * docs/manual/goals.xml:
5263         * docs/manual/helloworld.xml:
5264         * docs/manual/helloworld2.xml:
5265         * docs/manual/highlevel-components.xml:
5266         * docs/manual/highlevel-xml.xml:
5267         * docs/manual/init-api.xml:
5268         * docs/manual/intro-motivation.xml:
5269         * docs/manual/intro-preface.xml:
5270         * docs/manual/intro.xml:
5271         * docs/manual/links-api.xml:
5272         * docs/manual/links.xml:
5273         * docs/manual/manual.xml:
5274         * docs/manual/motivation.xml:
5275         * docs/manual/pads-api.xml:
5276         * docs/manual/pads.xml:
5277         * docs/manual/plugins-api.xml:
5278         * docs/manual/plugins.xml:
5279         * docs/manual/programs.xml:
5280         * docs/manual/queues.xml:
5281         * docs/manual/quotes.xml:
5282         * docs/manual/schedulers.xml:
5283         * docs/manual/states-api.xml:
5284         * docs/manual/states.xml:
5285         * docs/manual/threads.xml:
5286         * docs/manual/typedetection.xml:
5287         * docs/manual/win32.xml:
5288         * docs/manual/xml.xml:
5289           First try at rewriting the ADM. Needs lotsamore work, but some
5290           parts might already be somewhat useful.
5291         * docs/pwg/advanced-interfaces.xml:
5292           Remove properties interface, it never actually existed (except for
5293           on my HD...).
5294
5295 2004-12-13  David Schleef  <ds@schleef.org>
5296
5297         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5298         be NULL (bug #160220).
5299
5300 2004-12-13  David Schleef  <ds@schleef.org>
5301
5302         * configure.ac: remove all mmx stuff, because it's not used.
5303         * docs/random/ds/0.9-suggested-changes: additional notes
5304         * include/Makefile.am: we don't use these anymore
5305         * include/mmx.h: remove
5306         * include/sse.h: remove
5307
5308 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5309
5310         * docs/random/mimetypes:
5311           Add FOURCC code for h264 codec (VSSH)
5312           Add alternate FOURCC codes for h263 related codecs
5313
5314 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5315
5316         * docs/manual/programs.xml:
5317           Added more gst-launch examples.
5318
5319 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5320
5321         * gst/gstqueue.c: (gst_queue_handle_src_query):
5322           Check for availability again.
5323
5324 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5325
5326         * gst/gstcaps.c: (gst_caps_compare_structures):
5327           Simple caps go first. This has the nice side-effect of fixing an
5328           obscure warning.
5329
5330 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5331
5332         * gst/gstversion.h.in:
5333           Protect header.
5334
5335 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5336
5337         * gst/schedulers/gstoptimalscheduler.c:
5338         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5339         (gst_opt_scheduler_get_wrapper):
5340           When we're recursing into a chain run, only run the directly
5341           related group, not all queued ones. This will fix a possible
5342           deadlock in chains with more than two groups.
5343
5344 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5345
5346         * autogen.sh:
5347           remove patch if autopoint fails
5348
5349 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5350
5351         * docs/gst/gstreamer-sections.txt:
5352           Document Thomas' addition, fix build, make Luis the sheriff happy.
5353
5354 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5355
5356         * gst/gstplugin.c:
5357         * gst/gstplugin.h:
5358           add accessor for version field
5359
5360 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5361
5362         submitted by: Luca Ferretti <elle.uca@infinito.it>
5363
5364         * po/LINGUAS:
5365         * po/it.po:
5366           New tranlation added: Italian
5367
5368 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5369
5370         * gst/gstpad.c: (gst_pad_is_negotiated),
5371         (gst_pad_get_negotiated_caps):
5372           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5373           it doesn't actually check the contents), so be sure to hand it
5374           a RealPad else we'll crash.
5375
5376 2004-12-03  Wim Taymans  <wim@fluendo.com>
5377
5378         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5379         (gst_queue_link), (gst_queue_handle_src_query):
5380         Reverted to 1.110 until this makes the testsuite and various
5381         apps work.
5382
5383 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5384
5385         * docs/upload.mak: fix included CVS conflict strings
5386
5387 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5388
5389         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5390
5391         * gst/gstelement.c: (gst_element_error_full):
5392           Use g_error_new_literal because error text may have
5393           percentage signs in it. Fixes #160019.
5394
5395 2004-12-01  Benjamin Otte  <otte@gnome.org>
5396
5397         * gst/elements/gstbufferstore.c:
5398         (gst_buffer_store_add_buffer_func):
5399           don't try to make subbuffers bigger than they can be. (fixes
5400           #159970)
5401
5402 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5403
5404         * docs/gst/gstreamer-sections.txt:
5405         * docs/gst/tmpl/gstvalue.sgml:
5406           Add new function to docs to fix build.
5407
5408 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5409
5410         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5411         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5412         (_gst_pad_default_fixate_foreach):
5413         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5414         * gst/gstvalue.h:
5415           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5416           in some cases (arrays), the fixedness depends on the content.
5417         * gst/gstqueue.c: (gst_queue_handle_src_query):
5418           Check for availability before doing something.
5419
5420 2004-11-29  Wim Taymans  <wim@fluendo.com>
5421
5422         * testsuite/threads/Makefile.am:
5423         * testsuite/threads/signals.c: (gst_test_get_type),
5424         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5425         (gst_test_set_property), (gst_test_get_property),
5426         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5427         (gst_test_do_prop), (run_thread), (main):
5428         Added a bunch of testcases that show threadsafety bugs in glib.
5429
5430 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5431
5432         * docs/manual/programs.xml:
5433           Added a first batch of gst-launch examples, as provided by Ronald
5434           and others from the devel-mlist
5435
5436 2004-11-28  Benjamin Otte  <otte@gnome.org>
5437
5438         * gst/gstelement.c: (gst_element_negotiate_pads):
5439           simplify
5440         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5441         (gst_value_serialize_string), (gst_value_deserialize_string):
5442           add unwrapping of previously wrapped strings. Fix bug in wrapping
5443           while at it.
5444         * testsuite/caps/value_serialize.c: (test1),
5445         (test_string_serialization), (test_string_deserialization), (main):
5446           add tests for string (de)serialization
5447
5448 2004-11-26  Wim Taymans  <wim@fluendo.com>
5449
5450         * testsuite/threads/159566.c: (object_deep_notify), (main):
5451         * testsuite/threads/Makefile.am:
5452         Added testsuite to show bug #159566
5453
5454 2004-11-25  Wim Taymans  <wim@fluendo.com>
5455
5456         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5457         (gst_thread_child_state_change), (gst_thread_main_loop):
5458         Ref the thread object in the GThread mainloop. Break out of the
5459         thread mainloop if it holds the last ref. This properly exits
5460         the threads when disposing the thread from its own context. It
5461         also avoids possible deadlocks in the dispose function.
5462
5463 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5464
5465         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5466         it is necessary to wait.
5467
5468 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5469
5470         * docs/pwg/building-boiler.xml:
5471           Make description somewhat clearer.
5472
5473 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5474
5475         * docs/upload.mak:
5476           Apparently docs changed location on FDO's server.
5477
5478 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5479
5480         * docs/pwg/appendix-checklist.xml:
5481           Add some random notes on things to check when writing an element.
5482           This list can be extended as people see fit.
5483
5484 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5485
5486         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5487         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5488         pad. The queue will now wait until it is empty and forward the new
5489         caps to the source.
5490         * gst/gstbin.c (gst_bin_set_element_sched)
5491         (gst_bin_unset_element_sched): Make sure that all elements and
5492         links are registered and unregistered with the scheduler exactly
5493         once. This elaborates on a fix by Benjamin Otte, but
5494         guarantees that decoupled elements are also registered.
5495
5496 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5497
5498         * docs/manual/quotes.xml:
5499           add a quote
5500         * configure.ac:
5501         * gst/gst.c:
5502         * gst/gstinfo.c:
5503           add LIBDIR and move init message higher up so it's at the start
5504
5505 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5506
5507         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5508         * gstreamer.spec.in: add fair
5509
5510 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5511
5512         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5513         * gst/elements/gstidentity.c: (gst_identity_class_init):
5514           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5515           <teuf@gnome.org> (#157263).
5516         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5517         (gst_type_find_handle_src_query):
5518           Subtract size of internally stored data from position queries.
5519
5520 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5521
5522         * gst/schedulers/fairscheduler.c:
5523         * gst/schedulers/faircothreads.c:
5524         * gst/schedulers/faircothreads.h:
5525         New cothread based scheduler: Fair scheduler.
5526         * gst/schedulers/gthread-cothreads.h: 
5527         Add the standard #if around the whole file.
5528         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5529         compilation of the functions defined in this file. This is
5530         necessary to be able to use this file as a normal header.
5531         * gst/schedulers/Makefile.am: Add compiling support for fair
5532         scheduler.
5533         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5534         scheduler cothreads layer from documentation generation.
5535
5536 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5537
5538         * gst/autoplug/gstspideridentity.c:
5539         (gst_spider_identity_sink_loop_type_finding):
5540           Don't crash if that function is not implemented.
5541
5542 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5543
5544         * docs/pwg/advanced-types.xml:
5545           Another typo.
5546
5547 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5548
5549         * docs/pwg/intro-preface.xml:
5550           Hm, ok, so the brackets weren't really useful...
5551         * docs/pwg/other-ntoone.xml:
5552           Fix embarassing typo.
5553
5554 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5555
5556         * docs/pwg/intro-preface.xml:
5557           Rewrite preface.
5558
5559 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5560
5561         * docs/pwg/advanced-scheduling.xml:
5562         * docs/pwg/advanced-tagging.xml:
5563         * docs/pwg/advanced-types.xml:
5564         * docs/pwg/building-boiler.xml:
5565         * docs/pwg/building-chainfn.xml:
5566         * docs/pwg/building-signals.xml:
5567         * docs/pwg/building-state.xml:
5568         * docs/pwg/building-testapp.xml:
5569         * docs/pwg/intro-basics.xml:
5570         * docs/pwg/other-manager.xml:
5571         * docs/pwg/other-source.xml:
5572           Typo fixes.
5573         * docs/pwg/other-manager.xml:
5574           Add some first content. No example code yet.
5575         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5576           Remove double newlines.
5577
5578 2004-11-04  Wim Taymans  <wim@fluendo.com>
5579
5580         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5581         (remove_from_group), (normalize_group), (group_migrate_connected),
5582         (gst_opt_scheduler_iterate):
5583         * testsuite/schedulers/.cvsignore:
5584         * testsuite/schedulers/Makefile.am:
5585         * testsuite/schedulers/queue_link.c: (main):
5586         Added testcase for scheduler segfault.
5587         Fix scheduler segfault when removing a decoupled
5588         entry point as the last element from a group.
5589
5590 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5591
5592         * gst/gstmarshal.list: add missing marshaller, fixes build
5593
5594 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5595
5596         * docs/random/signal: added notes about using BOXED for GstBuffer
5597         signal marshallers, not POINTER
5598
5599 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5600
5601         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5602         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5603         POINTER=>BOXED changes to marshal GstBuffers
5604
5605 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5606
5607         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5608         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5609
5610 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5611
5612         * docs/gst/gstreamer-sections.txt:
5613         * docs/gst/tmpl/gstcaps.sgml:
5614         * docs/gst/tmpl/gsterror.sgml:
5615         * docs/gst/tmpl/gstinfo.sgml:
5616         * docs/gst/tmpl/gstmacros.sgml:
5617         * docs/gst/tmpl/gstutils.sgml:
5618         * docs/random/ensonic/interfaces.txt:
5619         * gst/gstinfo.h:
5620           added some more docs, removed two obsolete defines
5621
5622 2004-11-02  Kjartan Maraas <as at gnome.org>
5623
5624         reviewed by: Wim Taymans, Ronald Bultje.
5625
5626         * gst/cothreads.c: (cothread_create):
5627         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5628         (gst_bin_child_state_change_func):
5629         * gst/gstbuffer.c: (gst_buffer_span):
5630         * gst/gstelement.c: (gst_element_get_index),
5631         (gst_element_get_event_masks), (gst_element_get_query_types),
5632         (gst_element_get_formats):
5633         * gst/gsterror.c: (_gst_core_errors_init),
5634         (_gst_library_errors_init), (_gst_resource_errors_init),
5635         (_gst_stream_errors_init):
5636         * gst/gstobject.c: (gst_object_default_deep_notify):
5637         * gst/gstpad.c: (gst_pad_get_event_masks),
5638         (gst_pad_get_internal_links_default):
5639         * gst/gstplugin.c: (gst_plugin_register_func),
5640         (gst_plugin_get_module):
5641         * gst/gststructure.c: (gst_structure_get_string),
5642         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5643         (gst_structure_to_abbr):
5644         * gst/gstutils.c: (gst_print_element_args):
5645         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5646         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5647         Aplied part of patch #157127: Cleanup of issues reported by 
5648         sparse.
5649         Also do not try to use cothreads when there is no cothread
5650         context yet.
5651
5652 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5653
5654         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5655         (gst_opt_scheduler_iterate):
5656         Applied patch #154061. Running a pipeline in which an element 
5657         calls GST_ELEMENT_ERROR in the chain function, the opt 
5658         scheduler doesn't unref the chain so it never gets freed.
5659
5660 2004-11-02  Wim Taymans  <wim@fluendo.com>
5661
5662         * gst/gststructure.c: (gst_structure_get_abbrs),
5663         (gst_structure_from_abbr), (gst_structure_to_abbr):
5664         Remove that ugly if-then thing in the code that converts
5665         between strings and types.
5666
5667 2004-11-02  Wim Taymans  <wim@fluendo.com>
5668
5669         * gst/gstscheduler.c: (gst_scheduler_add_element),
5670         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5671         Aplied clock distribution patch, this should fix bug
5672         #148787.
5673
5674 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5675
5676         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5677
5678         * po/LINGUAS:
5679         * po/nb.po:
5680           Added Norwegian Bokmaal translation
5681
5682 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5683
5684         * tools/gst-inspect.c: (print_signal_info):
5685           print signal arguments as pointers if they are
5686
5687 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5688
5689         * docs/pwg/building-boiler.xml:
5690           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5691
5692 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5693
5694         * gst/parse/parse.l:
5695         * testsuite/parse/parse1.c: (main):
5696         Since parse can do 'element name=a:b' make 'a:b.' work as
5697         well. 
5698         Added testcase to verify fix.
5699
5700 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5701
5702         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
5703         Use the realpad when printing the direction.
5704         Add extra \n when printing extensions of typefind factories.
5705
5706 2004-10-13  David Schleef  <ds@schleef.org>
5707
5708         * examples/manual/Makefile.am: $< isn't portable in Makefile
5709         rules.
5710
5711 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
5712
5713         * docs/gst/tmpl/gstobject.sgml:
5714         * docs/gst/tmpl/gstplugin.sgml:
5715         * docs/gst/tmpl/gstpluginfeature.sgml:
5716         * docs/gst/tmpl/gstregistry.sgml:
5717         * docs/gst/tmpl/gstversion.sgml:
5718         * gst/gstbin.c:
5719           more api documentation
5720         * gst/gstplugin.c: (gst_plugin_register_func),
5721         (gst_plugin_check_file), (gst_plugin_load_file):
5722           better error signaling and logging
5723
5724 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5725
5726         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
5727           Subtract current queue contents from position queries.
5728
5729 2004-10-11  Johan Dahlin  <johan@gnome.org>
5730
5731         * gst/gsturi.c (gst_uri_get_location): unescape string
5732         (gst_uri_construct): escape string.
5733
5734 2004-10-11  Benjamin Otte  <otte@gnome.org>
5735
5736         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
5737         (gst_pad_try_set_caps_nonfixed):
5738           allow renegotiation of unconnected pads (as inside spider). Simply
5739           return OK if unconnected - mimic try_set_caps there.
5740
5741 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5742
5743         * gst/gstbin.c: (gst_bin_sync_children_state):
5744           Add missing break.
5745
5746 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5747
5748         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
5749         Set element to EOS before sending EOS event
5750
5751 2004-10-08  Wim Taymans  <wim at fluendo dot com>
5752
5753         * gst/elements/gsttypefindelement.c:
5754         (gst_type_find_element_handle_event):
5755         Handle EOS events when doing the transition from
5756         typefind to data passing. This should fix the
5757         infinite loops in short files.
5758
5759 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5760
5761         * gst/gstthread.c: (gst_thread_change_state),
5762         (gst_thread_child_state_change):
5763         Make sure no iteration happens while performing
5764         the state change as it could mess up the internal
5765         consistency of the thread state.
5766
5767 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5768
5769         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
5770         (gst_thread_change_state), (gst_thread_child_state_change):
5771         Do not try to grab the iterate lock in the state change method
5772         when we are in the same thread as the iterate or else we
5773         could deadlock. Some other cleanups.
5774
5775 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5776
5777         * configure.ac:
5778           bump nano to cvs
5779
5780 === release 0.8.7 ===
5781
5782 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5783
5784         * configure.ac:
5785         * NEWS:
5786         * RELEASE:
5787         * configure.ac:
5788           releasing 0.8.7, "A Cruise"
5789
5790 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5791
5792         * docs/random/mimetypes:
5793         Add an entry for Sony ATRAC3 audio format with mime-type
5794         used by rmdemux et riff-read
5795
5796 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5797
5798         * gst/elements/gsttypefindelement.c: (stop_typefinding):
5799         Push the buffer store instead of clearing it in case that
5800         the stream is not seekable.
5801
5802 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5803
5804         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
5805         (gst_thread_main_loop):
5806         Lock the iteration and the state change so that automatic
5807         negotiation and fixation does not happen at the same time
5808         as the in stream negotiation.
5809
5810 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5811
5812         * configure.ac:
5813           bump nano to cvs
5814
5815 === release 0.8.6 ===
5816
5817 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5818
5819         * configure.ac:
5820         * NEWS:
5821         * RELEASE:
5822         * configure.ac:
5823           releasing 0.8.6, "Narc"
5824
5825 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5826
5827         * configure.ac:
5828           prerel bump
5829
5830 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5831
5832         patch by: Steve Lhomme
5833
5834         * gst/elements/gstfakesrc.c:
5835         * gst/elements/gstidentity.c:
5836         * gst/gstthread.c:
5837           Fix for #153881
5838
5839 2004-10-01  Wim Taymans  <wim at fluendo dot com>
5840
5841         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
5842         Fix threadsafety of the crc checking function.
5843
5844 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5845
5846         patch by: Ronald Bultje
5847
5848         * gst/elements/gsttypefindelement.c: (stop_typefinding),
5849         (gst_type_find_element_handle_event),
5850         (gst_type_find_element_chain):
5851         * gst/elements/gsttypefindelement.h:
5852          #153657.
5853          Filter out discont event from seekable sources when typefind
5854          asks them to seek.  Fixes typefind with demuxers for
5855          avi, asf and matroska.
5856
5857 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5858
5859         * docs/gst/gstreamer-sections.txt:
5860         * gst/gstcaps.c:
5861         * gst/gstcaps.h:
5862         * gst/gstpad.c:
5863           Revert preferred caps: (#147789)
5864
5865 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
5866
5867         * win32/dirent.c:
5868           fix a memory leak
5869
5870 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5871
5872         * configure.ac:
5873           bump for prerelease
5874
5875 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5876
5877         * docs/Makefile.am:
5878         * docs/manual/elements-api.xml:
5879           restructure so that common stuff is shown first
5880         * docs/manual/init-api.xml:
5881           convert to examples
5882         * docs/manual/manual.xml:
5883         * docs/manuals.mak:
5884         * docs/url.entities:
5885           link to API on the website, possibly override later in build
5886         * examples/manual/.cvsignore:
5887           ignore more
5888         * examples/manual/Makefile.am:
5889           add more examples
5890         * examples/manual/extract.pl:
5891           error out on failure
5892
5893 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5894
5895         * docs/gst/tmpl/gstthread.sgml:
5896         * docs/manual/init-api.xml:
5897         * examples/manual/Makefile.am:
5898           convert two code bits to examples
5899
5900 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5901
5902         * gst/gstelement.c: (gst_element_change_state):
5903           Well, actually, I was about to remove this insane assert when
5904           I noticed Wim already did that. A warning is nice so we can
5905           fix actual ugs (using --g-fatal-warnings and backtraces), so
5906           I added that instead.
5907
5908 2004-09-06  Wim Taymans  <wim@fluendo.com>
5909
5910         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
5911         (gst_element_threadsafe_properties_post_run),
5912         (gst_element_set_state), (gst_element_change_state):
5913         Added extra refcounting around various places. 
5914
5915 2004-09-06  Wim Taymans  <wim@fluendo.com>
5916
5917         * gst/gstpad.c: (gst_pad_link_call_link_functions):
5918         Fix debug info.
5919
5920 2004-09-06  Wim Taymans  <wim@fluendo.com>
5921
5922         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5923         (remove_from_group):
5924         Some more debug info.
5925
5926 2004-09-03  Wim Taymans  <wim@fluendo.com>
5927
5928         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5929         (gst_fakesrc_init), (gst_fakesrc_set_clock),
5930         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5931         (gst_fakesrc_get), (gst_fakesrc_change_state):
5932         * gst/elements/gstfakesrc.h:
5933         * gst/elements/gstidentity.c: (gst_identity_class_init),
5934         (gst_identity_init), (gst_identity_chain),
5935         (gst_identity_set_property), (gst_identity_get_property),
5936         (gst_identity_change_state):
5937         * gst/elements/gstidentity.h:
5938         Added datarate properties to limit the datarate.
5939
5940 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5941
5942         * gst/autoplug/gstspider.c: (plugin_init):
5943           don't set a rank. We don't want to autoplug by inserting spiders.
5944
5945 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5946
5947         * gst/autoplug/gstspider.c: (gst_spider_class_init),
5948         (gst_spider_identity_plug):
5949           add a template for spider's sink
5950         * gst/gst.c: (gst_register_core_elements):
5951           queue's rank should be NULL, we don't want spider to add it.
5952
5953 2004-08-18  David Schleef  <ds@schleef.org>
5954
5955         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
5956         * docs/libs/Makefile.am: same
5957         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
5958         * docs/random/ds/0.9-planning: random additions
5959         * docs/random/ds/0.9-suggested-changes: same
5960         * gst/gstxml.h: remove vestigal GstXMLNs definition
5961
5962         Preferred caps: (#147789)
5963         * docs/gst/gstreamer-sections.txt: Add symbols
5964         * docs/gst/tmpl/gstcaps.sgml: Add symbols
5965         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
5966         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
5967         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
5968         (gst_caps_get_preferred), (gst_caps_set_preferred),
5969         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
5970         (gst_caps_use_preferred): Handle caps preferences
5971         * gst/gstcaps.h: Add caps preferences
5972         * gst/gstpad.c: (gst_pad_link_get_preferred),
5973         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
5974         (gst_pad_renegotiate), (gst_pad_guess_preferred),
5975         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
5976         negotiation.
5977
5978 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5979
5980         * gst/autoplug/gstspideridentity.c:
5981         (gst_spider_identity_request_new_pad):
5982         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
5983         (gst_aggregator_init):
5984         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
5985         (gst_fakesink_init):
5986         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
5987         (gst_fakesrc_init):
5988         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
5989         (gst_fdsink_init):
5990         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
5991         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
5992         (gst_filesink_init):
5993         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
5994         (gst_filesrc_init):
5995         * gst/elements/gstidentity.c: (gst_identity_base_init),
5996         (gst_identity_init):
5997         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
5998         (gst_multifilesrc_init):
5999         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6000         (gst_pipefilter_init):
6001         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6002         (gst_statistics_init):
6003         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6004         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6005           s/gst_pad_new/&_from_template/
6006           register pad templates in the base_init function
6007           add static pad template definitions
6008
6009 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6010
6011         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6012         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6013         * testsuite/refcounting/pad.c: (main):
6014         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6015           s/gst_pad_new/&_from_template/
6016           prepare deprecation of gst_pad_new
6017
6018 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6019
6020         patch by: Luca Ognibene <skaboy81@virgilio.it>
6021
6022         * gst/gstcaps.c:
6023         * gst/gstelement.c:
6024         * gst/gstpad.c:
6025         * gst/gstxml.c:
6026           fix memleaks.  Fixes #150001
6027
6028 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6029
6030         * docs/random/ds/0.9-suggested-changes:
6031           add notes - mostly about pad templates
6032
6033 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6034
6035         * win32/GStreamer.vcproj:
6036           temporary locale files are .gmo not .mo
6037
6038 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6039
6040         * configure.ac: bump nano to cvs
6041
6042 === release 0.8.5 ===
6043
6044 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6045
6046         * configure.ac:
6047           releasing 0.8.5, "Stuttgart"
6048         * NEWS:
6049         * RELEASE:
6050         * configure.ac:
6051         * docs/random/release:
6052           updates for release
6053
6054 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6055
6056         patch by: Wim Taymans (wim@fluendo.com)
6057
6058         * gst/gstbuffer.c:
6059         * gst/gstindex.h:
6060         * libs/gst/dataprotocol/dataprotocol.c:
6061           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6062
6063 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6064
6065         * Makefile.am:
6066         * win32/MANIFEST:
6067           add win32 dir to the build.  Fixes #149981.
6068
6069 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6070
6071         * configure.ac:
6072           bump libtool versioning
6073         * gst/gststructure.c:
6074           mark function as static
6075         * po/af.po:
6076         * po/az.po:
6077         * po/ca.po:
6078         * po/cs.po:
6079         * po/en_GB.po:
6080         * po/fr.po:
6081         * po/nl.po:
6082         * po/sq.po:
6083         * po/sr.po:
6084         * po/sv.po:
6085         * po/tr.po:
6086         * po/uk.po:
6087           translations update
6088         * win32/README.txt:
6089           trademark protection
6090
6091 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6092
6093         * configure.ac:
6094           fix GST_ORIGIN
6095           set GST_PACKAGE to source, and distinguish between release and other
6096         * tools/gst-inspect.c:
6097           print out plugin an element factory is part of so we see this info
6098
6099 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6100
6101         * docs/gst/gstreamer-sections.txt:
6102         * docs/gst/tmpl/gstbuffer.sgml:
6103         * docs/gst/tmpl/gstschedulerfactory.sgml:
6104           reorder docs a little, make GstBuffer's more sensible.
6105         * gst/gstbuffer.h:
6106           API: added GST_BUFFER_FLAG_DELTA_UNIT
6107         * gst/gstscheduler.c:
6108           comment API addition
6109
6110 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6111
6112         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6113           work with non-regular files that can be mmapped (like /dev/zero)
6114         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6115           get rid of typefinds that require a seek when we can't seek instead
6116           of trying them over and over again
6117         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6118           return non-zero failure value when the pipeline was interrupted or
6119           an error occurred
6120
6121 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6122
6123         * win32/config.h:
6124         * win32/GStreamer.vcproj:
6125           compile and install the locales
6126
6127 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6128
6129         * gst/gstvalue.c:
6130           fix a possible memory leak under Windows
6131
6132 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6133
6134         * win32/GStreamer.vcproj:
6135           fix a memory leak that occured under Windows
6136         * win32/gstreamer.def:
6137           add gst_scheduler_register
6138
6139 2004-08-11  Benjamin Otte  <otte@gnome.org>
6140
6141         * docs/gst/gstreamer-sections.txt:
6142         * gst/gstscheduler.c: (gst_scheduler_register):
6143         * gst/gstscheduler.h:
6144           API:
6145           add gst_scheduler_register shortcut similar to gst_element_register
6146         * gst/schedulers/entryscheduler.c: (plugin_init):
6147         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6148         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6149           use it
6150
6151 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6152
6153         * gst/gstvalue.h:
6154           fix a memory leak that occured under Windows
6155
6156 2004-08-10  Colin Walters  <walters@redhat.com>
6157
6158         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6159         Don't use O_EXCL to open temporary registry.  It will prevent
6160         registry creation if a temporary one already exists, which
6161         is unnecessary.
6162
6163 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6164
6165         * docs/gst/gstreamer-sections.txt:
6166         * docs/gst/tmpl/gstvalue.sgml:
6167           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6168
6169 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6170
6171         * win32/gstbytestream.vcproj:
6172         * win32/gstelements.vcproj:
6173         * win32/gstgetbits.vcproj:
6174         * win32/gst-inspect.vcproj:
6175         * win32/gst-launch.vcproj:
6176         * win32/gstoptimalscheduler.vcproj:
6177         * win32/GStreamer.vcproj:
6178         * win32/gst-register.vcproj:
6179         * win32/gstspider.vcproj:
6180           update the include and lib dirs to fit standard libraries as
6181           described in the Win32 manual
6182
6183 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6184
6185         * win32/config.h:
6186         * win32/gstversion.h:
6187           enable NLS again, push the version number for the coming 0.8.5 release
6188
6189 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6190
6191         * gst/gstvalue.h:
6192           export gst_type_XXX for windows DLLs
6193
6194 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6195
6196         * docs/faq/gst-uninstalled:
6197           fix PKG_CONFIG_PATH and PYTHONPATH
6198         * gst/schedulers/Makefile.am:
6199           cleanup
6200         * libs/gst/bytestream/bytestream.c:
6201           remove newline
6202         * po/LINGUAS:
6203         * po/sq.po:
6204           adding Albanian translation (Laurent Dhima)
6205         * po/cs.po:
6206           updated
6207
6208 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6209
6210         * po/ca.po:
6211         * po/sv.po:
6212           updated translations
6213
6214 2004-08-04  Benjamin Otte  <otte@gnome.org>
6215
6216         * tests/mass_elements.c: (main):
6217           allow specifying src and sink element explicitly, so I can test
6218           videotestsrc instead of fakesrc
6219
6220 2004-08-04  Benjamin Otte  <otte@gnome.org>
6221
6222         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6223         (gst_structure_id_empty_new), (gst_structure_empty_new),
6224         (gst_structure_copy):
6225           add gst_structure_id_empty_new_with_size to allow preallocating
6226           value array sizes. Use this in gst_structure_copy to get rid of
6227           reallocs.
6228           don't do quark=>string=>quark when copying structures
6229
6230 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6231
6232         * docs/manual/win32.xml:
6233         * win32/README.txt:
6234           update documentation with the clean version of dependencies
6235
6236 2004-08-03  Benjamin Otte  <otte@gnome.org>
6237
6238         * gst/schedulers/entryscheduler.c:
6239         (gst_entry_scheduler_remove_element):
6240           fix for GST_DISABLE_DEBUG
6241         * tools/gst-launch.c: (print_tag):
6242           fixes for G_DISABLE_ASSERT
6243
6244 2004-08-03  Benjamin Otte  <otte@gnome.org>
6245
6246         * gst/gst.c: (gst_register_core_elements):
6247           fix for G_DISABLE_ASSERT
6248         * gst/gstinfo.c: (__gst_in_valgrind):
6249           add for GST_DISABLE_DEBUG
6250
6251 2004-08-03  Benjamin Otte  <otte@gnome.org>
6252
6253         * gst/parse/parse.l:
6254           fix for G_DISABLE_ASSERT
6255
6256 2004-08-03  Wim Taymans  <wim@fluendo.com>
6257
6258         * gst/gstbin.c: (gst_bin_get_type),
6259         (gst_bin_child_state_change_func):
6260         * gst/gstthread.c: (gst_thread_change_state):
6261         Backported some debug logging from a reverted patch
6262         Don't try to destroy the thread twice. Added some more
6263         debugging in GstThread. Unlock and signal even if we
6264         are in the thread context.
6265
6266 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6267
6268         * po/uk.po:
6269           updated translation
6270
6271 2004-07-30  David Schleef  <ds@schleef.org>
6272
6273         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6274
6275 2004-07-29  David Schleef  <ds@schleef.org>
6276
6277         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6278         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6279
6280 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6281
6282         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6283         (gst_bin_add_func), (gst_bin_remove_func),
6284         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6285         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6286         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6287         (gst_bin_sync_children_state):
6288         * gst/gstbin.h:
6289         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6290         (gst_thread_change_state):
6291         * testsuite/states/Makefile.am:
6292           revert state change patches as agreed so we can rework them
6293           gradually
6294
6295 2004-07-29  Benjamin Otte  <otte@gnome.org>
6296
6297         * libs/gst/control/Makefile.am:
6298           link to libgstreamer (fixes Debian bug 262019, see
6299           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6300
6301 2004-07-29  Wim Taymans  <wim@fluendo.com>
6302
6303         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6304         (check_from_fraction_convert), (transform_test), (main):
6305         Make the test less pedantic about float roundoff errors.
6306
6307 2004-07-29  Benjamin Otte  <otte@gnome.org>
6308
6309         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6310         (gst_filesrc_srcpad_event):
6311           make seek events to before start/after end of file not fail, but
6312           seek to start/end instead
6313         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6314           add more output
6315
6316 2004-07-29  Benjamin Otte  <otte@gnome.org>
6317
6318         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6319           check that caps are fixed
6320         * gst/gstpad.c: (gst_pad_template_new):
6321           don't try to simplify caps, costs too much time on gst_init
6322         * gst/gstplugin.c: (gst_plugin_add_feature):
6323           G_ERROR if features are added twice
6324         * gst/gsttypefind.c: (gst_type_find_register):
6325         * gst/gstelementfactory.c: (gst_element_register):
6326           don't add features twice
6327         * docs/random/ds/0.9-suggested-changes:
6328           add note about possible gst_init optimization
6329
6330 2004-07-28  David Schleef  <ds@schleef.org>
6331
6332         * testsuite/elements/Makefile.am:
6333         * testsuite/elements/struct_i386.h:
6334         * testsuite/elements/struct_size.c: (main):  A little test
6335         to keep distcheck from working if someone changes a structure
6336         size accidentally.
6337
6338 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6339
6340         * docs/libs/Makefile.am:
6341         * docs/libs/gstreamer-libs-docs.sgml:
6342         * docs/libs/gstreamer-libs-sections.txt:
6343         * docs/libs/tmpl/gstbytestream.sgml:
6344         * docs/libs/tmpl/gstcontrol.sgml:
6345         * docs/libs/tmpl/gstdataprotocol.sgml:
6346         * docs/libs/tmpl/gstgetbits.sgml:
6347         * libs/gst/bytestream/Makefile.am:
6348         * libs/gst/bytestream/bytestream.c:
6349         * libs/gst/bytestream/bytestream.h:
6350         * libs/gst/control/Makefile.am:
6351         * libs/gst/dataprotocol/Makefile.am:
6352         * libs/gst/getbits/Makefile.am:
6353         * libs/gst/getbits/getbits.h:
6354           various doc and style fixes, adding bytestream to libs docs.
6355
6356 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6357
6358         * docs/gst/gstreamer-docs.sgml:
6359         * docs/libs/Makefile.am:
6360         * docs/libs/gstreamer-libs-docs.sgml:
6361         * docs/libs/gstreamer-libs-sections.txt:
6362         * libs/gst/control/dparam.c:
6363           more doc fixes.  gst-libs docs now build the same way as gst.
6364
6365 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6366
6367         * configure.ac:
6368         * testsuite/Makefile.am:
6369         * testsuite/bins/Makefile.am:
6370         * testsuite/caps/Makefile.am:
6371         * testsuite/cleanup/Makefile.am:
6372         * testsuite/clock/Makefile.am:
6373         * testsuite/debug/Makefile.am:
6374         * testsuite/dlopen/Makefile.am:
6375         * testsuite/dynparams/Makefile.am:
6376         * testsuite/elements/.cvsignore:
6377         * testsuite/elements/Makefile.am:
6378         * testsuite/enumcaps/Makefile.am:
6379         * testsuite/enumcaps/enumcaps.c:
6380         * testsuite/ghostpads/Makefile.am:
6381         * testsuite/indexers/Makefile.am:
6382         * testsuite/negotiation/Makefile.am:
6383         * testsuite/parse/Makefile.am:
6384         * testsuite/plugin/Makefile.am:
6385         * testsuite/refcounting/Makefile.am:
6386         * testsuite/schedulers/.cvsignore:
6387         * testsuite/states/Makefile.am:
6388         * testsuite/tags/Makefile.am:
6389         * testsuite/threads/Makefile.am:
6390           fold enumcaps into caps dir
6391           clean up Makefile.am's for testsuite
6392
6393 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6394
6395         * docs/gst/Makefile.am:
6396         * docs/libs/Makefile.am:
6397           clean up docs build.  Fixes needless rebuilding of template files.
6398
6399 2004-07-28  Wim Taymans  <wim@fluendo.com>
6400
6401         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6402         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6403         Make sure that a bin state change tries to keep the children
6404         in sync. 
6405         Added debug logging to the thread.
6406
6407 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6408
6409         * win32/GStreamer.vcproj:
6410         * win32/gstreamer.def:
6411           more exports for the plugins
6412
6413 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6414
6415         * win32/gstgetbits.vcproj:
6416         * win32/gstgetbits.def:
6417         * win32/msvc71.sln:
6418           add support for the getbits plugin
6419
6420 2004-07-27  Wim Taymans  <wim@fluendo.com>
6421
6422         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6423         (gst_value_transform_fraction_double), (_gst_value_initialize):
6424         * testsuite/caps/Makefile.am:
6425         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6426         (check_from_fraction_convert), (transform_test), (main):
6427         Added transform functions between double and fraction.
6428         Added testcase to verify transforms
6429
6430 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6431
6432         * win32/GStreamer.vcproj:
6433           rename GStreamer-0.8.lib to libgstreamer.lib
6434
6435 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6436
6437         * win32/gstelements.vcproj:
6438         * win32/gstoptimalscheduler.vcproj:
6439           fixes for the Release build
6440
6441 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6442
6443         * win32/config.h:
6444           update the version number
6445
6446 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6447
6448         * win32/GStreamer.vcproj:
6449           add gstinterface to the build
6450
6451 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6452
6453         * win32/gstreamer.def:
6454           add many definitions needed by plugins,
6455           GST_CAT_DEFAULT only available in the Debug build ?
6456
6457 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6458
6459         * gst/gstelement.c: (gst_element_set_eos_recursive):
6460           various whitespace fixes.
6461           doc fix, fixes #148497
6462
6463 2004-07-25  Benjamin Otte  <otte@gnome.org>
6464
6465         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6466           don't delay links on the sink elements, it causes unnegotiated
6467           links.
6468         * gst/elements/gsttypefindelement.c:
6469         (gst_type_find_element_base_init):
6470           add our padtemplates, we indeed do have some.
6471         * gst/elements/gsttypefindelement.c:
6472         (gst_type_find_element_handle_event),
6473         (gst_type_find_element_chain):
6474           don't push data when typefinding failed.
6475         * gst/gstpad.c: (gst_pad_link_fixate):
6476           check that no fixate function returns empty caps.
6477         * gst/gstpad.c: (gst_pad_push):
6478           check that the link is negotiated before data gets pushed.
6479         * tools/gst-register.c: (main):
6480           don't assert (fixes #148283)
6481
6482 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6483
6484         * docs/gst/gstreamer-sections.txt:
6485         * docs/gst/tmpl/gstconfig.sgml:
6486           add GST_PLUGIN_EXPORT definition
6487
6488 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6489
6490         * gst/gstplugin.h:
6491         * gst/gstconfig.h.in:
6492         * win32/gstconfig.h:
6493         * win32/gstelements.def:
6494         * win32/gstelements.vcproj:
6495         * win32/gstoptimalscheduler.def:
6496         * win32/gstoptimalscheduler.vcproj:
6497         * win32/gstspider.def:
6498         * win32/gstspider.vcproj:
6499           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6500
6501 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6502
6503         * docs/gst/gstreamer-sections.txt:
6504           remove GST_CAT_DEFAULT because the type has changed
6505
6506 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6507
6508         * win32/gstbytestream.vcproj:
6509         * win32/gstelements.vcproj:
6510         * win32/gst-inspect.vcproj:
6511         * win32/gst-launch.vcproj:
6512         * win32/gstoptimalscheduler.vcproj:
6513         * win32/GStreamer.vcproj:
6514         * win32/gst-register.vcproj:
6515         * win32/gstspider.vcproj:
6516         * win32/msvc71.sln:
6517           Copy the files where needed after building, The testsuite will be
6518           built separately
6519
6520 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6521
6522         * win32/config.h:
6523         * win32/README.txt:
6524         * docs/manual/win32.xml:
6525         Fixed the plugin and GStreamer location
6526
6527 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6528
6529         * win32/gstreamer.def:
6530         More exports for the plugins
6531
6532 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6533
6534         * gst/gstinfo.h:
6535         Marc was right, we need to export literally GST_CAT_DEFAULT
6536
6537 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6538
6539         * win32/config.h:
6540         NLS crashes in gettext, disabled until this is solved
6541
6542 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6543
6544         * win32/gst-inspect.vcproj:
6545         * win32/gst-launch.vcproj:
6546         Should use NLS when available
6547
6548 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6549
6550         * gst/registries/gstxmlregistry.c:
6551         removing the file doesn't seem to be a good idea on Linux
6552
6553 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6554
6555         * gst/registries/gstxmlregistry.c:
6556         Remove the registry before renaming the tempfile (needed for Windows)
6557
6558 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6559
6560         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6561         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6562         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6563         * gst/elements/gstmultifilesrc.h:
6564         Added newmedia property so it generates newmedia events between each
6565         file when property is set, as well as fixed eos handling
6566
6567 2004-07-22  David Schleef  <ds@schleef.org>
6568
6569         * gst/gststructure.c: (gst_structure_id_empty_new),
6570         (gst_structure_empty_new):  Set type field correctly.
6571         * gst/gststructure.h: Check type field correctly.
6572         * testsuite/caps/Makefile.am:
6573         * testsuite/caps/structure.c: (test1), (main): Add a very small
6574         test for structures.
6575
6576 2004-07-22  David Schleef  <ds@schleef.org>
6577
6578         * docs/random/ds/0.9-suggested-changes: more comments
6579         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6580
6581 2004-07-22  Benjamin Otte  <otte@gnome.org>
6582
6583         * gst/gstelementfactory.c: (gst_element_register):
6584           set the factory in the class struct, so gst_element_get_factory
6585           actually works
6586         * gst/parse/grammar.y:
6587           set element to playing when it gets unlocked as we can't rely on the
6588           bin state - all elements in the bin state might still be locked in
6589           NULL)
6590
6591 2004-07-22  Benjamin Otte  <otte@gnome.org>
6592
6593         * gst/gstelement.c: (gst_element_set_state_func):
6594           make this a static function
6595
6596 2004-07-22  Wim Taymans  <wim@fluendo.com>
6597
6598         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6599         (gst_opt_scheduler_pad_link):
6600         fix 147894-2 and the group_link problem.
6601
6602 2004-07-22  Wim Taymans  <wim@fluendo.com>
6603
6604         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6605         (handoff_identity), (main):
6606         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6607         (handoff_identity), (main):
6608         * testsuite/schedulers/Makefile.am:
6609         * testsuite/schedulers/group_link.c: (main):
6610         Show bug in scheduler when linking chain and loop based element 
6611         where the chain based element was not yet in a group.
6612
6613 2004-07-21  Benjamin Otte  <otte@gnome.org>
6614
6615         * gst/.cvsignore:
6616         * gst/autoplug/.cvsignore:
6617         * gst/elements/.cvsignore:
6618         * gst/indexers/.cvsignore:
6619         * libs/gst/bytestream/.cvsignore:
6620         * libs/gst/control/.cvsignore:
6621         * libs/gst/getbits/.cvsignore:
6622         * testsuite/states/.cvsignore:
6623         * testsuite/threads/.cvsignore:
6624           keep this up to date, since I seem to be the only one who cares
6625           about not missing files on commits (editor's note: no you don't,
6626           but feel free to change them at the time you add stuff instead
6627           of later on)
6628
6629 2004-07-21  Benjamin Otte  <otte@gnome.org>
6630
6631         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6632         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6633         (gst_bin_child_state_change_func), (set_kid_state_func),
6634         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6635           make state changes work correctly and reentrant (so removing
6636           elements from bins during state changes of bins doesn't cause
6637           segfaults or even wrong states)
6638           add debugging category and debugging output to print children states
6639         * gst/gstbin.c: (gst_bin_dispose): 
6640           add some assertion checks
6641         * gst/gstbin.h:
6642         * gst/gstbin.c: (gst_bin_sync_children_state):
6643           deprecate this function - it just does gst_bin_set_state (bin,
6644           GST_STATE (bin)) 
6645         * testsuite/threads/queue.c: (main):
6646           don't use gst_bin_sync_children_state anymore
6647         * testsuite/states/Makefile.am:
6648         * testsuite/states/bin.c:
6649           test that the state changes of bins work as expected
6650         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6651           some adjustments to change states correctly, too
6652         * gst/gstthread.c: (gst_thread_change_state):
6653           don't enable/disable "threadsafe" properties, they're unused and
6654           cause random segfaults
6655         * testsuite/threads/Makefile.am:
6656           the queue check randomly passes now, ignore it
6657
6658 2004-07-21  Benjamin Otte  <otte@gnome.org>
6659
6660         * gst/gstpad.c:
6661           check if data is NULL before outputting debug info. (fixes #145100)
6662
6663 2004-07-21  Benjamin Otte  <otte@gnome.org>
6664
6665         * gst/schedulers/entryscheduler.c:
6666         (gst_entry_scheduler_loop_wrapper),
6667         (gst_entry_scheduler_chain_wrapper),
6668         (gst_entry_scheduler_get_wrapper):
6669           reset the state when the cothread starts, so we don't get assertion
6670           failures on restarting of cothreads
6671
6672 2004-07-20  Benjamin Otte  <otte@gnome.org>
6673
6674         * gst/gstelement.c: (gst_element_link_pads_filtered):
6675           use correct sinkpad, if only sinkpad is specified, but not srcpad
6676           (fixes #147889)
6677         * gst/gstelement.c: (gst_element_set_state_func),
6678         (gst_element_change_state): ref/unref the element, signal handlers
6679         could get rid of the element otherwise
6680
6681 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6682
6683         * docs/random/ds/0.9-suggested-changes:
6684           Make note about renaming fixed-list to array.
6685         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6686         (_gst_value_initialize):
6687           Add array intersections.
6688         * testsuite/caps/intersect2.c: (main):
6689           Add test for array intersections.
6690
6691 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6692
6693         * configure.ac: back to cvs
6694
6695 === release 0.8.4 ===
6696
6697 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6698
6699         * configure.ac:
6700           releasing 0.8.4, "Paella"
6701           bump libtool versioning
6702
6703 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6704
6705         * po/LINGUAS:
6706         * po/ca.po:
6707           adding Catalan translation (Jordi Mallach)
6708
6709 2004-07-20  Wim Taymans  <wim@fluendo.com>
6710
6711         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6712         (handoff_identity), (main):
6713         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6714         (handoff_identity), (main):
6715         * testsuite/schedulers/Makefile.am:
6716         Added failing testcase for variant of #147894
6717
6718 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6719
6720         patch by: David Moore
6721
6722         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6723         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
6724         (group_migrate_connected):
6725         * testsuite/schedulers/Makefile.am:
6726           fix for #142813 (Deadlock in optimal scheduler)
6727
6728 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6729
6730         patch by: Wim Taymans
6731
6732         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6733         (gst_opt_scheduler_schedule_run_queue),
6734         (gst_opt_scheduler_get_wrapper), (get_group),
6735         (group_migrate_connected):
6736         * testsuite/schedulers/Makefile.am:
6737           fix for #147819 (Add some checks in the opt scheduler)
6738
6739 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6740
6741         patch by: Benjamin Otte
6742
6743         * gst/gstelementfactory.c: (__gst_element_details_set):
6744           fix for #147929: running gst-register in non-utf8 locale can cause
6745           invalid registry
6746
6747 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6748
6749         patch by: Wim Taymans
6750
6751         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
6752         (group_has_element), (element_get_reachables_func),
6753         (group_migrate_connected):
6754           fix for #147894 (opt scheduler decoupled elements mismanagement)
6755         * testsuite/schedulers/Makefile.am:
6756           testsuite app now passes
6757
6758 2004-07-19  Wim Taymans  <wim@fluendo.com>
6759
6760         * testsuite/schedulers/147819.c: (handoff_identity1),
6761         (handoff_identity2), (main):
6762         * testsuite/schedulers/Makefile.am:
6763         Added testcase for bug 147819
6764
6765 2004-07-19  Wim Taymans  <wim@fluendo.com>
6766
6767         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6768         (handoff_identity), (main):
6769         * testsuite/schedulers/Makefile.am:
6770         Added testcase for bug 147894
6771
6772 2004-07-16  Wim Taymans  <wim@fluendo.com>
6773
6774         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
6775         * testsuite/schedulers/142183.c: (handoff_identity), (main):
6776         * testsuite/schedulers/Makefile.am:
6777         Added testsuite for bug 142183 in its two incarnations. Refcount
6778         is not increased for scheduled elements and threadsafe properties
6779         mutexes are not properly unlocked.
6780
6781 2004-07-16  Wim Taymans  <wim@fluendo.com>
6782
6783         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
6784         (create_chain), (destroy_chain), (create_group), (destroy_group),
6785         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
6786         (group_dec_link), (gst_opt_scheduler_pad_link),
6787         (group_inc_links_for_element), (group_migrate_connected):
6788         Call group_inc_link with the proper src->sink ordering -- 
6789         break this, and we break sort_chain. patch from wingo for bug
6790         147713.
6791         Partially revert patch 1.89. When adding a loop based element to 
6792         the scheduler, the links to other groups are automatically followed
6793         and incremented. This should not happen because the bin will call
6794         pad_link explicitly for those connection, resulting in them counted 
6795         twice. Results in assertion failure on pipeline cleanup.
6796
6797 2004-07-16  Wim Taymans  <wim@fluendo.com>
6798
6799         * testsuite/schedulers/143777-2.c: (main):
6800         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
6801         (main):
6802         * testsuite/schedulers/Makefile.am:
6803         Added cleanup code to testcase 143777-2.
6804         Added testcase to show bug 147713, does not really show the
6805         deadlock as I can't figure out how to trigger it, but it does
6806         demonstrate bad ordering in the scheduler.
6807
6808 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6809
6810         * gst/gstvalue.c: (gst_value_deserialize_fraction):
6811           change strndup to g_strndup.  Fixes #147707
6812
6813 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6814
6815         * po/af.po:
6816         * po/az.po:
6817         * po/cs.po:
6818         * po/en_GB.po:
6819         * po/fr.po:
6820         * po/nl.po:
6821         * po/sr.po:
6822         * po/sv.po:
6823         * po/tr.po:
6824         * po/uk.po:
6825           updated translations
6826
6827 2004-07-16  Benjamin Otte  <otte@gnome.org>
6828
6829         * gst/gstvalue.c: (gst_greatest_common_divisor):
6830           use ints and return ints, fractions only use ints, too, so this
6831           avoids accidently casting multiplications to unsigned
6832         (gst_value_lcopy_fraction): it's ints, not uint32
6833         (gst_value_set_fraction): disallow minint, multiplying and negation
6834           are broken with it
6835         (gst_value_fraction_multiply): fix to make large numbers work and get
6836         rid of the assumption that the multiplication of two ints fits an
6837         int64 - dunno if that's true for all systems
6838         * testsuite/caps/Makefile.am:
6839         * testsuite/caps/fraction-multiply-and-zero.c:
6840         (check_multiplication), (check_equal), (zero_test), (main):
6841           add tests for all the stuff above
6842         * testsuite/caps/value_compare.c: (test1):
6843           fix comment
6844         * tests/.cvsignore:
6845         * testsuite/caps/.cvsignore:
6846         * testsuite/debug/.cvsignore:
6847         * testsuite/dlopen/.cvsignore:
6848         * testsuite/states/.cvsignore:
6849           get up to date
6850
6851 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6852
6853         * docs/manual/bins-api.xml:
6854         * docs/manual/factories.xml:
6855         * docs/manual/helloworld.xml:
6856         * docs/manual/links-api.xml: 
6857           fixes for out of date info, incorrect info and grammar
6858
6859 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6860
6861         * docs/manual/pads.xml:
6862         * docs/manual/pads-api.xml: grammar fix
6863
6864 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6865
6866         * docs/manual/pads-api.xml: typo + grammar fix
6867
6868 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6869
6870         * docs/gst/gstreamer-sections.txt:
6871           add new symbols
6872         * docs/gst/tmpl/gstelement.sgml:
6873         * docs/gst/tmpl/gstpad.sgml:
6874         * docs/gst/tmpl/gsttypes.sgml:
6875         * docs/gst/tmpl/gstvalue.sgml:
6876           update docs
6877         * gst/gststructure.c: (gst_structure_set_valist),
6878         (gst_structure_from_abbr), (gst_structure_to_abbr):
6879         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
6880         (gst_greatest_common_divisor), (gst_value_init_fraction),
6881         (gst_value_copy_fraction), (gst_value_collect_fraction),
6882         (gst_value_lcopy_fraction), (gst_value_set_fraction),
6883         (gst_value_get_fraction_numerator),
6884         (gst_value_get_fraction_denominator),
6885         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
6886         (gst_value_deserialize_fraction),
6887         (gst_value_transform_fraction_string),
6888         (gst_value_transform_string_fraction),
6889         (gst_value_compare_fraction), (_gst_value_initialize):
6890         * gst/gstvalue.h:
6891           adding GstFraction GValue type, get/set, and multiply
6892         * testsuite/caps/Makefile.am:
6893         * testsuite/caps/fraction.c: (test), (main):
6894         * testsuite/caps/string-conversions.c: (main):
6895         * testsuite/caps/value_compare.c: (test1), (main):
6896           add regression tests for GstFraction
6897
6898 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6899         
6900         * docs/manual/init-api.xml: Grammar fix
6901
6902 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6903
6904         * docs/manual/states.xml: Fix inconsistent information
6905
6906 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6907
6908         * gst/gstelement.c: (gst_element_set_state):
6909         * gst/gstpad.c: (gst_pad_try_set_caps):
6910         * gst/gststructure.c:
6911         * gst/gstthread.c: (gst_thread_child_state_change):
6912         * gst/gstvalue.c: (gst_value_compare_double):
6913         * gst/gstvalue.h:
6914         * testsuite/parse/parse1.c: (main):
6915           debugging additions and style cleanups
6916
6917 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6918
6919         * docs/manual/states.xml: Grammar fix
6920
6921 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6922
6923         * docs/manual/pads.xml: Grammar fix
6924
6925 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6926
6927         * docs/manual/elements.xml: Fixed image reference
6928
6929 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6930
6931         * docs/manual/goals.xml: Grammar fix
6932
6933 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6934
6935         * docs/manual/motivation.xml:
6936         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
6937
6938 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6939
6940         * docs/manual/motivation.xml: Fix spelling
6941
6942 2004-07-15  Benjamin Otte  <otte@gnome.org>
6943
6944         * gst/gstelement.h: 
6945           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
6946           strings.
6947         * gst/gstelement.c (gst_element_class_init):
6948           GError's are boxed, not objects
6949         * gst/gstmarshal.list:
6950           update list for the fixed error signal
6951
6952 2004-07-14  Andy Wingo  <wingo@pobox.com>
6953
6954         * gst/gsttag.c: Add a tag merge func for pointers. The header was
6955         there all along, but the function wasn't. (guile-gstreamer's build
6956         system uses the address of the function -- I wasn't actually
6957         trying to use this.)
6958
6959 2004-07-14  Andy Wingo  <wingo@pobox.com>
6960
6961         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
6962         as gst_pad_proxy_pad_link) just link to every other pad when they
6963         are called. In the case where the graph has cycles, this will mean
6964         that a call to try_set_caps will recurse. Allow this recursion
6965         and return OK, while we wait for the first try_set_caps to give a
6966         proper return value.
6967         (gst_pad_link_call_link_functions): Since this function is the
6968         only one to set the NEGOTIATING flag on a pad, if the flag is set
6969         it means that the link functions have indirectly recursed. If this
6970         happens, error out to avoid infinite recursion and an eventual
6971         SEGV.
6972         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
6973         (gst_pad_proxy_getcaps): Intersect the result with the template
6974         caps to ensure that the return value is valid.
6975
6976 2004-07-14  Andy Wingo  <wingo@pobox.com>
6977
6978         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
6979         one refcount, the calling function is the owner of the buffer.
6980
6981 2004-07-14  Wim Taymans  <wim@fluendo.com>
6982
6983         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
6984         (gst_opt_scheduler_pad_link), (group_migrate_connected):
6985         Fix stupid warning when an element is to be migrated but
6986         is already migrated.
6987
6988 2004-07-14  Wim Taymans  <wim@fluendo.com>
6989
6990         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
6991         (gst_opt_scheduler_pad_link), (group_migrate_connected):
6992         Make sure that a single non-loop-based element does not 
6993         end up in a group. This fixes the testsuite again.
6994
6995 2004-07-14  Wim Taymans  <wim@fluendo.com>
6996
6997         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6998         (add_to_group), (merge_groups), (schedule_group),
6999         (gst_opt_scheduler_get_wrapper), (group_elements),
7000         (group_dec_link), (gst_opt_scheduler_pad_link),
7001         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7002         (gst_opt_scheduler_iterate):
7003         move isolated groups to a new chain.
7004         Emit a warning instead of segfaulting in some error cases.
7005         Fix a bug where the link count between groups was not calculated 
7006         correctly. Fixes #144510.
7007
7008 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7009         * gst/elements/gstfilesrc.c:
7010           Binary files support under Windows now OK
7011       
7012 2004-07-13  Benjamin Otte  <otte@gnome.org>
7013
7014           compatibility fixes for Solaris 8/gcc 2.95
7015         * configure.ac:
7016           include libintl libs in LDFLAGS
7017         * gstvalue.c (gst_value_deserialize_buffer):
7018           cast isxdigit stuff to int to silence compiler warning
7019
7020 2004-07-12  Benjamin Otte  <otte@gnome.org>
7021
7022         * gst/gsttypes.h:
7023           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7024           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7025           just causes support madness
7026         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7027           make it work without this
7028         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7029         (gst_file_index_commit):
7030           glib IO channels don't want binary mode
7031         * testsuite/bytestream/filepadsink.c: (main):
7032         * testsuite/bytestream/test1.c: (read_param_file):
7033           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7034
7035 2004-07-12  Benjamin Otte  <otte@gnome.org>
7036
7037         * gst/gstelement.c: (gst_element_class_init),
7038         (gst_element_set_state), (gst_element_set_state_func):
7039           virutalize gst_element_set_state, use set_state member in class
7040           struct that was already added in 0.7 for this.
7041         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7042         (gst_bin_change_state):
7043           make gst_bin_foreach works similar to other foreach functions, plug
7044           memleaks in it. Make functions using it work with the new approach.
7045           Document gst_bin_foreach, so it can be exported if we want to
7046         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7047           use virtualized set_state to make set_state on bins set the state of
7048           all its children.
7049
7050 2004-07-12  Benjamin Otte  <otte@gnome.org>
7051
7052         * configure.ac:
7053           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7054           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7055         * gst/gstpad.c: (gst_pad_alloc_buffer):
7056           allow buffer_alloc functions to return NULL and allocate a normal
7057           buffer in that case
7058
7059 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7060         * gst/elements/gstfilesink.c:
7061         * gst/elements/gstfilesrc.c:
7062         * gst/indexers/gstfileindex.c:
7063         * gst/gsttypes.h:
7064         * testsuite/bytestream/filepadsink.c:
7065         * testsuite/bytestream/test1.c:
7066           Handle binary files under Windows
7067
7068 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7069         * docs/manual/win32.xml:
7070         * win32/config.h:
7071         * win32/gst-register.vcproj:
7072         * win32/gstreamer.def:
7073           Update to another gettext public build
7074
7075 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7076         * gst/gstplugin.c:
7077           Fix an impossible C syntax
7078         * win32/config.h:
7079           Disable i18n under Windows for the moment
7080         * win32/gst-register.vcproj:
7081           Use this configuration
7082
7083 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7084         * docs/manual/quotes.xml:
7085           Keep the quotes file alive
7086         * docs/random/ds/0.9-suggested-changes:
7087           Add the suggestion of including a 'rowstride' as part of video
7088           format caps
7089
7090 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7091
7092         * gst/gstelement.c: (gst_element_set_state),
7093         (gst_element_change_state):
7094           d'oh.  Set PENDING state correctly before forcing bin to change.
7095         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7096         (gst_structure_parse_fixed_list):
7097         * gst/schedulers/gstoptimalscheduler.c:
7098         (gst_opt_scheduler_state_transition):
7099         * testsuite/states/parent.c: (main):
7100           remove comment now that it's fixed.
7101
7102 2004-07-11  Benjamin Otte  <otte@gnome.org>
7103
7104         * gst/gstclock.h:
7105           GST_SECOND shouldn't cause a conversion to unsigned.
7106         * testsuite/clock/.cvsignore:
7107         * testsuite/clock/Makefile.am:
7108         * testsuite/clock/signedness.c: (main):
7109           make sure it never will again
7110
7111 2004-07-11  Andy Wingo  <wingo@pobox.com>
7112
7113         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7114         whose state is higher than the bin state, raise the bin state to
7115         ensure that bin state := highest child state.
7116         
7117 2004-07-11  Andy Wingo  <wingo@pobox.com>
7118
7119         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7120         procedure on the children of a bin. Assumes that the procedure can
7121         change the set of children.
7122         (set_kid_state_func): New static function.
7123         (gst_bin_change_state): Use gst_bin_foreach to call
7124         set_kid_state_func. Fixes a bug: if a child had a state-change
7125         handler that removes it from the bin, there would be a segfault.
7126         Hopefully it should also work in the case where the state-change
7127         handler on one child adds or removes other children. In any case,
7128         fixes should go to gst_bin_foreach.
7129
7130 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7131
7132         * gst/gstelement.c: (gst_element_set_state):
7133           compatibility fix for latest plugins release.  Change loop back
7134           to while {}
7135
7136 2004-07-09  Wim Taymans  <wim@fluendo.com>
7137
7138         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7139         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7140         (gst_thread_main_loop):
7141         Since remove is virtual in GstBin we must not assume the 
7142         elements GList to have anothing useful.
7143         Add some more logging to GstThread and be a bit more paranoid
7144         when resetting the scheduler.
7145         Set the state of the bin to NULL before removing the children.
7146
7147 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7148
7149         * testsuite/threads/Makefile.am:
7150         * testsuite/threads/threadg.c:
7151           added test to check if problem when removing all elements from a
7152           GstThread before setting GstThread state to NULL
7153
7154 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7155
7156         * docs/gst/tmpl/gstelement.sgml:
7157         * docs/gst/tmpl/gsttypes.sgml:
7158         * gst/gstbin.c: (gst_bin_change_state):
7159         * gst/gstelement.c: (gst_element_set_state),
7160         (gst_element_change_state):
7161           rework so that for bins we try to set the state on all children
7162           as well even if the bin is in the correct state already.
7163           change while to do so at least one iteration is done.
7164           For regular elements, we fall back to the previous behaviour for
7165           now since we first need a new plugins release.
7166         * testsuite/states/parent.c: (main):
7167           test for this case
7168           Fixes #123774
7169
7170 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7171
7172         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7173         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7174         (gst_queue_release_locks), (gst_queue_change_state),
7175         (gst_queue_set_property):
7176           add proper lock debugging.  Change dispose to finalize, since
7177           we're freeing mutexes and other stuff which should happen only once.
7178
7179 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7180
7181         * docs/gst/tmpl/gstelement.sgml:
7182         * docs/gst/tmpl/gstplugin.sgml:
7183         * docs/gst/tmpl/gsttypes.sgml:
7184         * docs/pwg/building-state.xml:
7185         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7186         * gst/gstelement.c: (gst_element_change_state):
7187         * gst/gstthread.c: (gst_thread_change_state):
7188           catch wrong state changes in element base class.
7189
7190 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7191
7192         * gst/gstinfo.h:
7193           clean up layout a little.
7194
7195 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7196
7197         * configure.ac:
7198         * testsuite/Makefile.am:
7199         * testsuite/states/Makefile.am:
7200         * testsuite/states/parent.c: (main):
7201           re-enable states testsuite dir.  Add test for state changes and
7202           parent behaviour
7203
7204 2004-07-09  Wim Taymans  <wim@fluendo.com>
7205
7206         * gst/schedulers/gstoptimalscheduler.c:
7207         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7208         (element_get_reachables_func), (element_get_reachables),
7209         (debug_element), (rechain_group), (group_migrate_connected),
7210         (gst_opt_scheduler_pad_unlink):
7211         Do not try to migrate decoupled elements to a new group since
7212         they are not added to groups.
7213
7214 2004-07-08  Benjamin Otte  <otte@gnome.org>
7215
7216         * gst/gstelement.c: (gst_element_error_func):
7217           make reentrant (= allow removing elements in error handler)
7218
7219 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7220
7221         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7222         (gst_pad_send_event), (gst_pad_call_chain_function):
7223           events sent to elements below PAUSED cannot be handled, so
7224           don't try to
7225
7226 2004-07-08  Wim Taymans  <wim@fluendo.com>
7227
7228         * gst/schedulers/gstoptimalscheduler.c:
7229         (chain_recursively_migrate_group), (create_group),
7230         (schedule_group), (gst_opt_scheduler_pad_link),
7231         (group_elements_set_visited), (element_get_reachables_func),
7232         (element_get_reachables), (group_can_reach_group), (debug_element),
7233         (rechain_group), (group_migrate_connected),
7234         (gst_opt_scheduler_pad_unlink):
7235         * testsuite/schedulers/Makefile.am:
7236         Implemented group splitting and rechaining.
7237         Fixes 143777 and 143777-2 in the testsuite.
7238
7239 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7240
7241         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7242           extra debugging
7243         * gst/gstevent.h:
7244         * gst/gstinfo.c: (gst_debug_log_default):
7245           print time nicely.  add thread pointer until someone figures out
7246           a completely portable way of getting at thread id's.
7247         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7248         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7249         (gst_pad_call_chain_function):
7250           extra debugging
7251         * gst/schedulers/gstoptimalscheduler.c:
7252         (get_group_schedule_function), (loop_group_schedule_function),
7253         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7254         (pad_clear_queued), (gst_opt_scheduler_iterate):
7255           rename BUFPEN and friends to DATAPEN since that's what they are.
7256
7257 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7258
7259         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7260         * gst/gstbuffer.h:
7261         * gst/gstpad.c:
7262           cleanups and debugging
7263
7264 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7265
7266         * configure.ac:
7267         * gst/gstvalue.c: (gst_value_compare_enum),
7268         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7269         (gst_value_can_compare), (gst_value_compare):
7270         * testsuite/Makefile.am:
7271         * testsuite/enumcaps/Makefile.am:
7272         * testsuite/enumcaps/enumcaps.c:
7273           Fix enum serialization, deserialization, comparison in caps, add
7274           a test to ensure that this continues working in the future.
7275
7276 2004-07-06  David Schleef  <ds@schleef.org>
7277
7278         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7279         Fix memleak.
7280
7281 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7282
7283         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7284         * gst/gstplugin.h:
7285         * gst/registries/gstxmlregistry.c:
7286         (plugin_times_older_than_recurse), (plugin_times_older_than),
7287         (gst_xml_registry_parse_padtemplate):
7288           only rebuild registry when actual plugins have a newer time than
7289           the registry.  Fixes #145520
7290
7291 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7292
7293         * docs/manual/manual.xml:
7294         * docs/manual/win32.xml:
7295           add chapter on win32 building.  fixes #142422
7296
7297 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7298
7299         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7300
7301         * gst/autoplug/gstspider.c: (gst_spider_init),
7302         (gst_spider_dispose):
7303           fix spider memleaks.  fixes #137863
7304
7305 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7306
7307         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7308
7309         * gst/schedulers/gstoptimalscheduler.c:
7310         (gst_opt_scheduler_pad_unlink):
7311           fix SIGBUS error, fixes #145338
7312
7313 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7314
7315         * gst/gstobject.c: (gst_object_replace):
7316         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7317         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7318           clean up clock lifecycle.  Fixes #109831
7319
7320 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7321
7322         * po/LINGUAS:
7323         * po/cs.po:
7324           added Czech translation (Miloslav Trmac)
7325
7326 2004-07-04  David Schleef  <ds@schleef.org>
7327
7328         * tools/Makefile.am:
7329         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7330
7331 2004-07-04  David Schleef  <ds@schleef.org>
7332
7333         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7334
7335 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7336
7337         * gst/gstbin.c: (gst_bin_restore_thyself):
7338           chain to parent restore so the bins get restored correctly
7339           in the editor
7340
7341 2004-07-03  David Schleef  <ds@schleef.org>
7342
7343         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7344         Actually do something in these functions, like before the big
7345         caps change.  (bug #145137)
7346
7347 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7348
7349         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7350         (gst_element_get_compatible_pad_filtered):
7351         * gst/gstthread.c: (gst_thread_main_loop):
7352           more debugging
7353
7354 2004-07-02  David Schleef  <ds@schleef.org>
7355
7356         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7357         * gst/gstobject.h:
7358         * gst/gstparse.h:
7359         * gst/gsttrace.h:
7360         * gst/gstxml.h:
7361
7362 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7363
7364         * gst/gstpad.c: (gst_pad_check_schedulers),
7365         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7366         (gst_pad_link_prepare):
7367           revert until testsuite is fixed
7368
7369 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7370
7371         * testsuite/Makefile.am:
7372         * testsuite/caps/filtercaps.c: (main):
7373         * testsuite/clock/clock1.c: (main):
7374         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7375           fix some more tests
7376
7377 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7378
7379         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7380         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7381         * testsuite/cleanup/cleanup4.c: (main):
7382           fix testsuite
7383
7384 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7385
7386         * libs/gst/control/control.c:
7387         * libs/gst/control/dparam.c:
7388         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7389         * libs/gst/control/dparammanager.c:
7390         * libs/gst/control/dparammanager.h:
7391         * testsuite/dynparams/Makefile.am:
7392         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7393         (gst_dptest_change_state), (gst_dptest_chain), (main):
7394           fix testcase for dparams
7395           add debugging category
7396
7397 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7398
7399         * testsuite/Rules:
7400           change path
7401
7402 2004-07-02  Benjamin Otte  <otte@gnome.org>
7403
7404         * tests/.cvsignore:
7405         * tests/Makefile.am:
7406         * tests/mass_elements.c: (gst_get_current_time), (main):
7407           add simple benchmark to test various speeds of fakesrc ! identity !
7408           identity ! ... ! fakesink.
7409           Usage: mass_elements [num_identities] [num_buffers]
7410           If not specified they default to 1000.
7411
7412 2004-07-02  Benjamin Otte  <otte@gnome.org>
7413
7414         * gst/gstpad.c: (gst_pad_check_schedulers),
7415         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7416         (gst_pad_link_prepare):
7417           check that pads that get linked belong to the same manager. The old
7418           code allowed linking elements before putting them into bins, so it
7419           worked to link them and then put them in different threads, which
7420           lead to weird behaviour.
7421           Since this effectively disallows linking elements before putting
7422           them in a bin, some applications might not work after this and error
7423           out. If these applications are too critical, we might need to revert
7424           that patch. Please test this before the next release...
7425
7426 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7427
7428         * gst/gstpad.c: (gst_pad_get_caps):
7429           throw an error if the getcaps function does not return a subset of
7430           the template caps.
7431         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7432           make disconts without position info an error in debugging
7433         * tests/spidey_bench.c: (handoff), (main):
7434           don't count first try when averaging
7435
7436 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7437
7438         * gst/gstplugin.c: (gst_plugin_load_file):
7439           figure out problem with dynamic test
7440
7441 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7442
7443         * docs/gst/Makefile.am:
7444           fix docs build
7445
7446 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7447
7448         * po/POTFILES.in:
7449         * po/af.po:
7450         * po/az.po:
7451         * po/en_GB.po:
7452         * po/fr.po:
7453         * po/nl.po:
7454         * po/sr.po:
7455         * po/sv.po:
7456         * po/tr.po:
7457         * po/uk.po:
7458         * tools/gst-register.c: (plugin_added_func), (main):
7459           i18n-ize -register, fix plural
7460
7461 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7462
7463         * gst/elements/gstidentity.c: (gst_identity_class_init),
7464         (gst_identity_init), (gst_identity_chain),
7465         (gst_identity_set_property), (gst_identity_get_property):
7466         * gst/elements/gstidentity.h:
7467           check for perfect stream
7468
7469 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7470
7471         * gst/elements/gstidentity.c: (gst_identity_chain):
7472           print offset_end
7473
7474 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7475
7476         * docs/gst/Makefile.am:
7477         * docs/gst/gstreamer-docs.sgml:
7478           doc fixes
7479
7480 2004-06-24  David Schleef  <ds@schleef.org>
7481
7482         * autogen.sh:  Remove call to env, since the buildbot isn't
7483         broken anymore.
7484
7485 2004-06-24  Wim Taymans  <wim@fluendo.com>
7486
7487         * gst/elements/Makefile.am:
7488         * gst/elements/gstelements.c:
7489         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7490         (gst_multifdsink_class_init), (gst_multifdsink_init),
7491         (gst_multifdsink_add), (gst_multifdsink_remove),
7492         (gst_multifdsink_clear), (gst_multifdsink_chain),
7493         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7494         * gst/elements/gstmultifdsink.h:
7495         Added an element that writes to multiple filedescriptors at once.
7496
7497 2004-06-24  Benjamin Otte  <otte@gnome.org>
7498
7499         * gst/parse/grammar.y:
7500           don't try to link elements before they have been added to bins
7501
7502 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7503
7504         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7505         (gst_file_pad_get_length):
7506         * libs/gst/bytestream/filepad.h:
7507           add 2 new functions
7508
7509 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7510
7511         * docs/gst/gstreamer-sections.txt:
7512         remove from docs, the define that Benjamin removed from gstelement.h
7513
7514 2004-06-22  Benjamin Otte  <otte@gnome.org>
7515
7516         * gst/gstelement.h:
7517           remove define that referenced a nonexisting GstElement struct member
7518
7519 2004-06-20  Benjamin Otte  <otte@gnome.org>
7520
7521         * gst/gstdata.c: (gst_data_is_writable):
7522           whoops, return values were wrong, so writable data was marked as
7523           non-writable and vice versa. (fixes #143953, spotted by Francis
7524           Labonte)
7525           Shows how rarely we need to copy data ;)
7526
7527 2004-06-20  Benjamin Otte  <otte@gnome.org>
7528
7529         * testsuite/schedulers/.cvsignore:
7530         * testsuite/schedulers/Makefile.am:
7531         * testsuite/schedulers/143777-2.c: (main):
7532           add test for opt breakage in bug #143777
7533
7534 2004-06-20  Benjamin Otte  <otte@gnome.org>
7535
7536         * gst/gstpad.c: (gst_pad_call_chain_function):
7537           check for if we were unlinked while inside the chainfunction (fixes
7538           entrygthread having issues with #143777)
7539         * testsuite/schedulers/143777.c: (main):
7540         * testsuite/schedulers/Makefile.am:
7541           add a test for that fix
7542
7543 2004-06-20  Benjamin Otte  <otte@gnome.org>
7544
7545         * gst/gstvalue.c: (gst_value_set_int_range):
7546           test that start is smaller then end
7547         * libs/gst/bytestream/Makefile.am:
7548         * libs/gst/bytestream/filepad.c: 
7549         * libs/gst/bytestream/filepad.h:
7550           add GstFilePad - a pad that behaves like a FILE*
7551         * testsuite/bytestream/.cvsignore:
7552         * testsuite/bytestream/Makefile.am:
7553         * testsuite/bytestream/filepadsink.c: 
7554           test for the GstFilePad
7555
7556 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7557
7558         * gst/elements/gstidentity.c: (gst_identity_class_init),
7559         (gst_identity_init), (gst_identity_set_clock),
7560         (gst_identity_chain), (gst_identity_set_property),
7561         (gst_identity_get_property):
7562         * gst/elements/gstidentity.h:
7563         * gst/gstclock.c: (gst_clock_id_wait):
7564           add a "sync" property to sync to the clock
7565
7566 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7567
7568         * gst/gstelementfactory.c: (gst_element_factory_create):
7569           make the freakin "elementfactory bla has no type" message more
7570           useful. So we actually can do something when someone shows up
7571           complaining about it.
7572
7573 2004-06-15  Johan Dahlin  <johan@gnome.org>
7574
7575         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7576         found. This matches the old behavior better. Thanks to Thomas for
7577         pointing out.
7578
7579 2004-06-14  David Schleef  <ds@schleef.org>
7580
7581         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7582         -fomit-frame-pointer.  Appears to generate correct code in
7583         other cases as well.
7584
7585 2004-06-14  Johan Dahlin  <johan@gnome.org>
7586
7587         * tools/gst-inspect.c (main): Add two new command line options: -a
7588         to print all elements and -n to print the name on each line. Also
7589         fix some error reporting.
7590         (main): Simplify, remove -n and always print names if -a is specified
7591
7592 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7593
7594         * win32/gstconfig.h:
7595         * win32/GSTreamer.vcproj:
7596         * win32/Makefile:
7597         * gst/gstconfig.h.in:
7598         * gst/gst.h:
7599         * gst/gstbin.h:
7600         * gst/gstelement.h:
7601         * gst/gstevent.h:
7602         * gst/gstobject.h:
7603         * gst/gstpad.h:
7604         * docs/gst/gstreamer-sections.txt:
7605         * docs/gst/tmpl/gstconfig.sgml:
7606           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7607
7608 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7609         * docs/gst/gstreamer-sections.txt:
7610         * docs/gst/tmpl/gstconfig.sgml:
7611         Add the GSTREAMER_EXPORT macro to the docs
7612
7613 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7614
7615         * tools/gst-compprep.c: (handle_xmlerror), (main):
7616         Add a check for the version that introduced SetStructuredError to fix
7617         the build on FC1
7618
7619 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7620
7621         * win32/msvc71.sln:
7622         * win32/testsuite/:
7623           prepare to compile the testsuite with MSVC
7624
7625 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7626
7627         * docs/manual/win32.xml:
7628           attempt to transform the Win32 README into an XML doc
7629
7630 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7631
7632         * gst/gst.c:
7633         * gst/gstbin.*:
7634         * gst/config.h.in:
7635         * gst/gstelement.*:
7636         * gst/gstevent.h:
7637         * gst/gstobject.*:
7638         * gst/gstpad.h:
7639         * tools/gst-register.c:
7640         * win32/gstreamer.def:
7641           extern symbols are now exported for the Windows DLL
7642
7643 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7644
7645         * gst/gstinfo.h:
7646           fix a problem to enable/disable DEBUG under MSVC
7647
7648 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7649
7650         * win32/:
7651           enable more debug code in DEBUG build
7652
7653 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7654
7655         * win32/config.h:
7656         * gst/gst-i18n-app.h:
7657           enable NLS under Windows
7658
7659 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7660         * tools/gst-compprep.c: (handle_xmlerror), (main):
7661           Make an error that baffled me a bit clearer
7662
7663 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7664
7665         * gst/gstqueue.c:
7666           don't use g_queue_get_length () because it's 2.4, use ->length
7667
7668 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7669
7670         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7671
7672         * tools/gst-inspect.c: (print_signal_info):
7673           don't free random data twice. (fixes #144185)
7674
7675 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7676
7677         * gst/gstqueue.c:
7678         * gst/gstqueue.h:
7679           fix removing from the wrong queue on event timeout
7680           fix disposing of the event queue by casting correctly
7681           add mutexes for handling the event queue
7682           someone was sleeping when fixing queue last time around :)
7683
7684 2004-06-10  Johan Dahlin  <johan@gnome.org>
7685
7686         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7687         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7688
7689 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7690
7691         * docs/random/gdp:
7692         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7693         * libs/gst/dataprotocol/dataprotocol.c:
7694         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7695         (gst_dp_buffer_from_header):
7696         * libs/gst/dataprotocol/dataprotocol.h:
7697         * libs/gst/dataprotocol/dp-private.h:
7698           rev version to 0.1, add buffer flags and copy them
7699
7700 2004-06-09  Johan Dahlin  <johan@gnome.org>
7701
7702         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
7703         the flags from the buffer we're copying.
7704
7705 2004-06-09  Wim Taymans  <wim@fluendo.com>
7706
7707         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
7708         * gst/elements/gstidentity.c: (gst_identity_init),
7709         (gst_identity_chain):
7710         Print more buffer info in fakesink.
7711         Make identity output similar to fakesink.
7712
7713 2004-06-07  Daniel Gazard  <dany42@free.fr>
7714
7715         reviewed by Benjamin Otte  <otte@gnome.org>
7716
7717         * configure.ac:
7718           fix cross compiling not working. (fixes #143741)
7719
7720 2004-06-07  Benjamin Otte  <otte@gnome.org>
7721
7722         * gst/gstelement.c: (gst_element_set_time_delay):
7723           add failure check
7724         * gst/gstinfo.h:
7725           put brackets around macro arguments of GST_TIME_ARGS, add note to
7726           move it to correct header in 0.9
7727
7728 2004-06-07  Benjamin Otte  <otte@gnome.org>
7729
7730         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
7731         (gst_file_index_load), (_file_index_id_save_entries),
7732         (gst_file_index_commit), (gst_file_index_add_association),
7733         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
7734         (gst_file_index_plugin_init):
7735           make debugging use a default category
7736
7737 2004-06-06  David Moore  <dcm@acm.org>
7738
7739         reviewed by Benjamin Otte  <otte@gnome.org>
7740
7741         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
7742         (gst_fdsrc_change_state):
7743           reset offset counter when going READY => PAUSED. (fixes #142903)
7744
7745 2004-06-06  ed@catmur.co.uk
7746
7747         reviewed by Benjamin Otte  <otte@gnome.org>
7748
7749         * gst/registries/gstxmlregistry.c:
7750         (gst_xml_registry_rebuild_recurse):
7751           don't rely on g_dir_open to figure out if a file is a directory, use
7752           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
7753           directories. (fixes #142850)
7754
7755 2004-06-06  Benjamin Otte  <otte@gnome.org>
7756
7757         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
7758           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
7759         * libs/gst/bytestream/adapter.c:
7760         * libs/gst/bytestream/adapter.h:
7761           fix copyright in header and typo in debugging category name
7762
7763 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7764
7765         * configure.ac:
7766           bump nano to cvs
7767
7768 === release 0.8.3 ===
7769
7770 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7771
7772         * configure.ac:
7773           update libtool versioning
7774           do a new release
7775         * docs/gst/tmpl/gstelement.sgml:
7776         * docs/gst/tmpl/gsttypes.sgml:
7777         * gst/gstinfo.c: (_gst_debug_init):
7778           put back GST_CAT_DATAFLOW to fix API breakage
7779
7780 2004-06-04  David Schleef  <ds@schleef.org>
7781
7782         * autogen.sh: Add a temporary 'env' to test buildbot problems.
7783
7784 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7785
7786         * configure.ac:
7787           bump nano to cvs
7788
7789 === release 0.8.2 ===
7790
7791 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7792
7793         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
7794           check GST_DEBUG environment variable which is parsed the same way
7795           as --gst-debug=
7796
7797 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7798
7799         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
7800                             gstmd5sink.c gstshaper.c gsttee.c
7801                             gsttypefindelement.c
7802         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
7803
7804           - removing trailing commas at end of enums
7805             it is correct C99 code but C90 compilers would complain
7806             (AIX, Forte, ...)
7807             ('should' fix #143290, at least partially)
7808
7809 2004-05-27  Wim Taymans  <wim@fluendo.com>
7810
7811         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
7812         (chain_group_set_enabled), (create_group), (add_to_group),
7813         (merge_groups), (setup_group_scheduler), (group_elements),
7814         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
7815         Don't try to follow the pad connections with other groups
7816         when a loop based element is added to the scheduler because
7817         the bin will inform the scheduler about the pad links a little
7818         later.
7819
7820 2004-05-27  Wim Taymans  <wim@fluendo.com>
7821
7822         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7823         (remove_from_chain), (chain_group_set_enabled),
7824         (setup_group_scheduler), (group_element_set_enabled),
7825         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
7826         (gst_opt_scheduler_show):
7827         Elements without a group can do a state change as well, just wait
7828         with the setup of the scheduling function when it is added to a
7829         chain.
7830
7831 2004-05-27  Wim Taymans  <wim@fluendo.com>
7832
7833         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7834         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
7835         (merge_groups), (setup_group_scheduler),
7836         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
7837         (gst_opt_scheduler_show):
7838         Fixes to maintain internal consistency of the scheduler data
7839         structures. 
7840          - adding an enabled group to a chain should increment the
7841            number of enabled elements in that chain.
7842          - removing an enabled group from a chain could disable the
7843            chain.
7844          - removing a disabled group from a chain could enable the
7845            chain.
7846          - add g_assert when internal inconsistency is detected.
7847          - adding an element to a group could increase the number of
7848            links this group has with other groups.
7849          - merging two groups also merges the chains.
7850          - also show group links in the _show method.
7851            
7852
7853 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7854
7855         * gst/gstcaps.c: (gst_caps_structure_simplify):
7856           don't print error messages when there is no error
7857         * gst/gstvalue.c: (gst_value_compare_int_range):
7858           compare the second value, too
7859         * testsuite/caps/Makefile.am:
7860         * testsuite/caps/random.c: (assert_on_error), (main):
7861           add tests to make sure the two things above are checked for
7862
7863 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
7864
7865         * configure.ac:
7866         * libs/gst/dataprotocol/Makefile.am:
7867         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
7868         * libs/gst/dataprotocol/dataprotocol.h:
7869           wrap header in GST_ENABLE_NEW.  make code use it
7870
7871 2004-05-23  Johan Dahlin  <johan@gnome.org>
7872
7873         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
7874         so verbose and print GstElement signal names all the time.
7875
7876 2004-05-22  David Schleef  <ds@schleef.org>
7877
7878         * gst/registries/gstxmlregistry.c:
7879         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
7880         (bug #142957)
7881
7882 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
7883
7884         * configure.ac:
7885           scrub cflags for glib2 so gcc doesn't complain when glib is in
7886           /usr/local
7887
7888 2004-05-21  Johan Dahlin  <johan@gnome.org>
7889
7890         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
7891         __GNUC__, patch from Brian Cameron, fixes bug #142804
7892
7893 2004-05-20  David Schleef  <ds@schleef.org>
7894
7895         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
7896         comparison code.  (bug #142819)
7897
7898 2004-05-20  Wim Taymans  <wim@fluendo.com>
7899
7900         * gst/gstbuffer.c: (gst_buffer_default_copy):
7901         * gst/gstbuffer.h:
7902         Added Comment to a flag.
7903         copy relevant flags in _buffer_copy.
7904
7905 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7906
7907         reviewed by: Wim Taymans <wim at fluendo dot com>
7908
7909         * gst/gstbuffer.h:
7910           add GST_BUFFER_IN_CAPS buffer flag
7911         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7912         (gst_structure_parse_any_list), (gst_structure_parse_list),
7913         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
7914         * gst/gstvalue.c: (gst_value_serialize_any_list),
7915         (gst_value_transform_any_list_string),
7916         (gst_value_list_prepend_value), (gst_value_list_append_value),
7917         (gst_value_list_get_size), (gst_value_list_get_value),
7918         (gst_value_transform_list_string),
7919         (gst_value_transform_fixed_list_string),
7920         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
7921         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
7922         (_gst_value_initialize):
7923         * gst/gstvalue.h:
7924           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
7925           < , > as a format.
7926         * testsuite/caps/string-conversions.c: (main):
7927           add regression tests for < >
7928
7929 2004-05-20  Johan Dahlin  <johan@gnome.org>
7930
7931         * docs/gst/Makefile.am (all-local): Re-add
7932
7933 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7934
7935         * docs/gst/Makefile.am:
7936         * docs/gst/gstreamer-docs.sgml:
7937         * docs/libs/Makefile.am:
7938         * docs/libs/gstreamer-libs-docs.sgml:
7939           fix distcheck issues
7940
7941 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7942
7943         * libs/gst/dataprotocol/Makefile.am:
7944           add to autotest
7945
7946 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7947
7948         * libs/gst/dataprotocol/Makefile.am:
7949         * libs/gst/dataprotocol/dataprotocol.c:
7950         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7951         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
7952         * libs/gst/dataprotocol/dp-private.h:
7953           use GST macros to read/write fixed length ints
7954           add some more asserts
7955
7956 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7957
7958         * docs/libs/gstreamer-libs-docs.sgml:
7959         * docs/libs/gstreamer-libs-sections.txt:
7960           remove idct and putbits
7961         * configure.ac:
7962         * docs/libs/tmpl/gstdataprotocol.sgml:
7963         * libs/gst/Makefile.am:
7964         * libs/gst/dataprotocol/Makefile.am:
7965         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
7966         (buffer_test), (caps_test), (event_test), (main):
7967         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
7968         (gst_dp_dump_byte_array), (gst_dp_init),
7969         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
7970         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7971         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
7972         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
7973         (gst_dp_validate_header), (gst_dp_validate_payload),
7974         (gst_dp_validate_packet), (plugin_init):
7975         * libs/gst/dataprotocol/dataprotocol.h:
7976         * libs/gst/dataprotocol/dp-private.h:
7977           add dataprotocol
7978
7979 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7980
7981         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
7982           fix int variable deserialization and add a helper so we can actually
7983           debug this.
7984
7985 2004-05-18  David Schleef  <ds@schleef.org>
7986
7987         * testsuite/debug/commandline.c: (main): Call ./commandline, not
7988           argv[0].  Calling yourself is probably not the best way to
7989           construct a test like this, btw.
7990
7991 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7992
7993         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
7994           don't claim to be more intelligent than a scheduler when the
7995           scheduler claims the pipeline is stopped
7996         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
7997         (safe_cothread_destroy),
7998         (gst_entry_scheduler_remove_all_cothreads),
7999         (gst_entry_scheduler_reset), (_remove_cothread),
8000         (gst_entry_scheduler_state_transition):
8001           hold off cothread destruction if we're not in main cothread
8002         * configure.ac:
8003         * testsuite/Makefile.am:
8004           add new test dir
8005         * testsuite/schedulers/.cvsignore:
8006         * testsuite/schedulers/Makefile.am:
8007           add tests
8008         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8009           check relinking and adding/removing elements from a running pipeline
8010         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8011           check unlinking in a running pipeline
8012         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8013           check unreffing a running pipeline
8014         * testsuite/schedulers/useless_iteration.c: (main):
8015           check iterating a pipeline that contains running threads works
8016
8017 2004-05-18  David Schleef  <ds@schleef.org>
8018
8019         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8020           is false.
8021
8022 2004-05-18  Wim Taymans  <wim@fluendo.com>
8023
8024         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8025         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8026         Fixed an error introduced with patch for 1.63. When setting
8027         a get based element as the entry point in a group, make sure
8028         to mark the group as GET based.
8029
8030 2004-05-18  Wim Taymans  <wim@fluendo.com>
8031
8032         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8033         (setup_group_scheduler), (loop_group_schedule_function),
8034         (gst_opt_scheduler_pad_link):
8035         Added some more debug info and fixed a bug where the group
8036         type was set to LOOP but it was in fact unknown.
8037
8038 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8039
8040         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8041           make resetting scheduler work twice in a row
8042
8043 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8044
8045         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8046         (CREATE_USERIALIZATION), (_gst_value_initialize),
8047         (gst_value_compare_float), (gst_value_serialize_float),
8048         (gst_value_deserialize_float), (gst_value_compare_enum),
8049         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8050           add serialization and comparison functions for long, int64, enum and
8051           float values
8052         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8053           use best serialization function in type hierarchy instead of only a
8054           matching one. This is required for enums to work.
8055         * gst/parse/grammar.y:
8056           use gst_caps_deserialize
8057         * testsuite/parse/Makefile.am:
8058           parse1 now works
8059         * testsuite/parse/parse1.c: (main):
8060           remove aggregator check, aggregator is broken, this test works now
8061           but fails because of bug #138012
8062         * testsuite/parse/parse2.c: (main):
8063           s/xvideosink/xvimagesink - this test looks a lot like we should
8064           disable it
8065
8066 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8067
8068         * gst/gstelement.c: (gst_element_class_init):
8069           whoops, store the signal id correctly
8070         * gst/schedulers/gstbasicscheduler.c:
8071         (gst_basic_scheduler_chain_wrapper):
8072           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8073           chain function isn't linked
8074
8075 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8076         * configure.ac:
8077         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8078         support until we decide where the flags should be used
8079         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8080         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8081         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8082         Output refused caps in the debug info
8083
8084 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8085
8086         * gst/elements/gstidentity.c: (gst_identity_chain):
8087           add duration debug
8088         * gst/gstinfo.c: (gst_debug_log_default):
8089           add timestamp
8090
8091 2004-05-13  Benjamin Otte  <otte@gnome.org>
8092
8093         * gst/gstpipeline.c: (gst_pipeline_dispose),
8094         (gst_pipeline_change_state):
8095           call gst_scheduler_reset on dispose (fixes #141416)
8096
8097 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8098
8099         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8100           compute mapsize correctly
8101         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8102           use correct datatypes when calling a varargs function
8103         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8104           push a DISCONT event as first thing
8105         * gst/gst_private.h:
8106         * gst/gstinfo.c: (_gst_debug_init):
8107           remove GST_DATAFLOW debugging category
8108         * gst/gstbin.c: (gst_bin_iterate):
8109           use GST_SCHEDULING category
8110         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8111         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8112         (gst_pad_call_get_function):
8113           add GST_DATAFLOW to easily track flow of buffers or events.
8114         * gst/gstqueue.c: (gst_queue_get_type),
8115         (gst_queue_handle_pending_events), (gst_queue_chain),
8116         (gst_queue_get), (gst_queue_handle_src_event):
8117           use own static debugging category GST_DATAFLOW for dataflow,
8118           use DEBUG category for showing which path events go, use LOG
8119           category for buffers.
8120
8121 2004-05-10  David Schleef  <ds@schleef.org>
8122
8123         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8124
8125 2004-05-10  David Schleef  <ds@schleef.org>
8126
8127         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8128         symbols, because otherwise we don't know what they are.  Thanks,
8129         the GStreamer team.
8130         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8131
8132 2004-05-10  David Schleef  <ds@schleef.org>
8133
8134         (from Steve Lhomme)
8135         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8136         are deleted.  Fix.
8137         * win32/Makefile.inspect:
8138         * win32/Makefile.launch:
8139         * win32/Makefile.register:
8140
8141 2004-05-10  David Schleef  <ds@schleef.org>
8142
8143         * gst/gstinfo.h: Add missing inline function.
8144         * gst/gsttrace.c: add include
8145         * gst/parse/grammar.y: remove unused code
8146         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8147         more portable.
8148         * tools/gst-register.c: wrap unistd.h
8149         
8150         More additions/fixes from Steve for the MSVC build.
8151         * win32/GStreamer.vcproj:
8152         * win32/Makefile:
8153         * win32/Makefile.inspect:
8154         * win32/Makefile.launch:
8155         * win32/Makefile.register:
8156         * win32/README.txt:
8157         * win32/gst-inspect.vcproj:
8158         * win32/gst-launch.vcproj:
8159         * win32/gst-register.vcproj:
8160         * win32/gstbytestream.def:
8161         * win32/gstbytestream.vcproj:
8162         * win32/gstconfig.h:
8163         * win32/gstelements.def:
8164         * win32/gstelements.vcproj:
8165         * win32/gstenumtypes.c:
8166         * win32/gstenumtypes.h:
8167         * win32/gstoptimalscheduler.def:
8168         * win32/gstoptimalscheduler.vcproj:
8169         * win32/gstreamer.def:
8170         * win32/gstspider.def:
8171         * win32/gstspider.vcproj:
8172         * win32/gstversion.h:
8173         * win32/msvc71.sln:
8174
8175 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8176
8177         * gst/gstelement.c: (gst_element_class_init),
8178         (gst_element_no_more_pads):
8179         * gst/gstelement.h:
8180           add gst_element_no_more_pads and the "no-more-pads" signal
8181
8182 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8183
8184         * gst/gstregistry.c: (gst_registry_add_plugin):
8185           refuse to add plugins when a plugin with same name is already
8186           registered. Fixes a bunch of "How to remove plugins?" issues.
8187           May lead to other problems though, let's test
8188
8189 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8190
8191         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8192         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8193         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8194
8195 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8196
8197         * tests/Makefile.am: fix am16 issue
8198
8199 2004-05-09  Benjamin Otte  <otte@gnome.org>
8200
8201         * libs/gst/bytestream/Makefile.am:
8202           we should indeed add .c files to makefiles or they won't be built
8203           (d'oh)
8204
8205 2004-05-08  Benjamin Otte  <otte@gnome.org>
8206
8207         * gst/gstpad.c: (gst_pad_proxy_fixate):
8208           really reduce the set of caps
8209
8210 2004-05-08  Benjamin Otte  <otte@gnome.org>
8211
8212         * tests/Makefile.am:
8213         * tests/spidey_bench.c: (handoff), (main):
8214           add benchmark to test how long spider needs to create a pipeline
8215
8216 2004-05-08  Benjamin Otte  <otte@gnome.org>
8217
8218         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8219           mark links as unengaged when unnegotiating instead of deactivating.
8220           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8221
8222 2004-05-08  Benjamin Otte  <otte@gnome.org>
8223
8224         * docs/manual/helloworld.xml:
8225           s/audiosink/osssink (patch by Patrick Guimond)
8226
8227 2004-05-07  David Schleef  <ds@schleef.org>
8228
8229         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8230         since it contains important stuff.
8231
8232 2004-05-07  David Schleef  <ds@schleef.org>
8233
8234         * testsuite/caps/caps.c: (test3), (main): A check for appending
8235         ANY caps.
8236
8237 2004-05-07  David Schleef  <ds@schleef.org>
8238
8239         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8240         which may contain commas.  Fixes detection of -Wa,-mregnames
8241
8242 2004-05-06  David Schleef  <ds@schleef.org>
8243
8244         Changes to handle compilers that don't have variadic macro
8245         support.  In particular, glib headers define some inlines
8246         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8247         builds.
8248         * gst/Makefile.am:
8249         * gst/cothreads.c:
8250         * gst/elements/gstfdsink.c:
8251         * gst/elements/gstfdsrc.c:
8252         * gst/elements/gstfilesink.c:
8253         * gst/elements/gstfilesrc.c:
8254         * gst/gst_private.h:
8255         * gst/gstatomic.c:
8256         * gst/gstcaps.c: (gst_caps_append):
8257         * gst/gstcpu.c: (gst_cpuid_i386):
8258         * gst/gstelement.c:
8259         * gst/gsterror.c:
8260         * gst/gstfilter.c:
8261         * gst/gstinfo.h:
8262         * gst/gstprobe.c:
8263         * gst/gstquery.c:
8264         * gst/gstregistry.c:
8265         * gst/gststructure.c:
8266         * gst/gsttaginterface.c:
8267         * gst/gsttrace.c: (gst_trace_new):
8268         * gst/gsttrashstack.c:
8269         * gst/gsturi.c:
8270         * gst/gstvalue.c:
8271         * gst/parse/grammar.y:
8272         * gst/parse/parse.l:
8273         * tools/gst-inspect.c: (main):
8274         * tools/gst-launch.c: (main):
8275         * tools/gst-xmlinspect.c: (PUT_STRING):
8276
8277 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8278
8279         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8280         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8281         * gst/elements/gstfilesrc.h:
8282           send NEW_MEDIA events correctly
8283         * gst/elements/gsttypefindelement.c: (start_typefinding),
8284         (gst_type_find_element_handle_event):
8285           restart typefinding when we get a NEW_MEDIA event
8286         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8287         (gst_bin_dispose):
8288           don't die when someone removes elements in callbacks
8289         * gst/gstelement.c: (gst_element_change_state):
8290           improve debugging
8291         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8292           we need a NEW_MEDIA event to engage a link
8293         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8294           don't g_print debugging stuff
8295         * testsuite/caps/simplify.c: (check_caps):
8296
8297 2004-05-04  Benjamin Otte  <otte@gnome.org>
8298
8299         * gst/parse/grammar.y:
8300           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8301
8302 2004-05-04  Benjamin Otte  <otte@gnome.org>
8303
8304         * testsuite/caps/renegotiate.c: (main):
8305           improve output in error case
8306
8307 2004-05-04  Benjamin Otte  <otte@gnome.org>
8308
8309         * gst/parse/grammar.y:
8310           fix assert to not trigger when there's no error argument
8311         * gst/parse/parse.l:
8312           fix definition of caps to allow more than two structures
8313         * testsuite/caps/Makefile.am:
8314         * testsuite/caps/renegotiate.c: (main):
8315           it's sinesrc and works in that case
8316
8317 2004-05-04  Wim Taymans  <wim@fluendo.com>
8318
8319         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8320         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8321         when removing an element from a group, we always need to
8322         decrement the link count that this group had with other 
8323         groups through the element.
8324         added an extra assert to catch inconsistencies when decrementing
8325         the link count.
8326
8327 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8328
8329         * configure.ac:
8330         * docs/gst/Makefile.am:
8331         * docs/gst/gstreamer-sections.txt:
8332         * docs/gst/tmpl/gstcompat.sgml:
8333         * examples/appreader/Makefile.am:
8334         * examples/cutter/Makefile.am:
8335         * examples/events/Makefile.am:
8336         * examples/helloworld/Makefile.am:
8337         * examples/helloworld2/Makefile.am:
8338         * examples/launch/Makefile.am:
8339         * examples/manual/Makefile.am:
8340         * examples/mixer/Makefile.am:
8341         * examples/pingpong/Makefile.am:
8342         * examples/plugins/Makefile.am:
8343         * examples/queue/Makefile.am:
8344         * examples/queue2/Makefile.am:
8345         * examples/queue3/Makefile.am:
8346         * examples/queue4/Makefile.am:
8347         * examples/retag/Makefile.am:
8348         * examples/thread/Makefile.am:
8349         * examples/typefind/Makefile.am:
8350         * examples/xml/Makefile.am:
8351         * gst/Makefile.am:
8352         * gst/autoplug/Makefile.am:
8353         * gst/elements/Makefile.am:
8354         * gst/gstcompat.h:
8355         * gst/indexers/Makefile.am:
8356         * gst/parse/Makefile.am:
8357         * gst/registries/Makefile.am:
8358         * gst/schedulers/Makefile.am:
8359         * libs/gst/bytestream/Makefile.am:
8360         * libs/gst/control/Makefile.am:
8361         * libs/gst/getbits/Makefile.am:
8362         * po/af.po:
8363         * po/az.po:
8364         * po/en_GB.po:
8365         * po/fr.po:
8366         * po/nl.po:
8367         * po/sr.po:
8368         * po/sv.po:
8369         * po/tr.po:
8370         * po/uk.po:
8371         * tests/Makefile.am:
8372         * tests/bufspeed/Makefile.am:
8373         * tests/instantiate/Makefile.am:
8374         * tests/memchunk/Makefile.am:
8375         * tests/muxing/Makefile.am:
8376         * tests/negotiation/Makefile.am:
8377         * tests/probes/Makefile.am:
8378         * tests/sched/Makefile.am:
8379         * tests/seeking/Makefile.am:
8380         * tests/threadstate/Makefile.am:
8381         * testsuite/caps/Makefile.am:
8382         * testsuite/cleanup/Makefile.am:
8383         * testsuite/dlopen/Makefile.am:
8384         * testsuite/dynparams/Makefile.am:
8385         * testsuite/plugin/Makefile.am:
8386         * testsuite/states/Makefile.am:
8387         * tools/Makefile.am:
8388           reorganize compile/link flags to be consistent
8389           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8390
8391 2004-05-04  David Schleef  <ds@schleef.org>
8392
8393         The "once more, with feeling" check-in.
8394         * testsuite/caps/Makefile.am: dist caps_strings
8395         * testsuite/caps/renegotiate.c: (main): This test triggers a
8396           segfault in the core.  Marking as failing.
8397
8398 2004-05-03  David Schleef  <ds@schleef.org>
8399
8400         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8401           by the build bots.
8402         * testsuite/caps/renegotiate.c: (main): Same.
8403
8404 2004-05-03  David Schleef  <ds@schleef.org>
8405
8406         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8407
8408 2004-05-03  David Schleef  <ds@schleef.org>
8409
8410         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8411           variable to find our source file.
8412
8413 2004-05-03  David Schleef  <ds@schleef.org>
8414
8415         * configure.ac:  Link plugins with libgstreamer and dependent
8416           libraries
8417         * testsuite/caps/Makefile.am:
8418         * testsuite/caps/caps_strings:
8419         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8420           through a file of caps strings and test each one
8421
8422 2004-05-04  Benjamin Otte  <otte@gnome.org>
8423
8424         * libs/gst/bytestream/Makefile.am:
8425         * libs/gst/bytestream/adapter.c: 
8426         * libs/gst/bytestream/adapter.h:
8427           add GstAdapter, similar to bytestream, but doesn't require ugly event
8428           handling or uglier loopbased elements
8429
8430 2004-05-03  David Schleef  <ds@schleef.org>
8431
8432         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8433         * testsuite/caps/erathostenes.c:
8434         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8435
8436 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8437
8438         * docs/pwg/pwg.xml:
8439           remove hardcoded stylesheet path (duh)
8440         * docs/random/release:
8441         * docs/gst/gstreamer-sections.txt:
8442         * gst/Makefile.am:
8443         * gst/gst.h:
8444         * gst/gst_private.h:
8445         * gst/gstcaps.c:
8446         * gst/gstevent.c:
8447         * gst/gstformat.c:
8448         * gst/gstinfo.c:
8449         * gst/gstinfo.h:
8450         * gst/gstinterface.c:
8451         * gst/gstmemchunk.c:
8452         * gst/gstprobe.c:
8453         * gst/gstquery.c:
8454         * gst/gstregistry.c:
8455         * gst/gstregistrypool.c:
8456         * gst/gststructure.c:
8457         * gst/gsttaginterface.c:
8458         * gst/gstthread.c:
8459         * gst/gsttrace.c:
8460         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8461         * gst/gsturi.c:
8462         * gst/gstvalue.c:
8463           deprecate gst_info; remove gstlog.h
8464    
8465
8466 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8467
8468         * Makefile.am:
8469         * po/en_GB.po:
8470         * po/sv.po:
8471         * po/uk.po:
8472           updated translations
8473
8474 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8475
8476         * gst/gstbin.c: (gst_bin_dispose):
8477           better debugging
8478
8479 2004-05-03  Johan Dahlin  <johan@gnome.org>
8480
8481         * gst/schedulers/gstoptimalscheduler.c
8482         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8483         really is a GstElement. Avoids critical when running gst-launch -v
8484         and a oggdemux/decoding pipeline.
8485
8486 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8487
8488         * docs/gst/tmpl/gstpipeline.sgml :
8489         * docs/manual/elements-api.xml :
8490                 doc fix by Patrick Guimond (Protector) from devel ML
8491                 reviewed by ronald
8492
8493 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8494
8495         * docs/gst/Makefile.am :
8496         * docs/libs/Makefile.am :
8497                 apply a patch from Arwed v. Merkatz so that gtk-doc
8498                 generated docs install (same for .devhelp file)
8499                 (fixes part 1 of #138836)
8500
8501 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8502
8503         * docs/faq/dependencies.xml: typo
8504         * docs/faq/getting.xml :
8505             - fix download URL for new gstreamer site
8506             - hide sf.net download page as latest version aren't there
8507             - fix apt URLs
8508             - fill "get via CVS" paragraph (link to dev page on the site)
8509         * docs/faq/general.xml:
8510             hide status tables as they no more exists
8511             change case on plugins license file to reflect reality
8512         * docs/faq/troubleshooting.xml:
8513             remove the wiki question/answer as there is no more wiki
8514
8515 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8516
8517         * gst/gsterror.h:
8518           include the headers needed for declarations used in this header
8519
8520 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8521
8522         * docs/random/uraeus/gstreamer_and_midi.txt :
8523           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8524           (fixes #132288)
8525
8526 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8527
8528         reviewed by Benjamin Otte  <otte@gnome.org>
8529
8530         * gst/schedulers/gthread-cothreads.h:
8531           free allocated data for main cothread, too when destroying context
8532           (fixes #141417)
8533
8534 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8535
8536         * docs/manual/goals.xml : remove duplicated paragraph at end 
8537         of doc page (fixes #141448)
8538
8539 2004-04-29  David Schleef  <ds@schleef.org>
8540
8541         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8542         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8543
8544 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8545
8546         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8547           fix property
8548         * gst/gstcaps.c:
8549           fix doc string
8550         * po/POTFILES.in:
8551           rename typefind source file
8552
8553 2004-04-28  David Schleef  <ds@schleef.org>
8554
8555         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8556         * win32/GStreamer.vcproj:
8557         * win32/Makefile:
8558         * win32/config.h:
8559         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8560         (_trewinddir), (_ttelldir), (_tseekdir):
8561         * win32/dirent.h:
8562         * win32/gst-inspect.vcproj:
8563         * win32/gst-launch.vcproj:
8564         * win32/gst-register.vcproj:
8565         * win32/gstbytestream.vcproj:
8566         * win32/gstelements.vcproj:
8567         * win32/gstoptimalscheduler.vcproj:
8568         * win32/gstspider.vcproj:
8569         * win32/gtchar.h:
8570         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8571         * win32/mman.h:
8572         * win32/mman.inl:
8573         * win32/msvc71.sln:
8574
8575 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8576
8577         * gst/gst.c: (init_post):
8578         * gst/gstinfo.c:
8579           remove useless _gst_progname stuff
8580         * tools/gst-inspect.c: (print_field), (print_caps):
8581           improve caps output
8582
8583 2004-04-28  David Schleef  <ds@schleef.org>
8584
8585         Disable parsing of a lot of files that aren't part of the
8586         exported API.  Move corresponding template files to old/,
8587         waiting for removal when they don't contain anything
8588         interesting.
8589         * docs/gst/Makefile.am:
8590         * docs/gst/gstreamer-sections.txt:
8591         * docs/gst/tmpl/cothreads.sgml:
8592         * docs/gst/tmpl/cothreads_compat.sgml:
8593         * docs/gst/tmpl/gettext.sgml:
8594         * docs/gst/tmpl/gobject2gtk.sgml:
8595         * docs/gst/tmpl/grammar.tab.sgml:
8596         * docs/gst/tmpl/gst-i18n-app.sgml:
8597         * docs/gst/tmpl/gst-i18n-lib.sgml:
8598         * docs/gst/tmpl/gst_private.sgml:
8599         * docs/gst/tmpl/gstaggregator.sgml:
8600         * docs/gst/tmpl/gstarch.sgml:
8601         * docs/gst/tmpl/gstatomic_impl.sgml:
8602         * docs/gst/tmpl/gstbufferstore.sgml:
8603         * docs/gst/tmpl/gstdata_private.sgml:
8604         * docs/gst/tmpl/gstdisksink.sgml:
8605         * docs/gst/tmpl/gstdisksrc.sgml:
8606         * docs/gst/tmpl/gstelementfactory.sgml:
8607         * docs/gst/tmpl/gstextratypes.sgml:
8608         * docs/gst/tmpl/gstfakesink.sgml:
8609         * docs/gst/tmpl/gstfakesrc.sgml:
8610         * docs/gst/tmpl/gstfdsink.sgml:
8611         * docs/gst/tmpl/gstfdsrc.sgml:
8612         * docs/gst/tmpl/gstfilesink.sgml:
8613         * docs/gst/tmpl/gstfilesrc.sgml:
8614         * docs/gst/tmpl/gsthttpsrc.sgml:
8615         * docs/gst/tmpl/gstidentity.sgml:
8616         * docs/gst/tmpl/gstindexfactory.sgml:
8617         * docs/gst/tmpl/gstmarshal.sgml:
8618         * docs/gst/tmpl/gstmd5sink.sgml:
8619         * docs/gst/tmpl/gstmultidisksrc.sgml:
8620         * docs/gst/tmpl/gstmultifilesrc.sgml:
8621         * docs/gst/tmpl/gstpadtemplate.sgml:
8622         * docs/gst/tmpl/gstpipefilter.sgml:
8623         * docs/gst/tmpl/gstschedulerfactory.sgml:
8624         * docs/gst/tmpl/gstsearchfuncs.sgml:
8625         * docs/gst/tmpl/gstshaper.sgml:
8626         * docs/gst/tmpl/gstspider.sgml:
8627         * docs/gst/tmpl/gstspideridentity.sgml:
8628         * docs/gst/tmpl/gststatistics.sgml:
8629         * docs/gst/tmpl/gsttee.sgml:
8630         * docs/gst/tmpl/gsttimecache.sgml:
8631         * docs/gst/tmpl/gsttypefind.sgml:
8632         * docs/gst/tmpl/gsttypefindfactory.sgml:
8633         * docs/gst/tmpl/gstxmlregistry.sgml:
8634         * docs/gst/tmpl/gthread-cothreads.sgml:
8635         * docs/gst/tmpl/old/cothreads.sgml:
8636         * docs/gst/tmpl/old/cothreads_compat.sgml:
8637         * docs/gst/tmpl/old/gettext.sgml:
8638         * docs/gst/tmpl/old/gobject2gtk.sgml:
8639         * docs/gst/tmpl/old/grammar.tab.sgml:
8640         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8641         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8642         * docs/gst/tmpl/old/gst_private.sgml:
8643         * docs/gst/tmpl/old/gstaggregator.sgml:
8644         * docs/gst/tmpl/old/gstarch.sgml:
8645         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8646         * docs/gst/tmpl/old/gstbufferstore.sgml:
8647         * docs/gst/tmpl/old/gstdata_private.sgml:
8648         * docs/gst/tmpl/old/gstdisksink.sgml:
8649         * docs/gst/tmpl/old/gstdisksrc.sgml:
8650         * docs/gst/tmpl/old/gstelementfactory.sgml:
8651         * docs/gst/tmpl/old/gstextratypes.sgml:
8652         * docs/gst/tmpl/old/gstfakesink.sgml:
8653         * docs/gst/tmpl/old/gstfakesrc.sgml:
8654         * docs/gst/tmpl/old/gstfdsink.sgml:
8655         * docs/gst/tmpl/old/gstfdsrc.sgml:
8656         * docs/gst/tmpl/old/gstfilesink.sgml:
8657         * docs/gst/tmpl/old/gstfilesrc.sgml:
8658         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8659         * docs/gst/tmpl/old/gstidentity.sgml:
8660         * docs/gst/tmpl/old/gstindexfactory.sgml:
8661         * docs/gst/tmpl/old/gstmarshal.sgml:
8662         * docs/gst/tmpl/old/gstmd5sink.sgml:
8663         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8664         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8665         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8666         * docs/gst/tmpl/old/gstpipefilter.sgml:
8667         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8668         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8669         * docs/gst/tmpl/old/gstshaper.sgml:
8670         * docs/gst/tmpl/old/gstspider.sgml:
8671         * docs/gst/tmpl/old/gstspideridentity.sgml:
8672         * docs/gst/tmpl/old/gststatistics.sgml:
8673         * docs/gst/tmpl/old/gsttee.sgml:
8674         * docs/gst/tmpl/old/gsttimecache.sgml:
8675         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8676         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8677         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8678         * docs/gst/tmpl/old/types.sgml:
8679         * docs/gst/tmpl/types.sgml:
8680
8681         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8682         gtkdoc-scan doesn't like files with the same name in different
8683         directories.
8684         * gst/elements/Makefile.am:
8685         * gst/elements/gstelements.c:
8686         * gst/elements/gsttypefind.c: 
8687         * gst/elements/gsttypefind.h:
8688         * gst/elements/gsttypefindelement.c:
8689         * gst/elements/gsttypefindelement.h:
8690
8691 2004-04-28  David Schleef  <ds@schleef.org>
8692
8693         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8694         patch (bug #141317):
8695         * gst/gst-i18n-lib.h: Allow disabling gettext.
8696         * gst/gstatomic_impl.h: disable warning when it's dumb.
8697         * gst/gstclock.c: fix include
8698         * gst/gstcompat.h: fix variadic macro
8699         * gst/gstinfo.c: fix include
8700         * gst/gstmacros.h: add defines for inlines on MSVC
8701         * gst/gstplugin.c: fix includes
8702         * gst/gstregistry.c: fix includes
8703         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
8704         * gst/gstsystemclock.c: fix include
8705         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
8706         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
8707         * gst/registries/gstxmlregistry.c:
8708         (gst_xml_registry_parse_element_factory): fix use of non-portable
8709         functions
8710         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
8711         * libs/gst/control/dparammanager.h: same
8712
8713 2004-04-28  David Schleef  <ds@schleef.org>
8714
8715         Move a bunch of unused files to old/ with names that are
8716         not case-insensitive-unique.  These files still contain some
8717         useful information that needs to be merged into gstbin.sgml,
8718         etc., so they shouldn't be deleted yet.
8719         * docs/gst/tmpl/GstBin.sgml:
8720         * docs/gst/tmpl/GstBuffer.sgml:
8721         * docs/gst/tmpl/GstCaps.sgml:
8722         * docs/gst/tmpl/GstClock.sgml:
8723         * docs/gst/tmpl/GstCompat.sgml:
8724         * docs/gst/tmpl/GstData.sgml:
8725         * docs/gst/tmpl/GstElement.sgml:
8726         * docs/gst/tmpl/GstEvent.sgml:
8727         * docs/gst/tmpl/GstIndex.sgml:
8728         * docs/gst/tmpl/GstStructure.sgml:
8729         * docs/gst/tmpl/GstTag.sgml:
8730         * docs/gst/tmpl/old/GstBin.sgml:
8731         * docs/gst/tmpl/old/GstBuffer.sgml:
8732         * docs/gst/tmpl/old/GstCaps.sgml:
8733         * docs/gst/tmpl/old/GstClock.sgml:
8734         * docs/gst/tmpl/old/GstCompat.sgml:
8735         * docs/gst/tmpl/old/GstData.sgml:
8736         * docs/gst/tmpl/old/GstElement.sgml:
8737         * docs/gst/tmpl/old/GstEvent.sgml:
8738         * docs/gst/tmpl/old/GstIndex.sgml:
8739         * docs/gst/tmpl/old/GstStructure.sgml:
8740         * docs/gst/tmpl/old/GstTag.sgml:
8741
8742 2004-04-28  David Schleef  <ds@schleef.org>
8743
8744         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
8745         (gst_caps_append), (gst_caps_append_structure),
8746         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
8747         (gst_caps_set_simple), (gst_caps_set_simple_valist),
8748         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
8749         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
8750         (gst_caps_intersect), (gst_caps_normalize),
8751         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
8752         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
8753         * gst/gstcaps.h: use GST_IS_CAPS().
8754
8755 2004-04-26  David Schleef  <ds@schleef.org>
8756
8757         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
8758         assembly.  gcc doesn't handle it correctly. (bug #141083)
8759         * gst/gsttrashstack.h: same
8760
8761 2004-04-25  Benjamin Otte  <otte@gnome.org>
8762
8763         * gst/gstelement.c: (gst_element_change_state):
8764           fix assertion to do an int comparison
8765
8766 2004-04-25  Benjamin Otte  <otte@gnome.org>
8767
8768         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8769           better debugging output on error
8770
8771 2004-04-25  Benjamin Otte  <otte@gnome.org>
8772
8773         * gst/gstcaps.c: (gst_caps_subtract):
8774           fix memleak
8775
8776 2004-04-23  Benjamin Otte  <otte@gnome.org>
8777
8778         * gst/gstvalue.c: (gst_value_compare_buffer),
8779         (_gst_value_initialize):
8780           add comparison function for buffers
8781
8782 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8783
8784         * docs/pwg/pwg.xml:
8785           Just found out that this so-called "ima-wav" format is really
8786           just "dvi adpcm" (according to the MS WAV documentation). So
8787           renaming it. We didn't use it yet anyway.
8788
8789 2004-04-23  Benjamin Otte  <otte@gnome.org>
8790
8791         * gst/gstcaps.c: (gst_caps_is_always_compatible):
8792           call gst_caps_is_subset
8793
8794 2004-04-23  Benjamin Otte  <otte@gnome.org>
8795
8796         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
8797         (gst_caps_is_subset):
8798           add documentation
8799
8800 2004-04-23  Benjamin Otte  <otte@gnome.org>
8801           
8802         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
8803         (gst_caps_structure_subtract), (gst_caps_subtract),
8804         (gst_caps_structure_figure_out_union),
8805         (gst_caps_structure_simplify), (gst_caps_do_simplify):
8806           fix simplifying and subtracting not working correctly with optional
8807           properties
8808           solve assorted problems that make it now simplify ebven more
8809         * docs/gst/tmpl/gstcaps.sgml:
8810         * gst/gstcaps.h:
8811           make gst_caps_do_simplify return a bool to indicate if it simplified
8812         * testsuite/caps/simplify.c: (main):
8813           add more checks. The tests is quite a bit useless right now because
8814           the core is heavily simplifying itself.
8815         * testsuite/caps/caps.h:
8816           fix caps to contain all optional properties
8817
8818 2004-04-22  Benjamin Otte  <otte@gnome.org>
8819
8820         * docs/gst/tmpl/gstcaps.sgml:
8821         * docs/gst/tmpl/gstfilesrc.sgml:
8822         * docs/gst/tmpl/gststructure.sgml:
8823         * docs/gst/tmpl/gstvalue.sgml:
8824           update for recent API changes
8825         * gst/gstcaps.c: (gst_caps_do_simplify):
8826           fix to stop trying with a freed structure
8827         * gst/gstpad.c: (gst_pad_link_fixate):
8828           simplify caps
8829         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
8830           remove C++ comment
8831         * gst/gstpad.h:
8832           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
8833         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8834         (gst_structure_to_string):
8835           keep the correct type when using lists of ranges
8836         * gst/gstvalue.c: (gst_value_list_prepend_value),
8837         (gst_value_list_append_value):
8838           copy the value before adding to the list (d'oh)
8839         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
8840         (gst_value_subtract_int_range_int_range):
8841           handle overflows correctly
8842         * gst/gstvalue.c: (gst_value_subtract_from_list):
8843           fix memleak
8844         * testsuite/caps/caps.h:
8845           add a caps that caused segfaults
8846
8847 2004-04-22  Benjamin Otte  <otte@gnome.org>
8848
8849         * testsuite/refcounting/pad.c: (main):
8850           fix test
8851
8852 2004-04-22  Benjamin Otte  <otte@gnome.org>
8853
8854         * gst/gstcaps.c: (gst_caps_subtract):
8855           allow subtracting ANY and EMPTY from ANY caps
8856
8857 2004-04-22  Benjamin Otte  <otte@gnome.org>
8858
8859         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
8860         (gst_caps_union):
8861           only simplify in functions that create new caps. Simplifying in
8862           gst_caps_append breaks tests.
8863
8864 2004-04-22  Benjamin Otte  <otte@gnome.org>
8865
8866         * gst/gstcaps.c: (gst_caps_structure_simplify):
8867           unset GValue after use
8868         * gst/gstcaps.c: (gst_caps_append), 
8869         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
8870           use gst_caps_simplify (reduces registry size by 30%)
8871         * gst/gstpad.c: (gst_pad_template_new):
8872           don't allow NULL caps
8873
8874 2004-04-22  Benjamin Otte  <otte@gnome.org>
8875
8876         * docs/gst/gstreamer-sections.txt:
8877           add gst_caps_do_simplify
8878         * gst/gstcaps.c:
8879           add documentation for gst_caps_do_simplify
8880         * gst/gstvalue.h:
8881           fix typo in gst_value_register_subtract_func declaration for gst-doc
8882
8883 2004-04-22  Benjamin Otte  <otte@gnome.org>
8884
8885         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8886           fix bug when converting from empty string.
8887         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
8888         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
8889           use gst_caps_new_empty to allocate a new caps. Only that function
8890           allocates memory for caps now.
8891         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
8892         (gst_caps_remove_structure):
8893           add ability to remove one structure (but not to header yet)
8894         * gst/gstcaps.c: (gst_caps_compare_structures),
8895         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
8896         (gst_caps_structure_simplify), (gst_caps_do_simplify),
8897         * gst/gstcaps.h:
8898           add gst_caps_do_simplify that tries to simplify a caps in place.
8899           Deprecate old gst_caps_simplify function.
8900         * testsuite/caps/caps.h:
8901           add caps.h containing a common set of caps to test against.
8902         * testsuite/caps/sets.c: (check_caps), (main):
8903           use it.
8904         * testsuite/caps/.cvsignore:
8905         * testsuite/caps/Makefile.am:
8906         * testsuite/caps/simplify.c: (check_caps), (main):
8907           add test to check correctness and efficency of caps simplification.
8908
8909 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
8910
8911         reviewed by Benjamin Otte  <otte@gnome.org>
8912
8913         * gst/gstparse.c: (_gst_parse_escape):
8914           Free the GString used in _gst_parse_escape()
8915
8916 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8917
8918         * gst/gstpad.c: (gst_pad_link_negotiate):
8919           refuse to link if the link is not possible
8920         * configure.ac:
8921         * testsuite/Makefile.am:
8922         * testsuite/negotiation/.cvsignore:
8923         * testsuite/negotiation/Makefile.am:
8924         * testsuite/negotiation/pad_link.c: (main):
8925           add test that checks the above behaviour
8926
8927 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8928
8929         * docs/gst/gstreamer-sections.txt:
8930           add newly added API
8931
8932 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8933
8934         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8935         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
8936         (gst_filesrc_open_file), (gst_filesrc_close_file),
8937         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
8938         * gst/elements/gstfilesrc.h:
8939           add support for non-regular files (#140734)
8940
8941 2004-04-21  Benjamin Otte  <otte@gnome.org>
8942
8943         * gst/gstpad.c: (gst_pad_link_fixate):
8944           add sophisticated error checking code to see if fixation functions
8945           did their fixation right
8946
8947 2004-04-21  Benjamin Otte  <otte@gnome.org>
8948
8949         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
8950           check for ANY caps before appending/unioning
8951         * gst/gstcaps.c: (gst_caps_is_subset),
8952         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
8953         (gst_caps_structure_subtract), (gst_caps_subtract):
8954         * gst/gstcaps.h:
8955           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
8956           the API. deprecate gst_caps_is_equal_fixed
8957         * gst/gstpad.c: (gst_pad_try_set_caps):
8958         * gst/gstqueue.c: (gst_queue_link):
8959           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
8960         * gst/gststructure.c: (gst_structure_get_name_id):
8961         * gst/gststructure.h:
8962           add function gst_structure_get_name_id
8963         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
8964         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
8965         (gst_value_subtract_int_range_int_range),
8966         (gst_value_subtract_double_double_range),
8967         (gst_value_subtract_double_range_double),
8968         (gst_value_subtract_double_range_double_range),
8969         (gst_value_subtract_from_list), (gst_value_subtract_list),
8970         (gst_value_can_intersect), (gst_value_subtract),
8971         (gst_value_can_subtract), (gst_value_register_subtract_func),
8972         (_gst_value_initialize):
8973         * gst/gstvalue.h:
8974           add support for subtracting values from each other. Note that
8975           subtracting means subtracting as in set theory. Required for caps
8976           stuff above.
8977         * testsuite/caps/.cvsignore:
8978         * testsuite/caps/Makefile.am:
8979         * testsuite/caps/erathostenes.c: (erathostenes), (main):
8980         * testsuite/caps/sets.c: (check_caps), (main):
8981         * testsuite/caps/subtract.c: (check_caps), (main):
8982           add tests for subtraction and equality code.
8983
8984 2004-04-20  David Schleef  <ds@schleef.org>
8985
8986         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
8987         * gst/indexers/Makefile.am:
8988         * gst/schedulers/Makefile.am:
8989         * libs/gst/bytestream/Makefile.am:
8990         * libs/gst/control/Makefile.am:
8991         * libs/gst/getbits/Makefile.am:
8992
8993 2004-04-20  David Schleef  <ds@schleef.org>
8994
8995         * common/as-libtool.mak: Fine-tune DLL building.
8996         * configure.ac: Link plugins against libgstreamer.  Define plugindir
8997         (like gst-plugins)
8998         * examples/plugins/Makefile.am: remove plugindir
8999         * gst/autoplug/Makefile.am: DLL building fixes
9000         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9001         Windows.
9002         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9003         * gst/indexers/Makefile.am: DLL building fixes
9004         * gst/schedulers/Makefile.am: DLL building fixes.
9005         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9006         * libs/gst/control/Makefile.am: same
9007         * libs/gst/getbits/Makefile.am: same
9008         * testsuite/Makefile.am: New dlopen directory
9009         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9010         when dlopened.
9011         * testsuite/dlopen/dlopen_gst.c: (main): same
9012         * testsuite/dlopen/loadgst.c: (do_test): same
9013
9014 2004-04-20  David Schleef  <ds@schleef.org>
9015
9016         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9017         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9018
9019 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9020
9021         * gst/gstelement.c: (gst_element_wait),
9022         (gst_element_set_time_delay), (gst_element_change_state):
9023           Use GST_TIME_*
9024
9025 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9026
9027         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9028         (gst_spider_identity_plug):
9029           improve debugging messages
9030         * gst/gstbin.c: (gst_bin_remove_func):
9031           make sure the state_change function is only called with simple state
9032           transitions
9033
9034 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9035
9036         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9037         (gst_fakesink_set_property), (gst_fakesink_chain):
9038         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9039         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9040         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9041         * gst/elements/gstidentity.c: (gst_identity_chain),
9042         (gst_identity_set_property):
9043         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9044         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9045           add warnings to _set_property for unknown arguments
9046           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9047
9048 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9049
9050         * Makefile.am:
9051         * docs/manuals.mak:
9052           add .po file download snippet
9053           fix a bug in the doc makefile
9054
9055 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9056
9057         * Makefile.am:
9058         * po/LINGUAS:
9059         * po/en_GB.po:
9060           Added en_GB translation (Gareth Owen)
9061
9062 2004-04-20  Johan Dahlin  <johan@gnome.org>
9063
9064         * gst/gstpad.c (_invent_event): Clean up
9065
9066 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9067
9068         * testsuite/caps/filtercaps.c: (main):
9069           fix test to test things correctly (caps are complicated)
9070
9071 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9072
9073         * testsuite/caps/Makefile.am:
9074         * testsuite/caps/filtercaps.c: (main):
9075           add test (that doesn't work right now, but should)
9076
9077 2004-04-19  David Schleef  <ds@schleef.org>
9078
9079         * configure.ac: Add test for allowing unaligned access.  Add define
9080         to put in gstconfig.h.
9081         * docs/gst/gstreamer-sections.txt: New symbols
9082         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9083         * docs/gst/tmpl/gstfilesrc.sgml:
9084         * docs/gst/tmpl/gstparse.sgml:
9085         * docs/gst/tmpl/gsttypes.sgml:
9086         * docs/gst/tmpl/gstutils.sgml:
9087         * docs/gst/tmpl/gstvalue.sgml:
9088         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9089         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9090         on most !i386/!powerpc architectures.  From Daniel Gazard
9091         <daniel.gazard@free.fr>.  (bug #140156)
9092         * po/af.po: Check in changes made by gettext.
9093         * po/az.po:
9094         * po/fr.po:
9095         * po/nl.po:
9096         * po/sr.po:
9097         * po/sv.po:
9098
9099 2004-04-20  Benjamin Otte  <otte@gnome.org>
9100
9101         * gst/schedulers/entryscheduler.c: 
9102         (gst_entry_scheduler_yield):
9103           refuse to yield when decoupled elements insist on doing that.
9104           At least it's better than crashing
9105
9106 2004-04-19  David Schleef  <ds@schleef.org>
9107
9108         * docs/libs/Makefile.am: Change sinclude to include
9109         * docs/gst/Makefile.am: same
9110         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9111
9112 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9113
9114         * po/LINGUAS:
9115         * po/uk.po:
9116           Added Ukrainian translation (Maxim V. Dziumanenko)
9117
9118 2004-04-19  Johan Dahlin  <johan@gnome.org>
9119
9120         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9121         checking here, do it before calling the function.
9122         Clean up, use for loops instead of while loops while iterating
9123         over lists.
9124
9125         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9126         in debug message.
9127         (gst_spider_create_and_plug): Improve debug message.
9128         General: Replace while loops which iterates over GLists with for
9129         loops. Which are much cleaner, improves readability, especially
9130         for gst_spider_identity_plug
9131
9132         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9133         fixes bug 140477
9134
9135 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9136
9137         * po/LINGUAS:
9138         * po/tr.po:
9139           Added Turkish translation (Baris Cicek)
9140
9141 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9142
9143         * docs/faq/troubleshooting.xml:
9144           Mention gst-register in the FAQ (fixes 139045).
9145
9146 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9147
9148         * docs/gst/gstreamer-sections.txt:
9149
9150 2004-04-17  Benjamin Otte  <otte@gnome.org>
9151
9152         * gst/gstelement.c: (gst_element_dispose):
9153           simplify
9154         * gst/gstpad.c: (gst_pad_call_chain_function):
9155           don't create loads of events due to bad macro usage
9156
9157 2004-04-16  David Schleef  <ds@schleef.org>
9158
9159         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9160         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9161         * gst/gstvalue.c: (gst_value_serialize_buffer),
9162         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9163         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9164         to indicate types that are fixed wrt caps or not.  Switching to
9165         this function fixes (bug #140298).
9166         * gst/gstvalue.h:
9167
9168 2004-04-16  David Schleef  <ds@schleef.org>
9169
9170         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9171         for GST_UNALIGNED_ACESS, since we essentially know which archs
9172         are ok.
9173
9174 2004-04-17  Benjamin Otte  <otte@gnome.org>
9175
9176         * docs/gst/Makefile.am:
9177           ignore gst/parse directory when building docs (fixes #140205)
9178
9179 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9180
9181         * testsuite/refcounting/mem.c: (vmsize):
9182           do error checking
9183
9184 2004-04-16  Johan Dahlin  <johan@gnome.org>
9185
9186         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9187         and gst_pad_call_get_function.
9188
9189 2004-04-15  David Schleef  <ds@schleef.org>
9190
9191         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9192         checks if we can access unaligned memory.
9193         * configure.ac: Use it.
9194
9195 2004-04-16  Benjamin Otte  <otte@gnome.org>
9196
9197         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9198         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9199         * gst/elements/gstfilesrc.h:
9200           s/seek_happened/need_discont/ and require discont before sending any
9201           data
9202
9203 2004-04-15  David Schleef  <ds@schleef.org>
9204
9205         * gst/gstvalue.c: (gst_value_serialize_buffer),
9206         (gst_value_deserialize_buffer), (_gst_value_initialize):
9207         Register these types as fundamental types. (bug #140015)
9208
9209 2004-04-16  Benjamin Otte  <otte@gnome.org>
9210
9211         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9212         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9213         (gst_pad_pull):
9214           implement enforcing discont events before buffers are passed. This
9215           allows state changes of only some elements and later correctly going
9216           on where they left off (or in short: you can now set audio sinks to
9217           NULL to release the device when the pipeline is paused)
9218         * gst/gstpad.c: (gst_pad_call_chain_function),
9219         (gst_pad_call_get_function):
9220         * gst/gstpad.h:
9221           add gst_pad_call_chain_function and gst_pad_call_get_function for
9222           scheduler interaction. They are required because of the changes
9223           above.
9224         * gst/schedulers/entryscheduler.c: (get_buffer),
9225         (gst_entry_scheduler_chain_wrapper),
9226         (gst_entry_scheduler_get_wrapper),
9227         (gst_entry_scheduler_state_transition),
9228         (gst_entry_scheduler_pad_link):
9229         * gst/schedulers/gstbasicscheduler.c:
9230         (gst_basic_scheduler_chain_wrapper),
9231         (gst_basic_scheduler_src_wrapper),
9232         (gst_basic_scheduler_chainhandler_proxy),
9233         (gst_basic_scheduler_gethandler_proxy),
9234         (gst_basic_scheduler_cothreaded_chain),
9235         (gst_basic_scheduler_chain_elements):
9236         * gst/schedulers/gstoptimalscheduler.c:
9237         (get_group_schedule_function), (pad_clear_queued),
9238         (gst_opt_scheduler_pad_link):
9239           use the new functions instead of calling get/chain-functions
9240           directly.
9241
9242 2004-04-15  David Schleef  <ds@schleef.org>
9243
9244         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9245         * docs/gst/tmpl/gstinfo.sgml: same
9246         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9247         gtk-doc put here.
9248         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9249         * examples/queue/queue.c: (main):  We iterate pipelines, not
9250         bins.  (bug #139996)
9251
9252 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9253
9254         * docs/pwg/advanced-types.xml:
9255           Add MS RLE support. Also document Qt RLE although I have no sample
9256           files for that yet. And document an extra property for ADPCM.
9257
9258 2004-04-15  David Schleef  <ds@schleef.org>
9259
9260         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9261         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9262         Windows.
9263
9264 2004-04-15  David Schleef  <ds@schleef.org>
9265
9266         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9267         symbol names to not conflict with new gstinfo.h symbols.
9268         * gst/gstinfo.h: Add inline functions for all those crazy
9269         compilers that don't know how to handle variadic macros (MSVC).
9270
9271 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9272
9273         * configure.ac: bump nano to 1
9274
9275 === release 0.8.1 ===
9276
9277 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9278
9279         * NEWS:
9280         * RELEASE:
9281         * configure.ac:
9282           releasing 0.8.1, "Snow Brigade"
9283
9284 2004-04-14  David Schleef  <ds@schleef.org>
9285
9286         * testsuite/Makefile.am: define tests_ignore
9287         * testsuite/Rules: Added new tests_ignore, which get compiled,
9288         but not run (generally because they're inconsistent or have
9289         heisenbugs).  Now we can ensure all the .c files compile in
9290         testsuite/.
9291         * testsuite/bins/Makefile.am: define tests_ignore
9292         * testsuite/bytestream/Makefile.am:
9293         * testsuite/caps/Makefile.am:
9294         * testsuite/clock/Makefile.am:
9295         * testsuite/debug/Makefile.am:
9296         * testsuite/debug/global.c: (gst_debug_log_one),
9297         (gst_debug_log_two): Fix compilation problem.
9298         * testsuite/dynparams/Makefile.am:
9299         * testsuite/elements/Makefile.am:
9300         * testsuite/ghostpads/Makefile.am:
9301         * testsuite/indexers/Makefile.am:
9302         * testsuite/parse/Makefile.am:
9303         * testsuite/plugin/Makefile.am:
9304         * testsuite/refcounting/Makefile.am:
9305         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9306         results, because it's not calculated correctly.
9307         * testsuite/refcounting/pad.c: (main): same
9308         * testsuite/states/Makefile.am:
9309         * testsuite/tags/Makefile.am:
9310         * testsuite/threads/Makefile.am:
9311
9312 2004-04-14  David Schleef  <ds@schleef.org>
9313
9314         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9315         generating bad code around the cpu detection asm code.
9316
9317 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9318
9319         * tools/gst-inspect.c: (print_element_info):
9320           print numeric version of rank as well, since we added some - 1
9321           rank values to elements
9322
9323 2004-04-13  David Schleef  <ds@schleef.org>
9324
9325         * configure.ac:  Disable various code when compiling for MinGW.
9326         * gst/elements/Makefile.am:
9327         * gst/elements/gstelements.c:
9328         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9329         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9330         * gst/registries/gstxmlregistry.c: (make_dir):
9331
9332 2004-04-13  David Schleef  <ds@schleef.org>
9333
9334         * gst/Makefile.am:
9335         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9336         assembly.
9337         * gst/gstcpuid_i386.s: remove
9338
9339 2004-04-13  David Schleef  <ds@schleef.org>
9340
9341         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9342         seems to think it needs to be done.
9343         * docs/gst/tmpl/gstfakesink.sgml:
9344         * docs/gst/tmpl/gstfakesrc.sgml:
9345         * docs/gst/tmpl/gstfdsink.sgml:
9346         * docs/gst/tmpl/gstfdsrc.sgml:
9347         * docs/gst/tmpl/gstfilesink.sgml:
9348         * docs/gst/tmpl/gstfilesrc.sgml:
9349         * docs/gst/tmpl/gstidentity.sgml:
9350         * docs/gst/tmpl/gstmd5sink.sgml:
9351         * docs/gst/tmpl/gstmultifilesrc.sgml:
9352         * docs/gst/tmpl/gstpipefilter.sgml:
9353         * docs/gst/tmpl/gstshaper.sgml:
9354         * docs/gst/tmpl/gstspider.sgml:
9355         * docs/gst/tmpl/gstspideridentity.sgml:
9356         * docs/gst/tmpl/gststatistics.sgml:
9357         * docs/gst/tmpl/gsttee.sgml:
9358         * docs/gst/tmpl/gsttypefind.sgml:
9359         * docs/gst/tmpl/gstutils.sgml:
9360
9361 2004-04-13  David Schleef  <ds@schleef.org>
9362
9363         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9364         and to build DLLs on Windows.
9365         * gst/Makefile.am:
9366         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9367         (gst_filesrc_open_file):
9368         * gst/schedulers/Makefile.am:
9369
9370 2004-04-13  David Schleef  <ds@schleef.org>
9371
9372         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9373         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9374         fixating lists.
9375
9376 2004-04-12  David Schleef  <ds@schleef.org>
9377
9378         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9379         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9380         to using it.
9381         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9382         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9383         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9384         * gst/gststructure.c: (gst_structure_set_valist),
9385         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9386         support for buffers.
9387         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9388         intended to be const.
9389         * gst/gsttag.h: same
9390         * gst/gstvalue.c: (gst_value_serialize_buffer),
9391         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9392         to (de)serialize buffers.
9393         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9394         * testsuite/caps/string-conversions.c: (main):
9395         * testsuite/caps/value_serialize.c: add new test
9396
9397 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9398
9399         * docs/pwg/advanced-types.xml:
9400           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9401
9402 2004-04-11  Benjamin Otte  <otte@gnome.org>
9403
9404         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9405           rename categories to basic_*
9406         * gst/schedulers/gstbasicscheduler.c: 
9407         (gst_basic_scheduler_chain_wrapper),
9408         (gst_basic_scheduler_chainhandler_proxy),
9409         (gst_basic_scheduler_gethandler_proxy),
9410         (gst_basic_scheduler_eventhandler_proxy):
9411           debugging category fixes - put common stuff in log category
9412         * gst/schedulers/gstbasicscheduler.c: 
9413         (gst_basic_scheduler_chain_elements):
9414           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9415           active and linking two active chains
9416
9417 2004-04-10  Benjamin Otte  <otte@gnome.org>
9418
9419         * docs/pwg/intro-preface.xml:
9420           fix dead links and remove reference to Wiki
9421
9422 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9423
9424         * gst/schedulers/gstbasicscheduler.c:
9425           make sure we can switch back to the main function if we're still in
9426           the main function (supposed to fix #139617)
9427         * gst/schedulers/gthread-cothreads.h:
9428           don't throw an error when switching to the same cothread
9429
9430 2004-04-09  Benjamin Otte  <otte@gnome.org>
9431
9432         * gst/gstbin.c: (gst_bin_get_type):
9433         * gst/gstclock.c: (gst_clock_get_type):
9434         * gst/gstindex.c: (gst_index_get_type):
9435         * gst/gstobject.c: (gst_object_get_type),
9436         (gst_signal_object_get_type):
9437         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9438         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9439         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9440         * gst/gstqueue.c: (gst_queue_get_type):
9441         * gst/gstregistry.c: (gst_registry_get_type):
9442         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9443         * gst/gstthread.c: (gst_thread_get_type):
9444           don't use memchunks for these objects, use malloc instead
9445
9446 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9447
9448         * docs/gst/.cvsignore:
9449         * docs/gst/Makefile.am:
9450         * docs/gst/gstreamer-sections.txt:
9451         * docs/gst/tmpl/gstaggregator.sgml:
9452         * docs/gst/tmpl/gstbuffer.sgml:
9453         * docs/gst/tmpl/gstclock.sgml:
9454         * docs/gst/tmpl/gstelement.sgml:
9455         * docs/gst/tmpl/gstfakesink.sgml:
9456         * docs/gst/tmpl/gstfakesrc.sgml:
9457         * docs/gst/tmpl/gstfdsink.sgml:
9458         * docs/gst/tmpl/gstfdsrc.sgml:
9459         * docs/gst/tmpl/gstfilesink.sgml:
9460         * docs/gst/tmpl/gstfilesrc.sgml:
9461         * docs/gst/tmpl/gstidentity.sgml:
9462         * docs/gst/tmpl/gstindex.sgml:
9463         * docs/gst/tmpl/gstinfo.sgml:
9464         * docs/gst/tmpl/gstmd5sink.sgml:
9465         * docs/gst/tmpl/gstmultifilesrc.sgml:
9466         * docs/gst/tmpl/gstpad.sgml:
9467         * docs/gst/tmpl/gstpipefilter.sgml:
9468         * docs/gst/tmpl/gstpipeline.sgml:
9469         * docs/gst/tmpl/gstpluginfeature.sgml:
9470         * docs/gst/tmpl/gstqueue.sgml:
9471         * docs/gst/tmpl/gstregistry.sgml:
9472         * docs/gst/tmpl/gstscheduler.sgml:
9473         * docs/gst/tmpl/gstshaper.sgml:
9474         * docs/gst/tmpl/gstspider.sgml:
9475         * docs/gst/tmpl/gstspideridentity.sgml:
9476         * docs/gst/tmpl/gststatistics.sgml:
9477         * docs/gst/tmpl/gstsystemclock.sgml:
9478         * docs/gst/tmpl/gsttee.sgml:
9479         * docs/gst/tmpl/gstthread.sgml:
9480         * docs/gst/tmpl/gsttypefind.sgml:
9481         * docs/gst/tmpl/gstutils.sgml:
9482           further doc build fixes
9483
9484 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9485
9486         * docs/gst/Makefile.am:
9487           make docs exit on scanning problems
9488           fix nonsrcdir build issues
9489         * docs/gst/gstreamer-sections.txt:
9490           adding stuff from -unused
9491         * gst/gstqueue.h:
9492           create GstQueueSize
9493         * gst/schedulers/cothreads_compat.h:
9494           fix cothread warnings
9495
9496 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9497
9498         * docs/gst/gstreamer-sections.txt:
9499           remove defines deprecated by Benjamin
9500
9501 2004-04-07  Benjamin Otte  <otte@gnome.org>
9502
9503         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9504           when the buffer is complete, don't check if other buffers are needed
9505         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9506           check that the offset is >0 so we don't try to read before the
9507           beginning of the file
9508         * gst/gstpad.c: (gst_pad_set_pad_template):
9509           sink the template, so we don't end up with 130k pad templates
9510
9511 2004-04-06  Benjamin Otte  <otte@gnome.org>
9512
9513         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9514           don't ref the element, adding already reffed it. And we didn't unref
9515           it later anyway... (huge memleak when you used many spider elements)
9516         * gst/gstelement.c: (gst_element_base_class_finalize):
9517         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9518         (gst_element_register):
9519         * gst/gsturi.c: (gst_element_make_from_uri):
9520           use gst_object_(un)ref instead of g_object(un)ref
9521
9522 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9523
9524         * gst/gstbuffer.h:
9525           remove macro that wouldn't work anymore because struct member has
9526           been removed.
9527         * gst/schedulers/entryscheduler.c: (schedule_forward):
9528           fix segfault for unconnected pads
9529         
9530 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9531
9532         reviewed by David Schleef <ds@schleef.org>
9533
9534         * gst/gstinfo.h:
9535           *_FORMAT modifiers should require putting a % in front of them for
9536           consistency reasons.
9537
9538 2004-04-05  Colin Walters  <walters@redhat.com>
9539
9540         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9541         space.
9542
9543 2004-04-05  Benjamin Otte  <otte@gnome.org>
9544
9545         * configure.ac:
9546         * gst/Makefile.am:
9547         * gst/gst_private.h:
9548         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9549           add support for detecting if GStreamer runs inside valgrind.
9550           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9551           print a big message in valgrind that GStreamer has detected it's
9552           running inside and might now use different code.
9553         * gst/gstmemchunk.c: (populate), (free_area),
9554         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9555         (gst_mem_chunk_free):
9556           flag memchunks for valgrind, so it can detect leaking of chunks.
9557           This allows detecting leaks of GstBuffer and GstEvent correctly
9558           inside valgrind.
9559
9560 2004-04-05  David Schleef  <ds@schleef.org>
9561
9562         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9563           jensgr@gmx.net (Jens Granseuer)
9564
9565 2004-04-05  David Schleef  <ds@schleef.org>
9566
9567         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9568         (gst_buffer_default_free), (gst_buffer_default_copy),
9569         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9570         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9571         structures in one place.
9572
9573 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9574
9575         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9576           (GST_TIME_FORMAT, GST_TIME_ARGS)
9577
9578 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9579
9580         * testsuite/elements/Makefile.am:
9581           disable test until it stops breaking make distcheck
9582
9583 2004-04-05  Johan Dahlin  <johan@gnome.org>
9584
9585         * po/sv.po: Updated translation
9586
9587 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9588
9589         * gst/gstplugin.c: (gst_plugin_load_file):
9590           fix segfault for when original plugin was loaded statically
9591
9592 2004-04-05  Benjamin Otte  <otte@gnome.org>
9593
9594         * testsuite/debug/category.c: (main):
9595         * testsuite/debug/commandline.c: (main):
9596         * testsuite/debug/output.c: (main):
9597           fix tests to work again with debugging enabled
9598
9599 2004-04-05  Benjamin Otte  <otte@gnome.org>
9600
9601         * gst/schedulers/gstbasicscheduler.c:
9602         (gst_basic_scheduler_pad_link):
9603           fix to work with recent scheduling changes
9604
9605 2004-04-05  Benjamin Otte  <otte@gnome.org>
9606
9607         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9608         prepareChangeLog doesn't work when cvs indents):
9609           don't throw an error when no element can be scheduled, there's too
9610           many weird reasons why it doesn't work. Return STOPPED instead.
9611           decoupled elemts' schedulability doesn't depend on bufpens.
9612
9613 2004-04-04  Benjamin Otte  <otte@gnome.org>
9614
9615         * gst/schedulers/gstbasicscheduler.c:
9616         (gst_basic_scheduler_pad_select):
9617           fix uninitialized variable warnings
9618
9619 2004-04-04  Benjamin Otte  <otte@gnome.org>
9620
9621         * gst/gstpad.c: (gst_pad_collect_valist):
9622           fix uninitialized variable warning
9623         * gst/schedulers/entryscheduler.c: (schedule_forward):
9624           fix shadowed variable
9625
9626 2004-04-04  Benjamin Otte  <otte@gnome.org>
9627
9628         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9629         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9630         (gst_pad_select):
9631         * gst/gstpad.h:
9632         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9633         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9634         * gst/gstscheduler.h:
9635           implement gst_pad_collect as replacement for gst_pad_select.
9636           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9637           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9638           new pad_select, lock and unlock calls.
9639         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9640         * gst/cothreads.h:
9641         * gst/schedulers/cothreads_compat.h:
9642         * gst/schedulers/gthread-cothreads.h:
9643           remove unused cothread_lock and cothread_unlock calls
9644         * gst/schedulers/entryscheduler.c:
9645         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9646         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9647         (gst_entry_scheduler_pad_select):
9648           update to new API
9649         * gst/schedulers/gstbasicscheduler.c:
9650         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9651         (gst_basic_scheduler_pad_select):
9652           remove useless lock and unlock calls, update pad_select to new API
9653           (untested)
9654         * gst/schedulers/gstoptimalscheduler.c:
9655         (gst_opt_scheduler_class_init):
9656           remove useless select, lock and unlock function calls
9657         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9658           use gst_pad_collect instead of gst_pad_select
9659
9660 2004-04-04  Benjamin Otte  <otte@gnome.org>
9661
9662         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9663         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9664         (schedule_next_element), (print_entry):
9665           add can_schedule_pad to handle element states.
9666           add schedule_forward to select the correct entry to schedule next
9667
9668 2004-04-03  Benjamin Otte  <otte@gnome.org>
9669
9670         * gst/schedulers/entryscheduler.c: 
9671           remove unused variable, fix error inside Rb, fix compile warning in
9672           unreachable code
9673
9674 2004-04-03  Benjamin Otte  <otte@gnome.org>
9675
9676         * gst/schedulers/entryscheduler.c:
9677           completely revamp the inner workings, so it's a lot easier to
9678           understand and extend
9679
9680 2004-04-03  Andy Wingo  <wingo@pobox.com>
9681
9682         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9683         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9684         This allows better introspection of pipeline topology.
9685         (add_to_chain): Don't do trickery to put loop elements first;
9686         rather, queue a chain sort by marking the chain as dirty.
9687         (remove_from_chain): Mark the chain dirty.
9688         (sort_chain): New function. Sorts the group list so that terminal
9689         sinks are first. This means elements on the sink side will be
9690         preferentially sscheduled before elements on the src side of the
9691         pipeline.
9692         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9693         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9694         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9695         (group_inc_link): Change argument and variable names to match the
9696         new link structure member names (src and sink).
9697         (group_dec_link): Add some description
9698
9699 2004-04-03  Benjamin Otte  <otte@gnome.org>
9700
9701         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9702         * gst/gstinfo.h:
9703         * testsuite/debug/category.c: (main):
9704         * testsuite/debug/commandline.c: (main):
9705         * testsuite/debug/output.c: (main):
9706         * testsuite/debug/printf_extension.c: (main):
9707           fix to successfully build and test with --disable-gst-debug
9708           configure switch (fixes #138705)
9709
9710 2004-04-03  Benjamin Otte  <otte@gnome.org>
9711
9712         * docs/pwg/building-boiler.xml:
9713           add cvs login line and s/anonymous/anoncvs/
9714
9715 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
9716
9717         reviewed by Benjamin Otte  <otte@gnome.org>
9718
9719         * gst/gststructure.c: (gst_structure_free):
9720           memleak fix: free fields array (partial fix for #134839)
9721
9722 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9723
9724         * docs/random/ds/0.9-suggested-changes:
9725           Add a note to change handoff use in fakesrc to be usable in
9726           a more generic way (fakesrc should be renamed to appsrc or so).
9727         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9728           Change signal type to scope, so we can fill the buffer in the
9729           handoff handler (that's the whole use of this signal...).
9730
9731 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9732
9733         * docs/pwg/other-ntoone.xml:
9734           Document muxers and n-to-1 elements.
9735
9736 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
9737
9738         * gst/registries/gstxmlregistry.c
9739         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
9740         determine if a file is a G_MODULE. The old one discards paths
9741         containing "so" somewhere in the middle. My home directory is
9742         called "soto". Go figure...
9743
9744 2004-03-31  David Schleef  <ds@schleef.org>
9745
9746         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
9747         to eventually deprecate gst_buffer_merge().  (bug: #136408)
9748         * gst/gstbuffer.h:
9749
9750 2004-03-31  David Schleef  <ds@schleef.org>
9751
9752         * gst/gstvalue.c: (gst_value_union_int_int_range),
9753         (gst_value_union_int_range_int_range), (gst_value_can_union),
9754         (gst_value_union), (_gst_value_initialize):  Add some union
9755         implementations.  We didn't have any previously.
9756         * testsuite/caps/Makefile.am:
9757         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
9758         (gst_audioscale_getcaps), (test_caps), (main): A little test
9759         that is the same as the caps manipulation in audioscale.
9760
9761 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9762
9763         * docs/faq/general.xml:
9764           add entry about "does gst support format X?"
9765
9766 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9767
9768         * gst/gstthread.c:
9769           fix docs
9770         * gst/gstutils.h:
9771           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
9772
9773 2004-03-30  Benjamin Otte  <otte@gnome.org>
9774
9775         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9776           set the offset of the buffer to the requested offset
9777         * gst/elements/gsttypefind.c: (stop_typefinding):
9778           revert patch 1.18 (which I unfortunately don't know the reason for).
9779           This is needed to allow downstream elements to seek. Otherwise
9780           typefind might overwrite a previous seek by downstream elements.
9781           This lead to errors with id3tag and typefind on some mp3s.
9782         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9783         (gst_entry_scheduler_iterate):
9784           be more verbose when debugging
9785
9786 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9787
9788         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9789           make sure we don't get NULL strings
9790
9791 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9792
9793         * gst/gstcaps.c:
9794         * gst/gstelement.c:
9795         * gst/gstelementfactory.c: (gst_element_factory_get_type):
9796         * gst/gstindex.c: (gst_index_resolver_get_type),
9797         (gst_index_get_type), (gst_index_factory_get_type):
9798         * gst/gstinfo.c:
9799         * gst/gstpad.c:
9800         * gst/gstplugin.c:
9801         * gst/gsturi.c: (gst_uri_handler_get_type):
9802         * gst/gstvalue.c:
9803           first batch of documentation fixes
9804
9805 2004-03-29  David Schleef  <ds@schleef.org>
9806
9807         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
9808         * docs/gst/gstreamer-docs.sgml:  More hacking
9809         * docs/gst/gstreamer-sections.txt:
9810         * docs/gst/tmpl/cothreads_compat.sgml:
9811         * docs/gst/tmpl/gstcaps.sgml:
9812         * docs/gst/tmpl/gstclock.sgml:
9813         * docs/gst/tmpl/gstelement.sgml:
9814         * docs/gst/tmpl/gstevent.sgml:
9815         * docs/gst/tmpl/gstpad.sgml:
9816         * docs/gst/tmpl/gstutils.sgml:
9817         * docs/gst/tmpl/gstxml.sgml:
9818         * docs/gst/tmpl/gthread-cothreads.sgml:
9819         * docs/random/ds/0.9-suggested-changes:
9820         * gst/elements/gstfakesink.h: doc fixes
9821         * gst/elements/gstfakesrc.h: doc fixes
9822         * gst/gstcaps.c: doc fixes
9823         * gst/gstcaps.h: doc fixes
9824         * gst/gstelement.c: doc fixes
9825         * gst/gstelement.h: doc fixes
9826         * gst/gstindex.c: doc fixes
9827         * gst/gstinfo.c: doc fixes
9828         * gst/gstpad.c: doc fixes
9829         * gst/gstpad.h: doc fixes
9830         * gst/gstplugin.c: doc fixes
9831         * gst/gsttypefind.h: doc fixes
9832         * gst/gsturi.c: doc fixes
9833         * gst/gstvalue.c: doc fixes
9834
9835 2004-03-29  Colin Walters  <walters@redhat.com>
9836
9837         * gst/registries/gstxmlregistry.c (get_time)
9838         (plugin_times_older_than_recurse):
9839         Use the result of stat to determine whether a path is a file,
9840         so we don't attempt to opendir() files.
9841
9842 2004-03-29  Benjamin Otte  <otte@gnome.org>
9843
9844         * gst/gstpad.c: (gst_pad_set_explicit_caps):
9845           print caps in debugging output when setting caps failed
9846         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9847         (schedule_next_element), (get_buffer), (run_chainhandler),
9848         (element_may_start), (gst_entry_scheduler_chain_handler),
9849         (gst_entry_scheduler_get_handler),
9850         (gst_entry_scheduler_state_transition),
9851         (gst_entry_scheduler_pad_link):
9852           make this scheduler a testcase for mandatory
9853           discont-before-first-buffer which is needed if we want to allow apps
9854           to release the sound device.
9855           add SCHED_ASSERT macro to print scheduler state before an assertion
9856           triggers.
9857
9858 2004-03-29  Benjamin Otte  <otte@gnome.org>
9859
9860         * COPYING:
9861           replace by LGPL (former COPYING.LIB). The core is completely
9862           licensed LGPL.
9863         * COPYING.LIB:
9864           remove
9865
9866 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9867
9868         * po/af.po:
9869         * po/sv.po:
9870           updated Afrikaans and Swedish
9871
9872 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9873
9874         * po/LINGUAS:
9875         * po/az.po:
9876           adding Azerbaijani (Mətin Əmirov)
9877
9878 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
9879
9880         * gst/gstelement.h: 
9881         * gst/gstelement.c (gst_element_set_time_delay): New function for
9882         setting element time taking into account a hardware buffering
9883         delay.
9884         (gst_element_set_time): Now just an invocation of
9885         gst_element_set_time_delay.
9886         * gst/gstclock.h: 
9887         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
9888         allowing to set event times in the future.
9889         (gst_clock_get_event_time): Now just an invocation of
9890         gst_clock_get_event_time_delay.
9891
9892 2004-03-28  Benjamin Otte  <otte@gnome.org>
9893
9894         * gst/gstbin.c: (gst_bin_set_element_sched),
9895         (gst_bin_unset_element_sched):
9896           don't add decoupled elements to schedulers - otherwise it's
9897           impossible to control if a link to a decoupled element was already
9898           removed from a scheduler or not.
9899         * gst/schedulers/cothreads_compat.h:
9900         * gst/schedulers/gthread-cothreads.h:
9901           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
9902           is no "unused" warning.
9903         * gst/schedulers/Makefile.am:
9904         * gst/schedulers/entryscheduler.c:
9905           add new scheduler, based on ideas from talking to David and Martin.
9906           It's supposed to be small and correct. Currently it's also slow (but
9907           it's not noticable)
9908         * examples/retag/retag.c: (main):
9909         * testsuite/bytestream/test1.c: (main):
9910           fix missing NULLs at end of variadic functions
9911         * testsuite/elements/.cvsignore:
9912           update
9913
9914 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
9915
9916         * gst/gstevent.h:
9917         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
9918
9919 2004-03-25  David Schleef  <ds@schleef.org>
9920
9921         * docs/gst/gstreamer-sections.txt:  More doc hacking.
9922         * docs/gst/tmpl/gstaggregator.sgml:
9923         * docs/gst/tmpl/gstautoplugfactory.sgml:
9924         * docs/gst/tmpl/gstbin.sgml:
9925         * docs/gst/tmpl/gstbuffer.sgml:
9926         * docs/gst/tmpl/gstbufferstore.sgml:
9927         * docs/gst/tmpl/gstfakesink.sgml:
9928         * docs/gst/tmpl/gstfakesrc.sgml:
9929         * docs/gst/tmpl/gstmd5sink.sgml:
9930         * docs/gst/tmpl/gstreamer-unused.sgml:
9931         * docs/gst/tmpl/gstsearchfuncs.sgml:
9932         * docs/gst/tmpl/gstshaper.sgml:
9933         * docs/gst/tmpl/gstspider.sgml:
9934         * docs/gst/tmpl/gsttee.sgml:
9935         * docs/gst/tmpl/gstutils.sgml:
9936         * docs/gst/tmpl/gstvalue.sgml:
9937         * docs/gst/tmpl/gstxml.sgml:
9938         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
9939         and we don't support it.
9940         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
9941         (gst_use_threads), (gst_has_threads): same
9942         * gst/gstthreaddummy.c: same
9943         * gst/autoplug/gstspider.c: Make gst_spider_details static.
9944         * gst/autoplug/gstspider.h: same
9945         * gst/elements/gstaggregator.h: Remove bogus function from header
9946         * gst/elements/gstfakesink.h: same
9947         * gst/elements/gstfakesrc.h: same
9948         * gst/elements/gstmd5sink.h: same
9949         * gst/elements/gstshaper.h: same
9950         * gst/elements/gsttee.h: same
9951         * gst/gstbin.c: doc fixes
9952         * gst/gstbin.h: Remove unused definition.
9953         * gst/gstbuffer.c: doc fixes
9954         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
9955         * gst/gstfilter.c: doc fixes
9956         * gst/gsttag.c: doc fixes
9957         * gst/gstvalue.c: doc fixes
9958
9959 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9960
9961         * docs/pwg/advanced-types.xml:
9962           Document typefinding.
9963         * docs/pwg/other-oneton.xml:
9964           Document one-to-n elements, demuxers and parsers.
9965
9966 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
9967
9968         reviewed by: David Schleef  <ds@schleef.org>
9969
9970         * configure.ac: Check bison version (bug #127838)
9971
9972 2004-03-25  David Schleef  <ds@schleef.org>
9973
9974         * docs/gst/gstreamer-docs.sgml: More fine tuning.
9975         * docs/gst/gstreamer-sections.txt:
9976         * docs/gst/tmpl/gstautoplug.sgml:
9977         * docs/gst/tmpl/gststaticautoplug.sgml:
9978         * docs/gst/tmpl/gststaticautoplugrender.sgml:
9979         * docs/gst/tmpl/gstutils.sgml:
9980         * docs/gst/tmpl/gstxml.sgml:
9981
9982 2004-03-24  David Schleef  <ds@schleef.org>
9983
9984         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
9985         manual being such complete crap, that I decided to do major
9986         hacking of it.  This checkin replaces any fine tuning that
9987         may have been done previously, with the benefit of actually
9988         being complete for much of the API that was changed since
9989         0.6.  Further fine tuning will occur shortly.  (bug #134721)
9990         * docs/gst/gstreamer-sections.txt:
9991         * docs/gst/tmpl/GstBin.sgml:
9992         * docs/gst/tmpl/GstBuffer.sgml:
9993         * docs/gst/tmpl/GstCaps.sgml:
9994         * docs/gst/tmpl/GstClock.sgml:
9995         * docs/gst/tmpl/GstCompat.sgml:
9996         * docs/gst/tmpl/GstData.sgml:
9997         * docs/gst/tmpl/GstElement.sgml:
9998         * docs/gst/tmpl/GstEvent.sgml:
9999         * docs/gst/tmpl/GstIndex.sgml:
10000         * docs/gst/tmpl/GstStructure.sgml:
10001         * docs/gst/tmpl/GstTag.sgml:
10002         * docs/gst/tmpl/cothreads.sgml:
10003         * docs/gst/tmpl/cothreads_compat.sgml:
10004         * docs/gst/tmpl/gettext.sgml:
10005         * docs/gst/tmpl/grammar.tab.sgml:
10006         * docs/gst/tmpl/gst-i18n-app.sgml:
10007         * docs/gst/tmpl/gst-i18n-lib.sgml:
10008         * docs/gst/tmpl/gst.sgml:
10009         * docs/gst/tmpl/gst_private.sgml:
10010         * docs/gst/tmpl/gstaggregator.sgml:
10011         * docs/gst/tmpl/gstarch.sgml:
10012         * docs/gst/tmpl/gstatomic.sgml:
10013         * docs/gst/tmpl/gstatomic_impl.sgml:
10014         * docs/gst/tmpl/gstbin.sgml:
10015         * docs/gst/tmpl/gstbuffer.sgml:
10016         * docs/gst/tmpl/gstbufferstore.sgml:
10017         * docs/gst/tmpl/gstcaps.sgml:
10018         * docs/gst/tmpl/gstclock.sgml:
10019         * docs/gst/tmpl/gstcompat.sgml:
10020         * docs/gst/tmpl/gstconfig.sgml:
10021         * docs/gst/tmpl/gstcpu.sgml:
10022         * docs/gst/tmpl/gstdata.sgml:
10023         * docs/gst/tmpl/gstdata_private.sgml:
10024         * docs/gst/tmpl/gstelement.sgml:
10025         * docs/gst/tmpl/gstenumtypes.sgml:
10026         * docs/gst/tmpl/gsterror.sgml:
10027         * docs/gst/tmpl/gstevent.sgml:
10028         * docs/gst/tmpl/gstfakesink.sgml:
10029         * docs/gst/tmpl/gstfakesrc.sgml:
10030         * docs/gst/tmpl/gstfilesink.sgml:
10031         * docs/gst/tmpl/gstfilter.sgml:
10032         * docs/gst/tmpl/gstindex.sgml:
10033         * docs/gst/tmpl/gstinfo.sgml:
10034         * docs/gst/tmpl/gstinterface.sgml:
10035         * docs/gst/tmpl/gstlog.sgml:
10036         * docs/gst/tmpl/gstmacros.sgml:
10037         * docs/gst/tmpl/gstmarshal.sgml:
10038         * docs/gst/tmpl/gstmd5sink.sgml:
10039         * docs/gst/tmpl/gstmultifilesrc.sgml:
10040         * docs/gst/tmpl/gstobject.sgml:
10041         * docs/gst/tmpl/gstpad.sgml:
10042         * docs/gst/tmpl/gstparse.sgml:
10043         * docs/gst/tmpl/gstpipeline.sgml:
10044         * docs/gst/tmpl/gstplugin.sgml:
10045         * docs/gst/tmpl/gstpluginfeature.sgml:
10046         * docs/gst/tmpl/gstqueue.sgml:
10047         * docs/gst/tmpl/gstreamer-unused.sgml:
10048         * docs/gst/tmpl/gstregistry.sgml:
10049         * docs/gst/tmpl/gstregistrypool.sgml:
10050         * docs/gst/tmpl/gstscheduler.sgml:
10051         * docs/gst/tmpl/gstsearchfuncs.sgml:
10052         * docs/gst/tmpl/gstshaper.sgml:
10053         * docs/gst/tmpl/gstspider.sgml:
10054         * docs/gst/tmpl/gstspideridentity.sgml:
10055         * docs/gst/tmpl/gststructure.sgml:
10056         * docs/gst/tmpl/gstsystemclock.sgml:
10057         * docs/gst/tmpl/gsttag.sgml:
10058         * docs/gst/tmpl/gsttaginterface.sgml:
10059         * docs/gst/tmpl/gsttee.sgml:
10060         * docs/gst/tmpl/gstthread.sgml:
10061         * docs/gst/tmpl/gsttrace.sgml:
10062         * docs/gst/tmpl/gsttrashstack.sgml:
10063         * docs/gst/tmpl/gsttypefind.sgml:
10064         * docs/gst/tmpl/gsttypes.sgml:
10065         * docs/gst/tmpl/gsturi.sgml:
10066         * docs/gst/tmpl/gsturitype.sgml:
10067         * docs/gst/tmpl/gstutils.sgml:
10068         * docs/gst/tmpl/gstvalue.sgml:
10069         * docs/gst/tmpl/gstversion.sgml:
10070         * docs/gst/tmpl/gstxml.sgml:
10071         * docs/gst/tmpl/gstxmlregistry.sgml:
10072         * docs/gst/tmpl/gthread-cothreads.sgml:
10073         * docs/gst/tmpl/types.sgml:
10074
10075 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10076
10077         * docs/pwg/other-sink.xml:
10078         * docs/pwg/other-source.xml:
10079           Documentation on how to write source and sink elements. Other
10080           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10081           manager, autoplugger) are all still pending.
10082
10083 2004-03-25  Benjamin Otte  <otte@gnome.org>
10084
10085         * testsuite/elements/Makefile.am:
10086         * testsuite/elements/gst-compprep-check:
10087           add check to make sure gst-compprep works
10088         * testsuite/elements/gst-inspect-check.in:
10089           improve initialization output
10090         * testsuite/Makefile.am:
10091         * testsuite/gst-inspect-check:
10092           remove old file
10093
10094 2004-03-24  David Schleef  <ds@schleef.org>
10095
10096         * testsuite/elements/Makefile.am:
10097         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10098         to the testsuite.
10099
10100 2004-03-24  Benjamin Otte  <otte@gnome.org>
10101
10102         * libs/gst/control/dparam.c: (gst_dparam_attach),
10103         (gst_dparam_detach):
10104         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10105           fix lvalue casts for real
10106
10107 2004-03-24  Benjamin Otte  <otte@gnome.org>
10108
10109         * gst/schedulers/gstbasicscheduler.c:
10110         (gst_basic_scheduler_src_wrapper):
10111         * gst/schedulers/gstoptimalscheduler.c:
10112         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10113         (pad_clear_queued), (gst_opt_scheduler_add_element),
10114         (gst_opt_scheduler_remove_element):
10115           fix GStreamer to not have issues with lvalue casts anymore (fixes
10116           #136841)
10117
10118 2004-03-24  Benjamin Otte  <otte@gnome.org>
10119
10120         * gst/gstelement.c:
10121           add documentation about a gobject quirk where the object hasn't the
10122           correct class pointer set on initialization
10123         * gst/schedulers/gstbasicscheduler.c:
10124         (gst_basic_scheduler_src_wrapper):
10125           make sure to not run into an infinite loop
10126
10127 2004-03-22  Benjamin Otte  <otte@gnome.org>
10128
10129         * gst/gstutils.c: (gst_util_dump_mem):
10130         * gst/gstutils.h:
10131           first argument of gst_util_dump_mem should be const
10132
10133 2004-03-22  Johan Dahlin  <johan@gnome.org>
10134
10135         * gst/gstvalue.h: Clean up a little bit.
10136
10137 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10138
10139         reviewed by Benjamin Otte  <otte@gnome.org>
10140
10141         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10142         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10143         (gst_aggregator_class_init), (gst_aggregator_init):
10144         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10145         (gst_filesrc_dispose), (gst_filesrc_set_location):
10146         * gst/elements/gstidentity.c: (gst_identity_finalize),
10147         (gst_identity_class_init), (gst_identity_chain):
10148         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10149         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10150         (gst_statistics_class_init):
10151         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10152         (gst_tee_get_property):
10153           clean up used memory in this elements correctly on teardown (closes
10154           #137279)
10155
10156 2004-03-20  Colin Walters  <walters@redhat.com>
10157
10158         * gst/registries/gstxmlregistry.c:
10159         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10160         registry saving atomic.
10161
10162 2004-03-20  Colin Walters  <walters@redhat.com>
10163
10164         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10165         Just use
10166         access() instead of actually creating and deleting files.
10167
10168 2004-03-18  David Schleef  <ds@schleef.org>
10169
10170         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10171         (bug #137625)
10172
10173 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10174
10175         * po/sv.po: updated translation (Christian Rose)
10176
10177 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10178
10179         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10180         (gst_filesink_get_query_types), (_do_init),
10181         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10182           return FALSE silently
10183         * po/af.po: updated translation (Petri Jooste)
10184
10185 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10186
10187         * Makefile.am:
10188         * configure.ac:
10189           dist common properly
10190         * po/af.po:
10191         * po/fr.po:
10192         * po/nl.po:
10193         * po/sr.po:
10194         * po/sv.po:
10195           refreshing translations
10196
10197 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10198
10199         * po/LINGUAS:
10200         * po/sv.po:
10201         * po/af.po:
10202           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10203
10204 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10205
10206         * Makefile.am: use common/release.mak
10207
10208 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10209
10210         * docs/faq/gst-uninstalled:
10211           adding gst-monkeysaudio to the list of possible plugin dirs
10212
10213 2004-03-16  David Schleef  <ds@schleef.org>
10214
10215         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10216         (gst_init_check_with_popt_table):  Fix some gettext strings to
10217         make them easier to translate.  Required making the strings
10218         non-const.
10219
10220 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10221
10222         * configure.ac: bump nano to 1
10223
10224 === release 0.8.0 ===
10225
10226 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10227
10228         * configure.ac: release 0.8.0, "Executive Slacks"
10229
10230 2004-03-16  Johan Dahlin  <johan@gnome.org>
10231
10232         * gst/schedulers/gstoptimalscheduler.c
10233         (gst_opt_scheduler_pad_unlink): Remove double ;,
10234         spotted by Scott Wheeler
10235
10236 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10237
10238         * configure.ac: bump libtool version
10239
10240 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10241
10242         * gst/gstcaps.h:
10243         * gst/gststructure.h:
10244           add reserved padding
10245
10246 2004-03-15  Benjamin Otte  <otte@gnome.org>
10247
10248         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10249           set the first parameter for select call correctly.
10250           (fixes #137230)
10251
10252 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10253
10254         * *.c,*.h: don't mix tabs and spaces
10255
10256 2004-03-15  Johan Dahlin  <johan@gnome.org>
10257
10258         * gst/schedulers/gstoptimalscheduler.c
10259         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10260         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10261
10262         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10263         
10264 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10265
10266         * testsuite/Rules:
10267           fix gst-register rules
10268
10269 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10270
10271         * testsuite/Rules:
10272           use versioned gst-register
10273
10274 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10275
10276         * docs/libs/gstreamer-libs-sections.txt:
10277           remove </SUBSECTION>
10278         * gst/gstplugin.c:
10279         * gst/gstregistry.c: (gst_registry_add_plugin):
10280         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10281         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10282           add debugging and fix some comment blocks
10283
10284 2004-03-15  Johan Dahlin  <johan@gnome.org>
10285
10286         * *.h: Revert indent changes.
10287         
10288 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10289
10290         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10291           g_error_free the g_error
10292         * tools/gst-feedback-m.m:
10293           check for other versions of gstreamer
10294         * tools/gst-indent:
10295           use sh, not bash
10296
10297 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10298
10299         * tools/gst-register.c: do not spill paths when registries are not
10300           writable, until we fix the "user running gst-register" case.
10301
10302 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10303
10304         * *.c, *.h: commit of gst-indent run on core
10305
10306 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10307
10308         * tools/gst-indent:
10309         * tools/Makefile.am:
10310           add our indentation style as a script
10311
10312 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10313
10314         * po/sr.po:
10315         * po/LINGUAS:
10316           added Serbian translation
10317
10318 2004-03-13  Benjamin Otte  <otte@gnome.org>
10319
10320         * gst/gstelement.c:
10321           add documentation note about gst_element_found_tags_for_pad not
10322           being usable in getfunctions. (see #137042)
10323
10324 2004-03-12  David Schleef  <ds@schleef.org>
10325
10326         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10327         change API right now!  Readd gst_caps_is_simple() macro.
10328         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10329         uninitialized variable.  I'd bet this caused crashes.
10330         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10331
10332 2004-03-12  Johan Dahlin  <johan@gnome.org>
10333
10334         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10335         * gst/gstcaps.h: Clean up
10336
10337         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10338         _gst_caps_initalize()
10339
10340         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10341         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10342
10343         * gst/gststructure.c (gst_structure_get_type): Ditto
10344
10345         * gst/gststructure.h: Ditto
10346         
10347 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10348
10349         * gst/gstqueue.c: (gst_queue_init):
10350           Reset default max. values in queues. Reason is simply to avoid
10351           braindead use. If you want wider values, use the properties. The
10352           default is supposed to always work. Wider values would make this
10353           beast a memory hog by default (250 full-PAL RGB32 video frames?
10354           That's 440 MB! No thank you).
10355
10356 2004-03-10  David Schleef  <ds@schleef.org>
10357
10358         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10359         were found.  (bug #136793)
10360
10361 2004-03-10  Johan Dahlin  <johan@gnome.org>
10362
10363         * gst/schedulers/gstoptimalscheduler.c
10364         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10365         links to elements within the same group, so we can finally remove
10366         that annoying warning. Refactor the code a little bit
10367         (group_dec_links_for_element): Split out
10368
10369 2004-03-09  David Schleef  <ds@schleef.org>
10370
10371         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10372         (bug #134863)
10373
10374 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10375
10376         * configure.ac: first bug fix due to major/minor bump
10377
10378 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10379
10380         * configure.ac: bump nano to 1
10381
10382 === release 0.7.6 ===
10383
10384 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10385
10386         * NEWS:
10387         * RELEASE:
10388         * configure.ac:
10389           releasing 0.7.6, "Almost"
10390         * po/fr.po:
10391         * po/nl.po:
10392         * tools/Makefile.am:
10393         * tools/gst-feedback-m.m:
10394           unversioned source
10395
10396 2004-03-09  Johan Dahlin  <johan@gnome.org>
10397
10398         Reviewed by: Thomas Vander Stichele
10399
10400         * gst/gstelement.c (gst_element_class_init): register second
10401         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10402         language bindings can (de)marshall correctly.
10403
10404         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10405
10406         * gst/gsterror.c (gst_g_error_get_type): New function
10407
10408         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10409         with VOID:OBJECT,OBJECT,STRING 
10410
10411 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10412
10413         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10414         Free a leaked g_timer on early returns.
10415
10416 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10417
10418         * docs/pwg/advanced-types.xml:
10419           Add cinepak description.
10420
10421 2004-03-07  David Schleef  <ds@schleef.org>
10422
10423         * docs/random/mimetypes:  Added cinepak description
10424
10425 2004-03-07  Andy Wingo  <wingo@pobox.com>
10426
10427         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10428
10429         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10430         there are no links to other groups when a group is destroyed.
10431         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10432         removed from a group, make sure the link count to elements linked
10433         to other pads is appropriately decremented. This really fixes
10434         #135672.
10435
10436         The 1.60->1.61 patch has been reapplied in light of this fix.
10437
10438         * gst/gstelement.c (gst_element_dispose): Really protect against
10439         multiple invocations this time.
10440
10441 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10442
10443         * docs/gst/gstreamer-sections.txt:
10444         * docs/gst/tmpl/gsttag.sgml:
10445           remove some deprecated functions, document some existing ones
10446         * gst/gsttag.c: (gst_tag_get_flag):
10447         * gst/gsttag.h:
10448           add accessor function
10449
10450 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10451
10452         * docs/gst/gstreamer-sections.txt:
10453         * docs/gst/tmpl/gsttag.sgml:
10454         * docs/gst/tmpl/gstxml.sgml:
10455         * gst/gsttag.c: (gst_tag_get_flag):
10456         * gst/gsttag.h:
10457
10458 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10459
10460         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10461         leak
10462
10463 2004-03-05  David Schleef  <ds@schleef.org>
10464
10465         * REQUIREMENTS: Add bison and flex.
10466         * configure.ac: Fix comment about bison.
10467         * docs/random/ds/0.9-suggested-changes: yer ma
10468         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10469
10470 2004-03-05  Benjamin Otte  <otte@gnome.org>
10471
10472         * gst/gstelement.c: (gst_element_error_full):
10473           revert recent recursive state changing commit - messing with other
10474           elements' states is evil and should be done by apps only.
10475
10476 2004-03-05  Benjamin Otte  <otte@gnome.org>
10477
10478         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10479           check for empty intersection instead of NULL caps
10480         (gst_element_get_compatible_pad_filtered):
10481           remove old workaround that is only a bug nowadays
10482
10483 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10484
10485         * gst/gstelement.c: (gst_element_error_full):
10486           make elements try to recursively change state to PAUSED on all
10487           parents after an error to suppress ensuing warnings
10488         * gst/parse/grammar.y:
10489           make it check if it was able to sync the state, and throw an error
10490           if not, so stuff like
10491           oggdemux ! vorbisdec ! osssink gets caught
10492
10493 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10494
10495         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10496           it contains lib64; use AS_AC_EXPAND to handle it properly
10497
10498 2004-03-05  David Schleef  <ds@schleef.org>
10499
10500         * gst/gstcpuid_i386.s:  Remove unused code
10501         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10502         (gst_getbits_newbuf): Remove MMX code
10503         * libs/gst/getbits/getbits.h: Remove MMX code
10504
10505 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10506
10507         * debian/.cvsignore:
10508         * debian/README.Debian:
10509         * debian/changelog:
10510         * debian/control:
10511         * debian/control.in:
10512         * debian/copyright:
10513         * debian/gstreamer-core-libs-dev.files:
10514         * debian/gstreamer-core-libs.files:
10515         * debian/gstreamer-core.files:
10516         * debian/gstreamer-core.postinst:
10517         * debian/gstreamer-core.postrm:
10518         * debian/gstreamer-doc.files:
10519         * debian/gstreamer-doc.links:
10520         * debian/gstreamer-doc.lintian:
10521         * debian/gstreamer-runtime.files:
10522         * debian/gstreamer-runtime.manpages:
10523         * debian/gstreamer-runtime.postinst:
10524         * debian/gstreamer-runtime.postrm:
10525         * debian/gstreamer-tools.files:
10526         * debian/gstreamer-tools.manpages:
10527         * debian/libgstreamer-dev.files:
10528         * debian/libgstreamer0.4.1.files:
10529         * debian/libgstreamerVERSION.files:
10530         * debian/rules:
10531         Debian package info not maintained here.
10532
10533 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10534
10535         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10536         * gst/gstbin.c: (gst_bin_class_init):
10537         * gst/gstelement.c: (gst_element_class_init):
10538         * gst/gstindex.c: (gst_index_class_init):
10539         * gst/gstobject.c: (gst_object_class_init),
10540         (gst_signal_object_class_init):
10541         * gst/gstpad.c: (gst_pad_template_class_init):
10542         * gst/gstregistry.c: (gst_registry_class_init):
10543         * gst/gsturi.c: (gst_uri_handler_base_init):
10544         * gst/gstxml.c: (gst_xml_class_init):
10545         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10546         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10547           make all signal names use dashes instead of underscore
10548
10549 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10550
10551         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10552
10553 2004-03-03  Benjamin Otte  <otte@gnome.org>
10554
10555         * gst/schedulers/gstoptimalscheduler.c:
10556           revert last commit by Andy Wingo. It causes segfaults on unreffing
10557           in Rhythmbox. (see bug #135672)
10558
10559 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10560
10561         * po/fr.po: fix typo
10562
10563 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10564
10565         * tools/gst-inspect.c: (main): 
10566         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10567
10568 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10569
10570         * configure.ac:
10571           get GLIB_ONLY and POPT flags for the nonversioned binaries
10572         * tools/Makefile.am:
10573           use them
10574
10575 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10576
10577         * gst/gst.c: (init_post):
10578           change so that GST_REGISTRY now is where the global registry gets
10579           saved, since that is where plugins now get attached to first, and
10580           spilled over to the user registry.  Note that in the case of using
10581           GST_REGISTRY env var, we don't want to affect any real registries
10582           beyond the one given by this var, and thus we don't set a user
10583           registry to spill to.  So make sure GST_REGISTRY is writable.
10584
10585 2004-03-01  David Schleef  <ds@schleef.org>
10586
10587         * AUTHORS:  Added some names.  Add yourself if you're missing.
10588
10589 2004-03-01  David Schleef  <ds@schleef.org>
10590
10591         * MAINTAINERS: Add
10592
10593 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10594
10595         * configure.ac:
10596           remove whitespace
10597         * docs/gst/tmpl/gstbuffer.sgml:
10598         * docs/gst/tmpl/gstdata.sgml:
10599         * docs/gst/tmpl/gstreamer-unused.sgml:
10600         * docs/gst/tmpl/gstxml.sgml:
10601           doc update
10602         * docs/manuals.mak:
10603           add a FIXME
10604         * docs/pwg/intro-preface.xml:
10605         * docs/pwg/pwg.xml:
10606           remove GNOME
10607         * gst/gst.c: (init_post):
10608           try GST_PLUGIN_PATH paths for the _global_registry first
10609         * gst/gstelement.h:
10610           add the error message as well, otherwise (null) debug info doesn't
10611           make much sense
10612         * tools/gst-register.c: (main):
10613           spill paths to next registry if this registry is not writable
10614         * po/fr.po:
10615         * po/nl.po:
10616           translation updates
10617
10618 2004-03-01  Johan Dahlin  <johan@gnome.org>
10619
10620         * gst/gstbuffer.c (_gst_buffer_initialize): 
10621         * gst/gstdata.c (gst_data_get_type): 
10622         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10623         instead of ref, since some applications that uses GBoxed
10624         routines depends on a function that actually returns a copy.
10625
10626 2004-02-27  Benjamin Otte  <otte@gnome.org>
10627
10628         * gst/gstbuffer.h:
10629           remove gst_buffer_free, use gst_data_unref
10630         * gst/gstdata.c: (gst_data_get_type):
10631           use refcounting in GstData GBoxed registration
10632         * gst/gstdata.h:
10633           remove gst_data_free, use gst_data_unref
10634
10635 2004-02-27  Johan Dahlin  <johan@gnome.org>
10636
10637         * gst/gstdata.c (gst_data_get_type): New function, register
10638         GstData as a GBoxed type.
10639
10640         * gst/gstdata.h (GST_TYPE_DATA): New macro
10641
10642 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10643
10644         * Makefile.am:
10645         * gstreamer.spec.in:
10646           put back RELEASE
10647         * gst/Makefile.am:
10648           clean up non-disting of built files
10649         * testsuite/debug/commandline.c:
10650           test fix for option rename
10651
10652 2004-02-26  David Schleef  <ds@schleef.org>
10653
10654         * configure.ac:  We don't really need glib-2.3.  Also remove
10655         some unneeded checks for library functions.
10656         * gst/Makefile.am:  Instead, we need to not dist files created
10657         by glib-genmarshal.
10658
10659 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10660
10661         * configure.ac:
10662           bump glib required version to 2.3.0 for g_value_takes_boxed
10663
10664  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10665
10666         * common/m4/gst-docs.m4
10667         change flavour text from enable to disable as enable is our default
10668         closes bug Bug 135304
10669
10670 === release 0.7.5 ===
10671  
10672  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10673  
10674         * NEWS:
10675           instate NEWS file
10676         * Makefile.am:
10677         * gstreamer.spec.in:
10678         * RELEASE:
10679           put back release
10680         * configure.ac:
10681         * docs/random/release:
10682           more updates
10683
10684 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10685
10686         * gst/gsttag.c: (_gst_tag_initialize):
10687         * po/fr.po:
10688         * po/nl.po:
10689           remove hyphen from codec tags
10690
10691 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10692
10693         * gst/parse/Makefile.am:
10694           fix dependency so that a make from a clean build works the first
10695           time
10696
10697 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10698
10699         * docs/random/release:
10700           update release strategy
10701         * po/fr.po:
10702           auto-update po file
10703         * po/nl.po:
10704           update dutch translation
10705
10706 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10707
10708         * docs/manual/debugging.xml:
10709         fix manual for new debugging system
10710
10711 2004-02-25  Andy Wingo  <wingo@pobox.com>
10712
10713         * gst/gstpad.c (gst_pad_link_prepare): Re-add
10714         gst_pad_link_prepare. Please email the list with specific reasons
10715         for reverting.
10716
10717 2004-02-24  Andy Wingo  <wingo@pobox.com>
10718
10719         * gst/gstelement.c (gst_element_dispose): Protect against multiple
10720         invocations.
10721
10722         * gst/schedulers/gstoptimalscheduler.c:
10723         I added a mess of prototypes at the top of the file by way of
10724         documentation. Some of the operations on chains and groups were
10725         re-organized.
10726
10727         (create_group): Added a type argument so if the group is enabled,
10728         the setup_group_scheduler knows what to do.
10729         (group_elements): Added a type argument here, too, to be passed on
10730         to create_group.
10731         (group_element_set_enabled): If an unlinked PLAYING element is
10732         added to a bin, we have to create a new group to hold the element,
10733         and this function will be called before the group is added to the
10734         chain. Thus we have a valid case for group->chain==NULL. Instead
10735         of calling chain_group_set_enabled, just set the flag on the group
10736         (the chain's status will be set when the group is added to it).
10737         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
10738         Setup the group scheduler when the group is enabled, not
10739         specifically when an element goes PAUSED->PLAYING. This means
10740         PLAYING elements can be added, linked, and scheduled into a
10741         PLAYING pipeline, as was intended.
10742         (add_to_group): Don't ref the group twice. I don't know when this
10743         double-ref got in here. Removing it has the potential to cause
10744         segfaults if other parts of the scheduler are buggy. If you find
10745         that the scheduler is segfaulting for you, put in an extra ref
10746         here and see if that hacks over the underlying issue. Of course,
10747         then find out what code is unreffing a group it doesn't own...
10748         (create_group): Make the extra refcount floating, and remove it
10749         after adding the element. This means that...
10750         (unref_group): Destroy when the refcount reaches 0, not 1, like
10751         every other refcounted object in the known universe.
10752         (remove_from_group): When a group becomes empty, set it to be not
10753         active, and remove it from its chain. Don't unref it again,
10754         there's no floating reference any more.
10755         (destroy_group): We have to remove the group from the chain in
10756         remove_from_group (rather than here) to break refcounting cycles
10757         (the chain always has a ref on the group). So assert that
10758         group->chain==NULL.
10759         (ref_group_by_count): Removed, it was commented out anyway.
10760         (merge_chains): Use the remove_from_chain and add_to_chain
10761         primitives to do the reparenting, instead of rolling our own
10762         implementation.
10763         (add_to_chain): The first non-disabled group in the chain's group
10764         list will be the entry point for the chain. Because buffers can
10765         accumulate in loop elements' peer bufpens, we preferentially
10766         schedule loop groups before get groups to avoid unnecessary
10767         execution of get-based groups when the bufpens are already full.
10768         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
10769         (get_group_schedule_function): Ditto.
10770         (loop_group_schedule_function): Ditto.
10771         (gst_opt_scheduler_loop_wrapper): Ditto.
10772         (gst_opt_scheduler_iterate): Ditto.
10773
10774         I understand the opt scheduler now, yippee!
10775
10776         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
10777         (gst_pad_get_name, gst_pad_set_chain_function) 
10778         (gst_pad_set_get_function, gst_pad_set_event_function) 
10779         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
10780         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
10781         (gst_pad_set_query_function, gst_pad_get_query_types) 
10782         (gst_pad_get_query_types_default) 
10783         (gst_pad_set_internal_link_function) 
10784         (gst_pad_set_formats_function, gst_pad_set_link_function) 
10785         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
10786         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
10787         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
10788         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
10789         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
10790         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
10791         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
10792         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
10793         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
10794         (gst_pad_event_default_dispatch, gst_pad_event_default) 
10795         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
10796         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
10797         (gst_pad_get_formats_default, gst_pad_get_formats): Better
10798         argument checks, and some doc fixes.
10799
10800         (gst_pad_custom_new_from_template): Um, does anyone
10801         use these functions? Actually make a custom pad instead of a
10802         normal one.
10803         (gst_pad_try_set_caps): Transpose some checks.
10804         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
10805         the pad is in negotiation.
10806         (gst_pad_try_relink_filtered): Use pad_link_prepare.
10807         
10808         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
10809
10810         * gst/gstelement.h: 
10811         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
10812         on the list.
10813
10814 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10815
10816         * gst/gstbin.c: (gst_bin_add):
10817           add error for not being able to add elements
10818
10819 2004-02-22  Julien MOUTTE <julien@moutte.net>
10820
10821         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
10822         audio-codec and video-codec.
10823
10824 2004-02-22  Benjamin Otte  <otte@gnome.org>
10825
10826         reported by: Padraig O'Briain <padraig.obriain@sun.com>
10827
10828         * autogen.sh:
10829           replace test -e with test -x for mkinstalldirs to be more portable.
10830           (fixes #134816)
10831
10832 2004-02-22  Benjamin Otte  <otte@gnome.org>
10833
10834         * gst/gstpad.c:
10835           revert last patch from Andy, it makes gst_pad_can_link_filtered much
10836           too noisy
10837         * gst/gsttag.c: (_gst_tag_initialize):
10838         * gst/gsttag.h:
10839           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
10840         * libs/gst/control/dparam.c: (gst_dparam_attach):
10841         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
10842           check that types for attached dparams match
10843
10844 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10845
10846         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10847         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10848         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10849           fix errors
10850
10851 2004-02-20  Andy Wingo  <wingo@pobox.com>
10852
10853         * gst/gstbin.c:
10854         * gst/gstbuffer.c:
10855         * gst/gstplugin.c:
10856         * gst/registries/gstxmlregistry.c: 
10857         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
10858
10859         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
10860         (gst_element_add_pad): DEBUG->INFO, some fixes.
10861         (gst_element_get_compatible_pad_template): Just see if the
10862         templates' caps intersect, not if one is a strict subset of the
10863         other. This conforms more to what gst_pad_link_intersect() does.
10864         (gst_element_class_add_pad_template): Don't memcpy the pad
10865         template, just ref it.
10866         (gst_element_get_compatible_pad_filtered): Clean up debug messages
10867
10868         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
10869         (gst_pad_link_filtered): Debug changes.
10870         (gst_pad_link_prepare): New function, consolidated from
10871         can_link_filtered and link_filtered.
10872
10873         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
10874         look more like that of the functions in gstelement.c
10875
10876         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
10877         object, and return the empty string if object is NULL.
10878
10879         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
10880         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
10881         LOG, not DEBUG. We still get flex info on debug.
10882
10883         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
10884         debug string more verbose.
10885         (plugin_times_older_than): DEBUG->LOG.
10886
10887 2004-02-20  Julien MOUTTE <julien@moutte.net>
10888
10889         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
10890         will emit found_tag for each stream they demux with the codec.
10891
10892 2004-02-20  Benjamin Otte  <otte@gnome.org>
10893
10894         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
10895           copy navigation event correctly. Check freeing tag lists. 
10896         * gst/gstthread.c: (gst_thread_change_state):
10897           don't abort() on state changing mess - it might happen because of
10898           bugs.
10899         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
10900           use boxed functions
10901         * gst/gstvalue.h:
10902           fix GST_VALUE_HOLDS_CAPS
10903
10904 2004-02-19  David Schleef  <ds@schleef.org>
10905
10906         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
10907         and use it for GST_FUNCTION.  (bug #134750)
10908
10909 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10910
10911         * po/fr.po:
10912         * po/nl.po:
10913           updating translations
10914
10915 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10916
10917         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
10918
10919 2004-02-18  kost@imn.htwk-leipzig.de
10920
10921         reviewed by: David Schleef  <ds@schleef.org>
10922
10923         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
10924         for libgstcontrol.
10925
10926 2004-02-18  David Schleef  <ds@schleef.org>
10927
10928         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10929         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10930         (gst_dpsmooth_new): Additional fixes to get double dparams working.
10931         * tools/gst-inspect.c: (print_element_info): Support dumping of
10932         double dparam information.
10933
10934 2004-02-17  David Schleef  <ds@schleef.org>
10935
10936         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10937         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
10938         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
10939         Use GST_TYPE_CAPS in signal prototype.
10940         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
10941         Convert GST_TYPE_CAPS to boxed.
10942         * gst/gstelement.c: (gst_element_class_init):
10943         Use GST_TYPE_TAG_LIST in signal prototype.
10944         * gst/gstindex.c: (gst_index_class_init):
10945         * gst/gstindex.h:
10946         Add GST_TYPE_INDEX_ENTRY type.
10947         * gst/gstmarshal.list:
10948         Add necessary marshal types.
10949         * gst/gstpad.c: (gst_real_pad_class_init),
10950         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
10951         (gst_pad_recover_caps_error):
10952         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
10953         * gst/gststructure.c: (_gst_structure_initialize),
10954         (gst_structure_copy), (_gst_structure_copy_conditional):
10955         * gst/gststructure.h:
10956         Convert GST_TYPE_STRUCTURE to boxed.
10957         * gst/gsttag.c: (gst_tag_list_get_type):
10958         * gst/gsttag.h:
10959         Add GST_TYPE_TAG_LIST type.
10960
10961 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10962
10963         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
10964         to what we agreed with david.
10965         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
10966
10967 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10968
10969         * po/nl.po: update translation
10970
10971 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10972
10973         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10974           throw an error if spider is trying to play a mime type there is
10975           no decoder for
10976         * po/POTFILES.in:
10977           add gst/autoplug/gstspider.c for translation
10978
10979 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10980
10981         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
10982         silently when the pad is negotiating.
10983
10984 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10985
10986         * docs/faq/Makefile.am:
10987           add script to run gstreamer uninstalled 
10988         * docs/faq/faq.xml:
10989         * docs/faq/developing.xml:
10990         * docs/faq/gst-uninstalled:
10991           extract script to run gstreamer uninstalled
10992         * docs/manuals.mak:
10993           add EXTRA_SOURCES variable for Makefile.am's to set to
10994           use additional SOURCE files for the doc build
10995
10996 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10997
10998         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
10999
11000 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11001
11002         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11003         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11004         an error was thrown by osssink. Basically a state change failure for
11005         an element in a different scheduling group was considered as
11006         successful, which means that caps nego was going on and weird stuff
11007         happened. Like I wrote in the comment there, if someone wants to
11008         revert that please drop me a mail explaining why because I really see
11009         no point in keeping that broken behaviour there.
11010         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11011         be empty, we then return NULL which will trigger a nice error when 
11012         pulling from the pad.
11013
11014 2004-02-13  David Schleef  <ds@schleef.org>
11015
11016         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11017         (gst_dparam_get_property), (gst_dparam_set_property),
11018         (gst_dparam_do_update_default):
11019         * libs/gst/control/dparam.h:
11020         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11021         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11022         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11023         (gst_dpsmooth_do_update_double):
11024         * libs/gst/control/dparam_smooth.h:
11025         * libs/gst/control/dparammanager.c:
11026         (gst_dpman_inline_direct_update):
11027         Add support for double dparams.
11028
11029 2004-02-13  David Schleef  <ds@schleef.org>
11030
11031         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11032         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11033
11034 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11035
11036         reviewed by: David Schleef  <ds@schleef.org>
11037
11038         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11039         (gst_fdsrc_init), (gst_fdsrc_set_property),
11040         (gst_fdsrc_get_property), (gst_fdsrc_get):
11041         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11042         and sends an EOS event if file descriptor reading times out.
11043
11044 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11045
11046         * configure.ac:
11047           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11048
11049 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11050
11051         * configure.ac: pass required libxml version as argument
11052         (bug reported by Christophe Fergeau)
11053
11054 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11055   
11056         * docs/gst/gstreamer-docs.sgml:
11057         * docs/gst/tmpl/gstxml.sgml:
11058         * docs/libs/gstreamer-libs-docs.sgml:
11059           version API docs
11060
11061 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11062
11063         * gst/gstinfo.c:
11064         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11065         (gst_registry_pool_feature_filter):
11066         * gst/gstthread.c: (gst_thread_class_init):
11067         * gst/gstvalue.c:
11068           add includes exposed by building without libxml
11069         * gst/indexers/Makefile.am:
11070           do not build fileindex when LOADSAVE disabled; we should have
11071           a better libxml check later since fileindex depends on xml, not
11072           LOADSAVE or REGISTRY
11073         * libs/gst/control/Makefile.am:
11074           link with m
11075         * tools/Makefile.am:
11076           fix wrong source code for gst-xmlinspect
11077
11078 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11079
11080         * configure.ac:
11081           fix gcov help output
11082           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11083         * docs/random/release:
11084           some updated releasing notes
11085         * gstreamer.spec.in:
11086           more updates
11087
11088 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11089
11090         * docs/faq/faq.xml:
11091         * docs/manual/manual.xml:
11092         * docs/pwg/pwg.xml:
11093         * docs/pwg/titlepage.xml:
11094           put version in documentation
11095
11096 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11097
11098         * tools/Makefile.am: fix man page installation
11099
11100 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11101
11102         * configure.ac:
11103           don't check for libxml when load/save and registry disabled (#105844)
11104         * gstreamer.spec.in:
11105           sync with fedora candidate spec
11106
11107 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11108
11109         * po/fr.po:
11110         * po/nl.po:
11111           replace multidisksrc with multifilesrc
11112
11113 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11114
11115         * po/POTFILES.in:
11116           update to multidisksrc => multifilesrc file renaming (#134145)
11117
11118 2004-02-11  David Schleef  <ds@schleef.org>
11119
11120         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11121         * docs/gst/tmpl/gstpadtemplate.sgml: same
11122         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11123         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11124         fixing dance.
11125         * gst/gstutils.c: Remove disabled code that uses GstProps.
11126         * gst/registries/gstxmlregistry.h: same
11127         * docs/random/ds/0.9-suggested-changes: random notes
11128
11129 2004-02-11  kost@imn.htwk-leipzig.de
11130
11131         reviewed by: David Schleef  <ds@schleef.org>
11132
11133         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11134         initialisation of clock (bug #134128)
11135
11136 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11137
11138         * configure.ac:
11139         * gst/elements/Makefile.am:
11140         * gst/elements/gstelements.c:
11141         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11142         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11143         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11144         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11145         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11146         * gst/elements/gstmultifilesrc.h:
11147           rename multidisksrc to multifilesrc (part of #122200)
11148
11149 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11150
11151         * docs/manuals.mak:
11152           fix automake complaints
11153         * gst-element-check.m4:
11154           fix unquotedness
11155
11156 2004-02-11  David Schleef  <ds@schleef.org>
11157
11158         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11159         * gst/gstatomic_impl.h: Disable sparc implementation.
11160
11161 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11162
11163         * gst-element-check.m4:
11164           fix underquoted macros as reported by automake 1.8.x (#133800)
11165         * configure.ac:
11166           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11167           by autopoint (fixes #132996)
11168
11169 2004-02-10  Andy Wingo  <wingo@pobox.com>
11170
11171         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11172         way to do inheritance.
11173         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11174         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11175         Routine docs.
11176         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11177         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11178         doc.
11179         (gst_pad_unlink, gst_pad_is_linked): Docs.
11180         (gst_pad_renegotiate): A brief description of capsnego.
11181         (gst_pad_try_set_caps): Document.
11182         (gst_pad_try_set_caps_nonfixed): Document.
11183         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11184         (gst_pad_set_parent): Deprecated (although not out of the API).
11185         (gst_pad_get_parent): Deprecated, although many plugins use this.
11186         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11187         are private and will go away in 0.9.
11188         (gst_pad_perform_negotiate): Doc.
11189         (gst_pad_link_unnegotiate): I think this is meant to be static.
11190         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11191         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11192         (gst_pad_get_peer): Doc updates.
11193         (gst_pad_caps_change_notify): Doc.
11194         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11195         (gst_ghost_pad_new): Doc fixes.
11196
11197         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11198         (gst_object_check_uniqueness): 
11199
11200         * gst/gstelement.c (gst_element_add_pad) 
11201         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11202         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11203         (gst_element_get_static_pad, gst_element_get_pad_list) 
11204         (gst_element_class_get_pad_template_list) 
11205         (gst_element_class_get_pad_template): Work on the docs.
11206         (gst_element_get_pad_template_list): Uses the class method.
11207         (gst_element_get_compatible_pad_template): Docs, and consolidate
11208         some test conditions. 
11209         (gst_element_get_pad_from_template): New static function.
11210         (gst_element_request_compatible_pad): Docs, and work with
11211         non-request compatible templates. 
11212         (gst_element_get_compatible_pad_filtered): Docs and remove
11213         redundant checks.
11214         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11215         (gst_element_link_filtered, gst_element_link_many) 
11216         (gst_element_link, gst_element_link_pads) 
11217         (gst_element_unlink_many): Docs.
11218
11219 2004-02-05  Andy Wingo  <wingo@pobox.com>
11220
11221         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11222         s/pointer/boxed/.
11223
11224         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11225
11226         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11227         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11228         with the type=GST_TYPE_CAPS. This allows language bindings to know
11229         what kind of data they're dealing with.
11230
11231         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11232         to NULL when g_value_init is called. GstCaps, which rolls its own
11233         type implementation, now does the same instead of allocating empty
11234         caps.
11235         (_gst_caps_initialize, _gst_caps_collect_value,
11236         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11237         table methods. This allows G_VALUE_COLLECT to work.
11238
11239 2004-02-05  Andy Wingo  <wingo@pobox.com>
11240
11241         * configure.ac:
11242         * testsuite/Makefile.am (SUBDIRS): 
11243         * testsuite/ghostpads/Makefile.am: 
11244         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11245
11246         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11247         These two routines are the only ones that set
11248         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11249         pad template. They should be made static, depending on ABI needs.
11250         (gst_real_pad_dispose): Handle the case of ghost pads without a
11251         parent. Assert after dealing with ghost pads that the ghost pad
11252         list is empty.
11253         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11254         set after creation.
11255         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11256         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11257         functions. set_property will call add_ghost_pad/remove_ghost_pad
11258         as appropriate.
11259         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11260
11261         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11262         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11263         (gst_element_remove_pad): Handle ghost pads as well.
11264         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11265         depending on API-stability needs).
11266
11267 2004-02-05  Andy Wingo  <wingo@pobox.com>
11268
11269         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11270         of course they're const
11271
11272 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11273
11274         * tools/Makefile.am:
11275         * tools/gst-feedback:
11276         * tools/gst-feedback-0.7:
11277           make gst-feedback versioned too for consistency
11278
11279 2004-02-11  David Schleef  <ds@schleef.org>
11280
11281         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11282         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11283
11284 2004-02-10  Julien MOUTTE <julien@moutte.net>
11285
11286         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11287         the structure does not contain a valid tag list. Adding a safety check
11288         to remove a noisy warning in that case.
11289
11290 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11291
11292         * gst/gst.c: fix name to be in line with others
11293
11294 2004-02-09  Julien MOUTTE <julien@moutte.net>
11295
11296         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11297         not shout that loud when len is 0. Just return 0 silently.
11298
11299 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11300
11301         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11302         because data_unref has one and I prefer the debug to be symetric.
11303         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11304         were refed when added to the queue and unrefed only once when the queue
11305         was flushed. Now the flush handler unref the buffers two times : first
11306         unref for the ref added when pushing in the queue's tail and second
11307         unref to destroy the flushed buffer.
11308
11309 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11310
11311         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11312
11313 2004-02-06  David Schleef  <ds@schleef.org>
11314
11315         * docs/random/ds/0.9-suggested-changes: Random ramblings
11316         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11317         to int before printing.
11318         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11319         * gst/parse/parse.l: same.  See bug #129600
11320
11321 2004-02-06  David Schleef  <ds@schleef.org>
11322
11323         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11324         (gst_index_add_entry), (gst_index_add_associationv),
11325         (gst_index_add_association): Add gst_index_add_associationv()
11326         and clean up gst_index_add_association(). #127133
11327
11328 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11329
11330         * autogen.sh: check out common with right tag if CVS/Tag exists
11331
11332 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11333
11334         * testsuite/ghostpads/ghostpads.c: (main):
11335           fix testsuite from segfaulting
11336
11337 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11338
11339         * Makefile.am: add release target
11340         * configure.ac: bump nano to 1
11341         * docs/random/release:
11342
11343 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11344
11345         * gst/gstcaps.h:
11346         * gst/gstelement.c: (gst_element_base_class_init),
11347         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11348         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11349         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11350         (gst_real_pad_dispose):
11351         * gst/gststructure.c: (gst_structure_free),
11352         (gst_structure_from_string):
11353           put reverted patch back in
11354         * gst/gstelement.c: (gst_element_remove_pad):
11355           free explicit caps if they're set
11356         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11357           copy the structure when fixating
11358
11359 2004-02-05  David Schleef  <ds@schleef.org>
11360
11361         * gst/gstmarshal.list:
11362         * gst/gstpad.c: (gst_real_pad_class_init),
11363         (_gst_real_pad_fixate_accumulator):
11364         Revert POINTER->BOXED change in signal marshaller.
11365
11366 === release 0.7.4 ===
11367                                                                                 
11368 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11369                                                                                 
11370         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11371         * configure.ac: changed for release
11372
11373 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11374
11375         * gstreamer.spec.in:
11376           bump required version of gtk-doc
11377
11378 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11379
11380         * gst/gstcaps.h:
11381         * gst/gstelement.c: (gst_element_base_class_init),
11382         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11383         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11384         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11385         (gst_real_pad_dispose):
11386         * gst/gststructure.c: (gst_structure_free),
11387         (gst_structure_from_string):
11388           revert patch that breaks applications, reapply after release
11389           to get this fixed properly
11390
11391 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11392
11393         * gst/gsttag.c: (_gst_tag_initialize):
11394         * gst/gsttag.h:
11395           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11396
11397 2004-02-04  David Schleef  <ds@schleef.org>
11398
11399         Fix some memleaks:
11400         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11401         (gst_spider_plug_from_srcpad):
11402         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11403
11404 2004-02-04  David Schleef  <ds@schleef.org>
11405
11406         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11407         a GstRealPad before accessing its structure members.
11408
11409 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11410
11411         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11412         (gst_clock_get_speed):
11413         * gst/gstclock.h:
11414           reset padding, remove unused fields
11415
11416 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11417
11418         * gst/autoplug/gstspideridentity.c:
11419         (gst_spider_identity_sink_loop_type_finding):
11420           use get_allowed_caps, not get_caps (fixes #132519)
11421         * gst/elements/gsttypefind.c: (stop_typefinding):
11422           use correct order when sending buffers and seeking
11423
11424 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11425
11426         * configure.ac:
11427         * gst/gstelement.h:
11428         * gst/gstpad.h:
11429         * gst/gstqueue.h:
11430           upgrade libtool CURRENT, reset padding
11431
11432 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11433
11434         * configure.ac:
11435           bump to prerelease
11436           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11437
11438 2004-02-04  David Schleef  <ds@schleef.org>
11439
11440         * docs/random/ds/0.9-suggested-changes: random notes
11441         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11442         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11443         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11444         expansion.
11445         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11446         (gst_filesink_get_query_types): same
11447         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11448         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11449         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11450         to use new GST_PTR_FORMAT.
11451         * gst/gstelement.h: deprecate function factory macros
11452         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11453         These are our last variadic macros that can't be replaced with
11454         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11455         attempting to deprecate gst_element_clock_wait().
11456         * gst/gstevent.h: same
11457         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11458         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11459         * gst/gstpad.h: deprecate function factory macros similar to above.
11460
11461 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11462
11463         * configure.ac:
11464         * tools/Makefile.am:
11465         * tools/gst-run.c: (popt_callback), (hash_print_key),
11466         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11467         (get_candidates), (main):
11468           add new source file to generate non-versioned wrapper binaries
11469           for our tools.
11470
11471 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11472
11473         * gst/gstevent.c: (_gst_event_free):
11474           actually break; inside the switch statement
11475         * gst/parse/grammar.y:
11476           fix memleak where GValues weren't unset
11477
11478 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11479
11480         * gst/gststructure.c: (gst_structure_from_string):
11481           fix huge memleak
11482         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11483         (new_entry), (gst_type_find_element_chain):
11484         * gst/gstelement.c: (gst_element_base_class_init),
11485         (gst_element_class_set_details):
11486         * gst/gstpad.c: (gst_pad_can_link_filtered):
11487           fix smaller memleaks
11488         * gst/gstpad.c: (gst_real_pad_dispose):
11489           check that explicit caps are gone
11490         * gst/gststructure.c: (gst_structure_free):
11491           actually free the structure
11492         * gst/gstelement.c: (gst_element_clear_pad_caps):
11493           unset explicit caps
11494
11495 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11496
11497         * tools/Makefile.am:
11498           use AM_CFLAGS since all the CFLAGS are the same
11499           use AM_LDFAGS
11500
11501 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11502
11503         * docs/manual/gnome.xml:
11504           expand example a little
11505         * gst/gst.c: (gst_init_with_popt_table),
11506         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11507           make sure popt option displays are done with right textdomain
11508           use GstPoptOption type
11509         * gst/gst.h:
11510           create GstPoptOption type
11511
11512 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11513
11514         * gst/gsterror.c: (_gst_stream_errors_init):
11515         * gst/gsterror.h:
11516           adding error type for no codec
11517         * po/POTFILES.in:
11518           add gst-inspect
11519         * po/nl.po:
11520           update dutch translation
11521         * tools/gst-inspect.c: (print_element_list), (main):
11522           do proper internationalization
11523         * tools/gst-launch.c: (idle_func):
11524           remove commented out function call
11525
11526 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11527
11528         * docs/README:
11529           add some error fixing notes
11530         * docs/gst/gstreamer-sections.txt:
11531           remove double entries
11532         * docs/gst/tmpl/gstbin.sgml:
11533         * docs/gst/tmpl/gstclock.sgml:
11534           remove override
11535         * docs/gst/tmpl/gstelement.sgml:
11536         * docs/gst/tmpl/gstindex.sgml:
11537         * docs/gst/tmpl/gstobject.sgml:
11538         * docs/gst/tmpl/gstpadtemplate.sgml:
11539         * docs/gst/tmpl/gstreamer-unused.sgml:
11540         * docs/gst/tmpl/gsttag.sgml:
11541         * docs/gst/tmpl/gstthread.sgml:
11542         * docs/gst/tmpl/gstxml.sgml:
11543         * gst/gsttag.h:
11544           sync header prototypes with c decls
11545         * gst/gsttaginterface.c:
11546           fix doc headers
11547
11548 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11549
11550         * gst/parse/Makefile.am:
11551         * gst/gstobject.h:
11552           get rid of gstmarshal.h dependency. It's not needed.
11553         * gst/gst.h:
11554         * gst/elements/gstfakesink.c:
11555         * gst/elements/gstfakesrc.c:
11556         * gst/elements/gstidentity.c:
11557         * gst/gstbin.c:
11558         * gst/gstelement.c:
11559         * gst/gstindex.c:
11560         * gst/gstobject.c:
11561         * gst/gstpad.c:
11562         * gst/gstthread.c:
11563         * gst/gstxml.c:
11564         * libs/gst/control/dparam.c:
11565         * libs/gst/control/dparammanager.c:
11566           include gstmarshal.h.
11567         Fixes #132045
11568
11569 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11570
11571         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11572         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11573         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11574         * gst/elements/gstfilesrc.h:
11575           don't ref the filesrc when creating mmaped buffers. Don't keep a
11576           list of not-yet-destroyed buffers.
11577         * gst/gstbuffer.h:
11578           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11579
11580 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11581
11582         * gst/gst.c: (init_pre):
11583           remove textdomain
11584
11585 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11586
11587         * docs/pwg/advanced-events.xml:
11588         * docs/pwg/advanced-scheduling.xml:
11589         * docs/pwg/intro-basics.xml:
11590         * docs/pwg/other-manager.xml:
11591         * docs/pwg/other-nton.xml:
11592         * docs/pwg/other-ntoone.xml:
11593         * docs/pwg/other-oneton.xml:
11594         * docs/pwg/pwg.xml:
11595           All sort of documentation... Forgot what. Point is that I want this
11596           in before I leave. The 'other-*' will be the last section and will
11597           explain issues specific to these type of elements.
11598
11599 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11600
11601         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11602         (gst_filesrc_get_read):
11603           set all the values on buffers that we can
11604
11605 2004-02-02  David Schleef  <ds@schleef.org>
11606
11607         Change usage of isblah() to g_ascii_isblah() to be more locale
11608         independent.  (#133076)
11609         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11610         * gst/gstutils.c:
11611         * gst/parse/parse.l:
11612
11613 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11614
11615         reviewed by: David Schleef  <ds@schleef.org>
11616
11617         Fix memory leaks:
11618         * gst/gstcaps.c: (gst_caps_to_string):
11619         * gst/registries/gstxmlregistry.c:
11620         (gst_xml_registry_add_path_list_func),
11621         (gst_xml_registry_parse_padtemplate):
11622
11623 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11624
11625         * gst/gstelement.c: (gst_element_default_error):
11626           suffix error messages with period
11627
11628 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11629
11630         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11631         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11632         * gst/gsterror.c: (gst_error_get_message):
11633           Suffix with dots
11634         * po/fr.po:
11635         * po/nl.po:
11636           Update translation files
11637
11638 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11639
11640         * gst/autoplug/gstspideridentity.c:
11641         (gst_spider_identity_sink_loop_type_finding):
11642         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11643         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11644         (gst_filesink_close_file), (gst_filesink_handle_event),
11645         (gst_filesink_chain):
11646         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11647         (gst_filesrc_get_read), (gst_filesrc_open_file):
11648         * gst/elements/gstidentity.c: (gst_identity_chain):
11649         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11650         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11651         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11652         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11653         * gst/gsterror.c: (_gst_core_errors_init),
11654         (_gst_library_errors_init), (_gst_resource_errors_init),
11655         (_gst_stream_errors_init), (gst_error_get_message):
11656         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11657         (gst_pad_recover_caps_error), (gst_pad_pull):
11658         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11659         * gst/schedulers/gstbasicscheduler.c:
11660         (gst_basic_scheduler_chainhandler_proxy),
11661         (gst_basic_scheduler_gethandler_proxy),
11662         (gst_basic_scheduler_cothreaded_chain):
11663           Suffix error messages with period.
11664           Use (NULL) instead of NULL
11665
11666 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11667
11668         * docs/gst/tmpl/gstelement.sgml:
11669         * docs/gst/tmpl/gstxml.sgml:
11670         * gst/gstelement.c: (gst_element_error_full):
11671           add element path to error
11672
11673 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11674
11675         * docs/random/mimetypes:
11676           update raw int/float info
11677         * gst/gsttag.c: (_gst_tag_initialize):
11678         * gst/gsttag.h:
11679           add GST_TAG_ENCODER
11680
11681 2004-01-30  David Schleef  <ds@schleef.org>
11682
11683         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11684           missing (#132991)
11685
11686 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11687
11688         reviewed by Benjamin Otte 
11689           parts of the patch submitted in bug #113913
11690
11691         * configure.ac:
11692           use AC_C_INLINE. Use = instead of == with test
11693         * examples/plugins/example.c:
11694         * gst/autoplug/gstspideridentity.c:
11695         * gst/elements/gstfdsrc.c:
11696         * gst/elements/gstfilesrc.c:
11697         * gst/elements/gstidentity.c:
11698         * gst/elements/gstmultidisksrc.c:
11699         * gst/elements/gststatistics.c:
11700         * gst/gstelement.c:
11701         * gst/gstobject.c:
11702         * gst/gstpad.c:
11703         * gst/gstpipeline.c:
11704         * gst/gstthread.c:
11705           don't end enums with a comma
11706         * gst/gstindex.c: (gst_index_compare_func):
11707           do explicit casting to gint
11708         * gst/gsttrace.c: (gst_trace_text_flush):
11709           #define strsize as a macro
11710
11711 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11712
11713         * docs/README:
11714         * docs/gst/gstreamer-docs.sgml:
11715         * docs/gst/gstreamer-sections.txt:
11716         * docs/gst/tmpl/gstelement.sgml:
11717         * docs/gst/tmpl/gsterror.sgml:
11718         * docs/gst/tmpl/gstinterface.sgml:
11719         * docs/gst/tmpl/gstreamer-unused.sgml:
11720         * docs/gst/tmpl/gststructure.sgml:
11721         * docs/gst/tmpl/gsttag.sgml:
11722         * docs/gst/tmpl/gsttaginterface.sgml:
11723         * docs/gst/tmpl/gstvalue.sgml:
11724         make sure all API ends up in the built docs
11725         * gst/gstinterface.c:
11726         * gst/gststructure.c: (gst_structure_id_set_value),
11727         (gst_structure_set_value), (gst_structure_id_get_value):
11728         * gst/gststructure.h:
11729         * gst/gstvalue.h:
11730         sync .h with .c declarations
11731
11732 2004-01-30  Julien Moutte  <julien@moutte.net>
11733
11734         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
11735         Ronald will fix riffread.
11736
11737 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11738
11739         * docs/pwg/advanced-interfaces.xml:
11740           Added tuner interface docs.
11741
11742 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11743
11744         * docs/random/mimetypes:
11745           correct Theora information
11746         * gst/gstelement.h:
11747           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
11748
11749 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11750
11751         * gst/gstelement.c: (gst_element_error_full):
11752         * gst/gstelement.h:
11753           GST_ELEMENT_ERROR in enum -> _IN_ERROR
11754
11755 2004-01-29  Julien MOUTTE  <julien@moutte.net>
11756
11757         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11758         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
11759         again and even before DISCONT.
11760         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
11761         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
11762         bytestream so that it's not stopping to fill the bytestream if events
11763         different than EOS or DISCONT are received. Instead it process them so
11764         that they go downstream.
11765
11766 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11767
11768         * docs/gst/tmpl/gstelement.sgml:
11769         * docs/gst/tmpl/gstreamer-unused.sgml:
11770         * docs/gst/tmpl/gstxml.sgml:
11771         * gst/autoplug/gstspideridentity.c:
11772         (gst_spider_identity_sink_loop_type_finding):
11773         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11774         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11775         (gst_filesink_close_file), (gst_filesink_handle_event),
11776         (gst_filesink_chain):
11777         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11778         (gst_filesrc_get_read), (gst_filesrc_open_file):
11779         * gst/elements/gstidentity.c: (gst_identity_chain):
11780         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11781         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11782         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11783         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11784         * gst/gstelement.h:
11785         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11786         (gst_pad_recover_caps_error), (gst_pad_pull):
11787         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11788         * gst/schedulers/gstbasicscheduler.c:
11789         (gst_basic_scheduler_chainhandler_proxy),
11790         (gst_basic_scheduler_gethandler_proxy),
11791         (gst_basic_scheduler_cothreaded_chain):
11792           gst_element_error -> GST_ELEMENT_ERROR
11793
11794 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11795
11796         * docs/Makefile.am:
11797         * docs/gst/tmpl/gstelement.sgml:
11798         * docs/gst/tmpl/gstxml.sgml:
11799         * docs/manuals.mak:
11800         * docs/pwg/advanced-request.xml:
11801         * docs/pwg/advanced-scheduling.xml:
11802         * docs/pwg/advanced-tagging.xml:
11803           fix non-validating docbook using CDATA
11804           make sure make check-local gets run first to check if it validates
11805
11806 2004-01-29  Julien MOUTTE <julien@moutte.net>
11807
11808         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
11809         handling (up and downstream).
11810         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
11811         my_filter thing.
11812
11813 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11814
11815         * docs/pwg/advanced-tagging.xml:
11816           Add docs about tag writing.
11817
11818 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11819
11820         * docs/pwg/advanced-tagging.xml:
11821           Add a part about tag reading and application signalling... Tag
11822           writing still needs to be documented.
11823         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11824           We can set file locations in READY, too.
11825
11826 2004-01-29  Julien MOUTTE <julien@moutte.net>
11827
11828         * docs/random/ds/element-checklist: Adding some notes about src
11829         events.
11830
11831 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11832
11833         * docs/random/mimetypes:
11834           Update docs to point to correct elements for various mimetypes, and
11835           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
11836           <stephane.loeuillet@tiscali.fr>.
11837
11838 2004-01-28  David Schleef  <ds@schleef.org>
11839
11840         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
11841
11842 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11843
11844         * docs/random/mimetypes:
11845           update docs for audio/x-raw-float. Add "buffer-frames=0 means
11846           undefined"
11847         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11848           make it only work in NULL.
11849         * gst/gstcaps.c:
11850           don't posion NULL caps
11851         * gst/gstelement.c: (gst_element_set_time):
11852           add debugging statement
11853         * gst/gstelement.c: (gst_element_emit_found_tag),
11854         (gst_element_found_tag_func), (gst_element_found_tags):
11855         * gst/gstelement.h:
11856           These functions take const taglists
11857         * gst/gstpad.c: (gst_pad_proxy_getcaps):
11858           fix memleak
11859         * gst/gstpad.c: (gst_pad_event_default):
11860           make more effort on handling discont and clocks, g_warn if everything
11861           fails
11862         * gst/gststructure.c: (gst_structure_remove_fields),
11863         (gst_structure_remove_fields_valist):
11864         * gst/gststructure.h:
11865           add gst_structure_remove_fields(_valist)
11866         * gst/gsttag.c:
11867           fix doc glitch
11868
11869 2004-01-28  David Schleef  <ds@schleef.org>
11870
11871         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
11872         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
11873         Fix memory leakage of gst_caps_to_string().
11874
11875         Use GST_PTR_FORMAT instead of gst_caps_to_string():
11876         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
11877         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
11878         (gst_spider_identity_sink_loop_type_finding):
11879         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11880         (find_suggest):
11881         * gst/gstpad.c: (gst_pad_try_relink_filtered),
11882         (gst_pad_set_explicit_caps):
11883         * gst/parse/grammar.y:
11884
11885 2004-01-28  David Schleef  <ds@schleef.org>
11886
11887         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
11888         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
11889         * docs/random/ds/0.9-suggested-changes: Notes from Company.
11890         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
11891         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
11892         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
11893         (gst_debug_log_default), (_gst_info_printf_extension),
11894         (_gst_info_printf_extension_arginfo):  Add printf extension.
11895         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
11896         * gst/gststructure.c: (gst_structure_to_string),
11897         (_gst_structure_parse_value): Use gst_value_deserialize() and
11898         remove old code.
11899         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
11900         (gst_value_deserialize_boolean), (gst_strtoi),
11901         (gst_value_deserialize_int), (gst_value_deserialize_double),
11902         (gst_value_deserialize_string), (gst_value_deserialize): Implement
11903         a bunch of deserialize functions and gst_value_deserialize.
11904         * gst/gstvalue.h: er, _de_serialize, not unserialize
11905         * testsuite/caps/string-conversions.c: (main): We don't currently
11906         handle (float) in caps, so convert these to (double).
11907         * testsuite/debug/Makefile.am: Add new test for the printf extension
11908         * testsuite/debug/printf_extension.c: (main): same
11909
11910 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11911
11912         * docs/random/company/time:
11913           Add some docs about clocking and time
11914
11915 2004-01-28  Julien MOUTTE <julien@moutte.net>
11916
11917         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
11918
11919 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11920
11921         * docs/pwg/advanced-clock.xml:
11922         * docs/pwg/advanced-dparams.xml:
11923         * docs/pwg/advanced-events.xml:
11924         * docs/pwg/advanced-interfaces.xml:
11925         * docs/pwg/advanced-midi.xml:
11926         * docs/pwg/advanced-request.xml:
11927         * docs/pwg/advanced-scheduling.xml:
11928         * docs/pwg/advanced-tagging.xml:
11929         * docs/pwg/advanced-types.xml:
11930         * docs/pwg/appendix-checklist.xml:
11931         * docs/pwg/building-boiler.xml:
11932         * docs/pwg/building-chainfn.xml:
11933         * docs/pwg/building-filterfactory.xml:
11934         * docs/pwg/building-pads.xml:
11935         * docs/pwg/building-props.xml:
11936         * docs/pwg/building-signals.xml:
11937         * docs/pwg/building-state.xml:
11938         * docs/pwg/building-testapp.xml:
11939         * docs/pwg/intro-basics.xml:
11940         * docs/pwg/intro-preface.xml:
11941         * docs/pwg/other-autoplugger.xml:
11942         * docs/pwg/other-sink.xml:
11943         * docs/pwg/other-source.xml:
11944         * docs/pwg/titlepage.xml:
11945           fix up id's
11946
11947 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11948
11949         * docs/95NonPath:
11950         * docs/HACKING:
11951         * docs/README:
11952         * docs/building-the-docs-on-debian:
11953           collect relevant bits of doc info
11954
11955 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11956
11957         * docs/pwg/advanced_tagging.xml:
11958           Half-assed commit so Thomas can re-arrange document IDs here to be
11959           consistent, too.
11960
11961 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11962
11963         * docs/manual/autoplugging.xml:
11964         * docs/manual/bins-api.xml:
11965         * docs/manual/bins.xml:
11966         * docs/manual/buffers-api.xml:
11967         * docs/manual/buffers.xml:
11968         * docs/manual/clocks.xml:
11969         * docs/manual/components.xml:
11970         * docs/manual/cothreads.xml:
11971         * docs/manual/debugging.xml:
11972         * docs/manual/dparams-app.xml:
11973         * docs/manual/dynamic.xml:
11974         * docs/manual/elements-api.xml:
11975         * docs/manual/elements.xml:
11976         * docs/manual/factories.xml:
11977         * docs/manual/gnome.xml:
11978         * docs/manual/goals.xml:
11979         * docs/manual/helloworld.xml:
11980         * docs/manual/helloworld2.xml:
11981         * docs/manual/init-api.xml:
11982         * docs/manual/intro.xml:
11983         * docs/manual/links-api.xml:
11984         * docs/manual/links.xml:
11985         * docs/manual/manual.xml:
11986         * docs/manual/motivation.xml:
11987         * docs/manual/pads-api.xml:
11988         * docs/manual/pads.xml:
11989         * docs/manual/plugins-api.xml:
11990         * docs/manual/plugins.xml:
11991         * docs/manual/programs.xml:
11992         * docs/manual/queues.xml:
11993         * docs/manual/quotes.xml:
11994         * docs/manual/schedulers.xml:
11995         * docs/manual/states-api.xml:
11996         * docs/manual/states.xml:
11997         * docs/manual/threads.xml:
11998         * docs/manual/typedetection.xml:
11999         * docs/manual/xml.xml:
12000           use chapter, part, section or misc as id starts for all bits
12001
12002 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12003
12004         * docs/gst/gstreamer-sections.txt:
12005           Fix up TITLE of the sections
12006
12007 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12008
12009         * docs/pwg/advanced_interfaces.xml:
12010           Add documentation on propertyprobing.
12011         * docs/pwg/advanced_events.xml:
12012         * docs/pwg/advanced_tagging.xml:
12013         * docs/pwg/building_boiler.xml:
12014         * docs/pwg/building_filterfactory.xml:
12015         * docs/pwg/pwg.xml:
12016           Move filterfactory and tagging into their own chapter, add a chapter
12017           on events. all these are empty placeholders that will be filled in
12018           some day.
12019
12020 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12021
12022         * docs/pwg/advanced_interfaces.xml:
12023           Docs for mixer interface. Also a check for website uploading.
12024
12025 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12026
12027         * docs/HACKING:
12028         * docs/Makefile.am:
12029         * docs/faq/Makefile.am:
12030         * docs/gst/Makefile.am:
12031         * docs/gst/tmpl/gstelement.sgml:
12032         * docs/gst/tmpl/gstplugin.sgml:
12033         * docs/gst/tmpl/gstreamer-unused.sgml:
12034         * docs/libs/Makefile.am:
12035         * docs/manual/Makefile.am:
12036         * docs/manuals.mak:
12037         * docs/pwg/Makefile.am:
12038         * docs/upload.mak:
12039           Separate out upload target and make it similar for
12040           both docbook and gtk-doc docs
12041
12042 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12043
12044         * docs/manuals.mak:
12045           Fix upload target to work with freedesktop
12046
12047 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12048
12049         * docs/pwg/advanced_types.xml:
12050           Add notes on creating your own types.
12051         * docs/pwg/building_boiler.xml:
12052         * docs/pwg/building_pads.xml:
12053         * docs/pwg/building_state.xml:
12054           Add some stuff about how to retrieve values from structures, how
12055           that relates to types and change layout slightly again to be almost
12056           perfect.
12057
12058 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12059
12060         * docs/pwg/advanced_dparams.xml:
12061         * docs/pwg/advanced_scheduling.xml:
12062           Change index layout slightly.
12063
12064 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12065
12066         * docs/pwg/advanced_clock.xml:
12067         * docs/pwg/advanced_interfaces.xml:
12068         * docs/pwg/advanced_midi.xml:
12069           General placeholders for now.
12070         * docs/pwg/advanced_request.xml:
12071           Explanation about sometimes and request pads.
12072         * docs/pwg/advanced_scheduling.xml:
12073           Concept of bytestream, loopfunctions and schedulers.
12074         * docs/pwg/building_boiler.xml:
12075           Add something about plugin-init.
12076
12077 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12078
12079         * docs/pwg/building_pads.xml:
12080           Fix broken docbook
12081
12082 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12083
12084         * docs/pwg/advanced_interfaces.xml:
12085         * docs/pwg/pwg.xml:
12086           Add as a placeholder for future filling-in.
12087         * docs/pwg/basics_autoplugging.xml:
12088         * docs/pwg/basics_buffers.xml:
12089         * docs/pwg/basics_elements.xml:
12090         * docs/pwg/basics_events.xml:
12091         * docs/pwg/basics_plugins.xml:
12092         * docs/pwg/basics_types.xml:
12093           Remove, because unused (this is all in intro_basics.xml).
12094         * docs/pwg/building_signals.xml:
12095           Short intro to signals + reference to GObject docs - we really
12096           shouldn't go into these sort of things to deply because we don't
12097           use them that extensively anyway.
12098         * docs/pwg/building_state.xml:
12099           Explanation of states. Benjamin, please check.
12100         * docs/pwg/building_testapp.xml:
12101           Put everything in one page - putting only a few lines of content
12102           per page doesn't really make sense.
12103
12104           Time to get into the advanced topics. ;).
12105
12106 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12107
12108         * docs/pwg/advanced_types.xml:
12109           Finish documenting the current state of mimetypes.
12110         * docs/pwg/building_boiler.xml:
12111         * docs/pwg/building_chainfn.xml:
12112         * docs/pwg/building_pads.xml:
12113         * docs/pwg/building_props.xml:
12114         * docs/pwg/building_testapp.xml:
12115           Start documenting the "how to build a simple audio filter" part
12116           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12117           states and (maybe?) a short introduction to capsnego in the chapter
12118           on pads (building_pads.xml). Capsnego should probably be explained
12119           fully in advanced_capsnego.xml or so.
12120
12121 2004-01-26  David Schleef  <ds@schleef.org>
12122
12123         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12124         * gst/gstpad.h: Add new function to allow element to (somewhat)
12125         specify non-fixed caps on a pad.
12126         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12127         that I added a few weeks ago.
12128
12129 2004-01-26  David Schleef  <ds@schleef.org>
12130
12131         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12132           making try_set_caps() work with non-fixed caps.
12133
12134 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12135
12136         * docs/pwg/advanced_types.xml:
12137         * docs/pwg/intro_basics.xml:
12138         * docs/pwg/intro_preface.xml:
12139         * docs/pwg/pwg.xml:
12140         * docs/pwg/titlepage.xml:
12141           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12142           in here (docs/random/mimetypes), and will from there on work on both
12143           updating outdated parts and adding missing parts.
12144           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12145
12146 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12147
12148         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12149           policy is set
12150
12151 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12152
12153         * gst/gstelement.h:
12154           remove gst_element_factory_get_version. It doesn't exist anymore.
12155         * gst/gstplugin.c:
12156         * gst/gstplugin.h:
12157           remove gst_plugin_set_name and change gst_plugin_get_longname to
12158           gst_plugin_get_description to match code.
12159         * gst/gsterror.h:
12160           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12161         * gst/gstpad.c: (gst_pad_try_set_caps):
12162           make it work with nonfixed caps.
12163           Note that even in the nonfixed case the link function of the pad
12164           that tries to set caps isn't called.
12165
12166 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12167
12168         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12169           fix bug where buffer was not assembled correctly
12170         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12171           silence by default
12172         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12173           only seek if there's no more buffers that could work without seeking
12174
12175 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12176
12177         * gst/gsttag.c: (_gst_tag_initialize):
12178         * gst/gsttag.h:
12179           Add application tag (for encoding/muxing app).
12180
12181 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12182
12183         * autogen.sh:
12184           make autopoint force, and libtoolize not copy
12185         * common/m4/as-docbook.m4:
12186           added docbook xml catalog setup check
12187         * common/m4/gst-doc.m4:
12188           use docbook check
12189
12190 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12191
12192         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12193         * gst/gsttag.h:
12194           add GstTagFlag
12195
12196 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12197
12198         * docs/gst/gstreamer-sections.txt:
12199         * docs/gst/tmpl/gst.sgml:
12200         * docs/gst/tmpl/gstbuffer.sgml:
12201         * docs/gst/tmpl/gstclock.sgml:
12202         * docs/gst/tmpl/gstelement.sgml:
12203         * docs/gst/tmpl/gstreamer-unused.sgml:
12204         * docs/gst/tmpl/gstxml.sgml:
12205           sync latest API changes to docs
12206
12207 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12208
12209         * gst/gstpluginfeature.c:
12210           fix doc snippet
12211         * tools/gst-inspect.c: (print_element_list):
12212           fix output of typefind
12213           add GPL header
12214         * tools/gst-launch.c:
12215           add GPL header
12216
12217 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12218
12219         * gst/elements/Makefile.am:
12220         * gst/elements/gstelements.c:
12221         * gst/elements/gsttypefindelement.c:
12222         * gst/elements/gsttypefindelement.h:
12223         * po/POTFILES.in:
12224         * po/fr.po:
12225         * po/nl.po:
12226           renamed gsttypefindelement to gsttypefind, conserving CVS history
12227
12228 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12229
12230         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12231         * gst/gsttag.h:
12232           add some tags used in ogg as well
12233           fix _ in replaygain tags
12234
12235 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12236
12237         * gst/gsterror.h:
12238           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12239
12240 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12241
12242         * gst/gstelement.c: (gst_element_error_full):
12243         * gst/gstelement.h:
12244           change _extended to _full
12245
12246 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12247
12248         reviewed by: <delete if not using a buddy>
12249
12250         * docs/gst/tmpl/gst.sgml:
12251         * docs/gst/tmpl/gstbuffer.sgml:
12252         * docs/gst/tmpl/gstclock.sgml:
12253         * docs/gst/tmpl/gstelement.sgml:
12254         * docs/gst/tmpl/gstreamer-unused.sgml:
12255         * docs/gst/tmpl/gstxml.sgml:
12256         * gst/gstelement.c: (gst_element_error_full):
12257         * gst/gstelement.h:
12258
12259 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12260
12261         * gst/gstelement.h: fix _gst_element_error_printf prototype
12262
12263 2004-01-20  David Schleef  <ds@schleef.org>
12264
12265         * gst/gststructure.c: (gst_structure_to_string):
12266         Convert function to use gst_value_serialize().
12267         * gst/gstvalue.c: (gst_value_serialize_list),
12268         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12269         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12270         (gst_value_serialize_int), (gst_value_serialize_double),
12271         (gst_string_wrap), (gst_value_serialize_string),
12272         (gst_value_serialize), (gst_value_deserialize):
12273         * gst/gstvalue.h:
12274         Add implementations for serialize.
12275
12276 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12277
12278         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12279         we want to keep that one in the future or change xvidenc.c to use 
12280         another error.
12281
12282 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12283
12284         * gst/gstelement.c: (_gst_element_error_printf):
12285         * gst/gstelement.h:
12286           privatise function
12287
12288 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12289
12290         * docs/random/error:
12291           doc explaining error system
12292         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12293           cleanup
12294
12295 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12296
12297         * gst/gst-i18n-app.h:
12298         * gst/gst-i18n-lib.h:
12299           remove inclusion of config.h
12300         * po/POTFILES.in:
12301         * po/nl.po:
12302           add gst/gstelement.c
12303
12304 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12305
12306         * po/nl.po: updated Dutch translation
12307
12308 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12309
12310         * gst/gsterror.c: (_gst_core_errors_init),
12311         (_gst_library_errors_init), (_gst_resource_errors_init),
12312         (_gst_stream_errors_init):
12313         remove ending punctuation dots
12314
12315 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12316
12317         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12318         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12319         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12320         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12321         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12322         use GST_ERROR_SYSTEM
12323
12324 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12325
12326         * gst/gstelement.c: (gst_element_error_printf),
12327         (gst_element_error_extended):
12328         * gst/gstelement.h:
12329           add a helper printf function so we can have NULL values passed.
12330
12331 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12332
12333         * gst/gstelement.h:
12334           add G_STMT macros to gst_element_error, which isn't strictly
12335           necessary but people tell me to anyway.
12336
12337 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12338
12339         * gst/Makefile.am:
12340         * gst/autoplug/gstspideridentity.c:
12341         (gst_spider_identity_sink_loop_type_finding):
12342         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12343         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12344         (gst_filesink_close_file), (gst_filesink_handle_event),
12345         (gst_filesink_chain):
12346         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12347         (gst_filesrc_map_region), (gst_filesrc_get_read),
12348         (gst_filesrc_open_file):
12349         * gst/elements/gstidentity.c: (gst_identity_chain):
12350         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12351         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12352         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12353         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12354         * gst/gst.h:
12355         * gst/gst_private.h:
12356         * gst/gstelement.c: (gst_element_class_init),
12357         (gst_element_default_error), (gst_element_error_func),
12358         (gst_element_error_extended):
12359         * gst/gstelement.h:
12360         * gst/gsterror.c: (_gst_core_errors_init),
12361         (_gst_library_errors_init), (_gst_resource_errors_init),
12362         (_gst_stream_errors_init), (gst_error_get_message):
12363         * gst/gsterror.h:
12364         * gst/gstinfo.c: (_gst_debug_init):
12365         * gst/gstmarshal.list:
12366         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12367         (gst_pad_recover_caps_error), (gst_pad_pull):
12368         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12369         * gst/schedulers/gstbasicscheduler.c:
12370         (gst_basic_scheduler_chainhandler_proxy),
12371         (gst_basic_scheduler_gethandler_proxy),
12372         (gst_basic_scheduler_cothreaded_chain):
12373         * po/POTFILES.in:
12374         * po/fr.po:
12375         * po/nl.po:
12376           change error signal
12377           add error categories
12378
12379 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12380
12381         * gst/gsttag.c: (_gst_tag_initialize):
12382         * gst/gsttag.h:
12383         Add replaygain tag
12384
12385 2004-01-18  Colin Walters  <walters@verbum.org>
12386
12387         * examples/retag/retag.c: Call gst_init before processing
12388         program args.  Add g_assert to _link_many call.
12389
12390 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12391
12392         * gst/gstpad.c: (gst_pad_alloc_buffer):
12393           Return a newly allocated buffer when the pad has no peer.
12394
12395 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12396
12397         * gst/gstclock.c: (gst_clock_get_time):
12398           make it compile with gcc 2.95 again.
12399           Patch by Scott Wheeler
12400
12401 2004-01-15  David Schleef  <ds@schleef.org>
12402
12403         * gst/gstcaps.h:
12404         Added gst_caps_is_simple() macro.
12405         * testsuite/caps/caps.c: (test1):
12406         * testsuite/caps/intersect2.c: (main):
12407         * testsuite/caps/intersection.c: (main):
12408         Fixes to make 'make check' work again after removing
12409         gst_caps_is_chained().
12410
12411 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12412
12413         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12414         and additions to the MIDI document.
12415
12416 2004-01-15  David Schleef  <ds@schleef.org>
12417
12418         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12419         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12420         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12421
12422 2004-01-15  David Schleef  <ds@schleef.org>
12423
12424         * gst/gstqueue.c:
12425         * gst/gstqueue.h:
12426         Fix the spelling of "treshold" and make min_threshold actually
12427         affect the queue.
12428
12429 2004-01-15  David Schleef  <ds@schleef.org>
12430
12431         * gst/gstcaps.c:
12432         Add lots of documentation.
12433         * gst/gstcaps.h:
12434         Deprecate a few functions.
12435         * gst/gstpad.c:
12436         Removed use of deprecated functions.
12437
12438 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12439
12440         * gst/gstpad.c: (gst_pad_is_linked):
12441         * gst/gstpad.h:
12442           implement gst_pad_is_linked
12443         * gst/gstelement.h:
12444           reserve space for initiate_state_change
12445
12446 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12447
12448         * gst/autoplug/gstspideridentity.c:
12449         (gst_spider_identity_sink_loop_type_finding):
12450           break infinite loop by just returning instead of looping
12451         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12452           set event time difference correctly. Set it to 1 second instead
12453           of 100ms to be more tolerant
12454         * gst/gstelement.c: (gst_element_set_time):
12455           add debugging output
12456
12457 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12458
12459         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12460           query if buffers are inside the pool, ignore events
12461
12462 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12463
12464         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12465         (gst_clock_set_speed), (gst_clock_set_active),
12466         (gst_clock_is_active), (gst_clock_reset),
12467         (gst_clock_handle_discont):
12468         * gst/gstclock.h:
12469           deprecate old interface and disable functions that aren't in use
12470           anymore.
12471         * gst/gstelement.h:
12472         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12473         (gst_element_set_time), (gst_element_adjust_time):
12474           add concept of "element time" and functions to get/set this time.
12475         * gst/gstelement.c: (gst_element_change_state):
12476           update element time correctly.
12477         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12478           This is a debug message, not a g_critical.
12479         * gst/gstpad.c: (gst_pad_event_default):
12480           handle discontinuous events right with element time.
12481         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12482           update to clocking fixes.
12483           set clocks on elements in READY=>PAUSED. The old behaviour caused
12484           a wrong element time on the first element that started playing.
12485         * gst/schedulers/gstbasicscheduler.c:
12486         (gst_basic_scheduler_class_init):
12487         * gst/schedulers/gstoptimalscheduler.c:
12488         (gst_opt_scheduler_class_init):
12489           remove code that just implements the default behaviour.
12490         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12491           update to use new clocking functions
12492         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12493         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12494           update to test new element time.
12495         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12496           use _get_allowed_caps instead of _get_caps. This catches filtered
12497           caps correctly.
12498         * testsuite/debug/commandline.c:
12499           update for new GST_DEBUG syntax.
12500         * testsuite/threads/Makefile.am:
12501           disable a test that only works sometimes.
12502
12503 2004-01-13  Julien MOUTTE <julien@moutte.net>
12504
12505         * po/LINGUAS: Adding fr.
12506         * po/fr.po: Adding french translation.
12507
12508 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12509
12510         * gst/parse/grammar.y:
12511         * po/POTFILES.in:
12512         * po/nl.po:
12513         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12514           translate parsing error messages
12515
12516 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12517
12518         * po/POTFILES.in: adding gst-launch
12519         * po/nl.po: updated translation, all 99 strings translated
12520         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12521         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12522           fix strings for translation
12523
12524 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12525
12526         * gst/gst.c:
12527           - capitalize beginnings of popt options
12528           - fix strings for translation
12529           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12530
12531 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12532
12533         * po/README: add some notes on how to update translations
12534
12535 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12536
12537         * ABOUT-NLS: removed, is autogenerated from autopoint
12538         * autogen.sh: add autopoint stuff
12539         * configure.ac: fix up gettext stuff
12540         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12541         * gst/elements/gsttypefindelement.c: add header include
12542         * gst/gettext.h: add header, copy from system-installed header
12543         * gst/gst-i18n-app.h: to be included by each app having translations
12544         * gst/gst-i18n-lib.h: to be included by each lib having translations
12545         * gst/gst.c: (init_pre): fix up gettext calls
12546         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12547         * po/LINGUAS: the new way to specify translations present
12548         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12549         * po/Makevars: the variables filled in for GStreamer
12550         * po/POTFILES.in: added new files with translations
12551         * po/de.po: has new strings
12552         * po/nl.po: readded, has new strings
12553
12554 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12555
12556         * gst/gsttag.c: fix some strings marked for translation
12557
12558 2004-01-13  Iain <iain@prettypeople.org>
12559
12560         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12561         group when we add an element to it, cos we unref it when we remove one
12562
12563 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12564
12565         * testsuite/debug/commandline.c: (debug_not_reached):
12566         * testsuite/debug/output.c: (check_message):
12567           fix testsuite
12568
12569 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12570
12571         * examples/cutter/.cvsignore:
12572         * examples/helloworld/.cvsignore:
12573         * examples/launch/.cvsignore:
12574         * examples/manual/.cvsignore:
12575         * examples/mixer/.cvsignore:
12576         * examples/pingpong/.cvsignore:
12577         * examples/plugins/.cvsignore:
12578         * examples/queue/.cvsignore:
12579         * examples/queue2/.cvsignore:
12580         * examples/queue3/.cvsignore:
12581         * examples/queue4/.cvsignore:
12582         * examples/retag/.cvsignore:
12583         * examples/thread/.cvsignore:
12584         * examples/typefind/.cvsignore:
12585         * examples/xml/.cvsignore:
12586         * gst/.cvsignore:
12587         * gst/autoplug/.cvsignore:
12588         * gst/elements/.cvsignore:
12589         * gst/indexers/.cvsignore:
12590         * gst/parse/.cvsignore:
12591         * gst/registries/.cvsignore:
12592         * gst/schedulers/.cvsignore:
12593         * libs/gst/bytestream/.cvsignore:
12594         * libs/gst/control/.cvsignore:
12595         * libs/gst/getbits/.cvsignore:
12596         * tests/.cvsignore:
12597         * tests/bufspeed/.cvsignore:
12598         * tests/instantiate/.cvsignore:
12599         * tests/memchunk/.cvsignore:
12600         * tests/muxing/.cvsignore:
12601         * tests/sched/.cvsignore:
12602         * tests/seeking/.cvsignore:
12603         * tests/threadstate/.cvsignore:
12604         * testsuite/.cvsignore:
12605         * testsuite/caps/.cvsignore:
12606         * testsuite/cleanup/.cvsignore:
12607         * testsuite/dynparams/.cvsignore:
12608         * testsuite/plugin/.cvsignore:
12609         * tools/.cvsignore:
12610           update - this is huge, because it includes *.bb, *.bbg and *.da files
12611           which are generated for gcov.
12612
12613 2004-01-11  David Schleef  <ds@schleef.org>
12614
12615         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12616         a function to parse integers in ways that strto[u]l() does not.
12617
12618 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12619
12620         * tools/gst-inspect.c: (print_caps):
12621           improve output of caps a bit
12622
12623 2004-01-11  David Schleef  <ds@schleef.org>
12624
12625         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12626         inherit correct flags (READONLY and DONTKEEP).
12627
12628 2004-01-11  David Schleef  <ds@schleef.org>
12629
12630         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12631         (gst_filesrc_map_region):
12632         * gst/gstbuffer.c: (_gst_buffer_initialize),
12633         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12634         (gst_buffer_new), (gst_buffer_create_sub),
12635         (gst_buffer_is_span_fast), (gst_buffer_span):
12636         * gst/gstbuffer.h:
12637         Change GstBuffer private structure element names. (all files)
12638         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12639         (gst_queue_link):
12640         * gst/gstqueue.h:
12641         Implement getcaps/pad_link functions that handle the case where
12642         there are data in the queue.
12643
12644 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12645
12646         * gst/elements/gstbufferstore.c:
12647           initialize debugging structure correctly
12648         * gst/elements/gsttee.c: (gst_tee_set_property):
12649           g_object_notify when property was changed
12650         * gst/elements/gsttypefindelement.c:
12651         (gst_type_find_element_change_state):
12652           clear caps correctly
12653
12654 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12655
12656         * gst/gstqueue.c: (gst_queue_init):
12657           Use better defaults for when a queue should block. This
12658           gets rid of jerky playback for quite a few files.
12659           It takes more memory.
12660
12661 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12662
12663         (gst_xml_registry_parse_padtemplate):
12664           make critical message slightly more useful
12665
12666 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12667
12668         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12669         (gst_debug_message_get), (gst_debug_log_default):
12670         * gst/gstinfo.h:
12671           Change gst_debug_log(_valist) to take a const format string.
12672           Change prototype of log function and functions using those to 
12673           take a GstDebugMessage instead of a string that requires using
12674           gst_debug_message_get.
12675
12676 2004-01-08  David Schleef  <ds@schleef.org>
12677
12678         * Makefile.am:
12679         * configure.ac:
12680         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12681         and -ftest-coverage, which allows gcov to show information about
12682         testsuite coverage.
12683
12684 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12685
12686         * gst/gstutils.h:
12687           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12688           GST_PARENT_CALL_WITH_DEFAULT
12689         * gst/elements/gstaggregator.c: 
12690         * gst/elements/gstbufferstore.c: 
12691         * gst/elements/gstfakesink.c: 
12692         * gst/elements/gstfakesrc.c: 
12693         * gst/elements/gstfdsink.c: 
12694         * gst/elements/gstfdsrc.c: 
12695         * gst/elements/gstfilesink.c: 
12696         * gst/elements/gstfilesrc.c: 
12697         * gst/elements/gstidentity.c: 
12698         * gst/elements/gstmd5sink.c: 
12699         * gst/elements/gstmultidisksrc.c:
12700         * gst/elements/gstpipefilter.c: 
12701         * gst/elements/gstshaper.c:
12702         * gst/elements/gststatistics.c:
12703         * gst/elements/gsttee.c:
12704         * gst/elements/gsttypefindelement.c:
12705           use them.
12706
12707 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
12708
12709         * docs/gst/gstreamer-docs.sgml: remove props
12710         * docs/gst/gstreamer-sections.txt: remove props
12711         * docs/gst/tmpl/gst.sgml:
12712         * docs/gst/tmpl/gstbin.sgml:
12713         * docs/gst/tmpl/gstbuffer.sgml:
12714         * docs/gst/tmpl/gstcaps.sgml:
12715         * docs/gst/tmpl/gstclock.sgml:
12716         * docs/gst/tmpl/gstelement.sgml:
12717         * docs/gst/tmpl/gstindex.sgml:
12718         * docs/gst/tmpl/gstobject.sgml:
12719         * docs/gst/tmpl/gstpad.sgml:
12720         * docs/gst/tmpl/gstpadtemplate.sgml:
12721         * docs/gst/tmpl/gstreamer-unused.sgml:
12722         * docs/gst/tmpl/gstthread.sgml:
12723         * docs/gst/tmpl/gstxml.sgml:
12724           sync with code reorganization
12725
12726 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
12727
12728         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12729         Make the 'Could not find compatible pad' message more informative.
12730
12731 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12732                                                                                 
12733         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
12734           Fix for if we pass NULL as property to location.
12735         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
12736         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
12737           Fix for instantiate-test (see below).
12738         * gst/gststructure.c: (_gst_structure_parse_value):
12739           Fix compile error on gcc-2.96.
12740         * configure.ac:
12741         * tests/Makefile.am:
12742         * tests/instantiate/Makefile.am:
12743         * tests/instantiate/create.c: (create_all_elements), (main):
12744           Add a test that instantiates all elements. This makes it easy to
12745           track dead code for old API/design (like setting event functions
12746           on sink pads and so on).
12747
12748 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
12749
12750         * gst/gstcaps.c: (gst_caps_append_structure):
12751           Move the poisoning to allow a NULL structure
12752         * gst/gstevent.c: (_gst_event_free):
12753           When freeing a navigation event, free the structure
12754           also
12755
12756 2004-01-04  David Schleef  <ds@schleef.org>
12757
12758         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12759         Remove usage of gst_pad_proxy_fixate.
12760         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
12761         (gst_caps_split_one), (gst_caps_replace):
12762         Add poisoning code.
12763         * gst/gstmarshal.list:
12764         Add pointer__pointer for fixate signal
12765         * gst/gstpad.c: (gst_real_pad_class_init),
12766         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12767         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
12768         (gst_pad_set_explicit_caps), (gst_pad_template_new):
12769         Add poisoning code. Add fixate signal on RealPad. Change
12770         set_explicit_caps() to take const GstCaps, like try_set_caps().
12771         * gst/gstpad.h:
12772         * testsuite/caps/Makefile.am:
12773         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
12774
12775 2004-01-03  David Schleef  <ds@schleef.org>
12776
12777         * gst/elements/gsttypefindelement.c:
12778         (gst_type_find_element_have_type), (gst_type_find_element_init):
12779         Use gst_pad_use_explicit_caps for src pad.
12780         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
12781         before using it.
12782
12783 2004-01-03  David Schleef  <ds@schleef.org>
12784
12785         * gst/gstelement.c: (gst_element_link_pads_filtered),
12786         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
12787         that linking was successful.
12788         * gst/gstpad.c: (gst_pad_link_free),
12789         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
12790         (gst_pad_link_try), (gst_pad_link_unnegotiate),
12791         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
12792         GstPadLinkReturn correctly between functions, and don't fail
12793         when DELAYED is used (DELAYED is very important).  Better
12794         cleanup on unlinking and unnegotiation.  Should fix some spider
12795         bugs.
12796
12797 2004-01-02  David Schleef  <ds@schleef.org>
12798
12799         * gst/gstelement.c: (gst_element_class_init),
12800         (gst_element_base_class_init): ->padtemplates should be cleared
12801         in base_init, since we need to have a fresh list for every
12802         class.  (Alternately, we chould copy the list and share the
12803         actual pad templates (not the list), but that would require
12804         changing every plugin to move pad template registration from
12805         base_init to class_init.)
12806
12807 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12808
12809         * gst/gstelement.c: (gst_element_class_add_pad_template):
12810           Refuse registering a pad template if another pad template
12811           with the same name already exists (#114715).
12812
12813 2004-01-02  David Schleef  <ds@schleef.org>
12814
12815         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
12816         (gst_caps_is_equal_fixed): Add new function.
12817         * gst/gstcaps.h: ditto.
12818         * gst/gstpad.c: (gst_real_pad_class_init),
12819         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
12820         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
12821         check new caps against existing caps -- if they're the same, return
12822         OK without renegotiating.  caps-nego-failed signal fixed so that
12823         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
12824         to save an extra caps copy.  Don't complete negotiation if a pad
12825         link function returns DELAYED.
12826
12827 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12828
12829         * gst/gstpad.c: (gst_pad_try_relink_filtered):
12830           Fix wrong g_return_if_fail
12831
12832 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
12833
12834         * gst/gstbin.c: (gst_bin_class_init):
12835         Change the marshalling of element_added/element_removed
12836         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
12837         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
12838
12839 2004-01-01  David Schleef  <ds@schleef.org>
12840
12841         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12842         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
12843         (gst_pad_use_explicit_caps):
12844         * gst/gstpad.h:
12845         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
12846         to use an internal getcaps and link fuction so that negotiation
12847         always results in the explicitly set caps.
12848         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
12849         are particularly useful for decoders.
12850
12851 2003-12-31  David Schleef  <ds@schleef.org>
12852
12853         * gst/elements/gstidentity.c: (gst_identity_class_init),
12854         (gst_identity_init), (gst_identity_chain),
12855         (gst_identity_set_property), (gst_identity_get_property):
12856         * gst/elements/gstidentity.h:
12857         * gst/gstqueue.c: (gst_queue_init):
12858           Negotiation fixes.
12859
12860 2003-12-31  David Schleef  <ds@schleef.org>
12861
12862         * gst/gstcaps.c: (gst_caps_intersect),
12863         (_gst_caps_normalize_foreach), (gst_caps_normalize):
12864           Implement gst_caps_normalize().
12865         * testsuite/caps/normalisation.c: (main):
12866           Add an additional test
12867
12868 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12869
12870         * gst/gstqueue.c: (gst_queue_init):
12871           use gst_pad_proxy_getcaps()
12872
12873 2003-12-31  David Schleef  <ds@schleef.org>
12874
12875         * gst/elements/gstshaper.c: (gst_shaper_link):
12876         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12877         * gst/gstqueue.c: (gst_queue_link):
12878           Negotiation fixes.
12879
12880 2003-12-31  David Schleef  <ds@schleef.org>
12881
12882         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
12883         * gst/gstpad.h: Add functions that are useful as default pad
12884         link and fixate functions for elements.
12885
12886 2003-12-30  David Schleef  <ds@schleef.org>
12887
12888         * gst/gstpad.c: (gst_pad_link_try):
12889           Fix segfault when attempting to return to old caps
12890
12891 2003-12-29  David Schleef  <ds@schleef.org>
12892
12893         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
12894         (gst_caps_structure_simplify), (gst_caps_simplify):
12895         * gst/gstcaps.h:
12896           Add simplify function
12897         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
12898         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
12899         * gst/gstpad.h:
12900           Copy over srcnotify, sinknotify when calling old pad_link
12901           functions.  Add new is_negotiated() function.
12902         * gst/gststructure.c: (gst_structure_copy):
12903           Fix an incredibly stupid bug that should have been noticed
12904           weeks ago.  _copy() returned the argument, not the new copy.
12905
12906 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12907
12908         * gst/gstcaps.c: (gst_caps_append):
12909           add sanity checks
12910         * gst/gstcaps.h: (gst_caps_debug):
12911           remove, it doesn't exist anymore.
12912         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
12913         (gst_element_threadsafe_properties_post_run):
12914           make debugging messages not clutter up THREAD debug category
12915         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
12916         (gst_element_change_state):
12917           update to new caps API
12918         * gst/gstinterface.c: (gst_implements_interface_cast):
12919           don't put vital code in g_return_if_fail
12920         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
12921         (gst_pad_link_filtered):
12922           add pst_pad_try_link and use it.
12923         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
12924           implement correctly, deprecate first one.
12925         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
12926           add and implement.
12927         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
12928           implement.
12929         (gst_pad_get_negotiated_caps):
12930           add and implement. Make GST_PAD_CAPS call this function.
12931         (gst_pad_get_caps):
12932           remove unneeded check..
12933         (gst_pad_recover_caps_error):
12934           disable, always return FALSE.
12935         (gst_real_pad_dispose):
12936           don't free caps and appfilter anymore, they're unused.
12937         * gst/gstpad.h:
12938           Reflect changes mentioned above.
12939         * gst/gstsystemclock.c: (gst_system_clock_wait):
12940           Make 'clock is way behind' a debugging message.
12941         * gst/gstthread.c: (gst_thread_change_state):
12942           Fix debugging message
12943
12944 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12945
12946         * gst/gstinfo.h:
12947           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
12948         * docs/gst/tmpl/gstreamer-unused.sgml:
12949           removed all traces of cvs conflicts
12950
12951 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12952
12953         * configure.ac:
12954         * gst/schedulers/cothreads_compat.h:
12955         * libs/Makefile.am:
12956           remove last instances of wingo cothread usage
12957
12958 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12959
12960         * gst/gstplugin.c:
12961         * gst/gstversion.h.in:
12962         * gst/parse/grammar.y:
12963           change comment block from /** to /* when not gtk-doc comments
12964
12965 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12966
12967         * gst/gst.c: whitespace and doc style fixes
12968
12969 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12970
12971         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
12972
12973 2003-12-24  Colin Walters  <walters@verbum.org>
12974
12975         * gst/elements/gsttypefindelement.c:
12976           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
12977           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
12978           Don't double-free caps.
12979
12980 2003-12-23  David Schleef  <ds@schleef.org>
12981
12982         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
12983           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
12984           Many little fixes and additions of debug statements to
12985           get rhythmbox working.
12986
12987 2003-12-23  Colin Walters  <walters@verbum.org>
12988
12989         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
12990         Use GST_PAD_LINK_SUCCESSFUL.
12991
12992 2003-12-23  David Schleef  <ds@schleef.org>
12993
12994         * gst/elements/gstaggregator.c:
12995         * gst/elements/gsttee.c:
12996           Use gst_pad_proxy_getcaps().
12997         * gst/gstpad.c:
12998         * gst/gstpad.h:
12999           Add gst_pad_proxy_getcaps(), which filter elements can use
13000           as a generic getcaps implementation.
13001           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13002           was advertised.
13003
13004 2003-12-23  David Schleef  <ds@schleef.org>
13005
13006         * gst/gstpad.c:
13007           Rearrange/rewrite much of the pad negotiation code, since it
13008           resembled pasta.  This actually changes the way some
13009           negotiation works, since the previous code was inconsistent
13010           depending on how it was invoked.  Add (internal) structure
13011           GstPadLink, which is used to hold some information (more in
13012           the future) about the link between two pads.  Fixes a number
13013           of bugs, including random lossage of filter caps when the
13014           initial negotiation is delayed.  A few functions are still
13015           unimplemented.
13016         * gst/gstpad.h:
13017           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13018           these when testing GstPadLinkReturn values instead of comparing
13019           directly.
13020
13021 2003-12-23  David Schleef  <ds@schleef.org>
13022
13023         * gst/gstvalue.c: 
13024         * gst/gstvalue.h:
13025           Rearrange lots of code.  Change registration of compare function
13026           into registration of compare/serialize/deserialize functions.
13027           Doesn't include implementation of gst_value_[de]serialize(),
13028           but that should be easy.
13029
13030 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13031
13032         * docs/gst/gstreamer-sections.txt:
13033         * docs/gst/tmpl/gstprops.sgml: removed
13034         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13035           David removed props and caps code, so let's remove their docs as well.
13036           Removed all no longer existing symbols from gstreamer-sections.txt
13037           
13038 2003-12-22  Colin Walters  <walters@verbum.org>
13039
13040         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13041           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13042           of tags directly.
13043
13044 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13045
13046         * gst/elements/gstelements.c:
13047           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13048         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13049           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13050           gst_caps (peer).
13051
13052 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13053
13054         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13055         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13056         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13057         (gst_spider_identity_sink_loop_type_finding):
13058         * gst/autoplug/gstspideridentity.h:
13059           Fix autoplugging in spider element, so it works with new caps.
13060           This was mainly caused by identifying empty caps incorrectly.
13061
13062 2003-12-22  David Schleef  <ds@schleef.org>
13063
13064         * gststructure.c, gstvalue.c, gstvalue.h: Add
13065           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13066           using g_value_copy()
13067
13068 2003-12-21  David Schleef  <ds@schleef.org>
13069
13070         * many, many files: Merge CAPS branch.  This includes:
13071           - implemention of GstValue and several GstValue types
13072           - implemention of GstStructure
13073           - entire rewrite of GstCaps
13074           - removal of GstProps
13075           - many changes to GstPad to compensate for new caps paradigm
13076           - removal of GstBufferpool
13077         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13078         gstvalue.h, gst/gstcaps[2]*.[ch]:
13079           - rename gstcaps2.[ch] to gstcaps.[ch]
13080
13081 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13082
13083         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13084         (gst_queue_chain), (gst_queue_handle_src_event):
13085           implement timeout for sending events. Workaround for if the
13086           pipeline on this queue is not passing any data.
13087
13088 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13089                                                                                 
13090         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13091         * moved CVS to freedesktop.org
13092