gst/gstqueue.c: Fix nasty refcount bug.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-18  Wim Taymans  <wim@fluendo.com>
2
3         * gst/gstqueue.c: (gst_queue_handle_sink_event):
4         Fix nasty refcount bug.
5
6 2005-07-16 Philippe Khalaf <burger@speedy.org>
7         * gst/elements/gstfdsrc.c:
8         * gst/elements/gstfdsrc.h:
9         * gst/elements/gstelements.c:
10         * gst/elements/Makefile.am:
11         Ported fdsrc to 0.9.
12
13 2005-07-16  Wim Taymans  <wim@fluendo.com>
14
15         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
16         (gst_base_sink_do_sync):
17         Fix compile error.
18
19 2005-07-16  Wim Taymans  <wim@fluendo.com>
20
21         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
22         (gst_base_sink_event), (gst_base_sink_get_times),
23         (gst_base_sink_do_sync), (gst_base_sink_change_state):
24         * gst/base/gstbasesink.h:
25         Store and use discont values when syncing buffers as described
26         in design docs.
27         
28         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
29         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
30         (gst_base_src_activate_push):
31         Push discont event when starting.
32
33         * gst/elements/gstidentity.c: (gst_identity_transform):
34         Small cleanups.
35
36         * gst/gstbin.c: (gst_bin_change_state):
37         Small cleanups in base_time  distribution.
38
39         * gst/gstelement.c: (gst_element_set_base_time),
40         (gst_element_get_base_time), (gst_element_change_state):
41         * gst/gstelement.h:
42         Added methods for the base_time of the element.
43         Some MT fixes.
44
45         * gst/gstpipeline.c: (gst_pipeline_send_event),
46         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
47         (gst_pipeline_get_last_stream_time):
48         * gst/gstpipeline.h:
49         MT fixes.
50         Handle seeking as described in design doc, remove stream_time
51         hack.
52         Cleanups clock and stream_time selection code. Added accessors
53         for the stream_time.
54         
55
56 2005-07-16  Andy Wingo  <wingo@pobox.com>
57
58         * gst/gsterror.c (_gst_core_errors_init): Use the magic word..
59
60 2005-07-16  Wim Taymans  <wim@fluendo.com>
61
62         * check/gst/gstbin.c: (GST_START_TEST):
63         Make elements silent as the deep_notify refs the
64         parent, which might make the test fail.
65
66         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
67         Don't hold the lock for too long.
68
69 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
70
71         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
72           Don't unref the caps we passed to gst_caps_make_writable() after
73           passing them. gst_caps_make_writable() will do that for us.
74
75 2005-07-15  Andy Wingo  <wingo@pobox.com>
76
77         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
78         (#157311).
79
80         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
81         own marshalling function for the handoff signal. Properly type the
82         buffer as a buffer. Fixes some warnings. Should do a more general
83         solution.
84         (gst_identity_class_init): Plug into the right marshaller.
85
86 2005-07-15  Wim Taymans  <wim@fluendo.com>
87
88         * docs/design/part-TODO.txt:
89         * docs/design/part-clocks.txt:
90         * docs/design/part-element-sink.txt:
91         * docs/design/part-events.txt:
92         * docs/design/part-gstpipeline.txt:
93         Updated docs, mostly DISCONT related.
94
95 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
96
97         * docs/pwg/building-pads.xml:
98           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
99
100 2005-07-15  Andy Wingo  <wingo@pobox.com>
101
102         * tools/gst-typefind.c: Update, add copyright block.
103
104         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
105         Normalize and truncate caps before fixation.
106
107         * gst/gstcaps.h:
108         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
109         discards all but the first structure from its argument.
110
111 2005-07-15  Wim Taymans  <wim@fluendo.com>
112
113         * gst/base/gstbasetransform.c: (gst_base_transform_init),
114         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
115         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
116         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
117         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
118         (gst_base_transform_chain), (gst_base_transform_change_state),
119         (gst_base_transform_set_passthrough),
120         (gst_base_transform_is_passthrough):
121         * gst/base/gstbasetransform.h:
122         Make passthrough work using the bufferpools.
123         Changed API a bit, subclasses have to write into a buffer
124         provided by the base class.
125         More debug info in nego functions.
126         
127         * gst/elements/gstidentity.c: (gst_identity_init),
128         (gst_identity_transform):
129         Port to new base class.
130
131 2005-07-15  Wim Taymans  <wim@fluendo.com>
132
133         * gst/gstmessage.c: (gst_message_new_state_changed):
134         * tools/gst-launch.c: (event_loop), (main):
135         Totally dump messages in -launch with the -m option.
136         Fix message name for State messages,
137
138 2005-07-14  Wim Taymans  <wim@fluendo.com>
139
140         * gst/base/gstbasesrc.c: (gst_base_src_loop):
141         Post error messages on errors.
142
143 2005-07-14  Wim Taymans  <wim@fluendo.com>
144
145         * gst/gstcaps.c: (gst_caps_do_simplify):
146         Remove debug info.
147
148         * gst/gsterror.h:
149         Define error for stream stopped.
150
151         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
152         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
153         Do proper return values.
154
155         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
156         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
157         (gst_pad_get_range):
158         Better return values.
159
160         * gst/gstpad.h:
161         Reorganise return values, add macro to check for fatal errors.
162
163         * gst/gstqueue.c: (gst_queue_chain):
164         Return proper GstFlowReturn values,
165
166 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
167
168         * docs/gst/gstreamer-sections.txt:
169         * docs/gst/gstreamer.types:
170         * docs/gst/tmpl/gst.sgml:
171         * docs/gst/tmpl/gstbasesink.sgml:
172         * docs/gst/tmpl/gstbasesrc.sgml:
173         * docs/gst/tmpl/gstbasetransform.sgml:
174         * docs/gst/tmpl/gstbin.sgml:
175         * docs/gst/tmpl/gstbuffer.sgml:
176         * docs/gst/tmpl/gstcaps.sgml:
177         * docs/gst/tmpl/gstclock.sgml:
178         * docs/gst/tmpl/gstcompat.sgml:
179         * docs/gst/tmpl/gstconfig.sgml:
180         * docs/gst/tmpl/gstelement.sgml:
181         * docs/gst/tmpl/gstelementdetails.sgml:
182         * docs/gst/tmpl/gstelementfactory.sgml:
183         * docs/gst/tmpl/gstenumtypes.sgml:
184         * docs/gst/tmpl/gsterror.sgml:
185         * docs/gst/tmpl/gstevent.sgml:
186         * docs/gst/tmpl/gstfakesink.sgml:
187         * docs/gst/tmpl/gstfakesrc.sgml:
188         * docs/gst/tmpl/gstfilesink.sgml:
189         * docs/gst/tmpl/gstfilesrc.sgml:
190         * docs/gst/tmpl/gstfilter.sgml:
191         * docs/gst/tmpl/gstformat.sgml:
192         * docs/gst/tmpl/gstghostpad.sgml:
193         * docs/gst/tmpl/gstimplementsinterface.sgml:
194         * docs/gst/tmpl/gstindex.sgml:
195         * docs/gst/tmpl/gstindexfactory.sgml:
196         * docs/gst/tmpl/gstinfo.sgml:
197         * docs/gst/tmpl/gstiterator.sgml:
198         * docs/gst/tmpl/gstmacros.sgml:
199         * docs/gst/tmpl/gstmemchunk.sgml:
200         * docs/gst/tmpl/gstminiobject.sgml:
201         * docs/gst/tmpl/gstobject.sgml:
202         * docs/gst/tmpl/gstpad.sgml:
203         * docs/gst/tmpl/gstpadtemplate.sgml:
204         * docs/gst/tmpl/gstparse.sgml:
205         * docs/gst/tmpl/gstpipeline.sgml:
206         * docs/gst/tmpl/gstplugin.sgml:
207         * docs/gst/tmpl/gstpluginfeature.sgml:
208         * docs/gst/tmpl/gstquery.sgml:
209         * docs/gst/tmpl/gstqueue.sgml:
210         * docs/gst/tmpl/gstregistry.sgml:
211         * docs/gst/tmpl/gstregistrypool.sgml:
212         * docs/gst/tmpl/gstscheduler.sgml:
213         * docs/gst/tmpl/gstschedulerfactory.sgml:
214         * docs/gst/tmpl/gststructure.sgml:
215         * docs/gst/tmpl/gstsystemclock.sgml:
216         * docs/gst/tmpl/gsttaglist.sgml:
217         * docs/gst/tmpl/gsttagsetter.sgml:
218         * docs/gst/tmpl/gsttrace.sgml:
219         * docs/gst/tmpl/gsttrashstack.sgml:
220         * docs/gst/tmpl/gsttypefind.sgml:
221         * docs/gst/tmpl/gsttypefindfactory.sgml:
222         * docs/gst/tmpl/gsttypes.sgml:
223         * docs/gst/tmpl/gsturihandler.sgml:
224         * docs/gst/tmpl/gsturitype.sgml:
225         * docs/gst/tmpl/gstutils.sgml:
226         * docs/gst/tmpl/gstvalue.sgml:
227         * docs/gst/tmpl/gstversion.sgml:
228         * docs/gst/tmpl/gstxml.sgml:
229         * docs/libs/tmpl/gstcontrol.sgml:
230         * docs/libs/tmpl/gstdataprotocol.sgml:
231         * docs/libs/tmpl/gstdparam.sgml:
232         * docs/libs/tmpl/gstdplinint.sgml:
233         * docs/libs/tmpl/gstdpman.sgml:
234         * docs/libs/tmpl/gstdpsmooth.sgml:
235         * docs/libs/tmpl/gstgetbits.sgml:
236         * docs/libs/tmpl/gstunitconvert.sgml:
237         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
238         (gst_push_src_base_init), (gst_push_src_class_init),
239         (gst_push_src_init), (gst_push_src_create):
240         * gst/base/gstpushsrc.h:
241         * gst/elements/gstelements.c:
242         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
243         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
244         (gst_fake_sink_init), (gst_fake_sink_set_property),
245         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
246         (gst_fake_sink_event), (gst_fake_sink_preroll),
247         (gst_fake_sink_render), (gst_fake_sink_change_state):
248         * gst/elements/gstfakesink.h:
249         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
250         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
251         (gst_fake_src_base_init), (gst_fake_src_class_init),
252         (gst_fake_src_init), (gst_fake_src_event_handler),
253         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
254         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
255         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
256         (gst_fake_src_create_buffer), (gst_fake_src_create),
257         (gst_fake_src_start), (gst_fake_src_stop):
258         * gst/elements/gstfakesrc.h:
259         * gst/elements/gstfilesink.c: (_do_init),
260         (gst_file_sink_base_init), (gst_file_sink_class_init),
261         (gst_file_sink_init), (gst_file_sink_dispose),
262         (gst_file_sink_set_location), (gst_file_sink_set_property),
263         (gst_file_sink_get_property), (gst_file_sink_open_file),
264         (gst_file_sink_close_file), (gst_file_sink_query),
265         (gst_file_sink_event), (gst_file_sink_render),
266         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
267         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
268         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
269         * gst/elements/gstfilesink.h:
270         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
271         (gst_file_src_class_init), (gst_file_src_init),
272         (gst_file_src_finalize), (gst_file_src_set_location),
273         (gst_file_src_set_property), (gst_file_src_get_property),
274         (gst_file_src_map_region), (gst_file_src_map_small_region),
275         (gst_file_src_create_mmap), (gst_file_src_create_read),
276         (gst_file_src_create), (gst_file_src_is_seekable),
277         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
278         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
279         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
280         (gst_file_src_uri_handler_init):
281         * gst/elements/gstfilesrc.h:
282           more autistic cleanliness in functions/names/defines
283
284 2005-07-13  Andy Wingo  <wingo@pobox.com>
285
286         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
287         source couldn't negotiate.
288
289         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
290         connections again.
291
292         * gst/gstutils.h:
293         * gst/gstutils.c (gst_element_link_pads_filtered): New old
294         function. I am channeling Hades. Put your boots on suckers!!!
295
296 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
297
298         * testsuite/caps/Makefile.am:
299         * testsuite/caps/value_compare.c:
300         * testsuite/caps/value_intersect.c:
301         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
302           move two testsuite apps over to the check dir
303
304 2005-07-12  Wim Taymans  <wim@fluendo.com>
305
306         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
307         Added more debug info in the negotiate process.
308
309         * gst/gstmessage.h:
310         Prepare for segment playback.
311
312         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
313         Better debugging.
314
315         * gst/gstutils.c:
316         Some more docs.
317
318         * tools/gst-launch.c: (main):
319         NULL pipeline on errors.
320
321 2005-07-12  Andy Wingo  <wingo@pobox.com>
322
323         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
324         not it comes from a malloc region. Make sure our copy gets freed.
325
326 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
327
328         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
329         * check/gst/gstmessage.c: (GST_START_TEST):
330         * check/gst/gststructure.c: (GST_START_TEST),
331         (gst_structure_suite), (main):
332           more testing
333         * gst/gstelement.c: (gst_element_message_full):
334           clean up GError and debug string now that they get copied
335         * gst/gstmessage.c: (gst_message_new_error),
336         (gst_message_new_warning), (gst_message_parse_error),
337         (gst_message_parse_warning):
338           use GST_TYPE_G_ERROR for structure_new, and take copies of
339           arguments, so that we don't mess up refcounting
340
341 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
342
343         * check/Makefile.am:
344           add per-test valgrind targets
345         * check/gst-libs/gdp.c: (GST_START_TEST),
346         (gst_data_protocol_suite), (main):
347           clean up
348
349 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
350
351         * check/Makefile.am:
352           instate more valgrindable tests
353         * check/elements/gstfakesrc.c: (chain_func), (event_func),
354         (GST_START_TEST), (fakesrc_suite):
355         * check/gst/gstpad.c: (GST_START_TEST):
356         * check/gst/gststructure.c: (GST_START_TEST):
357           fix test leaks
358         * docs/gst/tmpl/gstminiobject.sgml:
359         * gst/gstpad.c: (gst_pad_finalize):
360           fix the static mutex leak
361
362 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
363
364         * check/Makefile.am:
365           add two more tests for valgrinding
366         * check/gst/gstvalue.c: (GST_START_TEST):
367           test refcount of deserialized buffer, found a leak
368         * docs/gst/gstreamer-docs.sgml:
369         * docs/gst/gstreamer-sections.txt:
370         * docs/gst/gstreamer.types:
371         * docs/gst/tmpl/gstminiobject.sgml:
372           add miniobject to docs
373         * gst/gstminiobject.c:
374           add some docs
375         * gst/gstvalue.c: (gst_value_deserialize_buffer),
376         (gst_string_unwrap):
377           fix a hard-to-find invalid write for one of the tests
378           fix a leak for deserialized buffers
379
380 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
381
382         * docs/pwg/advanced-events.xml:
383         * docs/pwg/advanced-request.xml:
384         * docs/pwg/advanced-scheduling.xml:
385         * docs/pwg/appendix-porting.xml:
386         * docs/pwg/building-boiler.xml:
387         * docs/pwg/intro-preface.xml:
388         * docs/pwg/other-ntoone.xml:
389           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
390           of example code and explanation for pad activation, loop() and
391           getrange() functions and a bit more. Remove old comments pointing
392           to loop-functions.
393         * examples/pwg/Makefile.am:
394           Add loop/getrange examples.
395
396 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
397
398         * configure.ac:
399           check for valgrind binary + some fixes
400         * check/gst.supp:
401           valgrind suppressions for the tests
402         * check/Makefile.am:
403           add a valgrind: target that valgrinds the unit tests
404         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
405         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
406         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
407         * check/gst/gstghostpad.c:
408           added some cleanup
409         * check/gst/gstdata.c:
410           removed
411         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
412         (thread_unref), (gst_mini_object_suite), (main):
413           added
414         * gst/gst.c: (gst_deinit):
415         * gst/gst.h:
416           add a method to clean up.
417         * gst/gstsystemclock.c: (gst_system_clock_dispose),
418         (gst_system_clock_obtain):
419           allow for disposing the system clock.
420         * tools/gst-launch.c: (main):
421           deinit
422
423 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
424
425         * docs/gst/tmpl/gstbasesrc.sgml:
426         * docs/gst/tmpl/gstfakesrc.sgml:
427         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
428         (gst_base_src_init), (gst_base_src_set_property),
429         (gst_base_src_get_property), (gst_base_src_get_range),
430         (gst_base_src_start):
431         * gst/base/gstbasesrc.h:
432           add num-buffers property
433         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
434         (gst_fakesrc_init), (gst_fakesrc_set_property),
435         (gst_fakesrc_get_property), (gst_fakesrc_create),
436         (gst_fakesrc_start):
437           remove num-buffers property
438
439 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
440
441         * docs/gst/gstreamer-sections.txt:
442         * docs/gst/tmpl/gstbasesink.sgml:
443         * docs/gst/tmpl/gstbasesrc.sgml:
444         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
445         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
446         (gst_base_sink_finalize), (gst_base_sink_set_clock),
447         (gst_base_sink_set_property), (gst_base_sink_get_property),
448         (gst_base_sink_handle_object), (gst_base_sink_event),
449         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
450         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
451         (gst_base_sink_loop), (gst_base_sink_deactivate),
452         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
453         (gst_base_sink_change_state):
454         * gst/base/gstbasesink.h:
455         * gst/base/gstbasesrc.h:
456         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
457         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
458         (gst_filesink_init):
459           more macro splitting
460
461 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
462
463         * gst/gstelement.c: (gst_element_get_bus):
464           add debug
465         * tools/gst-launch.c: (check_intr), (event_loop):
466           fix bus leaks
467
468 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
469
470         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
471           fix a caps leak
472
473 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
474
475         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
476         (gst_base_src_finalize):
477           add finalize method and clean up properly
478         * gst/gstpipeline.c: (gst_pipeline_dispose):
479           add debug
480
481 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
482
483         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
484         (gst_bin_suite):
485           add more things to check
486         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
487         * gst/gstelement.c:
488           more debug
489
490 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
491
492         * check/elements/gstfakesrc.c: (chain_func), (event_func),
493         (GST_START_TEST), (fakesrc_suite):
494         * check/gst-libs/gdp.c: (GST_START_TEST):
495         * check/gst/gst.c: (GST_START_TEST):
496         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
497         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
498         * check/gst/gstbus.c: (GST_START_TEST):
499         * check/gst/gstcaps.c: (GST_START_TEST):
500         * check/gst/gstdata.c: (GST_START_TEST):
501         * check/gst/gstelement.c: (GST_START_TEST):
502         * check/gst/gstghostpad.c: (GST_START_TEST):
503         * check/gst/gstiterator.c: (GST_START_TEST):
504         * check/gst/gstmessage.c: (GST_START_TEST):
505         * check/gst/gstobject.c: (GST_START_TEST):
506         * check/gst/gstpad.c: (GST_START_TEST):
507         * check/gst/gststructure.c: (GST_START_TEST):
508         * check/gst/gstsystemclock.c: (GST_START_TEST),
509         (gst_systemclock_suite):
510         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
511         * check/gst/gstvalue.c: (GST_START_TEST):
512         * check/pipelines/cleanup.c: (GST_START_TEST):
513         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
514         * check/states/sinks.c: (GST_START_TEST):
515         * check/gstcheck.c: (gst_check_init):
516         * check/gstcheck.h:
517           add debugging category
518           use GST_START_TEST now, so we add a debug line
519
520 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
521
522         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
523           add test for state change message on a bin
524         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
525           add another test
526         * gst/gstbin.c: (gst_bin_init):
527         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
528         * gst/gstelement.c: (gst_element_post_message),
529         (gst_element_set_state):
530         * gst/gstelementfactory.c: (gst_element_factory_create):
531         * gst/gstmessage.c: (gst_message_new):
532         * gst/gstscheduler.c:
533           various debugging additions and cleanups
534
535 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
536
537         * check/Makefile.am:
538         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
539         (main):
540           adding tests for elements
541         * gst/gstelement.c: (gst_element_dispose):
542
543 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
544
545         * gst/registries/gstlibxmlregistry.c: (load_feature):
546           plug more leaks.  A simple gst_init() now is leakfree, yay.
547
548 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
549
550         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
551         (gst_xml_registry_load):
552           plug another memleak
553
554 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
555
556         * configure.ac:
557           use GST_SET_ERROR_CFLAGS
558         * docs/faq/cvs.xml:
559           change to ERROR_CFLAGS
560
561 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
562
563         * configure.ac:
564           make GST_ERROR_CFLAGS overridable and re-enable Werror
565         * docs/faq/cvs.xml:
566           add a note about error CFLAGS
567         * docs/gst/tmpl/gstfakesrc.sgml:
568         * gst/elements/gstfakesrc.c:
569           comment out some unused code
570         * gst/gst.c: (split_and_iterate):
571         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
572         (load_feature):
573           plug some memleaks
574
575 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
576
577         * common/Makefile.am:
578         * common/gtk-doc.mak:
579         * docs/gst/Makefile.am:
580           factor out gtk-doc.mak
581
582 2005-07-07  Wim Taymans  <wim@fluendo.com>
583
584         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
585         (gst_thread_scheduler_dispose):
586         Unlock the STREAM_LOCK completely.
587
588 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
589
590         * check/Makefile.am:
591         * check/elements/.cvsignore:
592         * check/elements/gstfakesrc.c: (chain_func), (event_func),
593         (START_TEST), (fakesrc_suite), (main):
594         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
595         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
596         (gst_fakesrc_create), (gst_fakesrc_start):
597         * gst/elements/gstfakesrc.h:
598           adding a first element test
599
600 2005-07-07  Andy Wingo  <wingo@pobox.com>
601
602         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
603         debug message.
604
605 2005-07-07  Wim Taymans  <wim@fluendo.com>
606
607         * gst/gstquery.c:
608         * gst/gstquery.h:
609         Remove old types
610
611 2005-07-07  Wim Taymans  <wim@fluendo.com>
612
613         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
614         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
615         Allow subclasses to implement their own negotiation.
616
617 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
618
619         * docs/design/part-gstbin.txt:
620         * docs/design/part-gstpipeline.txt:
621           Update design notes to reflect the movement of
622           responsibility for bus handling from GstPipeline to
623           GstBin
624
625 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
626
627         * configure.ac:
628           Remove unnecessary queue2/3/4 examples.
629
630 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
631
632         * examples/Makefile.am:
633         * examples/helloworld/helloworld.c: (event_loop), (main):
634         * examples/queue/queue.c: (event_loop), (main):
635         * examples/queue2/queue2.c: (main):
636           Update a couple of the examples to work again.
637
638         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
639         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
640          Spelling corrections and extra debug.
641         
642         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
643         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
644         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
645         * gst/gstbin.h:
646         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
647         (gst_pipeline_change_state):
648         * gst/gstpipeline.h:
649           Move the bus handler for children to the GstBin, and create a
650           separate bus for receiving messages from children to the one the
651           bus sends 'upwards' on.
652
653 2005-07-06  Wim Taymans  <wim@fluendo.com>
654
655         * gst/base/README:
656         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
657         (gst_base_sink_handle_object), (gst_base_sink_loop),
658         (gst_base_sink_change_state):
659         * gst/base/gstbasesink.h:
660         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
661         (gst_base_src_init), (gst_base_src_setcaps),
662         (gst_base_src_getcaps), (gst_base_src_loop),
663         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
664         (gst_base_src_start), (gst_base_src_change_state):
665         * gst/base/gstbasesrc.h:
666         Make basesrc negotiate.
667         Handle the case where preroll fails in basesink.
668         Update README.
669
670 2005-07-06  Wim Taymans  <wim@fluendo.com>
671
672         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
673         Implement the fixate function.
674         Clean up acceptcaps.
675
676 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
677
678         * docs/pwg/building-filterfactory.xml:
679         * docs/pwg/pwg.xml:
680           Remove never-written filter-factory chapter; I'll add the various
681           base classes to part 4 ("other element types") later on.
682
683 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
684
685         * docs/pwg/advanced-negotiation.xml:
686         * docs/pwg/building-boiler.xml:
687         * docs/pwg/building-pads.xml:
688         * docs/pwg/pwg.xml:
689         * examples/pwg/Makefile.am:
690           Add a chapter on caps negotiation, simplify the original code
691           samples a bit w.r.t. caps negotiation, add link to the advanced
692           section. Add a bunch of examples showing different use cases of
693           different types of caps negotiation. Upstream renegotiation isn't
694           fully documented yet since nobody knows how that works.
695
696 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
697
698         * check/gst/gstpad.c:
699         * check/gstcheck.c:
700         * gst/gstpad.c: (gst_pad_get_internal_links_default):
701           if pad has no parent, return NULL as list of internal links
702
703 2005-07-05  Andy Wingo  <wingo@pobox.com>
704
705         * gst/elements/gstfilesrc.c:
706         * gst/elements/gstfakesrc.c: 
707         * gst/base/gstpushsrc.c:
708         * gst/base/gstbasesrc.h: 
709         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
710         
711 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
712
713         * Makefile.am:
714           better report generation target (lcov needs a patch)
715
716 2005-07-05  Andy Wingo  <wingo@pobox.com>
717
718         * gst/elements, testsuite: Null if we got it...
719
720 2005-07-05  Wim Taymans  <wim@fluendo.com>
721
722         * configure.ac:
723         * libs/gst/dataprotocol/Makefile.am:
724         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
725         * libs/gst/dataprotocol/dataprotocol.h:
726         * pkgconfig/Makefile.am:
727         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
728         * pkgconfig/gstreamer-dataprotocol.pc.in:
729         Ported dataprotol to 0.9. 
730         Added pkgconfig files.
731
732 2005-07-05  Andy Wingo  <wingo@pobox.com>
733
734         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
735         Default to returning TRUE for the case when tranform_caps returns
736         a fixed caps, like for identity or volume.
737
738         * check/gst/gstbus.c (pound_bus_with_messages): 
739         * check/gst/gstmessage.c (START_TEST): 
740         * check/pipelines/simple_launch_lines.c (got_handoff): Application
741         message API change.
742
743         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
744         logic weaks here: always run transform_caps, trying passthrough
745         operation only if the original caps intersects with the transform.
746
747         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
748         source and sink caps.
749
750         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
751         Intersect the peer caps with the pad template before going into
752         transform_caps.
753         (gst_base_transform_transform_caps): More debugging.
754
755         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
756         src argument.
757
758 2005-07-04  Edward Hervey  <edward@fluendo.com>
759
760         * gst/gstutils.c:
761         * gst/gstutils.h:
762         (gst_pad_add_*_probe): now returns the signal id for better wrapping
763         in bindings.
764
765 2005-07-04  Andy Wingo  <wingo@pobox.com>
766
767         * check/gst/gstpad.c: Only set explicit caps on pads.
768
769 2005-07-01  Andy Wingo  <wingo@pobox.com>
770
771         * tests/network-clock.scm: Commentary update.
772
773         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
774         Didn't really make sense, not implementable with basetransform,
775         etc.
776         (gst_identity_transform): Unref inbuf via make_writable. Feeble
777         attempt at implementing the sync property, needs an unlock method.
778
779         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
780         New func, by default returns the same caps (the identity
781         transformation).
782         (gst_base_transform_getcaps): Uses transform_caps to return
783         something sensible.
784         (gst_base_transform_setcaps): Complicated logic to get caps on
785         both pads, even if they are different, and to call set_caps once
786         for every time both pads get their caps set.
787         (gst_base_transform_handle_buffer): Give the ref to the transform
788         function. Allows in-place modification of the buffer.
789
790         * gst/base/gstbasetransform.h (transform_caps): New class method.
791         Given caps on one side, what can I do on the other.
792         (set_caps): Take two caps, one for each side of the element.
793
794         * gst/gstpad.h:
795         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
796         caps in place. This is safe because we can check the mutability of
797         the caps, and a good idea because fixate functions are just called
798         as a matter of last resort. (Not actually implemented.)
799         (gst_pad_set_caps): If the caps we're setting is actually the same
800         as the existing pad caps, just update the pointer without calling
801         setcaps. Assert that caps is either NULL or fixed, as per the
802         docs.
803
804         * gst/gstghostpad.c: Update for fixate changes.
805
806 2005-07-02  Andy Wingo  <wingo@pobox.com>
807
808         * gst/gstcaps.c:
809         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
810         two refcounts makes it immutable, which is enough. Doc more.
811
812 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
813
814         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
815           Put the mini_object into GValue as a mini_object,
816           not a gpointer, since that's how we declared
817           the signal.
818
819 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
820
821         * examples/pwg/Makefile.am:
822           Fix buildbot again.
823
824 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
825
826         * docs/pwg/building-testapp.xml:
827           Add extra check.
828         * examples/pwg/Makefile.am:
829           Fix buildbot.
830
831 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
832
833         * configure.ac:
834         * examples/Makefile.am:
835         * examples/pwg/Makefile.am:
836         * examples/pwg/extract.pl:
837           Enable building the PWG examples.
838         * docs/pwg/advanced-interfaces.xml:
839           Add URI interface stub.
840         * docs/pwg/advanced-types.xml:
841         * docs/pwg/other-autoplugger.xml:
842         * docs/pwg/appendix-porting.xml:
843         * docs/pwg/pwg.xml:
844           Add porting guide (mostly stubs), remove autoplugging (see ADM).
845         * docs/pwg/building-boiler.xml:
846         * docs/pwg/building-chainfn.xml:
847         * docs/pwg/building-pads.xml:
848         * docs/pwg/building-props.xml:
849         * docs/pwg/building-state.xml:
850         * docs/pwg/building-testapp.xml:
851           Update the building-*.xml parts for 0.9 changes. All examples
852           code blocks compile in examples/pwg/*.
853
854 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
855
856         * docs/manual/advanced-autoplugging.xml:
857         * docs/manual/appendix-checklist.xml:
858         * docs/manual/appendix-integration.xml:
859         * docs/manual/highlevel-components.xml:
860           Fix playbin/decodebin examples, update docs a bit, mention bus
861           instead of signals in various places, mention kmplayer and
862           kaffeine since they have a working GStreamer backend in the KDE
863           section.
864
865 2005-06-30  Wim Taymans  <wim@fluendo.com>
866
867         * CHANGES-0.9:
868         * docs/design/draft-ghostpads.txt:
869         * docs/design/draft-push-pull.txt:
870         * docs/design/draft-query.txt:
871         * docs/design/part-TODO.txt:
872         * docs/design/part-query.txt:
873         Added CHANGES-0.9 doc, updated status of other docs.
874         
875         * gst/gstquery.h:
876         Remove "hmm" macro
877
878 2005-06-30  Wim Taymans  <wim@fluendo.com>
879
880         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
881         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
882         (gst_base_sink_change_state):
883         * gst/base/gstbasesink.h:
884         Some tweaks, only EOS and a buffer complete a preroll.
885
886 2005-06-30  Andy Wingo  <wingo@pobox.com>
887
888         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
889         activate_push down to the internal pad as well.
890
891 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
892
893         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
894
895         * gst/gsttaginterface.c:
896           Some documentation fixes (#307394 and #307397).
897
898 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
899
900         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
901
902         * gst/gstvalue.c: (gst_value_intersect_list):
903           Fix memleak (#309125).
904
905 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
906
907         * docs/manual/advanced-dataaccess.xml:
908           Fix fakesrc example to compile; doesn't work, bug somewhere...?
909         * docs/manual/basics-pads.xml:
910           Add reference for filtered caps to above chapter.
911
912 2005-06-30  Wim Taymans  <wim@fluendo.com>
913
914         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
915         (gst_bin_change_state):
916         Probes are gone.
917         Lame attempt at making the state change function a bit
918         more readable.
919
920 2005-06-30  Wim Taymans  <wim@fluendo.com>
921
922         * docs/design/part-clocks.txt:
923         * docs/design/part-element-sink.txt:
924         * docs/design/part-events.txt:
925         * docs/design/part-preroll.txt:
926         * docs/design/part-states.txt:
927         Some more tweeks and additions to the docs.
928
929 2005-06-30  Wim Taymans  <wim@fluendo.com>
930
931         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
932         (default_have_data), (gst_pad_class_init), (gst_pad_init),
933         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
934         (gst_pad_check_pull_range), (gst_pad_get_range),
935         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
936         * gst/gstpad.h:
937         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
938         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
939         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
940         (gst_pad_remove_buffer_probe):
941         Removed atomic operations, use existing LOCK.
942         Move exception handling out of main code path.
943
944 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
945
946         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
947         (silly_return_true_function), (gst_pad_class_init),
948         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
949         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
950         (gst_pad_send_event):
951           Fix accumulator, add default value by using _emitv() instead
952           of _emit() for signal emission.
953
954 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
955
956         * docs/manual/advanced-dataaccess.xml:
957         * examples/manual/Makefile.am:
958           Add probe example.
959         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
960           Make work (??).
961
962 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
963
964         * gst/elements/gstfilesink.c: (gst_filesink_render):
965           Simplify code so that we don't have to handle short
966           writes and return GST_FLOW_ERROR if an error occured.
967
968 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
969
970         * docs/gst/gstreamer-docs.sgml:
971           Remove probes more.
972
973 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
974
975         * docs/gst/gstreamer-sections.txt:
976         * docs/gst/tmpl/gstpad.sgml:
977         * docs/gst/tmpl/gstprobe.sgml:
978         * gst/Makefile.am:
979         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
980         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
981         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
982         (gst_pad_push_event), (gst_pad_send_event):
983         * gst/gstpad.h:
984         * gst/gstutils.c: (gst_pad_add_data_probe),
985         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
986         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
987         (gst_pad_remove_buffer_probe):
988         * gst/gstutils.h:
989           Remove old probes, add new g-signal-based probes and some utility
990           functions.
991
992 2005-06-29  Edward Hervey  <edward@fluendo.com>
993
994         * gst/gstelementfactory.c:
995         * gst/gstutils.h:
996         * gst/gstutils.c:
997         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
998         the definition to the header file.
999
1000 2005-06-29  Andy Wingo  <wingo@pobox.com>
1001
1002         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1003         plugins from the source directory.
1004
1005 2005-06-29  Wim Taymans  <wim@fluendo.com>
1006
1007         * docs/gst/tmpl/gstbuffer.sgml:
1008         * docs/gst/tmpl/gstclock.sgml:
1009         Some fixings for blantently wrong text.
1010
1011 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1012
1013         * check/Makefile.am:
1014         * gst/gst.c: (add_path_func), (init_pre):
1015         * gst/gstregistry.c: (gst_registry_add_path):
1016           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1017           only scan the GST_PLUGIN_PATH locations, and not add
1018           system locations
1019
1020 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1021
1022         * docs/gst/gstreamer-sections.txt:
1023         * docs/gst/tmpl/gstbasesrc.sgml:
1024         * gst/gstelement.c:
1025         * gst/gstelement.h:
1026         * gst/gstevent.c:
1027         * gst/gstutils.c:
1028           doc fixes
1029
1030 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1031
1032         * docs/manual/advanced-autoplugging.xml:
1033           Fix autoplugging example.
1034
1035 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1036
1037         * docs/manual/advanced-autoplugging.xml:
1038         * docs/manual/mime-world.fig:
1039           Try to get autoplugging working, fix type detection. Fix text
1040           in hello-world image.
1041
1042 2005-06-29  Wim Taymans  <wim@fluendo.com>
1043
1044         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1045         (gst_base_sink_change_state):
1046         Small debug line.
1047
1048         * gst/gstclock.h:
1049         map SIGNAL and BROADCAST to the right function.
1050
1051         * gst/gstobject.h:
1052         Remove redundant braces.
1053
1054         * gst/gstpad.c: (gst_pad_set_caps):
1055         Don't call setcaps function when reseting caps to NULL.
1056
1057         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1058         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1059         (gst_system_clock_id_unschedule):
1060         Use BROADCAST as this is what we do.
1061
1062 2005-06-29  Wim Taymans  <wim@fluendo.com>
1063
1064         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1065         We are actually prerolling before commiting the state
1066         change. 
1067
1068 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1069
1070         * docs/manual/advanced-clocks.xml:
1071         * docs/manual/advanced-interfaces.xml:
1072         * docs/manual/advanced-metadata.xml:
1073         * docs/manual/advanced-position.xml:
1074         * docs/manual/advanced-schedulers.xml:
1075         * docs/manual/advanced-threads.xml:
1076         * docs/manual/appendix-porting.xml:
1077         * docs/manual/basics-bins.xml:
1078         * docs/manual/basics-bus.xml:
1079         * docs/manual/basics-elements.xml:
1080         * docs/manual/basics-helloworld.xml:
1081         * docs/manual/basics-pads.xml:
1082         * docs/manual/highlevel-components.xml:
1083         * docs/manual/manual.xml:
1084         * docs/manual/thread.fig:
1085           Update (until threads/scheduling) Application Development Manual;
1086           remove GstThread, add GstBus, add simple porting checklist, add
1087           documentation for tag writing, clocks, make all examples until this
1088           part compile and run.
1089         * examples/manual/Makefile.am:
1090           Update from changes to Application Development Manual; add bus
1091           example, remove thread example.
1092
1093 2005-06-28  Wim Taymans  <wim@fluendo.com>
1094
1095         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1096         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1097         (gst_bus_source_dispatch):
1098         Add debugging messages.
1099         Make internal methods static.
1100         Handle the case where the bus is flushed in the handler.
1101         
1102         * gst/gstelement.c: (gst_element_get_bus):
1103         Fix refcount in _get_bus();
1104
1105         * gst/gstpipeline.c: (gst_pipeline_change_state),
1106         (gst_pipeline_get_clock_func):
1107         Clock refcounting fixes.
1108         Handle the case where preroll timed out more gracefully.
1109         
1110         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1111         Clean up the internal thread in dispose. This is needed
1112         for subclasses that actually get disposed.
1113         
1114         * gst/schedulers/threadscheduler.c:
1115         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1116         (gst_thread_scheduler_dispose):
1117         Free thread pool in dispose.
1118
1119 2005-06-28  Andy Wingo  <wingo@pobox.com>
1120
1121         * tests/network-clock-utils.scm (debug, print-event): New utils.
1122
1123         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1124         (*packet-loss*): Unified loss probability.
1125         (network-time): Report out-of-band events.
1126
1127         * tests/plot-data: Add support for out-of-band events. Hack it
1128         into this script instead of passing it down the pipe; should fix
1129         this later.
1130
1131 2005-06-28  Wim Taymans  <wim@fluendo.com>
1132
1133         * docs/gst/gstreamer.types:
1134         * docs/gst/tmpl/gstbasesrc.sgml:
1135         * docs/gst/tmpl/gstpad.sgml:
1136         Docs fixes.
1137
1138 2005-06-28  Wim Taymans  <wim@fluendo.com>
1139
1140         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1141         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1142         (gst_proxy_pad_do_fixatecaps):
1143         Correctly proxy the check_pull_range function.
1144
1145 2005-06-28  Andy Wingo  <wingo@pobox.com>
1146
1147         * tests/network-clock.scm: Removed need for slib.
1148         
1149 2005-06-28  Wim Taymans  <wim@fluendo.com>
1150
1151         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1152         (gst_basesink_preroll_queue_flush):
1153         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1154         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1155         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1156         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1157         (gst_proxy_pad_set_property):
1158         * gst/gstpad.c:
1159         * gst/gstpad.h:
1160         * gst/gstqueue.c: (gst_queue_init):
1161         The deprecated pad loop function is removed now.
1162
1163 2005-06-28  Andy Wingo  <wingo@pobox.com>
1164
1165         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1166         New parameters, simulate network packet loss.
1167
1168         * tests/network-clock-utils.scm: Initialize the RNG.
1169
1170 2005-06-28  Wim Taymans  <wim@fluendo.com>
1171
1172         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1173         (gst_basesink_event), (gst_basesink_deactivate):
1174         Flushing the preroll queue always needs to unlock the waiters.
1175
1176 2005-06-28  Edward Hervey  <edward@fluendo.com>
1177
1178         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1179         Wheen a seek was successful on a pipeline, set the stream_time to the
1180         seek offset in order to have a synchronized stream_time.
1181
1182 2005-06-28  Wim Taymans  <wim@fluendo.com>
1183
1184         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1185         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1186         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1187         (gst_proxy_pad_do_fixatecaps):
1188         Call wrapper function instead of just calling the function
1189         pointers. This takes care of any locking and whatmore.
1190
1191 2005-06-28  Wim Taymans  <wim@fluendo.com>
1192
1193         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1194         (gst_pad_pull_range):
1195         * gst/gstpad.h:
1196         CONNECTED -> LINKED.
1197
1198 2005-06-28  Andy Wingo  <wingo@pobox.com>
1199
1200         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1201         source-munging commit!!!
1202
1203         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1204         (gst_object_sink): Take gpointer arguments, not GstObject --
1205         avoids casts. Like GLib.
1206
1207         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1208         activate.
1209
1210 2005-06-27  Andy Wingo  <wingo@pobox.com>
1211
1212         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1213         remaining buffer.
1214
1215         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1216         returns a sorted copy of the trace list.
1217         (gst_alloc_trace_print_live): New API, only prints traces with
1218         live objects. Sort the list.
1219         (gst_alloc_trace_print_all): Sort the list.
1220         (gst_alloc_trace_print): Align columns.
1221
1222         * gst/elements/gstttypefindelement.c:
1223         * gst/elements/gsttee.c:
1224         * gst/base/gstbasesrc.c:
1225         * gst/base/gstbasesink.c:
1226         * gst/base/gstbasetransform.c:
1227         * gst/gstqueue.c: Adapt for pad activation changes.
1228
1229         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1230         sched.
1231         (gst_pipeline_dispose): Drop ref on sched.
1232
1233         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1234         (gst_pad_activate_default): Push mode by default.
1235         (pre_activate_switch, post_activate_switch): New stubs, things to
1236         do before and after switching activation modes on pads.
1237         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1238         the pad's activate function to choose which mode to activate.
1239         Shortcut on deactivation and call the right function directly.
1240         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1241         mode.
1242         (gst_pad_activate_push): New API, same for push mode.
1243         (gst_pad_set_activate_function) 
1244         (gst_pad_set_activatepull_function) 
1245         (gst_pad_set_activatepush_function): Setters for new API.
1246
1247         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1248         Trace all miniobjects.
1249         (gst_mini_object_make_writable): Unref the arg if we copy, like
1250         gst_caps_make_writable.
1251
1252         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1253
1254         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1255         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1256         Adapt for new pad API.
1257
1258         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1259
1260         * gst/gstelement.h:
1261         * gst/gstelement.c (gst_element_iterate_src_pads) 
1262         (gst_element_iterate_sink_pads): New API functions.
1263         
1264         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1265         should fold into gstiterator.c in some form.
1266         (gst_element_pads_activate): Simplified via use of fold and
1267         delegation of decisions to gstpad->activate.
1268
1269         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1270         help in debugging.
1271
1272         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1273         class once in init, like gstmessage. Didn't run into this issue
1274         but it seems correct. Don't initialize a trace, gstminiobject does
1275         that.
1276
1277         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1278         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1279         to the bus.
1280         (assert_live_count): New util function, uses alloc traces to check
1281         cleanup.
1282
1283         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1284         To be modified when unlink drops the internal pad.
1285
1286 2005-06-27  Wim Taymans  <wim@fluendo.com>
1287
1288         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1289         (gst_bin_change_state):
1290         Cleanup the get_state() function a little, make sure it
1291         iterates the same set of elements.
1292         Added stub iterate_state_order().
1293
1294 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1295
1296         * docs/gst/gstreamer-docs.sgml:
1297         * docs/gst/gstreamer-sections.txt:
1298         * docs/gst/gstreamer.types:
1299         * docs/gst/tmpl/gstbasesink.sgml:
1300         * docs/gst/tmpl/gstbasesrc.sgml:
1301         * docs/gst/tmpl/gstbasetransform.sgml:
1302         * docs/gst/tmpl/gstelement.sgml:
1303         * docs/gst/tmpl/gstiterator.sgml:
1304         * gst/base/gstbasesrc.c:
1305         * gst/base/gstbasesrc.h:
1306         * gst/base/gstbasetransform.h:
1307         * gst/gstelement.c:
1308         * gst/gstiterator.h:
1309           adding basetransform and iterator docs
1310
1311 2005-06-27  Andy Wingo  <wingo@pobox.com>
1312
1313         * docs/design/part-activation.txt: Notes on how activation should
1314         work -- not quite implemented yet.
1315
1316 2005-06-25  Wim Taymans  <wim@fluendo.com>
1317
1318         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1319         At least get the chain function correct, needs more
1320         fixing.
1321
1322 2005-06-25  Wim Taymans  <wim@fluendo.com>
1323
1324         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1325         (gst_basesink_handle_object), (gst_basesink_event),
1326         (gst_basesink_do_sync), (gst_basesink_handle_event),
1327         (gst_basesink_change_state):
1328         * gst/gsttask.h:
1329         Right, two problems here: ghostpads don't take locks and
1330         glib _rec_mutex_lock_full() with depth==0 still locks.
1331         Catch illegal locking and g_warn them.
1332
1333 2005-06-25  Wim Taymans  <wim@fluendo.com>
1334
1335         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1336         Have to check for completion now...
1337
1338 2005-06-25  Wim Taymans  <wim@fluendo.com>
1339
1340         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1341         (gst_basesink_handle_object), (gst_basesink_event),
1342         (gst_basesink_do_sync), (gst_basesink_handle_event),
1343         (gst_basesink_change_state):
1344         * gst/gstpad.h:
1345         Unlock STREAM_LOCK whatever the recursion was.
1346
1347 2005-06-25  Wim Taymans  <wim@fluendo.com>
1348
1349         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1350         (gst_basesink_preroll_queue_empty),
1351         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1352         (gst_basesink_event), (gst_basesink_do_sync),
1353         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1354         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1355         (gst_basesink_change_state):
1356         Reworked the base sink, handle event and buffer serialisation
1357         correctly and removed possible deadlock.
1358         Handle EOS correctly.
1359
1360 2005-06-25  Wim Taymans  <wim@fluendo.com>
1361
1362         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1363         (gst_pipeline_change_state):
1364         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1365         Allow elements to post EOS in the state change function.
1366         Fix up -launch, make it exit the poll loop when the
1367         pipeline actually changed state.
1368         Fix up warning parsing in -launch.
1369
1370 2005-06-25  Wim Taymans  <wim@fluendo.com>
1371
1372         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1373         (gst_tee_sink_activate):
1374         Core takes STREAM_LOCK for us now.
1375
1376 2005-06-25  Wim Taymans  <wim@fluendo.com>
1377
1378         * gst/gstelement.c: (gst_element_get_state_func),
1379         (gst_element_set_state):
1380         * gst/gstelement.h:
1381         * gst/gstmessage.c: (gst_message_parse_error),
1382         (gst_message_parse_warning):
1383         Keep track of current target state while performing a state
1384         change so that subclasses can do something interesting.
1385         Fix parsing of warning/error messages when GError is NULL.
1386
1387 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1388
1389         * docs/gst/Makefile.am:
1390         * docs/gst/gstreamer-docs.sgml:
1391         * docs/gst/gstreamer-sections.txt:
1392         * docs/gst/gstreamer.types:
1393         * docs/gst/tmpl/gstbasesink.sgml:
1394         * docs/gst/tmpl/gstbasesrc.sgml:
1395         * docs/gst/tmpl/gstbin.sgml:
1396         * docs/gst/tmpl/gstcompat.sgml:
1397         * docs/gst/tmpl/gstfakesink.sgml:
1398         * docs/gst/tmpl/gstfakesrc.sgml:
1399         * docs/gst/tmpl/gstfilesink.sgml:
1400         * docs/gst/tmpl/gstfilesrc.sgml:
1401         * docs/gst/tmpl/gstindex.sgml:
1402         * docs/manual/appendix-quotes.xml:
1403         * gst/base/gstbasesrc.h:
1404         * gst/elements/gstfakesrc.h:
1405         * gst/gstmessage.h:
1406           start pulling in base classes and elements in our docs
1407
1408 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1409
1410         * docs/gst/Makefile.am:
1411         * docs/libs/Makefile.am:
1412           fixed make distcheck with gtk-doc 1.3
1413
1414 2005-06-23  Wim Taymans  <wim@fluendo.com>
1415
1416         * gst/gstelement.c: (gst_element_get_state_func),
1417         (gst_element_set_state), (gst_element_change_state):
1418         When the state did not change, also report NO_PREROLL
1419         when it matters.
1420
1421 2005-06-23  Wim Taymans  <wim@fluendo.com>
1422
1423         * gst/gstpad.c: (gst_pad_event_default):
1424         * gst/gstqueue.c: (gst_queue_loop):
1425         No unsafe task pausing please.
1426
1427 2005-06-23  Wim Taymans  <wim@fluendo.com>
1428
1429         * gst/schedulers/threadscheduler.c:
1430         (gst_thread_scheduler_task_start),
1431         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1432         Ref the task before pushing it on the threadpool. This
1433         makes sure that we have a ref when the threadfunction is
1434         actually called.
1435
1436 2005-06-23  Andy Wingo  <wingo@pobox.com>
1437
1438         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1439         offset is greater than the file's size.
1440
1441         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1442         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1443         * gst/gstobject.c (gst_object_class_init): Make the class lock
1444         recursive. Wim won't let me drop deep_notify. Decodebin works
1445         again, whoopdy doo.
1446
1447         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1448         internal pad, and hacks accordingly. Doesn't do it on the target
1449         pad because we change its caps. Probably catches all cases of
1450         interest tho.
1451         (gst_ghost_pad_set_property): Connect to notify::caps as
1452         appropritate.
1453
1454         * tests/network-clock.scm (plot-simulation): Pipe data to the
1455         elite python skript.
1456
1457         * tests/network-clock-utils.scm (define-parameter): New macro,
1458         defines a parameter that can be set via the command line.
1459         (set-parameter!, parse-parameter-arguments): Command line args
1460         parser.
1461
1462         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1463         stdin.
1464
1465 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1466
1467         * gst/elements/gsttypefindelement.c:
1468         (gst_type_find_element_handle_event):
1469           Don't restart typefinding on a discont.
1470         * gst/gstelement.c: (gst_element_set_state):
1471           Debug spelling fix.
1472         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1473           Allow changing mode of an active pad.
1474           Debug output fixes.
1475         * gst/registries/gstlibxmlregistry.c: (load_feature):
1476           Don't cast a static pad template to a normal pad template.
1477
1478 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1479
1480         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1481         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1482           remove gst_strtoll completely, since it didn't actually do
1483           anything more than what g_ascii_strtoull already does.
1484           check for range errors when deserializing
1485           do a cast for the unsigned cases; but further fixing needs
1486           a decision on what the interpretation of "(int)" and
1487           deserialization should be for values that fall outside the
1488           type's boundaries (ie, refuse, or interpret as casting)
1489
1490 2005-06-23  Wim Taymans  <wim@fluendo.com>
1491
1492         * check/Makefile.am:
1493         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1494         * docs/design/part-live-source.txt:
1495         * docs/design/part-states.txt:
1496         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1497         (gst_basesrc_set_live), (gst_basesrc_is_live),
1498         (gst_basesrc_get_range), (gst_basesrc_activate),
1499         (gst_basesrc_change_state):
1500         * gst/base/gstbasesrc.h:
1501         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1502         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1503         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1504         * gst/gstelement.c: (gst_element_get_state_func),
1505         (gst_element_set_state):
1506         * gst/gstelement.h:
1507         * gst/gsttypes.h:
1508         * tools/gst-launch.c: (event_loop), (main):
1509         Added support for live sources and other elements that
1510         cannot do preroll.
1511         Updated design docs, added live-source design doc.
1512         Implemented live source functionality in basesrc
1513         Fix error condition in _bin_get_state()
1514         Implement live source handling in -launch.
1515         Added check for live sources.
1516         Fixed case in GstBin where elements were changed state
1517         multiple times.
1518
1519
1520 2005-06-23  Andy Wingo  <wingo@pobox.com>
1521
1522         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1523         borken refcounting.
1524
1525         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1526         gst_caps_replace takes care of this for us.
1527
1528         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1529         gst_pad_set_caps on the target, not just its setcaps() function.
1530
1531         * tests/network-clock.scm: 
1532         * tests/network-clock-utils.scm: A network clock simulator.
1533         Something of an algorithmic testbed before doing something in C.
1534
1535 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1536
1537         * check/Makefile.am:
1538         * check/gst/capslist.h:
1539           copy over from 0.8, and add two with bitmasks specified with
1540           (int) 0xFF...
1541         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1542           add test to parse everything from capslist.h
1543         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
1544         (main):
1545           add test for structure deserialization
1546         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1547           add tests for deserialization of strings to int types
1548         * gst/gststructure.c: (gst_structure_nth_field_name):
1549         * gst/gststructure.h:
1550           add a way to get the name of a field referenced by index
1551         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1552           instead of checking if the resulting long long lies between
1553           min and max, we check if the long long would fit into
1554           a number of bytes for the final type.
1555           This fixes cases where a string represents 2^32 - 1, which
1556           when cast to int would be the (valid) -1, but is bigger than
1557           G_MAXINT
1558
1559 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1560
1561         * gst/parse/grammar.y:
1562           add a log line for type deserialization
1563
1564 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1565
1566         * check/gst/gstvalue.c: (START_TEST):
1567         * gst/gstvalue.c: (gst_value_deserialize):
1568           return long long, not int, so gint64 deserialization actually
1569           works.  Is there any flag that makes the compiler check this ?
1570           Fixes #308559
1571
1572 2005-06-22  Wim Taymans  <wim@fluendo.com>
1573
1574         * gst/gstbuffer.h:
1575         Added convenience macros for setting buffers in GValue.
1576
1577 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1578
1579         * check/gst/.cvsignore:
1580         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1581           add a test deserializing int64, and comment part out because
1582           it fails, yay !
1583
1584 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1585
1586         * check/Makefile.am:
1587         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
1588         * testsuite/Makefile.am:
1589         * testsuite/caps/Makefile.am:
1590         * testsuite/caps/value_serialize.c:
1591         * testsuite/test_gst_init.c:
1592           move a value_serialize test over
1593
1594 2005-06-20  Wim Taymans  <wim@fluendo.com>
1595
1596         * gst/gstpad.c:
1597         Small doc updates.
1598         
1599         * gst/gstvalue.c: (gst_value_compare_buffer),
1600         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
1601         (gst_value_compare_flags), (gst_value_serialize_flags),
1602         (gst_value_deserialize_flags), (_gst_value_initialize):
1603         Fix serialisation of buffers, they are not boxed types anymore
1604
1605 2005-06-20  Wim Taymans  <wim@fluendo.com>
1606
1607         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1608         Testcase to show error in buffer-on-caps serialisation.
1609
1610 2005-06-20  Andy Wingo  <wingo@pobox.com>
1611
1612         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
1613         will be adding to later.
1614
1615         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
1616         if its socks fill with rocks.
1617         (gst_system_clock_obtain): Set the name on object construction.
1618         Avoid double-checked locking.
1619
1620 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
1621
1622         * gst/gsturi.c: (gst_element_make_from_uri):
1623           Fix potential endless loop.
1624
1625 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1626
1627         * check/Makefile.am:
1628           add gsttag
1629         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
1630         (main):
1631           move over from testsuite dir and clean up
1632         * configure.ac:
1633         * gst/gsttag.c:
1634         * testsuite/Makefile.am:
1635         * testsuite/tags/.cvsignore:
1636         * testsuite/tags/Makefile.am:
1637         * testsuite/tags/merge.c:
1638           remove testsuite/tags
1639
1640 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1641
1642         * docs/gst/gstreamer-sections.txt:
1643         * docs/gst/tmpl/gstenumtypes.sgml:
1644         * win32/gstenumtypes.c:
1645           clean up documentation build a little
1646
1647 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1648
1649         * check/gstcheck.h:
1650           add macros for checking refcounts on objects and caps
1651         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
1652           add some more unit tests
1653         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1654         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
1655           fix leaked refcounts (I hope :)) so unittest works
1656         * gst/gstpad.h:
1657           whitespace removal
1658
1659 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1660
1661         * configure.ac: back to HEAD
1662
1663 === release 0.9.1 ===
1664
1665 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1666
1667         * NEWS:
1668         * RELEASE:
1669           updated
1670
1671 2005-06-17  Andy Wingo  <wingo@pobox.com>
1672
1673         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
1674         assert; it's always possible that the pad gets deactivated in
1675         between the checks in gstpad.c and the implementation. Rely on
1676         finish_preroll() to return a FLUSHING or similar instead of on the
1677         assert.
1678         
1679         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
1680         clock and post an EOS message if we come out of finish_preroll in
1681         the playing state.
1682
1683 2005-06-16  David Schleef  <ds@schleef.org>
1684
1685         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
1686         (gst_capsfilter_set_property): Allow NULL as possible value
1687         for filter_caps property, indicating GST_CAPS_ANY.
1688
1689 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1690
1691         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
1692           fix debug output
1693         * gst/schedulers/Makefile.am:
1694           use libgst prefix
1695         * gstreamer.spec.in:
1696           fix spec for it
1697
1698 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1699
1700         * gstreamer.spec.in:
1701           clean up
1702
1703 2005-06-08  Andy Wingo  <wingo@pobox.com>
1704
1705         * gst/gstutils.c: RPAD fixes all around.
1706         (gst_element_link_pads): Refcounting fixes.
1707
1708         * tools/gst-inspect.c:
1709         * tools/gst-xmlinspect.c:
1710         * parse/grammar.y:
1711         * gst/base/gsttypefindhelper.c:
1712         * gst/base/gstbasesink.c:
1713         * gst/gstqueue.c: RPAD fixes.
1714
1715         * gst/gstghostpad.h:
1716         * gst/gstghostpad.c: New ghost pad implementation as full proxy
1717         pads. The tricky thing is they provide both source and sink
1718         interfaces, since they proxy the internal pad for the external
1719         pad, and vice versa. Implement with lower-level ProxyPad objects,
1720         with the interior proxy pad as a child of the exterior ghost pad.
1721         Should write a doc on this.
1722         
1723         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
1724         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
1725         gst_object API.
1726         
1727         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
1728         pads are real pads. No ghost pads in this file. Not documenting
1729         the myriad s/RPAD/PAD/ and REALIZE fixes.
1730         (gst_pad_class_init): Add properties for "direction" and
1731         "template". Both are construct-only, so they can't change during
1732         the life of the pad. Fixes properly deriving from GstPad.
1733         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
1734         derived objects, just set properties when creating the objects via
1735         g_object_new.
1736         (gst_pad_get_parent): Implement as a function, return NULL if the
1737         parent is not an element.
1738         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
1739         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
1740         
1741         * gst/gstobject.c (gst_object_class_init): Make name a construct
1742         property. Don't set it in the object init.
1743
1744         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
1745         with UNKNOWN direction.
1746         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
1747         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
1748         (gst_element_remove_pad): Remove ghost-pad special cases.
1749         (gst_element_pads_activate): Remove rpad cruft.
1750
1751         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
1752         catch the pad's-parent-not-an-element case.
1753
1754         * gst/gst.h: Include gstghostpad.h.
1755
1756         * gst/gst.c (init_post): No more real, ghost pads.
1757
1758         * gst/Makefile.am: Add gstghostpad.[ch].
1759
1760         * check/Makefile.am:
1761         * check/gst/gstbin.c:
1762         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
1763         into a bin creates ghost pads, and that the refcounts are right.
1764         Partly moved from gstbin.c.
1765
1766 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1767
1768         * check/gst-libs/.cvsignore:
1769         * check/gst/.cvsignore:
1770         * check/pipelines/.cvsignore:
1771           ignore more
1772         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
1773         (START_TEST), (cleanup_suite), (main):
1774           add some tests related to cleanup after running pipelines
1775
1776 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1777
1778         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
1779           add a testsuite for GstBuffer
1780
1781 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1782
1783         * gst/gstminiobject.h:
1784           add defines for accessing the refcount
1785
1786 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
1787
1788         * Makefile.am: added support for html unit test coverage reports
1789
1790 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
1791
1792         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
1793           Free existing caps if the capsfilter changes. Add a FIXME about
1794           setting those caps on the pads.
1795
1796         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
1797           Before adding a ghost pad to a parent bin, check that there isn't
1798           already one for the element on the bin. Prevents infinite recursion
1799           when using decodebin in parse pipelines. Andy says he'll rewrite the
1800           way this works anyway, so ignore the hack.
1801
1802 2005-06-02  Andy Wingo  <wingo@pobox.com>
1803
1804         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
1805         file size, pass it on to the type find helper.
1806
1807         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
1808         segment_start and segment_end properly according to the seek
1809         method. Segment_end is still a bit flaky because offset can be
1810         negative for CUR and END cases, but it takes -1 as an "unset"
1811         value.
1812
1813 2005-06-02  Wim Taymans  <wim@fluendo.com>
1814
1815         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
1816         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
1817         (gst_basesink_activate):
1818         * gst/base/gstbasesink.h:
1819         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1820         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1821         (gst_pad_query), (gst_pad_start_task):
1822         * gst/gstpad.h:
1823         * gst/gstqueue.c: (gst_queue_bufferalloc),
1824         (gst_queue_handle_sink_event), (gst_queue_chain):
1825         Bufferalloc: return GstFlowReturn to more accuratly report
1826         why allocation failed.
1827
1828 2005-06-02  Wim Taymans  <wim@fluendo.com>
1829
1830         * gst/gstpipeline.c: (gst_pipeline_send_event):
1831         Take snapshot of state without blocking.
1832
1833 2005-06-02  Wim Taymans  <wim@fluendo.com>
1834
1835         * docs/design/part-TODO.txt:
1836         * docs/design/part-caps.txt:
1837         * docs/design/part-clocks.txt:
1838         * docs/design/part-negotiation.txt:
1839         * docs/design/part-preroll.txt:
1840         Small doc updates 
1841
1842 2005-05-30  Wim Taymans  <wim@fluendo.com>
1843
1844         * gst/elements/gstidentity.c: (gst_identity_event),
1845         (gst_identity_transform), (gst_identity_get_property):
1846         Protect last_message property as it is accessed from
1847         multiple threads.
1848
1849 2005-05-30  Wim Taymans  <wim@fluendo.com>
1850
1851         * gst/gstelement.c: (gst_element_init),
1852         (gst_element_pads_activate), (gst_element_change_state):
1853         Slicker pad activation code.
1854
1855 2005-05-30  Wim Taymans  <wim@fluendo.com>
1856
1857         * gst/Makefile.am:
1858         * gst/gstelement.h:
1859         * gst/gstelementfactory.h:
1860         * gst/gsttypes.h:
1861         Move elementfactory methods to separate .h file.
1862
1863 2005-05-30  Wim Taymans  <wim@fluendo.com>
1864
1865         * docs/design/part-overview.txt:
1866         * gst/gstsystemclock.h:
1867         Small typo fixes, doc updates.
1868
1869 2005-05-30  Wim Taymans  <wim@fluendo.com>
1870
1871         * gst/gst.c: (gst_init_get_popt_table), (init_post),
1872         (init_popt_callback):
1873         Remove cpu-opt flag.
1874
1875 2005-05-30  Wim Taymans  <wim@fluendo.com>
1876
1877         * gst/gstbuffer.c: (gst_subbuffer_finalize),
1878         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
1879         * gst/gstbuffer.h:
1880         Avoid typechecking in places where not needed.
1881         Added accessor for malloc_data.
1882
1883 2005-05-30  Wim Taymans  <wim@fluendo.com>
1884
1885         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
1886         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
1887         (gst_pad_configure_sink), (gst_pad_configure_src),
1888         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
1889         (gst_pad_start_task):
1890         Propagate errors from _set_caps() in configure_src/sink
1891         functions instead of returning TRUE.
1892         FLUSH events can travel up and downstream
1893
1894
1895 2005-05-30  Wim Taymans  <wim@fluendo.com>
1896
1897         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1898         (gst_basesink_activate):
1899         Handle EOS in preroll.
1900
1901 2005-05-30  Wim Taymans  <wim@fluendo.com>
1902
1903         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1904         (gst_queue_loop), (gst_queue_handle_src_event):
1905         Remove old pieces of code
1906         Flushing the queue in an upstream event is a very bad idea.
1907
1908 2005-05-26  Andy Wingo  <wingo@pobox.com>
1909
1910         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
1911         gst_value_set_mini_object so as to add a ref on the object (which
1912         will be removed when the value is unset).
1913
1914         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
1915         arg type in ::handoff.
1916
1917         * gst/gstelement.c (gst_element_change_state): Also deactivate
1918         pads in READY->NULL, just in case the element didn't make it to
1919         PAUSED. Wingo tested, Wim approved.
1920
1921 2005-05-26  Wim Taymans  <wim@fluendo.com>
1922
1923         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1924         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1925         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
1926         A flushing pad cannot be used to alloc_buffer from.
1927
1928 2005-05-26  Wim Taymans  <wim@fluendo.com>
1929
1930         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
1931         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
1932         (gst_bus_source_dispatch), (gst_bus_source_finalize),
1933         (gst_bus_create_watch), (gst_bus_add_watch_full):
1934         * gst/gstbus.h:
1935         Implement a real GSource and use g_main_context_wakeup() to
1936         signal new messages instead of the socketpair.
1937
1938 2005-05-25  Wim Taymans  <wim@fluendo.com>
1939
1940         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
1941         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
1942         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1943         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1944         (gst_pad_send_event), (gst_pad_start_task):
1945         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
1946         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
1947         (gst_queue_sink_activate), (gst_queue_src_activate),
1948         (gst_queue_change_state):
1949         * gst/gstqueue.h:
1950         Fix state changes for non sinks. We now change sinks, then elements
1951         with unconnected srcpads, then the rest.
1952         More efficient queue unlocking in flush and state changes.
1953         Set the pad activate mode even if it does not have an activate
1954         function.
1955
1956 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1957
1958         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
1959           Don't go in pull mode for non-seekable sources.
1960         * gst/elements/gsttypefindelement.h:
1961         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1962         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
1963         (free_entry), (stop_typefinding),
1964         (gst_type_find_element_handle_event), (find_peek),
1965         (gst_type_find_element_chain), (do_pull_typefind),
1966         (gst_type_find_element_change_state):
1967           Allow typefinding (w/o seeking) in push-mode, simplified version
1968           of what was in 0.8.
1969         * gst/gstutils.c: (gst_buffer_join):
1970         * gst/gstutils.h:
1971           gst_buffer_join() from 0.8.
1972
1973 2005-05-25  Wim Taymans  <wim@fluendo.com>
1974
1975         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1976         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1977         (gst_pad_send_event), (gst_pad_start_task):
1978         Disable attempt at mode switching until it is figured out.
1979
1980 2005-05-25  Wim Taymans  <wim@fluendo.com>
1981
1982         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
1983         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1984         (gst_basesink_finish_preroll), (gst_basesink_chain),
1985         (gst_basesink_loop), (gst_basesink_activate),
1986         (gst_basesink_change_state):
1987         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
1988         (gst_basesrc_get_range), (gst_basesrc_loop),
1989         (gst_basesrc_activate):
1990         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1991         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
1992         (gst_real_pad_init), (gst_real_pad_set_property),
1993         (gst_real_pad_get_property), (gst_pad_set_active),
1994         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
1995         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
1996         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
1997         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
1998         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1999         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2000         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2001         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2002         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2003         (gst_pad_stop_task):
2004         * gst/gstpad.h:
2005         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2006         (gst_queue_loop), (gst_queue_src_activate):
2007         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2008         (gst_task_get_state):
2009         * gst/gsttask.h:
2010         * gst/schedulers/threadscheduler.c:
2011         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2012         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2013         in task function.
2014         Remove ACTIVE pad flag, use FLUSHING everywhere
2015         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2016         functions.
2017         Add locks around IS_FLUSHING when reading.
2018         Take STREAM lock in chain(), get_range() functions so plugins
2019         don't need to take it anymore.
2020         
2021
2022
2023 2005-05-25  Wim Taymans  <wim@fluendo.com>
2024
2025         * tools/gst-launch.c: (event_loop):
2026         Unref message after using its contents instead of
2027         before.
2028
2029 2005-05-24  Wim Taymans  <wim@fluendo.com>
2030
2031         * docs/design/draft-ghostpads.txt:
2032         * docs/design/draft-push-pull.txt:
2033         * docs/design/draft-query.txt:
2034         * docs/design/part-overview.txt:
2035         Docs updates, added general overview doc.
2036
2037 2005-05-21  David Schleef  <ds@schleef.org>
2038
2039         * docs/gst/tmpl/old/GstBin.sgml:
2040         * docs/gst/tmpl/old/GstBuffer.sgml:
2041         * docs/gst/tmpl/old/GstCaps.sgml:
2042         * docs/gst/tmpl/old/GstClock.sgml:
2043         * docs/gst/tmpl/old/GstCompat.sgml:
2044         * docs/gst/tmpl/old/GstData.sgml:
2045         * docs/gst/tmpl/old/GstElement.sgml:
2046         * docs/gst/tmpl/old/GstEvent.sgml:
2047         * docs/gst/tmpl/old/GstIndex.sgml:
2048         * docs/gst/tmpl/old/GstStructure.sgml:
2049         * docs/gst/tmpl/old/GstTag.sgml:
2050         * docs/gst/tmpl/old/cothreads.sgml:
2051         * docs/gst/tmpl/old/cothreads_compat.sgml:
2052         * docs/gst/tmpl/old/gettext.sgml:
2053         * docs/gst/tmpl/old/gobject2gtk.sgml:
2054         * docs/gst/tmpl/old/grammar.tab.sgml:
2055         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2056         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2057         * docs/gst/tmpl/old/gst_private.sgml:
2058         * docs/gst/tmpl/old/gstaggregator.sgml:
2059         * docs/gst/tmpl/old/gstarch.sgml:
2060         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2061         * docs/gst/tmpl/old/gstbufferstore.sgml:
2062         * docs/gst/tmpl/old/gstdata_private.sgml:
2063         * docs/gst/tmpl/old/gstdisksink.sgml:
2064         * docs/gst/tmpl/old/gstdisksrc.sgml:
2065         * docs/gst/tmpl/old/gstelementfactory.sgml:
2066         * docs/gst/tmpl/old/gstextratypes.sgml:
2067         * docs/gst/tmpl/old/gstfakesink.sgml:
2068         * docs/gst/tmpl/old/gstfakesrc.sgml:
2069         * docs/gst/tmpl/old/gstfdsink.sgml:
2070         * docs/gst/tmpl/old/gstfdsrc.sgml:
2071         * docs/gst/tmpl/old/gstfilesink.sgml:
2072         * docs/gst/tmpl/old/gstfilesrc.sgml:
2073         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2074         * docs/gst/tmpl/old/gstidentity.sgml:
2075         * docs/gst/tmpl/old/gstindexfactory.sgml:
2076         * docs/gst/tmpl/old/gstmarshal.sgml:
2077         * docs/gst/tmpl/old/gstmd5sink.sgml:
2078         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2079         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2080         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2081         * docs/gst/tmpl/old/gstpipefilter.sgml:
2082         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2083         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2084         * docs/gst/tmpl/old/gstshaper.sgml:
2085         * docs/gst/tmpl/old/gstspider.sgml:
2086         * docs/gst/tmpl/old/gstspideridentity.sgml:
2087         * docs/gst/tmpl/old/gststatistics.sgml:
2088         * docs/gst/tmpl/old/gsttee.sgml:
2089         * docs/gst/tmpl/old/gsttimecache.sgml:
2090         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2091         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2092         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2093         * docs/gst/tmpl/old/types.sgml:
2094           I didn't intend to add these or check them in.
2095
2096 2005-05-19  David Schleef  <ds@schleef.org>
2097
2098         * configure.ac: Use -no-common everywhere.  In a sane world, it
2099           would be the default in libtool, because without it, you can't
2100           build DLLs on Windows.
2101         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2102         * docs/gst/gstreamer-sections.txt:
2103         * docs/gst/tmpl/gstcpu.sgml:
2104         * docs/gst/tmpl/gstdata.sgml:
2105         * docs/gst/tmpl/gstthread.sgml:
2106
2107 2005-05-19  David Schleef  <ds@schleef.org>
2108
2109         * gst/gstminiobject.c: (gst_value_set_mini_object),
2110         (gst_value_take_mini_object), (gst_value_get_mini_object):
2111         * gst/gstminiobject.h: Add GValue set/get functions.
2112
2113 2005-05-19  Wim Taymans  <wim@fluendo.com>
2114
2115         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2116         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2117         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2118         * gst/gstbuffer.h:
2119         * gst/gstbus.c: (gst_bus_post):
2120         * gst/gstelement.c: (gst_element_get_random_pad):
2121         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2122         Make subbufer unref the parent in finalize.
2123         some more debugging info.
2124
2125
2126 2005-05-19  Wim Taymans  <wim@fluendo.com>
2127
2128         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2129         (gst_basesink_init), (gst_basesink_finalize),
2130         (gst_basesink_activate), (gst_basesink_change_state):
2131         Don't free preroll queue too early.
2132
2133 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2134
2135         * gst/Makefile.am:
2136         * gst/ROADMAP:
2137           Hi, I'm outdated. Please shoot me.
2138
2139 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2140
2141         * gst/gstpipeline.c: (gst_pipeline_send_event):
2142           Do not access variables after they have been deleted.
2143
2144 2005-05-19  Wim Taymans  <wim@fluendo.com>
2145
2146         * tools/gst-inspect.c: (print_plugin_features):
2147         A plugin feature does unfortunatly not use the
2148         object name yet...
2149
2150 2005-05-18  Wim Taymans  <wim@fluendo.com>
2151
2152         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2153         Port _span() functions to new subbuffers.
2154
2155 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2156
2157         * gst/gstbin.c: (gst_bin_add_func):
2158           Fix clock settery in bins when adding kids after the clock has
2159           been selected.
2160
2161 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2162
2163         * gst/elements/gstidentity.c: (gst_identity_class_init):
2164           Workaround until signals support GstMiniObject.
2165
2166 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2167
2168         * gst/gstbuffer.c:
2169         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2170
2171 2005-05-18  Wim Taymans  <wim@fluendo.com>
2172
2173         * gst/base/Makefile.am:
2174         * gst/base/gstadapter.c: (gst_adapter_base_init),
2175         (gst_adapter_class_init), (gst_adapter_init),
2176         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2177         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2178         (gst_adapter_flush), (gst_adapter_available),
2179         (gst_adapter_available_fast):
2180         * gst/base/gstadapter.h:
2181         Ported and added adapter to the base classes.
2182
2183 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2184
2185         * gst/gst.c:
2186         * gst/gstmessage.c:
2187           Make sure the class is reffed/unreffed once before threads can be
2188           used.  Fixes #304551.
2189
2190 2005-05-17  Wim Taymans  <wim@fluendo.com>
2191
2192         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2193         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2194         * gst/gstminiobject.c: (gst_mini_object_get_type),
2195         (gst_mini_object_free):
2196         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2197         (gst_pad_push), (gst_pad_push_event):
2198         * gst/gstqueue.c: (gst_queue_change_state):
2199         Don't queue buffers in basesink when we are flushing.
2200         Unref buffer when flushing in basesink.
2201         Flush queue when going to READY
2202         Unref buffer when _push() returns an error.
2203         Don't free MiniObject instance when refcount is incremented
2204         in _finalize() so that we can recover objects.
2205
2206 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2207
2208         * docs/manual/advanced-schedulers.xml:
2209         * docs/manual/appendix-checklist.xml:
2210         * docs/pwg/advanced-clock.xml:
2211         * docs/pwg/advanced-interfaces.xml:
2212         * docs/pwg/advanced-request.xml:
2213         * docs/pwg/advanced-types.xml:
2214         * docs/pwg/intro-preface.xml:
2215         * examples/plugins/example.c: (gst_example_get_type),
2216         (gst_example_class_init), (gst_example_chain),
2217         (gst_example_set_property), (gst_example_get_property),
2218         (gst_example_change_state), (plugin_init):
2219         * examples/plugins/example.h:
2220           small doc fixes
2221
2222 2005-05-17  Wim Taymans  <wim@fluendo.com>
2223
2224         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2225         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2226         * gst/gstqueue.c: (gst_queue_change_state):
2227         Clear queue when going to READY.
2228         Remove IN_SETCAPS flag too.
2229
2230 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2231
2232         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2233           Remove implicit cast from gboolean to GstElementStateReturn;
2234           make sure we still return failure in paused => ready case if
2235           the parent class fails to change state and our own stop 
2236           vfunc succeeds.
2237
2238 2005-05-17  Wim Taymans  <wim@fluendo.com>
2239
2240         * tools/gst-launch.c: (event_loop):
2241         Message was unreffed too soon.
2242
2243 2005-05-16  Andy Wingo  <wingo@pobox.com>
2244
2245         * gst/gstbin.c (sink_iterator_filter): Err... um...
2246
2247         * check/gst/gstbin.c (test_ghost_pads): New test for the
2248         ghosting-if-elements-not-in-same-bin behavior.
2249
2250 2005-05-16  David Schleef  <ds@schleef.org>
2251
2252         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2253         accessing refcount directly.
2254
2255 2005-05-15  David Schleef  <ds@schleef.org>
2256
2257         * check/Makefile.am: remove GstData checks
2258         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2259         * gst/Makefile.am: add miniobject, remove data
2260         * gst/gst.h: add miniobject, remove data
2261         * gst/gstdata.c: remove
2262         * gst/gstdata.h: remove
2263         * gst/gstdata_private.h: remove
2264         * gst/gsttypes.h: remove GstEvent and GstMessage
2265         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2266         * gst/gstmarshal.list: change BOXED -> OBJECT
2267
2268         Implement GstMiniObject.
2269         * gst/gstminiobject.c:
2270         * gst/gstminiobject.h:
2271
2272         Modify to be subclasses of GstMiniObject.
2273         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2274         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2275         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2276         (gst_subbuffer_get_type), (gst_subbuffer_init),
2277         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2278         (gst_buffer_span):
2279         * gst/gstbuffer.h:
2280         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2281         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2282         (_gst_event_copy), (gst_event_new):
2283         * gst/gstevent.h:
2284         * gst/gstmessage.c: (_gst_message_initialize),
2285         (gst_message_get_type), (gst_message_class_init),
2286         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2287         (gst_message_new), (gst_message_new_error),
2288         (gst_message_new_warning), (gst_message_new_tag),
2289         (gst_message_new_state_changed), (gst_message_new_application):
2290         * gst/gstmessage.h:
2291         * gst/gstprobe.c: (gst_probe_perform),
2292         (gst_probe_dispatcher_dispatch):
2293         * gst/gstprobe.h:
2294         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2295         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2296         (_gst_query_copy), (gst_query_new):
2297
2298         Update elements for GstData -> GstMiniObject changes
2299         * gst/gstquery.h:
2300         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2301         (gst_queue_chain), (gst_queue_loop):
2302         * gst/elements/gstbufferstore.c:
2303         (gst_buffer_store_add_buffer_func),
2304         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2305         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2306         (gst_fakesink_render):
2307         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2308         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2309         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2310         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2311         (gst_filesrc_create_read):
2312         * gst/elements/gstidentity.c: (gst_identity_class_init):
2313         * gst/elements/gsttypefindelement.c:
2314         (gst_type_find_element_src_event), (free_entry_buffers),
2315         (gst_type_find_element_handle_event):
2316         * libs/gst/dataprotocol/dataprotocol.c:
2317         (gst_dp_header_from_buffer):
2318         * libs/gst/dataprotocol/dataprotocol.h:
2319         * libs/gst/dataprotocol/dp-private.h:
2320
2321 2005-05-15  David Schleef  <ds@schleef.org>
2322
2323         * gst/elements/gstelements.c: Don't include headers that were
2324         just removed.
2325
2326 2005-05-15  David Schleef  <ds@schleef.org>
2327
2328         * gst/elements/Makefile.am: Remove some elements that don't
2329         need to be in the core (or even exist at all).
2330         * gst/elements/gstaggregator.c:
2331         * gst/elements/gstaggregator.h:
2332         * gst/elements/gstmd5sink.c:
2333         * gst/elements/gstmd5sink.h:
2334         * gst/elements/gstmultifilesrc.c:
2335         * gst/elements/gstmultifilesrc.h:
2336         * gst/elements/gstpipefilter.c:
2337         * gst/elements/gstpipefilter.h:
2338         * gst/elements/gstshaper.c:
2339         * gst/elements/gstshaper.h:
2340         * gst/elements/gststatistics.c:
2341         * gst/elements/gststatistics.h:
2342         * po/POTFILES.in: Remove above files.
2343
2344 2005-05-14  Andy Wingo  <wingo@pobox.com>
2345
2346         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2347         so as to get the refs right.
2348         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2349         unreffing objects that don't pass the filter.
2350
2351         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2352         gst_element_set_bus.
2353         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2354         normal cases, this will destroy the bus.
2355
2356         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2357         object.
2358
2359         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2360         has no sinks.
2361
2362 2005-05-13  Andy Wingo  <wingo@pobox.com>
2363
2364         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2365         gst_pad_link, call pad_link_maybe_ghosting,
2366         (pad_link_maybe_ghosting): Links pads, making sure that the
2367         elements being linked are in the same bin.
2368         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2369         Helpers for pad_link_maybe_ghosting.
2370
2371 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2372
2373         * configure.ac:
2374           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2375
2376 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2377
2378         * docs/design/part-element-source.txt:
2379           Mention GstPushSrc
2380
2381 2005-05-12  Wim Taymans  <wim@fluendo.com>
2382
2383         * gst/base/gstbasesink.c: (gst_basesink_init),
2384         (gst_basesink_activate):
2385         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2386         (gst_basesrc_is_seekable):
2387         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2388         (bin_element_is_sink), (gst_bin_change_state):
2389         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2390         * gst/gstelement.h:
2391         Identify sinks by their flag to avoid overly complicated
2392         checks (fow now).
2393         Do state changes even for elements not reachable from the
2394         sinks.
2395         BaseSink is a sink now :)
2396         Some more debugging info in the basesrc.
2397
2398
2399 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2400
2401         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2402           Implement _query on a bin, similar to _send_event.
2403
2404 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2405
2406         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2407           Discont event offset format should be GST_FORMAT_BYTES,
2408           not GST_FORMAT_TIME.
2409
2410 2005-05-12  Wim Taymans  <wim@fluendo.com>
2411
2412         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2413         Same fix as Ronald's but without the signal. 
2414
2415 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2416
2417         * gst/gstutils.c: (gst_element_query_position):
2418           No, an element is not a pad.
2419
2420 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2421
2422         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2423         (gst_bin_get_state):
2424           If a child is removed from a bin while we remove the child from
2425           the bin and while we're retrieving its state, signal this to the
2426           get_state function so we abort the wait (instead of waiting for
2427           a timeout) and can immediately re-iterate over all other elements.
2428
2429 2005-05-12  Wim Taymans  <wim@fluendo.com>
2430
2431         * gst/base/Makefile.am:
2432         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2433         (gst_basesrc_start):
2434         * gst/base/gstbasesrc.h:
2435         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2436         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2437         (gst_pushsrc_init), (gst_pushsrc_create):
2438         * gst/base/gstpushsrc.h:
2439         Added is_seekable to BaseSrc
2440         Added simple PushSrc.
2441
2442 2005-05-11  Wim Taymans  <wim@fluendo.com>
2443
2444         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2445         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2446         (gst_element_link_pads), (gst_element_query_position),
2447         (gst_element_query_convert), (intersect_caps_func),
2448         (gst_pad_query_position), (gst_pad_query_convert):
2449         Fix refcounting in utils function.
2450         No point in trying to activate a pad when it's added, it could
2451         be added from the state change function and then we deadlock, the
2452         element has to decide what to do.
2453
2454 2005-05-10  Andy Wingo  <wingo@pobox.com>
2455
2456         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2457         *all* the arguments.
2458
2459         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2460         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2461         lock (according to the docs -- if this is wrong change the docs).
2462
2463         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2464         flush messages in the NULL state.
2465
2466         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2467         message immediately and return.
2468         (gst_bus_set_flushing): New function. If a bus is flushing, it
2469         flushes out any queued messages and immediately unrefs new
2470         messages. This is so when an element goes to NULL, all of the
2471         unhandled messages coming from it can be freed, and their
2472         references to the element dropped. In other words: message source
2473         ref considered harmful :P
2474
2475         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2476         we're finished with it.
2477
2478         * gst/gstmessage.c (gst_message_new_state_changed): 
2479
2480 2005-05-10  Wim Taymans  <wim@fluendo.com>
2481
2482         * gst/gstvalue.c: (gst_value_compare_flags),
2483         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2484         (_gst_value_initialize):
2485         Added flags serialize/deserialize/compare code.
2486
2487 2005-05-09  Andy Wingo  <wingo@pobox.com>
2488
2489         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2490         Intersect the peer's caps with our caps.
2491
2492 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2493
2494         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2495         * gst/elements/gsttypefindelement.c: (find_peek):
2496           Handle negative offsets better. Fixes decodebin.
2497
2498 2005-05-09  Wim Taymans  <wim@fluendo.com>
2499
2500         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2501         (gst_base_transform_event):
2502         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2503         Implement accept_caps.
2504         Fix silly lock/unlock mismatch in base class.
2505
2506 2005-05-09  Wim Taymans  <wim@fluendo.com>
2507
2508         * docs/design/draft-push-pull.txt:
2509         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2510         * gst/elements/gstfilesink.c: (gst_filesink_init),
2511         (gst_filesink_query):
2512         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2513         (gst_type_find_handle_src_query), (find_element_get_length):
2514         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2515         * gst/gstelement.h:
2516         * gst/gstmessage.c:
2517         * gst/gstmessage.h:
2518         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2519         (gst_real_pad_get_caps_unlocked),
2520         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2521         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2522         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2523         (gst_real_pad_dispose), (gst_real_pad_finalize),
2524         (gst_pad_load_and_link), (gst_pad_save_thyself),
2525         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2526         (gst_pad_check_pull_range), (gst_pad_pull_range),
2527         (gst_pad_template_get_type), (gst_pad_template_class_init),
2528         (gst_pad_template_init), (gst_pad_template_dispose),
2529         (name_is_valid), (gst_static_pad_template_get),
2530         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2531         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2532         (gst_pad_get_element_private), (gst_pad_start_task),
2533         (gst_pad_pause_task), (gst_pad_stop_task),
2534         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2535         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2536         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
2537         (gst_ghost_pad_new):
2538         * gst/gstpad.h:
2539         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
2540         (gst_query_new_position), (gst_query_set_position),
2541         (gst_query_parse_position), (gst_query_new_convert),
2542         (gst_query_set_convert), (gst_query_parse_convert):
2543         * gst/gstquery.h:
2544         * gst/gstqueryutils.c:
2545         * gst/gstqueryutils.h:
2546         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2547         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2548         (gst_queue_handle_src_query):
2549         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2550         (gst_element_query_position), (gst_element_query_convert),
2551         (intersect_caps_func), (gst_pad_query_position),
2552         (gst_pad_query_convert):
2553         * gst/gstutils.h:
2554         * tools/gst-inspect.c: (print_pad_info):
2555         * tools/gst-xmlinspect.c: (print_element_info):
2556         Remove old query functions. Ported old code.
2557         Added position/convert helper functions to gstutils.
2558         Reordered gstpad.c code, grouping relevant things.
2559         Remove gst_message_new(), always need to speficy a specific
2560         message.
2561
2562
2563 2005-05-09  Andy Wingo  <wingo@pobox.com>
2564
2565         * gst/gstiterator.h: Add some includes.
2566
2567         * gst/gstqueryutils.h: Include more headers.
2568
2569         * gst/gstpad.h:
2570         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
2571         some uses of gst_pad_query.
2572
2573         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
2574         NULL out parameters.
2575         (gst_query_new_position): New proc, allocates a new position
2576         query.
2577
2578         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
2579         gstqueryutils.c to the build.
2580
2581         * gst/gststructure.c (gst_structure_set_valist): Implement with
2582         the generic G_VALUE_COLLECT.
2583         
2584 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
2585
2586         * gst/Makefile.am: (gst_headers):
2587         Added gstqueryutils.h to the list of headers to install, that was
2588         a 'nachty' move wingo :)
2589
2590 2005-05-06  Andy Wingo  <wingo@pobox.com>
2591
2592         * gst/gstquery.h
2593         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
2594         GstData, init a memchunk.
2595         (standard_definitions): Add a few query types, deprecate a few.
2596         (gst_query_get_type): New proc.
2597         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
2598         implementation.
2599         (gst_query_new_application, gst_query_get_structure): New public
2600         procs.
2601
2602         * docs/design/draft-query.txt: Removed LINKS from the query types,
2603         because all the rest can be dispatched to other pads -- seemed
2604         ugly to have a query that couldn't be dispatched. internal_links
2605         is fine as a pad method.
2606
2607         * gst/gstpad.h: Add query2 as a pad method, add the new functions
2608         in gstpad.c, but maintain binary compatibility for the moment.
2609         Will fix before 0.9 is out.
2610
2611         * gst/gstqueryutils.c: 
2612         * gst/gstqueryutils.h: New files, implement 3 methods for each
2613         query type: parse_query, parse_response, and set. Probably need an
2614         allocator as well.
2615
2616         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
2617
2618         * gst/elements/gstfilesink.c (gst_filesink_query2):
2619         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
2620         query_types, and formats methods.
2621
2622         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
2623         (gst_pad_set_query2_function): New functions.
2624         (gst_real_pad_init): Set query2_default as the default query2
2625         function. Basically just dispatches to internally linked pads.
2626
2627         Needs review!
2628         
2629         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
2630         without using the atomic operations. Only one thread can possibly
2631         be accessing the data at this point. Changed so as to avoid
2632         gst_atomic operations.
2633
2634 2005-05-06  Wim Taymans  <wim@fluendo.com>
2635
2636         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
2637         Also set caps if we use the fallback buffer alloc.
2638
2639 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
2640
2641         * docs/gst/Makefile.am:
2642         * docs/gst/gstreamer-docs.sgml:
2643         * docs/gst/gstreamer-sections.txt:
2644         * docs/gst/tmpl/gstatomic.sgml:
2645         * docs/gst/tmpl/gstmemchunk.sgml:
2646         * testsuite/elements/struct_i386.h:
2647         * win32/GStreamer.vcproj:
2648         * win32/Makefile:
2649           Purge GstAtomic stuff from docs and win32 makefiles as well
2650
2651 2005-05-06  Wim Taymans  <wim@fluendo.com>
2652
2653         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
2654         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
2655         * gst/gstpad.c: (gst_pad_peer_get_caps):
2656         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2657         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2658         (gst_queue_src_activate), (gst_queue_change_state):
2659         * gst/gstqueue.h:
2660         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2661         (intersect_caps_func):
2662         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
2663         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
2664         Some fixes for the peer_get_caps() change.
2665
2666 2005-05-06  Wim Taymans  <wim@fluendo.com>
2667
2668         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2669         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
2670         (gst_basesink_activate):
2671         Actually do something with error codes returned from the push
2672         functions.
2673
2674 2005-05-06  Wim Taymans  <wim@fluendo.com>
2675
2676         * docs/design/part-element-sink.txt:
2677         * docs/design/part-element-source.txt:
2678         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2679         (gst_basesink_event), (gst_basesink_activate):
2680         * gst/base/gstbasesink.h:
2681         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
2682         (gst_basesrc_activate):
2683         * gst/base/gstbasesrc.h:
2684         * gst/gstelement.c: (gst_element_pads_activate):
2685         Some more documentation.
2686         Fixed scheduling decision in _pads_activate().
2687
2688 2005-05-05  Andy Wingo  <wingo@pobox.com>
2689
2690         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
2691         the test suite.
2692
2693 2005-05-05  Wim Taymans  <wim@fluendo.com>
2694
2695         * gst/base/Makefile.am:
2696         * gst/base/gstbasesink.h:
2697         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2698         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
2699         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
2700         (gst_collectpads_class_init), (gst_collectpads_init),
2701         (gst_collectpads_finalize), (gst_collectpads_new),
2702         (gst_collectpads_set_function), (gst_collectpads_add_pad),
2703         (find_pad), (gst_collectpads_remove_pad),
2704         (gst_collectpads_is_active), (gst_collectpads_collect),
2705         (gst_collectpads_collect_range), (gst_collectpads_start),
2706         (gst_collectpads_stop), (gst_collectpads_peek),
2707         (gst_collectpads_pop), (gst_collectpads_available),
2708         (gst_collectpads_read), (gst_collectpads_flush),
2709         (gst_collectpads_chain):
2710         * gst/base/gstcollectpads.h:
2711         * gst/elements/Makefile.am:
2712         * gst/elements/gstelements.c:
2713         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2714         (gst_fakesink_get_times), (gst_fakesink_event),
2715         (gst_fakesink_preroll), (gst_fakesink_render):
2716         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2717         (gst_filesink_init), (gst_filesink_set_location),
2718         (gst_filesink_open_file), (gst_filesink_close_file),
2719         (gst_filesink_pad_query), (gst_filesink_event),
2720         (gst_filesink_render), (gst_filesink_change_state):
2721         * gst/elements/gstfilesink.h:
2722         Added object to help in making collect pad based elements.
2723         Ported filesink.
2724         Make event function in sink baseclass return gboolean.
2725
2726 2005-05-05  Wim Taymans  <wim@fluendo.com>
2727
2728         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
2729         (gst_bin_get_by_name):
2730         * gst/gstbuffer.h:
2731         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
2732         (gst_clock_finalize):
2733         * gst/gstdata.c: (gst_data_replace):
2734         * gst/gstdata.h:
2735         * gst/gstelement.c: (gst_element_request_pad),
2736         (gst_element_pads_activate):
2737         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
2738         (gst_object_unref):
2739         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2740         (gst_pad_set_checkgetrange_function),
2741         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
2742         (gst_pad_check_pull_range), (gst_pad_pull_range),
2743         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2744         (gst_pad_pause_task), (gst_pad_stop_task):
2745         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2746         (gst_element_request_pad), (gst_pad_proxy_getcaps):
2747         Fix name lookup in GstBin.
2748         Added _data_replace() function and _buffer_replace()
2749         Use finalize method to clean up clock.
2750         Fix refcounting on request pads.
2751         Fix pad schedule mode error.
2752         Some more object refcounting debug info,
2753
2754
2755 2005-05-04  Andy Wingo <wingo@pobox.com>
2756
2757         * check/Makefile.am:
2758         * docs/gst/tmpl/gstatomic.sgml:
2759         * docs/gst/tmpl/gstplugin.sgml:
2760         * gst/base/gstbasesink.c: (gst_basesink_activate):
2761         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
2762         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
2763         (gst_basesrc_query), (gst_basesrc_set_property),
2764         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
2765         (gst_basesrc_activate):
2766         * gst/base/gstbasesrc.h:
2767         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
2768         (gst_base_transform_src_activate):
2769         * gst/elements/gstelements.c:
2770         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2771         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2772         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2773         * gst/elements/gsttypefindelement.c: (find_element_get_length),
2774         (gst_type_find_element_checkgetrange),
2775         (gst_type_find_element_activate):
2776         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
2777         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
2778         (gst_caps_load_thyself):
2779         * gst/gstelement.c: (gst_element_pads_activate),
2780         (gst_element_save_thyself), (gst_element_restore_thyself):
2781         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
2782         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
2783         * gst/gstpad.h:
2784         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
2785         (gst_xml_parse_file), (gst_xml_parse_memory),
2786         (gst_xml_get_element), (gst_xml_make_element):
2787         * gst/indexers/gstfileindex.c: (gst_file_index_load),
2788         (_file_index_id_save_xml), (gst_file_index_commit):
2789         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
2790         (read_enum), (load_pad_template), (load_feature), (load_plugin),
2791         (load_paths):
2792         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
2793         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
2794         * tools/gst-complete.c: (main):
2795         * tools/gst-compprep.c: (main):
2796         * tools/gst-inspect.c: (print_element_properties_info):
2797         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
2798         * tools/gst-xmlinspect.c: (print_element_properties):
2799         GCC 4 fixen.
2800         
2801 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
2802
2803         * gst/gstplugin.c: (gst_plugin_check_module),
2804         (gst_plugin_check_file), (gst_plugin_load_file):
2805             apply patch from #172526 to make register work on MacOSX
2806
2807 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2808
2809         * docs/gst/tmpl/gstconfig.sgml:
2810         * gst/gstconfig.h.in:
2811           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
2812         * testsuite/debug/printf_extension.c: (main):
2813           Do not use GST_PTR_FORMAT on pointers to types with
2814           sizeof < sizeof(gpointer).  Fixes test on 64-bit
2815         * testsuite/elements/property.h:
2816           use correct printf format
2817
2818 2005-05-02  Wim Taymans  <wim@fluendo.com>
2819
2820         * docs/design/draft-push-pull.txt:
2821         * docs/design/draft-query.txt:
2822         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
2823         (gst_basesrc_start):
2824         Added draft for new query API.
2825         Added draft for better selecting scheduling methods.
2826         Make basesrc ignore length if the subclass does not support
2827         it.
2828
2829 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2830
2831         * gst/Makefile.am:
2832           possible fixes for automake-1.5 - _LIBADD is reserved
2833
2834 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2835
2836         * docs/faq/Makefile.am:
2837         * docs/manual/Makefile.am:
2838         * docs/manuals.mak:
2839         * docs/pwg/Makefile.am:
2840         * gst/Makefile.am:
2841           possible fixes for automake-1.5
2842
2843 2005-04-28  Wim Taymans  <wim@fluendo.com>
2844
2845         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2846         (gst_basesink_pad_getcaps), (gst_basesink_init),
2847         (gst_basesink_do_sync):
2848         * gst/gstclock.c: (gst_clock_entry_new):
2849         * gst/gstevent.c: (gst_event_discont_get_value):
2850         * gst/gstpipeline.c: (pipeline_bus_handler),
2851         (gst_pipeline_change_state):
2852         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
2853         Better debugging of clocking info.
2854         Allow NULL values when getting discont values.
2855
2856 2005-04-27  Wim Taymans  <wim@fluendo.com>
2857
2858         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2859         * check/gst/gstpad.c: (gst_pad_suite):
2860         Increase timeout for checks.
2861
2862 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2863
2864         * check/Makefile.am:
2865           fix the broken rule for cleanup.  Apparently this rule is
2866           only needed on FC2, so maybe this warrants further autotool
2867           inspection.
2868
2869 2005-04-26  Wim Taymans  <wim@fluendo.com>
2870
2871         * gst/gsttrashstack.h:
2872         Ooohh. a nasty one! After having a failed pop() from the stack,
2873         it's possible that the stack is empty. In that case, don't
2874         follow the NULL pointer.
2875
2876 2005-04-25  Wim Taymans  <wim@fluendo.com>
2877
2878         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2879         (gst_pad_set_checkgetrange_function),
2880         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
2881         (gst_pad_check_pull_range), (gst_pad_pull_range),
2882         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2883         (gst_pad_pause_task), (gst_pad_stop_task):
2884         * gst/gstplugin.c: (gst_plugin_load):
2885         * gst/gstplugin.h:
2886         Remove gst_library_load as it does more harm than good with
2887         the new g_module flags.
2888         Revert bogus caps template check in pad linking, pad caps
2889         are important when linking not the template, which is more
2890         general than the current caps.
2891
2892 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2893
2894         * gst/autoplug/.cvsignore:
2895         * gst/autoplug/Makefile.am:
2896         * gst/autoplug/gstsearchfuncs.c:
2897         * gst/autoplug/gstsearchfuncs.h:
2898         * gst/autoplug/gstspider.c:
2899         * gst/autoplug/gstspider.h:
2900         * gst/autoplug/gstspideridentity.c:
2901         * gst/autoplug/gstspideridentity.h:
2902         * gst/autoplug/spidertest.c:
2903           Die, spider, die.
2904
2905 2005-04-25  Wim Taymans  <wim@fluendo.com>
2906
2907         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2908         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2909         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
2910         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
2911         * gst/gstpad.h:
2912         Added stubs for unimplemented functions. 
2913
2914 2005-04-24  David Schleef  <ds@schleef.org>
2915
2916         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
2917         please fix.
2918
2919 2005-04-24  David Schleef  <ds@schleef.org>
2920
2921         Convert everything from GstAtomicInt to g_atomic_int_*, and
2922         remove gstatomic.
2923         * gst/Makefile.am:
2924         * gst/gstatomic.c:
2925         * gst/gstatomic.h:
2926         * gst/gstatomic_impl.h:
2927         * gst/gstbuffer.c:
2928         * gst/gstcaps.c:
2929         * gst/gstcaps.h:
2930         * gst/gstclock.c:
2931         * gst/gstclock.h:
2932         * gst/gstdata.c:
2933         * gst/gstdata.h:
2934         * gst/gstdata_private.h:
2935         * gst/gstevent.c:
2936         * gst/gstinfo.c:
2937         * gst/gstinfo.h:
2938         * gst/gstmessage.c:
2939         * gst/gstobject.c:
2940         * gst/gstobject.h:
2941         * gst/gststructure.c:
2942         * gst/gststructure.h:
2943         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
2944         * gst/gstutils.h:
2945
2946 2005-04-24  David Schleef  <ds@schleef.org>
2947
2948         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
2949         make the regressions tests work.  Remove some code that is no
2950         longer true.
2951         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
2952         Disable warning for pads without templates.
2953
2954 2005-04-24  David Schleef  <ds@schleef.org>
2955
2956         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
2957         functions that handle filtered links.
2958         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
2959         removed functions.
2960         * gst/gstutils.c: Fix/remove utility functions that handle
2961         filtered caps.
2962         * gst/gstutils.h:
2963         * gst/gstvalue.c: Add serialization/deserialization of caps
2964         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
2965         requires fixing so that the filter caps notation creates
2966         a capsfilter element and sets the filter_caps property.  I
2967         think everyone probably wants to keep the shorthand notation.
2968         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
2969         * docs/gst/tmpl/gstpad.sgml:
2970
2971         * gst/elements/gstelements.c: Register capsfilter element.
2972         * gst/Makefile.am: fix spacing
2973         * docs/random/ds/0.9-suggested-changes: random
2974
2975 2005-04-23  David Schleef  <ds@schleef.org>
2976
2977         * gst/elements/Makefile.am:
2978         * gst/elements/gstcapsfilter.c: New element that acts like an
2979         identity, but filters caps.  Will eventually replace filtered
2980         caps in pad linking.
2981         * gst/gstutils.c: (gst_element_create_all_pads): New function
2982         to create all the ALWAYS pads that are registered with an
2983         element class.  This functionality should eventually be
2984         merged in with GstElement initialization.
2985         * gst/gstutils.h:
2986         * testsuite/trigger/README: part of trigger test code that should
2987         have been checked in a long time ago.
2988
2989 2005-04-23  David Schleef  <ds@schleef.org>
2990
2991         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
2992         needed with new versions of libtool (nobody will confirm this),
2993         and hard to carry around.
2994         * gst/autoplug/Makefile.am:
2995         * gst/base/Makefile.am:
2996         * gst/elements/Makefile.am:
2997         * gst/indexers/Makefile.am:
2998         * gst/schedulers/Makefile.am:
2999         * libs/gst/bytestream/Makefile.am:
3000         * libs/gst/control/Makefile.am:
3001         * libs/gst/dataprotocol/Makefile.am:
3002         * libs/gst/getbits/Makefile.am:
3003
3004 2005-04-21  Wim Taymans  <wim@fluendo.com>
3005
3006         * docs/design/draft-push-pull.txt:
3007         * docs/design/part-MT-refcounting.txt:
3008         * docs/design/part-TODO.txt:
3009         * docs/design/part-caps.txt:
3010         * docs/design/part-events.txt:
3011         * docs/design/part-gstbus.txt:
3012         * docs/design/part-gstpipeline.txt:
3013         * docs/design/part-messages.txt:
3014         * docs/design/part-push-pull.txt:
3015         * docs/design/part-query.txt:
3016         Some more docs.
3017
3018 2005-04-21  Wim Taymans  <wim@fluendo.com>
3019
3020         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3021         (gst_message_new), (gst_message_new_error),
3022         (gst_message_new_warning), (gst_message_new_tag),
3023         (gst_message_new_state_changed), (gst_message_new_application),
3024         (gst_message_get_structure):
3025         * gst/gstmessage.h:
3026         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3027         (gst_structure_copy_conditional):
3028         Use parent refcount in GstMessage to ensure GstStructure
3029         consistency.
3030         Cleaned up headers a bit.
3031         
3032
3033 2005-04-20  Wim Taymans  <wim@fluendo.com>
3034
3035         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3036         (gst_basesink_pad_getcaps), (gst_basesink_init),
3037         (gst_basesink_chain_unlocked):
3038         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3039         (gst_type_find_helper):
3040         * gst/elements/gsttypefindelement.c:
3041         (gst_type_find_element_have_type), (gst_type_find_element_init),
3042         (stop_typefinding), (gst_type_find_element_handle_event),
3043         (find_suggest), (gst_type_find_element_chain),
3044         (gst_type_find_element_checkgetrange),
3045         (gst_type_find_element_getrange), (do_typefind),
3046         (gst_type_find_element_activate):
3047         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3048         (gst_buffer_default_free), (gst_buffer_default_copy),
3049         (gst_buffer_set_caps):
3050         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3051         (gst_caps_replace):
3052         * gst/gstmessage.c: (gst_message_new),
3053         (gst_message_new_state_changed):
3054         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3055         (gst_pad_set_checkgetrange_function),
3056         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3057         (gst_pad_set_caps), (gst_pad_check_pull_range),
3058         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3059         * gst/gstpad.h:
3060         * gst/gsttypefind.c: (gst_type_find_register):
3061         Make gst_caps_replace() work like other _replace() functions.
3062         Use _caps_replace() where possible.
3063         Make sure _message_new() initialises its field.
3064         Add gst_static_pad_template_get_caps()
3065
3066
3067 2005-04-18  Andy Wingo  <wingo@pobox.com>
3068
3069         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3070         on the peer, not the pad. I think that was a typo. Pass an extra
3071         arg to see if random access is possible. Activate the pads as
3072         PULL_RANGE if possible.
3073
3074         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3075
3076         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3077         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3078         to PROP_....
3079
3080 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3081
3082         * docs/faq/using.xml:
3083           Add note on gstreamer-properties (#154996).
3084
3085 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3086
3087         * docs/random/bbb/optional-properties:
3088           Some analysis on optional properties.
3089
3090 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3091
3092         * docs/gst/tmpl/gstelementfactory.sgml:
3093         * gst/gstelement.h:
3094         * gst/gstelementfactory.c: (gst_element_factory_init),
3095         (gst_element_factory_cleanup), (gst_element_register),
3096         (__gst_element_factory_add_static_pad_template),
3097         (gst_element_factory_get_static_pad_templates),
3098         (gst_element_factory_can_src_caps),
3099         (gst_element_factory_can_sink_caps):
3100         * gst/registries/Makefile.am:
3101         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3102         (gst_xml_registry_class_init), (gst_xml_registry_init),
3103         (gst_xml_registry_new), (gst_xml_registry_set_property),
3104         (gst_xml_registry_get_property), (get_time), (make_dir),
3105         (gst_xml_registry_get_perms_func),
3106         (plugin_times_older_than_recurse), (plugin_times_older_than),
3107         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3108         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3109         (add_to_char_array), (read_string), (read_uint), (read_enum),
3110         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3111         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3112         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3113         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3114         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3115         (gst_xml_registry_rebuild):
3116         * gst/registries/gstlibxmlregistry.h:
3117         * tools/gst-compprep.c: (main):
3118         * tools/gst-inspect.c: (print_pad_templates_info):
3119         * tools/gst-xmlinspect.c: (print_element_info):
3120           Use libxml2 for registry parsing, use staticpadtemplates in
3121           elementfactories. Makes gst_init() +/- 10x faster.
3122
3123 2005-04-12  Wim Taymans  <wim@fluendo.com>
3124
3125         * gst/base/Makefile.am:
3126         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3127         (gst_basesink_pad_getcaps), (gst_basesink_init),
3128         (gst_basesink_event), (gst_basesink_change_state):
3129         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3130         (gst_basesrc_init), (gst_basesrc_query),
3131         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3132         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3133         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3134         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3135         (gst_basesrc_stop), (gst_basesrc_activate),
3136         (gst_basesrc_change_state):
3137         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3138         (helper_find_suggest), (gst_type_find_helper):
3139         * gst/base/gsttypefindhelper.h:
3140         * gst/elements/Makefile.am:
3141         * gst/elements/gstelements.c:
3142         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3143         (gst_fakesink_get_times), (gst_fakesink_event),
3144         (gst_fakesink_preroll), (gst_fakesink_render):
3145         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3146         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3147         (gst_fakesrc_get_property), (gst_fakesrc_create),
3148         (gst_fakesrc_start), (gst_fakesrc_stop):
3149         * gst/elements/gstfakesrc.h:
3150         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3151         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3152         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3153         (gst_filesrc_create_read), (gst_filesrc_create),
3154         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3155         (gst_filesrc_start):
3156         * gst/elements/gsttypefindelement.c:
3157         (gst_type_find_element_have_type), (gst_type_find_element_init),
3158         (start_typefinding), (stop_typefinding), (push_buffer_store),
3159         (gst_type_find_element_handle_event),
3160         (gst_type_find_element_chain),
3161         (gst_type_find_element_checkgetrange),
3162         (gst_type_find_element_getrange), (do_typefind),
3163         (gst_type_find_element_activate),
3164         (gst_type_find_element_change_state):
3165         * gst/elements/gsttypefindelement.h:
3166         * gst/gstpipeline.c: (pipeline_bus_handler):
3167         Added typefind helper.
3168         Small preroll fix in the base sink.
3169         Disable typefind code in basesrc.
3170         Crude port of typefindelement.
3171         Fakesrc cleanups.
3172
3173
3174 2005-04-11  Wim Taymans  <wim@fluendo.com>
3175
3176         * check/gst/gstbus.c: (gstbus_suite):
3177         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3178         * check/gstcheck.h:
3179           Fix up the timeout so that the test does not fail.
3180
3181 2005-04-06  Wim Taymans  <wim@fluendo.com>
3182
3183         * gst/base/README:
3184         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3185         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3186         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3187         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3188         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3189         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3190         (gst_basesrc_stop), (gst_basesrc_activate),
3191         (gst_basesrc_change_state), (basesrc_find_peek),
3192         (basesrc_find_suggest), (gst_basesrc_type_find):
3193         * gst/base/gstbasesrc.h:
3194         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3195         (gst_filesrc_class_init), (gst_filesrc_init),
3196         (gst_filesrc_finalize), (gst_filesrc_set_location),
3197         (gst_filesrc_set_property), (gst_filesrc_get_property),
3198         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3199         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3200         (gst_filesrc_create_read), (gst_filesrc_create),
3201         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3202         * gst/elements/gstfilesrc.h:
3203         * gst/gstelement.c: (gst_element_get_state_func),
3204         (gst_element_lost_state), (gst_element_pads_activate):
3205         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3206         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3207         (gst_pad_pull_range):
3208         * gst/gstpad.h:
3209         More work on the generic source base class, implement seeking,
3210         query.
3211         Make filesrc extend the base source class.
3212         Added gst_pad_set_checkgetrange_function to GstPad.
3213
3214 2005-04-06  Andy Wingo  <wingo@pobox.com>
3215
3216         * pkgconfig/gstreamer-base.pc.in:
3217         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3218
3219         * pkgconfig/Makefile.am:
3220         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3221
3222 2005-04-04  Wim Taymans  <wim@fluendo.com>
3223
3224         * gst/base/Makefile.am:
3225         * gst/base/README:
3226         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3227         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3228         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3229         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3230         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3231         (gst_basesrc_base_init), (gst_basesrc_class_init),
3232         (gst_basesrc_init), (gst_basesrc_get_formats),
3233         (gst_basesrc_get_query_types), (gst_basesrc_query),
3234         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3235         (gst_basesrc_set_property), (gst_basesrc_get_property),
3236         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3237         (gst_basesrc_loop), (gst_basesrc_activate),
3238         (gst_basesrc_change_state):
3239         * gst/base/gstbasesrc.h:
3240         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3241         (gst_fakesrc_class_init), (gst_fakesrc_init),
3242         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3243         (gst_fakesrc_get_property), (gst_fakesrc_create):
3244         * gst/elements/gstfakesrc.h:
3245         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3246         (gst_filesrc_open_file), (gst_filesrc_loop),
3247         (gst_filesrc_activate), (filesrc_find_peek),
3248         (gst_filesrc_type_find):
3249         Made base source class, make fakesrc extend it.
3250         Add comments to basesink class.
3251         Some filesrc cleanup.
3252
3253 2005-03-31  David Schleef  <ds@schleef.org>
3254
3255         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3256         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3257         expected to link against libgstreamer.
3258         * gst/base/Makefile.am: link against libgstreamer
3259         * gst/elements/Makefile.am: same
3260
3261 2005-03-31  Andy Wingo  <wingo@pobox.com>
3262
3263         * tests/instantiate/Makefile.am:
3264         * tests/instantiate/caps.c: Add test to test speed of caps copy
3265         and free.
3266
3267         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3268         GMemChunk to be fair.
3269
3270         * gst/gsttrashstack.h: Remove warning about using the fallback
3271         trash stack implementation, it's still faster than malloc.
3272
3273 2005-03-30  Andy Wingo  <wingo@pobox.com>
3274
3275         * tests/complexity.c: Add a copyright.
3276
3277 2005-03-31  Wim Taymans  <wim@fluendo.com>
3278
3279         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3280         (gst_base_transform_class_init), (gst_base_transform_init),
3281         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3282         (gst_base_transform_get_property),
3283         (gst_base_transform_sink_activate),
3284         (gst_base_transform_src_activate),
3285         (gst_base_transform_change_state):
3286         * gst/base/gstbasetransform.h:
3287         * gst/elements/gstidentity.c: (gst_identity_class_init),
3288         (gst_identity_event), (gst_identity_check_perfect),
3289         (gst_identity_transform), (gst_identity_start),
3290         (gst_identity_stop):
3291         Added start/stop methods to transform base class so subclasses 
3292         don't need to deal with state changes even.
3293
3294 2005-03-31  Wim Taymans  <wim@fluendo.com>
3295
3296         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3297         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3298         * gst/gstevent.h:
3299         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3300         (gst_pad_pull_range):
3301         Added rate to the discont event to prepare for variable speed
3302         and reverse playback.
3303
3304 2005-03-29  David Schleef  <ds@schleef.org>
3305
3306         * configure.ac:
3307         * testsuite/trigger/Makefile.am:
3308         * testsuite/trigger/trigger.c: A little example program to show
3309         how trigger-based elements can work.
3310
3311 2005-03-29  Wim Taymans  <wim@fluendo.com>
3312
3313         * gst/base/Makefile.am:
3314         * gst/base/README:
3315         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3316         (gst_basesink_base_init), (gst_basesink_class_init),
3317         (gst_basesink_pad_getcaps), (gst_basesink_init),
3318         (gst_basesink_activate), (gst_basesink_change_state):
3319         * gst/base/gstbasesink.h:
3320         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3321         (gst_base_transform_base_init), (gst_base_transform_finalize),
3322         (gst_base_transform_class_init), (gst_base_transform_init),
3323         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3324         (gst_base_transform_event), (gst_base_transform_getrange),
3325         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3326         (gst_base_transform_set_property),
3327         (gst_base_transform_get_property),
3328         (gst_base_transform_sink_activate),
3329         (gst_base_transform_src_activate),
3330         (gst_base_transform_change_state):
3331         * gst/base/gstbasetransform.h:
3332         * gst/elements/gstidentity.c: (gst_identity_finalize),
3333         (gst_identity_class_init), (gst_identity_init),
3334         (gst_identity_event), (gst_identity_check_perfect),
3335         (gst_identity_transform), (gst_identity_set_property),
3336         (gst_identity_get_property), (gst_identity_change_state):
3337         * gst/elements/gstidentity.h:
3338         * gst/gstelement.c: (gst_element_get_state_func),
3339         (gst_element_lost_state), (gst_element_pads_activate):
3340         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3341         (gst_pad_check_pull_range), (gst_pad_pull_range):
3342         * gst/gstpad.h:
3343         Simplify pad activation.
3344         Added function to check if pull_range can be performed.
3345         Error out when pulling inactive or flushing pads.
3346         Removed const from refcounted types as it does not make sense.
3347         Simplify pad templates in basesink
3348         Added base class for simple 1-to-1 transforms.
3349         Make identity subclass the base transform.
3350
3351 2005-03-29  Andy Wingo  <wingo@pobox.com>
3352
3353         * docs/libs/gstreamer-libs-overrides.txt: 
3354         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3355         really don't understand what's going on, but like whatever. I want
3356         green buildbot!
3357
3358         * docs/gst/Makefile.am:
3359         * docs/libs/Makefile.am: Dist the overrides files.
3360
3361         * check/Makefile.am (clean-local): Remove .libs directories.
3362
3363         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3364         elements to EXTRA_DIST, so po/ files are happy.
3365
3366         * po/POTFILES.in: Er, remove it here.
3367
3368         * po/POTFILES: Remove gstspider.c.
3369
3370         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3371
3372         * docs/libs/gstreamer-libs-docs.sgml: 
3373         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3374         bytestream.
3375
3376         * tests/complexity.c (main): Set the length of the preroll queue
3377         on the sinks to prevent a lockup.
3378
3379         * libs/gst/dataprotocol/Makefile.am: 
3380         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3381         the same as the one in check/gst-libs/gdp.c.
3382
3383         * po/, docs/gst/: Commit automatic changes to docs and po files.
3384
3385         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3386         the versioned libgstbase.
3387
3388         * check/Makefile.am: Depend on an unversioned gst-register, seems
3389         to make autoconf happier.
3390
3391         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3392
3393 2005-03-28  Wim Taymans  <wim@fluendo.com>
3394
3395         * configure.ac:
3396         * docs/design/part-gstelement.txt:
3397         * docs/design/part-negotiation.txt:
3398         * docs/design/part-preroll.txt:
3399         * docs/design/part-scheduling.txt:
3400         * docs/design/part-states.txt:
3401         * gst/Makefile.am:
3402         * gst/base/Makefile.am:
3403         * gst/base/README:
3404         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3405         (gst_basesink_base_init), (gst_basesink_class_init),
3406         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3407         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3408         (gst_basesink_set_pad_functions),
3409         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3410         (gst_basesink_set_property), (gst_basesink_get_property),
3411         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3412         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3413         (gst_basesink_preroll_queue_push),
3414         (gst_basesink_preroll_queue_empty),
3415         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3416         (gst_basesink_event), (gst_basesink_get_times),
3417         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3418         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3419         (gst_basesink_loop), (gst_basesink_activate),
3420         (gst_basesink_change_state):
3421         * gst/base/gstbasesink.h:
3422         * gst/elements/Makefile.am:
3423         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3424         (gst_fakesink_class_init), (gst_fakesink_init),
3425         (gst_fakesink_set_property), (gst_fakesink_get_property),
3426         (gst_fakesink_get_times), (gst_fakesink_event),
3427         (gst_fakesink_preroll), (gst_fakesink_render),
3428         (gst_fakesink_change_state):
3429         * gst/elements/gstfakesink.h:
3430         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3431         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3432         * gst/gstelement.c: (gst_element_add_pad),
3433         (gst_element_get_state_func), (gst_element_abort_state),
3434         (gst_element_commit_state), (gst_element_lost_state),
3435         (gst_element_set_state), (gst_element_pads_activate):
3436         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3437         * gst/gstpipeline.c: (gst_pipeline_send_event),
3438         (gst_pipeline_change_state):
3439         Added state change code.
3440         Added/updated docs.
3441         Added sink base class, make fakesink extend the base class.
3442         Small cleanups in GstPipeline.
3443
3444 2005-03-26  David Schleef  <ds@schleef.org>
3445
3446         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3447         is broken and should be implemented in a different library.
3448         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3449         * gst/gst.h: remove gstcpu.h
3450         * gst/gstcpu.c: remove
3451         * gst/gstcpu.h: remove
3452         * gst/Makefile.am.future: Remove this file.  It's ancient.
3453
3454 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3455
3456         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3457         (gst_bin_send_event):
3458           Add default event/set_manager handlers. The set_manager handler
3459           takes care that the manager is distributed over kids that were
3460           already in the bin before the manager was set. The event handler
3461           is a utility virtual function that sends the event over all sinks,
3462           so that gst_element_send_event (bin, event); has the expected
3463           behaviour.
3464         * gst/gstpad.c: (gst_pad_event_default):
3465           Re-install default event handling for discontinuities, so that
3466           seeking works without requiring hacks in applications or extra
3467           code in sinks.
3468         * gst/gstpipeline.c: (gst_pipeline_class_init),
3469         (gst_pipeline_send_event):
3470           Half hack, half utility: set a pipeline to PAUSED for seek events,
3471           since that is the only way we can guarantee a/v sync. Means that
3472           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3473           and it "just works".
3474
3475 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3476
3477         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3478           Lock/unlock mismatch.
3479
3480 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3481
3482         * docs/faq/gst-uninstalled:
3483           add gst-plugins-base
3484         * docs/gst/Makefile.am:
3485           don't error out until docs are fixed
3486         * docs/gst/gstreamer.types:
3487           remove thread
3488
3489 2005-03-22  Wim Taymans  <wim@fluendo.com>
3490
3491         * check/Makefile.am:
3492         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3493         * gst/gststructure.c: (gst_structure_set_valist),
3494         (gst_structure_copy_conditional):
3495         Activated more tests.
3496         Added message test.
3497         Added G_TYPE_POINTER to GstStructure.
3498         
3499
3500 2005-03-22  Wim Taymans  <wim@fluendo.com>
3501
3502         * docs/design/part-TODO.txt:
3503         * docs/design/part-events.txt:
3504         * docs/design/part-gstbin.txt:
3505         * docs/design/part-gstbus.txt:
3506         * docs/design/part-gstpipeline.txt:
3507         * docs/design/part-messages.txt:
3508         * gst/gstbus.c:
3509         * gst/gstmessage.c:
3510         Docs updates
3511
3512 2005-03-21  Wim Taymans  <wim@fluendo.com>
3513
3514         * gst/gstbus.c: (gst_bus_post):
3515         Fix copy-and-paste error.
3516
3517 2005-03-21  Wim Taymans  <wim@fluendo.com>
3518
3519         * check/Makefile.am:
3520         * gst/Makefile.am:
3521         * gst/elements/Makefile.am:
3522         * gst/elements/gstelements.c:
3523         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3524         (gst_fakesink_event), (gst_fakesink_chain):
3525         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3526         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3527         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3528         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3529         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3530         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3531         (gst_fakesrc_loop), (gst_fakesrc_activate),
3532         (gst_fakesrc_change_state):
3533         * gst/elements/gstfakesrc.h:
3534         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3535         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
3536         (gst_filesrc_open_file), (gst_filesrc_loop),
3537         (gst_filesrc_activate), (gst_filesrc_change_state),
3538         (filesrc_find_peek), (filesrc_find_suggest),
3539         (gst_filesrc_type_find):
3540         * gst/elements/gstidentity.c: (gst_identity_finalize),
3541         (gst_identity_class_init), (gst_identity_init),
3542         (gst_identity_proxy_getcaps), (identity_queue_push),
3543         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
3544         (gst_identity_getrange), (gst_identity_chain),
3545         (gst_identity_sink_loop), (gst_identity_src_loop),
3546         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
3547         (gst_identity_set_property), (gst_identity_get_property),
3548         (gst_identity_change_state):
3549         * gst/elements/gstidentity.h:
3550         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
3551         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
3552         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
3553         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
3554         (gst_tee_sink_activate):
3555         * gst/elements/gsttee.h:
3556         * gst/gst.c: (gst_register_core_elements), (init_post):
3557         * gst/gst.h:
3558         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
3559         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
3560         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
3561         (gst_bin_change_state):
3562         * gst/gstbin.h:
3563         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
3564         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
3565         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
3566         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
3567         (gst_bus_set_sync_handler), (gst_bus_create_watch),
3568         (bus_watch_callback), (bus_watch_destroy),
3569         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
3570         (poll_timeout), (gst_bus_poll):
3571         * gst/gstbus.h:
3572         * gst/gstcaps.h:
3573         * gst/gstdata.h:
3574         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3575         (gst_element_post_message), (gst_element_message_full),
3576         (gst_element_get_state_func), (gst_element_get_state),
3577         (gst_element_abort_state), (gst_element_commit_state),
3578         (gst_element_lost_state), (gst_element_set_state),
3579         (gst_element_pads_activate), (gst_element_change_state),
3580         (gst_element_dispose), (gst_element_set_manager_func),
3581         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
3582         (gst_element_set_manager), (gst_element_get_manager),
3583         (gst_element_set_bus), (gst_element_get_bus),
3584         (gst_element_set_scheduler), (gst_element_get_scheduler):
3585         * gst/gstelement.h:
3586         * gst/gstevent.c: (gst_event_new_segment_seek),
3587         (gst_event_new_flush):
3588         * gst/gstevent.h:
3589         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
3590         (_gst_message_free), (gst_message_get_type), (gst_message_new),
3591         (gst_message_new_eos), (gst_message_new_error),
3592         (gst_message_new_warning), (gst_message_new_tag),
3593         (gst_message_new_state_changed), (gst_message_new_application),
3594         (gst_message_get_structure), (gst_message_parse_tag),
3595         (gst_message_parse_state_changed), (gst_message_parse_error),
3596         (gst_message_parse_warning):
3597         * gst/gstmessage.h:
3598         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
3599         (gst_real_pad_set_property), (gst_pad_set_active),
3600         (gst_pad_is_active), (gst_pad_set_blocked_async),
3601         (gst_pad_set_blocked), (gst_pad_is_blocked),
3602         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
3603         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
3604         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
3605         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
3606         (gst_pad_link_filtered), (gst_pad_relink_filtered),
3607         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
3608         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
3609         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
3610         (gst_pad_set_caps), (gst_pad_configure_sink),
3611         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
3612         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
3613         (gst_real_pad_dispose), (gst_real_pad_finalize),
3614         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
3615         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3616         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
3617         * gst/gstpad.h:
3618         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
3619         (pipeline_bus_handler), (gst_pipeline_change_state),
3620         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
3621         * gst/gstpipeline.h:
3622         * gst/gstprobe.h:
3623         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
3624         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
3625         (gst_queue_link_src), (gst_queue_bufferalloc),
3626         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
3627         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
3628         (gst_queue_loop), (gst_queue_handle_src_event),
3629         (gst_queue_handle_src_query), (gst_queue_src_activate),
3630         (gst_queue_change_state):
3631         * gst/gstqueue.h:
3632         * gst/gstscheduler.c: (gst_scheduler_init),
3633         (gst_scheduler_dispose), (gst_scheduler_create_task),
3634         (gst_scheduler_factory_create):
3635         * gst/gstscheduler.h:
3636         * gst/gststructure.c: (gst_structure_get_type),
3637         (gst_structure_copy_conditional):
3638         * gst/gststructure.h:
3639         * gst/gsttaginterface.h:
3640         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
3641         (gst_task_init), (gst_task_dispose), (gst_task_create),
3642         (gst_task_get_state), (gst_task_start), (gst_task_stop),
3643         (gst_task_pause):
3644         * gst/gsttask.h:
3645         * gst/gstthread.c:
3646         * gst/gstthread.h:
3647         * gst/gsttypes.h:
3648         * gst/schedulers/Makefile.am:
3649         * gst/schedulers/cothreads_compat.h:
3650         * gst/schedulers/entryscheduler.c:
3651         * gst/schedulers/faircothreads.c:
3652         * gst/schedulers/faircothreads.h:
3653         * gst/schedulers/fairscheduler.c:
3654         * gst/schedulers/gstbasicscheduler.c:
3655         * gst/schedulers/gstoptimalscheduler.c:
3656         * gst/schedulers/gthread-cothreads.h:
3657         * gst/schedulers/threadscheduler.c:
3658         (gst_thread_scheduler_task_get_type),
3659         (gst_thread_scheduler_task_class_init),
3660         (gst_thread_scheduler_task_init),
3661         (gst_thread_scheduler_task_start),
3662         (gst_thread_scheduler_task_stop),
3663         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
3664         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
3665         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
3666         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
3667         (plugin_init):
3668         * libs/gst/Makefile.am:
3669         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
3670         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
3671         (gst_file_pad_parent_set):
3672         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3673         (gst_dp_event_from_packet):
3674         * tests/complexity.c: (main):
3675         * tests/mass_elements.c: (main):
3676         * testsuite/states/locked.c: (message_received), (main):
3677         * testsuite/states/parent.c: (main):
3678         * tools/gst-inspect.c: (print_element_flag_info),
3679         (print_implementation_info), (print_pad_info):
3680         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
3681         (main):
3682         * tools/gst-md5sum.c: (event_loop), (main):
3683         * tools/gst-typefind.c: (main):
3684         * tools/gst-xmlinspect.c: (print_element_info):
3685         Next big merge.
3686         Added GstBus for mainloop integration.
3687         Added GstMessage for sending notifications on the bus.
3688         Added GstTask as an abstraction for pipeline entry points.
3689         Removed GstThread.
3690         Removed Schedulers.
3691         Simplified GstQueue for multithreaded core.
3692         Made _link threadsafe, removed old capsnego.
3693         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
3694         Added pad blocking functions.
3695         Reworked scheduling functions in GstPad to prepare for
3696         scheduling updates soon.
3697         Moved events out of data stream.
3698         Simplified GstEvent types.
3699         Added return values to push/pull.
3700         Removed clocking from GstElement.
3701         Added prototypes for state change function for next merge.
3702         Removed iterate from bins and state change management.
3703         Fixed some elements, disabled others for now.
3704         Fixed -inspect and -launch.
3705         Added check for GstBus.
3706
3707 2005-03-10  Wim Taymans  <wim@fluendo.com>
3708
3709         * docs/design/part-MT-refcounting.txt:
3710         * docs/design/part-clocks.txt:
3711         * docs/design/part-gstelement.txt:
3712         * docs/design/part-gstobject.txt:
3713         * docs/design/part-standards.txt:
3714         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3715         (gst_bin_remove_func), (gst_bin_remove):
3716         * gst/gstbin.h:
3717         * gst/gstbuffer.c:
3718         * gst/gstcaps.h:
3719         * testsuite/clock/clock1.c: (main):
3720         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
3721         (main):
3722         * testsuite/dlopen/loadgst.c: (do_test):
3723         * testsuite/refcounting/bin.c: (add_remove_test1),
3724         (add_remove_test2), (main):
3725         * testsuite/refcounting/element.c: (main):
3726         * testsuite/refcounting/element_pad.c: (main):
3727         * testsuite/refcounting/pad.c: (main):
3728         * tools/gst-launch.c: (sigint_handler_sighandler):
3729         * tools/gst-typefind.c: (main):
3730         Doc updates.
3731         Added doc about clock.
3732         removed gst_bin_iterate_recurse_up(), marked methods
3733         for removal.
3734         Fix more testsuites.
3735
3736 2005-03-09  Wim Taymans  <wim@fluendo.com>
3737
3738         * gst/gstpad.c: (gst_pad_get_direction),
3739         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
3740         (gst_pad_collect_valist):
3741         * testsuite/bins/interface.c: (main):
3742         * testsuite/caps/audioscale.c: (test_caps):
3743         * testsuite/caps/caps.c: (test1), (test2), (test3):
3744         * testsuite/caps/deserialize.c: (main):
3745         * testsuite/caps/enumcaps.c: (main):
3746         * testsuite/caps/filtercaps.c: (main):
3747         * testsuite/caps/intersect2.c: (main):
3748         * testsuite/caps/random.c: (main):
3749         * testsuite/caps/renegotiate.c: (my_fixate), (main):
3750         * testsuite/caps/sets.c: (check_caps):
3751         * testsuite/caps/simplify.c: (check_caps), (main):
3752         * testsuite/caps/subtract.c: (check_caps):
3753         Fix _pad_get_direction wrt ghostpads.
3754         Fix caps testsuite.
3755
3756 2005-03-09  Wim Taymans  <wim@fluendo.com>
3757
3758         * check/Makefile.am:
3759         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
3760         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
3761         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
3762         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
3763         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
3764         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
3765         (gst_bin_remove), (gst_bin_iterate_recurse_up),
3766         (bin_element_is_sink), (gst_bin_iterate_sinks),
3767         (gst_bin_iterate_all_by_interface):
3768         * gst/gstbin.h:
3769         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
3770         (gst_element_change_state), (gst_element_dispose),
3771         (gst_element_finalize), (gst_element_set_loop_function):
3772         * gst/gstelement.h:
3773         * gst/gstiterator.c: (find_custom_fold_func):
3774         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3775         (gst_pad_collectv), (gst_pad_collect_valist),
3776         (gst_pad_template_new):
3777         * gst/gstpipeline.c: (gst_pipeline_class_init),
3778         (gst_pipeline_dispose), (gst_pipeline_set_property),
3779         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
3780         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
3781         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
3782         * gst/gstutils.h:
3783         * gst/schedulers/entryscheduler.c:
3784         * gst/schedulers/gstbasicscheduler.c:
3785         (gst_basic_scheduler_cothreaded_chain),
3786         (gst_basic_scheduler_chain_add_element):
3787         * testsuite/bins/interface.c: (main):
3788         Added GstBin test.
3789         Added GstSystemClock test.
3790         Implemented clock distribution code in GstBin.
3791         Implemented iterate sinks method for future use.
3792         Rearranged gstelement.h
3793         Fix GstIterator comparison bug.
3794         Moved some code to GstPipeline, mostly clocking related.
3795
3796 2005-03-09  Wim Taymans  <wim@fluendo.com>
3797
3798         * configure.ac:
3799         * gst/gst_private.h:
3800         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3801         (gst_bin_remove_func), (gst_bin_remove),
3802         (gst_bin_get_by_name_recurse_up):
3803         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
3804         (gst_clock_id_compare_func), (gst_clock_id_wait),
3805         (gst_clock_id_wait_async), (gst_clock_init),
3806         (gst_clock_adjust_unlocked), (gst_clock_get_time):
3807         * gst/gstelement.h:
3808         * gst/gstinfo.c: (_gst_debug_init):
3809         * gst/gstobject.h:
3810         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3811         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
3812         * gst/gstpad.h:
3813         Bump version number, we're now 0.9.0
3814         Add future debugging category.
3815         Fix NULL _unref() in _get_by_name_recurse_up
3816         Rearrange gstpad.h.
3817         Update some docs.
3818
3819 2005-03-08  Wim Taymans  <wim@fluendo.com>
3820
3821         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
3822         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3823         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3824         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
3825         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
3826         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
3827         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
3828         * gst/elements/gstidentity.c: (gst_identity_class_init):
3829         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
3830         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
3831         * gst/elements/gstshaper.c: (gst_shaper_class_init):
3832         * gst/elements/gststatistics.c: (gst_statistics_class_init):
3833         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
3834         (gst_tee_link):
3835         * gst/gstelement.c: (gst_element_class_init),
3836         (gst_element_base_class_init), (gst_element_init),
3837         (gst_element_get_random_pad), (gst_element_wait_state_change),
3838         (gst_element_change_state), (gst_element_dispose),
3839         (gst_element_finalize), (gst_element_set_loop_function):
3840         * gst/gstelement.h:
3841         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
3842         * gst/gstthread.c: (gst_thread_class_init),
3843         (gst_thread_release_children_locks), (gst_thread_change_state):
3844         * gst/schedulers/gstbasicscheduler.c:
3845         (gst_basic_scheduler_loopfunc_wrapper),
3846         (gst_basic_scheduler_chain_wrapper),
3847         (gst_basic_scheduler_src_wrapper),
3848         (gst_basic_scheduler_remove_element):
3849         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3850         Remove threadsafe properties. Fix elements because GObject
3851         complains when installing a property before declaring a
3852         set/get_property handler.
3853         Rearrange gstelement.h file, use STATE macros for state locks.
3854         Free mutexes in the finalize method instead of dispose.
3855
3856 2005-03-08  Wim Taymans  <wim@fluendo.com>
3857
3858         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3859         * gst/gstthread.c: (gst_thread_release_children_locks):
3860         Added parentage check.
3861         Fix build og GstThread again.
3862
3863 2005-03-08  Wim Taymans  <wim@fluendo.com>
3864
3865         * docs/design/part-MT-refcounting.txt:
3866         * docs/design/part-conventions.txt:
3867         * docs/design/part-gstobject.txt:
3868         * docs/design/part-relations.txt:
3869         * docs/design/part-standards.txt:
3870         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3871         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
3872         (gst_bin_get_by_name), (gst_bin_get_by_interface),
3873         (gst_bin_iterate_all_by_interface):
3874         * gst/gstbuffer.h:
3875         * gst/gstclock.h:
3876         * gst/gstelement.c: (gst_element_class_init),
3877         (gst_element_change_state), (gst_element_set_loop_function):
3878         * gst/gstelement.h:
3879         * gst/gstiterator.c:
3880         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
3881         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
3882         (gst_object_dispatch_properties_changed), (gst_object_set_name),
3883         (gst_object_set_parent), (gst_object_unparent),
3884         (gst_object_check_uniqueness):
3885         * gst/gstobject.h:
3886         Docs updates, clean up some headers.
3887
3888 2005-03-07  Wim Taymans  <wim@fluendo.com>
3889
3890         * check/.cvsignore:
3891         * check/Makefile.am:
3892         * check/gst-libs/.cvsignore:
3893         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
3894         * check/gst/.cvsignore:
3895         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
3896         (START_TEST), (gstbus_suite), (main):
3897         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
3898         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
3899         (gst_data_suite), (main):
3900         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
3901         (add_fold_func), (gstiterator_suite), (main):
3902         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
3903         (thread_name_object), (thread_name_object_default),
3904         (gst_object_name_compare), (gst_object_suite), (main):
3905         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
3906         (gst_pad_suite), (main):
3907         * check/gstcheck.c: (gst_check_log_message_func),
3908         (gst_check_log_critical_func), (gst_check_init):
3909         * check/gstcheck.h:
3910         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
3911         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
3912         Added checks.
3913
3914 2005-03-07  Wim Taymans  <wim@fluendo.com>
3915
3916         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
3917         (gst_list_iterator_next), (gst_list_iterator_resync),
3918         (gst_list_iterator_free), (gst_iterator_new_list),
3919         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
3920         (gst_iterator_free), (gst_iterator_push), (filter_next),
3921         (filter_resync), (filter_uninit), (filter_free),
3922         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
3923         (gst_iterator_foreach), (find_custom_fold_func),
3924         (gst_iterator_find_custom):
3925         * gst/gstiterator.h:
3926         Added missing files.
3927
3928 2005-03-07  Wim Taymans  <wim@fluendo.com>
3929
3930         * Makefile.am:
3931         * configure.ac:
3932         * docs/design/part-MT-refcounting.txt:
3933         * docs/design/part-conventions.txt:
3934         * docs/design/part-gstobject.txt:
3935         * docs/design/part-relations.txt:
3936         * examples/mixer/mixer.c: (main):
3937         * examples/thread/thread.c: (eos), (main):
3938         * gst/Makefile.am:
3939         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
3940         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
3941         (gst_spider_plug_from_srcpad):
3942         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
3943         (gst_spider_identity_change_state),
3944         (gst_spider_identity_sink_loop_type_finding):
3945         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
3946         * gst/elements/gstidentity.c: (gst_identity_init):
3947         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
3948         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
3949         * gst/elements/gsttypefindelement.c: (free_entry):
3950         * gst/gst.c:
3951         * gst/gst.h:
3952         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
3953         (gst_bin_set_clock_func), (gst_bin_auto_clock),
3954         (gst_bin_set_index), (gst_bin_set_element_sched),
3955         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
3956         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
3957         (gst_bin_iterate_elements), (iterate_child_recurse),
3958         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
3959         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
3960         (compare_interface), (gst_bin_get_by_interface),
3961         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
3962         * gst/gstbin.h:
3963         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
3964         (gst_buffer_default_free), (gst_buffer_default_copy),
3965         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
3966         (gst_buffer_create_sub):
3967         * gst/gstbuffer.h:
3968         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
3969         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
3970         (gst_caps_unref), (gst_static_caps_get),
3971         (gst_caps_remove_and_get_structure), (gst_caps_append),
3972         (gst_caps_append_structure), (gst_caps_remove_structure),
3973         (gst_caps_copy_nth), (gst_caps_set_simple),
3974         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
3975         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
3976         (gst_caps_structure_intersect_field), (gst_caps_intersect),
3977         (gst_caps_structure_subtract_field), (gst_caps_subtract),
3978         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
3979         (gst_caps_structure_figure_out_union),
3980         (gst_caps_switch_structures), (gst_caps_do_simplify),
3981         (gst_caps_replace), (gst_caps_from_string),
3982         (gst_caps_copy_conditional):
3983         * gst/gstcaps.h:
3984         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
3985         (_gst_clock_id_free), (gst_clock_id_unref),
3986         (gst_clock_id_compare_func), (gst_clock_id_wait),
3987         (gst_clock_id_wait_async), (gst_clock_class_init),
3988         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
3989         (gst_clock_get_time), (gst_clock_set_time_adjust),
3990         (gst_clock_set_property), (gst_clock_get_property):
3991         * gst/gstclock.h:
3992         * gst/gstcompat.h:
3993         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
3994         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
3995         * gst/gstdata.h:
3996         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3997         (gst_element_requires_clock), (gst_element_provides_clock),
3998         (gst_element_set_clock), (gst_element_clock_wait),
3999         (gst_element_wait), (gst_element_set_time_delay),
4000         (gst_element_is_indexable), (gst_element_add_pad),
4001         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4002         (pad_compare_name), (gst_element_get_static_pad),
4003         (gst_element_request_pad), (gst_element_get_request_pad),
4004         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4005         (gst_element_class_get_pad_template_list),
4006         (gst_element_class_get_pad_template), (gst_element_error_func),
4007         (gst_element_get_random_pad), (gst_element_get_event_masks),
4008         (gst_element_send_event), (gst_element_seek),
4009         (gst_element_get_query_types), (gst_element_query),
4010         (gst_element_get_formats), (gst_element_convert),
4011         (gst_element_is_locked_state), (gst_element_set_locked_state),
4012         (gst_element_sync_state_with_parent), (gst_element_change_state),
4013         (gst_element_finalize), (gst_element_yield),
4014         (gst_element_interrupt), (gst_element_set_scheduler),
4015         (gst_element_get_scheduler), (gst_element_set_loop_function):
4016         * gst/gstelement.h:
4017         * gst/gstevent.h:
4018         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4019         (gst_format_get_by_nick), (gst_format_get_details),
4020         (gst_format_iterate_definitions):
4021         * gst/gstformat.h:
4022         * gst/gstindex.c: (gst_index_gtype_resolver):
4023         * gst/gstinfo.c:
4024         * gst/gstinfo.h:
4025         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4026         (gst_mem_chunk_free):
4027         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4028         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4029         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4030         (gst_object_dispatch_properties_changed),
4031         (gst_object_set_name_default), (gst_object_set_name),
4032         (gst_object_get_name), (gst_object_set_name_prefix),
4033         (gst_object_get_name_prefix), (gst_object_set_parent),
4034         (gst_object_get_parent), (gst_object_unparent),
4035         (gst_object_check_uniqueness), (gst_object_save_thyself),
4036         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4037         (gst_object_set_property), (gst_object_get_property),
4038         (gst_object_get_path_string):
4039         * gst/gstobject.h:
4040         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4041         (gst_real_pad_init), (gst_real_pad_get_property),
4042         (gst_pad_custom_new), (gst_pad_get_direction),
4043         (gst_pad_set_active), (gst_pad_is_active),
4044         (gst_pad_set_event_function), (gst_pad_is_linked),
4045         (gst_pad_link_free), (gst_pad_link_intersect),
4046         (gst_pad_link_fixate), (gst_pad_set_caps),
4047         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4048         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4049         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4050         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4051         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4052         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4053         (gst_pad_realize), (gst_pad_get_allowed_caps),
4054         (gst_real_pad_dispose), (gst_real_pad_finalize),
4055         (gst_pad_collectv), (gst_pad_collect_valist),
4056         (gst_pad_template_dispose), (gst_pad_template_new),
4057         (gst_pad_get_internal_links):
4058         * gst/gstpad.h:
4059         * gst/gstpipeline.c: (gst_pipeline_dispose),
4060         (gst_pipeline_change_state):
4061         * gst/gstpipeline.h:
4062         * gst/gstplugin.c:
4063         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4064         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4065         * gst/gstpluginfeature.h:
4066         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4067         * gst/gstquery.c: (_gst_query_type_initialize),
4068         (gst_query_type_register), (gst_query_type_get_by_nick),
4069         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4070         * gst/gstquery.h:
4071         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4072         * gst/gstscheduler.c: (gst_scheduler_add_element),
4073         (gst_scheduler_factory_create):
4074         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4075         (gst_structure_free), (gst_structure_set_name),
4076         (gst_structure_id_set_value), (gst_structure_set_value),
4077         (gst_structure_set_valist), (gst_structure_remove_field),
4078         (gst_structure_remove_fields),
4079         (gst_structure_remove_fields_valist),
4080         (gst_structure_remove_all_fields), (gst_structure_foreach),
4081         (gst_structure_map_in_place),
4082         (gst_caps_structure_fixate_field_nearest_int),
4083         (gst_caps_structure_fixate_field_nearest_double):
4084         * gst/gststructure.h:
4085         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4086         (gst_system_clock_init), (gst_system_clock_dispose),
4087         (gst_system_clock_async_thread),
4088         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4089         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4090         * gst/gstsystemclock.h:
4091         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4092         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4093         * gst/gsttaginterface.c:
4094         * gst/gstthread.c: (gst_thread_dispose),
4095         (gst_thread_release_children_locks), (gst_thread_change_state),
4096         (gst_thread_main_loop):
4097         * gst/gsttrashstack.h:
4098         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4099         * gst/gsttypes.h:
4100         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4101         (gst_element_request_pad), (gst_element_get_pad_from_template),
4102         (gst_element_request_compatible_pad),
4103         (gst_element_get_compatible_pad_filtered),
4104         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4105         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4106         (gst_element_link_many), (gst_element_link),
4107         (gst_element_link_pads), (gst_element_unlink_pads),
4108         (gst_element_unlink_many), (gst_element_unlink),
4109         (gst_pad_can_link_filtered), (gst_pad_can_link),
4110         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4111         (gst_object_default_error), (gst_bin_add_many),
4112         (gst_bin_remove_many), (gst_element_populate_std_props),
4113         (gst_element_class_install_std_props), (gst_buffer_merge),
4114         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4115         (link_fold_func), (gst_pad_proxy_setcaps):
4116         * gst/gstutils.h:
4117         * gst/gstvalue.c: (gst_value_deserialize_string):
4118         * gst/parse/grammar.y:
4119         * gst/schedulers/gstbasicscheduler.c:
4120         (gst_basic_scheduler_cothreaded_chain),
4121         (gst_basic_scheduler_chain_recursive_add),
4122         (gst_basic_scheduler_pad_link):
4123         * gst/schedulers/gstoptimalscheduler.c:
4124         (get_group_schedule_function),
4125         (gst_opt_scheduler_state_transition),
4126         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4127         * libs/gst/bytestream/bytestream.c:
4128         * libs/gst/dataprotocol/dataprotocol.c:
4129         (gst_dp_header_from_buffer):
4130         * po/nb.po:
4131         * po/ru.po:
4132         * tests/threadstate/threadstate2.c: (eos):
4133         * tools/gst-compprep.c: (main):
4134         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4135         (print_pad_info), (print_children_info):
4136         * tools/gst-launch.c: (idle_func), (main):
4137         * tools/gst-md5sum.c: (idle_func), (main):
4138         * tools/gst-xmlinspect.c: (print_element_info):
4139         First THREADED backport attempt, focusing on adding locks and
4140         making sure the API is threadsafe. Needs more work. More docs
4141         follow this week.
4142
4143 2005-02-24  Andy Wingo  <wingo@pobox.com>
4144
4145         * tests/bench-complexity.scm:
4146         * tests/complexity.gnuplot: New files, good for running complexity
4147         benchmarks.
4148
4149         * tests/Makefile.am:
4150         * tests/complexity.c: New test, sets up N elements, at each level
4151         teeing into M streams per element. Eeeenteresting.
4152
4153         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4154         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4155         running bench-mass_elements.scm.
4156
4157         * tests/bench-mass_elements.scm: New script, runs mass_elements
4158         for various numbers of identities, outputting the results to a
4159         file. Requires guile 1.6. Just for testing.
4160
4161 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4162
4163         * gst/schedulers/fairscheduler.c:
4164           compile with debug disabled
4165
4166 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4167
4168         * configure.ac:
4169           hunting season on 0.9 is now OPEN
4170
4171 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4172
4173         * docs/libs/tmpl/gstcontrol.sgml:
4174         * docs/libs/tmpl/gstdparam.sgml:
4175         * docs/libs/tmpl/gstdplinint.sgml:
4176         * docs/libs/tmpl/gstdpman.sgml:
4177         * docs/libs/tmpl/gstdpsmooth.sgml:
4178         * docs/libs/tmpl/gstunitconvert.sgml:
4179           more docs for the state of dparams
4180
4181 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4182
4183         * gst/gstelementfactory.c: (gst_element_factory_create):
4184         * gst/gstobject.c: (gst_object_init),
4185         (gst_object_set_name_default), (gst_object_set_name):
4186           name objects by default, not in gst_element_factory_create. Allows
4187           using elements created with g_object_new. (fixes #167283)
4188
4189 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4190
4191         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4192           make the time that debugging functions print relative to when
4193           gst_init was called
4194
4195 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4196
4197         * gst/gsttaginterface.c:
4198           Fix inline docs: tag setter vararg functions are NULL-terminated,
4199           GST_TAG_INVALID doesn't exist any more.
4200
4201 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4202
4203         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4204         Allocate the 1 byte more memory that was forgotten!!!!!
4205         fixes memory corruption on 64bit platforms
4206
4207 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4208
4209         * docs/pwg/building-pads.xml:
4210         * docs/pwg/intro-basics.xml:
4211           fixed a few typos, relabeled introductionary list of types
4212         * docs/random/ensonic/dparams.txt:
4213           more notes abut dparam changes
4214         * libs/gst/control/dparam.c: (gst_dparam_attach):
4215         * libs/gst/control/dparammanager.c:
4216         * libs/gst/control/dparammanager.h:
4217           - many comments and notes on dparam implementation
4218           - new dparams are were not initialized to the default value
4219             from param spec
4220
4221 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4222
4223         submitted by: Peter Astakhov
4224
4225         * po/LINGUAS:
4226         * po/ru.po:
4227           adding Russian translation
4228
4229 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4230
4231         * configure.ac:
4232         * docs/gst/Makefile.am:
4233         * docs/libs/Makefile.am:
4234           make sure popt is added to gtk-doc flags.  Fixes #147782.
4235
4236 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4237
4238         * docs/faq/using.xml:
4239           Fix typo in FAQ (artssink => artsdsink)
4240
4241 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4242
4243         * tools/gst-launch.1.in:
4244           Fix typo (#166699).
4245
4246 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4247
4248         * docs/faq/using.xml:
4249           Add -v argument to fakesrc/fakesink gst-launch line,
4250           so that the promised output will actually show up.
4251
4252 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4253
4254         * gst/gstthread.c: (gst_thread_change_state):
4255           Implement state-change error handling (#166073).
4256
4257 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4258
4259         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4260           Release interrupt after handling (#166250).
4261
4262 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4263
4264         * configure.ac:
4265           back to HEAD
4266
4267 === release 0.8.9 ===
4268
4269 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4270
4271         * NEWS:
4272         * RELEASE:
4273         * configure.ac:
4274           releasing 0.8.9, "Like Eating Glass"
4275
4276 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4277
4278         submitted by: Clytie Siddall
4279
4280         * po/vi.po: Added Vietnamese translation
4281
4282 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4283
4284         patch by: Tim Philipp-Müller
4285
4286         * configure.ac:
4287         * gst/gstpad.c:
4288           unref data when probe function returns FALSE.  Fixes #166362
4289
4290 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4291
4292         * gst/gst.c: (gst_init_get_popt_table):
4293           Fix typo (#166269).
4294
4295 2005-02-04  Andy Wingo  <wingo@pobox.com>
4296
4297         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4298         the debugging on whether the caps are compatible.
4299
4300 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4301
4302         * docs/manual/basics-elements.xml:
4303           Fix two typos.
4304
4305 2005-02-02  Wim Taymans  <wim@fluendo.com>
4306
4307         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4308         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4309         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4310         Remove some FIXMEs after analysing and commenting why they
4311         are not issues.
4312
4313 2005-02-02  Wim Taymans  <wim@fluendo.com>
4314
4315         * gst/schedulers/gstoptimalscheduler.c:
4316         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4317         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4318         (get_invalid_call), (chain_invalid_call),
4319         (get_group_schedule_function), (loop_group_schedule_function),
4320         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4321         (gst_opt_scheduler_state_transition),
4322         (gst_opt_scheduler_add_element),
4323         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4324         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4325         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4326         (gst_opt_scheduler_show):
4327         Added lock to protect scheduler data structures.
4328
4329 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4330
4331         * testsuite/threads/threadi.c: (cb_data):
4332           Fix buglet in test.
4333
4334 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4335
4336         * testsuite/threads/Makefile.am:
4337         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4338           On Wim's request, split the test in three separately-compiled
4339           tests that each test a very specific bug. Two of them still fail,
4340           will create bugs for those. threadi.c indicates why they fail.
4341
4342 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4343
4344         * gst/schedulers/gstoptimalscheduler.c:
4345         (get_group_schedule_function):
4346           Try to work with the threading mess that queue_link is.
4347
4348 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4349
4350         * gst/gstbin.c: (gst_bin_remove_func):
4351           Explicitely make an element release locks in a group when being
4352           remove from a bin.
4353         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4354           If there's no scheduler, always return immediately (similar to
4355           gst_element_interrupt).
4356
4357 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4358
4359         * gst/gstbin.c: (gst_bin_child_state_change_func):
4360           Remove a piece of code that could never be reached.
4361         * docs/gst/gstreamer-sections.txt:
4362         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4363         (gst_pad_call_get_function):
4364         * gst/gstpad.h:
4365         * testsuite/pad/Makefile.am:
4366           Fix #150546, enable tests.
4367
4368 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4369
4370         * docs/pwg/advanced-types.xml:
4371           Fix description for buffer-frames=0.
4372         * docs/gst/tmpl/gstbin.sgml:
4373         * gst/gstbin.c: (gst_bin_child_state_change_func),
4374         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4375         * gst/gstbin.h:
4376         * testsuite/threads/Makefile.am:
4377         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4378         (cb_state), (cb_play), (main):
4379           Fix non-recursive state changes to *really* change the state
4380           of the object, and not just call parent_class->state_change.
4381           Fix a lot of lockups caused by this. Fixes #132775. Add test
4382           for the problem. Also enable test to show #142588 (fixed).
4383         * gst/gstthread.c: (gst_thread_change_state),
4384         (gst_thread_child_state_change):
4385           Don't exit the thread if we go to NULL and are inside thread
4386           context. Instead, return control to the main thread context
4387           and exit from there.
4388         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4389           Don't unset virtual functions, since those may still be used.
4390           That's not necessarily correct, but suffices for now.
4391         * configure.ac:
4392         * testsuite/Makefile.am:
4393         * testsuite/pad/Makefile.am:
4394         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4395         (gst_test_sink_base_init), (gst_test_sink_chain),
4396         (gst_test_sink_init), (main):
4397         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4398         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4399         (main):
4400         * testsuite/pad/link.c: (gst_test_element_class_init),
4401         (gst_test_element_base_init), (gst_test_src_get),
4402         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4403         (gst_test_filter_loop), (gst_test_filter_init),
4404         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4405         (cb_error), (main):
4406           Add tests to show #150546. Pass, but should fail (currently
4407           disabled from the testsuite).
4408         * gst/gstscheduler.c: (gst_scheduler_dispose):
4409           Dereference child schedulers on dispose (#94464).
4410         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4411           Fix typo.
4412         * testsuite/threads/thread.c: (main):
4413           Add more debug.
4414
4415 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4416
4417         * gst/gstpad.c: (gst_pad_push):
4418           Oops, revert previous commit, broke testsuite...
4419
4420 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4421
4422         * gst/gstpad.c: (gst_pad_push):
4423           Add check that the pad on which the push is performed is not a
4424           get-based pad (#150546).
4425
4426 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4427
4428         * gst/elements/gsttypefindelement.c:
4429         (gst_type_find_element_handle_event):
4430           Fix buffer pushing if stream EOSes during typefinding.
4431
4432 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4433
4434         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4435
4436         * gst/gstvalue.c: (gst_string_wrap):
4437           Allow NULL-strings as argument (#165365).
4438
4439 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4440
4441         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4442
4443         * gst/schedulers/faircothreads.c:
4444         (gst_fair_scheduler_cothread_queue_show):
4445           Fix build without debug enabled.
4446
4447 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4448
4449         * docs/gst/gstreamer-sections.txt:
4450         * docs/libs/gstreamer-libs-docs.sgml:
4451         * docs/libs/gstreamer-libs-sections.txt:
4452         * docs/libs/tmpl/gstcontrol.sgml:
4453         * docs/libs/tmpl/gstdparam.sgml:
4454         * docs/libs/tmpl/gstdplinint.sgml:
4455         * docs/libs/tmpl/gstdpman.sgml:
4456         * docs/libs/tmpl/gstdpsmooth.sgml:
4457         * docs/libs/tmpl/gstputbits.sgml:
4458         * docs/libs/tmpl/gstunitconvert.sgml:
4459         * libs/gst/control/dparam.c:
4460         * libs/gst/control/dparam.h:
4461         * libs/gst/control/dparammanager.c:
4462         (gst_dpman_add_required_dparam_callback),
4463         (gst_dpman_add_required_dparam_direct),
4464         (gst_dpman_add_required_dparam_array),
4465         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4466         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4467         (gst_dpman_get_manager)
4468           restructured DParam docs
4469
4470 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4471
4472         * gst-element-check.m4:
4473           Only check for gst-inspect if we haven't already
4474           found it in previous element check runs
4475
4476 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4477
4478         * docs/gst/Makefile.am:
4479         * docs/libs/Makefile.am:
4480           fixed install rules to treat style.css as optional
4481
4482 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4483
4484         * docs/gst/Makefile.am:
4485         * docs/libs/Makefile.am:
4486           install style.css along with docs
4487         * docs/gst/tmpl/gstbin.sgml:
4488         * docs/gst/tmpl/gstclock.sgml:
4489         * docs/gst/tmpl/gstdata.sgml:
4490         * docs/gst/tmpl/gstelement.sgml:
4491         * gst/gstbin.h:
4492         * gst/gstelement.c: (gst_element_class_init):
4493         * gst/gstelement.h:
4494           fixing incomplete docs
4495
4496 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4497
4498         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4499           Don't unref seek event twice when fflush() fails
4500           
4501 2005-01-22  David Schleef  <ds@schleef.org>
4502
4503         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4504
4505 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4506
4507         * docs/gst/Makefile.am:
4508         * docs/libs/Makefile.am:
4509           added params for deprecation guards
4510         * gst/gst.c:
4511         * gst/gst.h:
4512         * gst/gsterror.c: (_gst_resource_errors_init),
4513         (_gst_stream_errors_init):
4514         * gst/gsterror.h:
4515           documented some more enums
4516
4517 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4518         * gst/autoplug/gstspideridentity.c:
4519         Cosmetic fix - spider_find_peek should be static
4520         * gst/parse/parse.l:
4521         Applying fix for #164261
4522
4523 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4524
4525         * docs/gst/gstreamer-sections.txt:
4526         * docs/gst/tmpl/gstplugin.sgml:
4527         * docs/libs/gstreamer-libs-sections.txt:
4528         * docs/libs/tmpl/gstcontrol.sgml:
4529         * gst/gstbuffer.h:
4530         * gst/gsttag.h:
4531         * gst/gstvalue.c:
4532           added docs for the TAG defines
4533
4534 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4535
4536         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4537           Only unref entry if there is an entry.
4538
4539 2005-01-17  Wim Taymans  <wim@fluendo.com>
4540
4541         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4542         (remove_from_group), (schedule_group), (normalize_group),
4543         (gst_opt_scheduler_iterate):
4544         Also ref/unref decoupled elements before iterating the
4545         group since they are not added to the list of elements.
4546
4547 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4548
4549         * docs/manual/highlevel-components.xml:
4550           Add subtitle/streamselection as new features to playbin.
4551
4552 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4553
4554         * docs/manual/manual.xml:
4555           Re-enable dataaccess docs (oops).
4556
4557 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4558
4559         * docs/pwg/advanced-types.xml:
4560         * docs/random/mimetypes:
4561           Add documentation on libsndfile types (#163309), by Steve Baker
4562           <steve@stevebaker.org>.
4563         * gst/gstelement.c: (gst_element_release_request_pad):
4564           If an element has no explicit function, just remove the pad.
4565
4566 2005-01-17  Luca Ognibene  <luogni@tin.it>
4567
4568         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4569
4570         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
4571           Fix memleak (#163801).
4572
4573 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4574
4575         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
4576           I think this is actually more correct...
4577
4578 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4579
4580         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4581           Another workaround for memory access while destroyed in callback.
4582           Please, someone with refcount knowledge, have a look at this.
4583
4584 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4585
4586         * docs/faq/faq.xml:
4587         * docs/faq/legal.xml:
4588           move the legal Q&A here
4589
4590 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4591
4592         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
4593         (gst_tee_request_new_pad):
4594           Fix negotiation.
4595
4596 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4597
4598         * docs/random/omega/caps2:
4599         * testsuite/caps/caps_strings:
4600           replace framerate aproximations by their real value
4601           (24000/1001, 30000/1001, 60000/1001)
4602           Partially fixes bug #164049
4603
4604 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4605
4606         * docs/gst/Makefile.am:
4607           don't fail on the stupid GstPoptOption
4608
4609 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4610
4611         * gst/gstpad.h:
4612         * gst/gstprobe.c:
4613           allow probes to work on ghost pads by realizing the pad
4614           probe debugging
4615
4616 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4617
4618         * docs/gst/gstreamer-sections.txt:
4619         * docs/gst/tmpl/gstpad.sgml:
4620         * gst/gstpad.c: (gst_pad_set_active_recursive):
4621         * gst/gstpad.h:
4622           Add gst_pad_set_active_recursive().
4623
4624 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4625
4626         * docs/random/release:
4627           updates
4628         * gst/gst_private.h:
4629         * gst/gstinfo.c:
4630         * gst/gstobject.c:
4631           move deep_notify logging to a new category
4632         * gst/gstprobe.c:
4633         * gst/gstprobe.h:
4634           add stuff so bindings can wrap probes
4635
4636 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4637
4638         * gst/gstplugin.c: (gst_plugin_load):
4639           Fix plugin loading if plugin/lib was already loaded. Fixes
4640           #163383
4641
4642 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
4643
4644         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4645
4646         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
4647           Protect plugin loading by a mutex so it's threadsafe. Fixes
4648           #163234.
4649
4650 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4651
4652         * gst/gstevent.c: (_gst_event_copy):
4653           Reference source object when copying events, since it'll be
4654           dereferenced on event dereferencing as well.
4655
4656 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4657
4658         * docs/gst/gstreamer-sections.txt:
4659         * docs/gst/tmpl/gstevent.sgml:
4660         * gst/gstevent.c: (gst_event_new_filler_stamped),
4661         (gst_event_filler_get_duration):
4662         * gst/gstevent.h:
4663           Add two new functions for filler events (which are used to
4664           synchronize streams if one of them is not having any data
4665           for a while) without interrupting the actual data-stream.
4666           Basically a no-op.
4667         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4668         (gst_queue_link_sink), (gst_queue_link_src),
4669         (gst_queue_change_state):
4670           Allow for renegotiation while filled. Required for stream
4671           switching while playing.
4672
4673 2005-01-08  Benjamin Otte  <otte@gnome.org>
4674
4675         * gst/gstelement.c: (gst_element_link_many):
4676           fix up g_return_if_fail's
4677         * po/LINGUAS:
4678         * po/de.po:
4679           add German translation, that was somehow not included
4680
4681 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4682
4683         * docs/random/mimetypes:
4684           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
4685           do not add them to riff-lib as they are not common
4686
4687 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4688
4689         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4690           Check for existence of probe after performing the probe before
4691           re-accessing it to prevent segfaults caused by removal of the
4692           probe in the callback.
4693
4694 2005-01-05  David Schleef  <ds@schleef.org>
4695
4696         * testsuite/registry/Makefile.am:
4697         * testsuite/registry/gst-print-formats.c:
4698         (print_pad_templates_info), (print_element_list),
4699         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
4700         (g_list_uniqify), (get_pad_templates_info),
4701         (get_element_mime_list), (print_mime_list), (main): A little
4702         program that looks through the registry to find elements of
4703         a given type.  Not particularly interesting as a test, except
4704         that there's no other test covering the same area.
4705
4706 2005-01-05  David Schleef  <ds@schleef.org>
4707
4708         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
4709         (fault_handler_sigaction), (fault_spin),
4710         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
4711         in signal.h-type signal handlers by not calling forbidden functions,
4712         including gst_element_set_state().
4713
4714 2005-01-05  David Schleef  <ds@schleef.org>
4715
4716         * gst/gstvalue.h: Mark _gst_reserved[] as private
4717
4718 2005-01-05  David Schleef  <ds@schleef.org>
4719
4720         * gst/gstvalue.c: Fix doc build problem.
4721
4722 2005-01-05  David Schleef  <ds@schleef.org>
4723
4724         * gst/gstvalue.c: Add some documentation
4725
4726 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
4727
4728         * docs/README:
4729           another shell oneliner for empty return value docs
4730         * gst/gstcaps.c:
4731         * gst/gstvalue.c:
4732         * libs/gst/control/dparam.c:
4733           more doc fixes (parameters and return values)
4734
4735 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
4736
4737         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4738
4739         * gst/gstregistry.h:
4740         * gst/registries/gstxmlregistry.c:
4741           Fix macro's for Mingw (fixes #162276).
4742
4743 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
4744
4745         * docs/README:
4746           quick shell oneliner to find undocumented members
4747         * docs/gst/tmpl/gstplugin.sgml:
4748         * docs/gst/tmpl/gstscheduler.sgml:
4749         * docs/gst/tmpl/gstthread.sgml:
4750           more enumtypes cleanup
4751         * gst/gsterror.h:
4752           activated documentation comments, now someone needs to document
4753           the enums :(
4754
4755 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4756
4757         * docs/manual/manual.xml:
4758           Add dataaccess part (doh!).
4759
4760 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4761
4762         * docs/manual/advanced-autoplugging.xml:
4763           Fix typo (intiate -> initiate).
4764
4765 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4766
4767         * docs/random/bbb/streamselection:
4768           Add some notes on how to handle multi-subtitle/-audio streams.
4769
4770 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
4771
4772         * docs/gst/gstreamer-docs.sgml:
4773         * docs/gst/gstreamer-sections.txt:
4774         * docs/gst/tmpl/gstenumtypes.sgml:
4775         * docs/gst/tmpl/gsterror.sgml:
4776         * docs/gst/tmpl/gstevent.sgml:
4777         * docs/gst/tmpl/gstpad.sgml:
4778         * docs/gst/tmpl/gstpadtemplate.sgml:
4779         * docs/gst/tmpl/gstthread.sgml:
4780           removed gstenumtypes section from docs and put all the enums into
4781           their sections
4782
4783 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4784
4785         * gst/gstplugin.c:
4786           document gst_library_load a bit more (riff special case + return
4787           value if already loaded)
4788         * testsuite/bytestream/filepadsink.c:
4789           plugin name is 'gstbytestream', not 'bytestream'
4790
4791 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4792
4793         * docs/random/bbb/subtitles:
4794           Add some first mind rumblings on proper subtitle support.
4795
4796 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
4797
4798         * po/ca.po:
4799         * po/sv.po:
4800           updated translations
4801
4802 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4803
4804         * docs/manual/advanced-dataaccess.xml:
4805           Add section on how to use fakesrc/fakesink/identity in your
4806           application, plus section on how to embed plugins. Also mention
4807           probes.
4808         * docs/manual/appendix-checklist.xml:
4809         * docs/manual/appendix-debugging.xml:
4810         * docs/manual/appendix-gnome.xml:
4811         * docs/manual/appendix-integration.xml:
4812           Debug -> checklist, GNOME -> integration, add sections on Linux,
4813           KDE integration and add other things useful for application
4814           development.
4815         * docs/manual/manual.xml:
4816           Remove some fixmes, update some file pointers.
4817         * docs/pwg/appendix-checklist.xml:
4818           Fix typo.
4819         * docs/pwg/building-boiler.xml:
4820           Remove ugly header and add commented fixme.
4821         * docs/pwg/pwg.xml:
4822           Add fixme.
4823         * examples/manual/Makefile.am:
4824           Add example for added docs.
4825
4826 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4827
4828         * configure.ac:
4829           back to HEAD
4830
4831 === release 0.8.8 ===
4832
4833 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4834
4835         * NEWS:
4836         * RELEASE:
4837         * configure.ac:
4838           Releasing 0.8.8, "I'll Take Care Of You"
4839
4840 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4841
4842         * configure.ac:
4843           second prerelease
4844
4845 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4846
4847         patch by: Wim Taymans
4848
4849         * gst/gstbin.c:
4850           Fix for #159852 - make iterate emission threadsafe
4851
4852 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4853
4854         * docs/faq/cvs.xml:
4855           notes about new fdo account request
4856
4857 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
4858
4859         * docs/gst/gstreamer-docs.sgml:
4860         * docs/gst/tmpl/gstenumtypes.sgml:
4861         * docs/gst/tmpl/gstplugin.sgml:
4862         * docs/libs/gstreamer-libs-docs.sgml:
4863           Added missing short docs. Added ids for navigation.
4864
4865 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4866
4867         * docs/manual/advanced-autoplugging.xml:
4868         * docs/manual/advanced-schedulers.xml:
4869         * docs/manual/advanced-threads.xml:
4870           Rewrites. Remove cothreads, go a bit into opt specifically,
4871           document threads and their gotchas, and do some technical stuff
4872           on autoplugging plus add some working examples. Fixes #157395.
4873         * examples/manual/Makefile.am:
4874           Add typefind/autoplugger example (one that actually works).
4875           Remove queue example since it's a duplicate of the thread one.
4876
4877 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4878
4879         * gst/gstvalue.c: (gst_value_deserialize_string):
4880           use deprecated g_value_set_string_take_ownership to keep compatible
4881           with glib 2.2
4882
4883 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4884
4885         * gst/gstvalue.c: (gst_value_deserialize_string):
4886           revert last patch, only dom a g_utf8_validate now before accepting
4887           the string - caps parsing strips " from strings so we can't rely on
4888           them
4889         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4890           disable a test that tested the above and comment it
4891
4892 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
4893
4894         Patch reviewed by David Schleef  <ds@schleef.org>
4895
4896         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
4897         bug #153882)
4898         * win32/gstenumtypes.h: same
4899
4900 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4901
4902         * gst/gstpad.c: (gst_pad_query):
4903           Do query on realized pad, similar to how convert/send_event handle
4904           this. Also makes sense, since this pad belongs to the function to
4905           which this query will be sent. Fixes #158163.
4906
4907 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
4908
4909         * docs/manual/appendix-programs.xml: fix pipeline to actually work
4910
4911 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4912
4913         * docs/faq/general.xml: fix pipeline to actually work
4914
4915 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4916
4917         * gst/gstvalue.c: (gst_value_deserialize_string):
4918           check that a simple string that gets deserialized does not contain
4919           invalid characters
4920         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4921           remove a test that tested a wring behaviour
4922
4923 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
4924
4925         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4926
4927         * docs/manual/intro-motivation.xml:
4928           Fix typos.
4929
4930 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
4931
4932         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4933
4934         * docs/gst/tmpl/gstprobe.sgml:
4935           Fix documentation of probe callback - it is supposed to return
4936           FALSE, not TRUE, to remove data from the stream (#159087).
4937
4938 2004-12-16  Daniel Gazard  <dany42@free.fr>
4939
4940         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4941
4942         * gst/gstelementfactory.c: (gst_element_factory_create):
4943           Fix compile failure if compiling without libxml2 support (#149936).
4944
4945 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4946
4947         * docs/manual/advanced-autoplugging.xml:
4948         * docs/manual/highlevel-components.xml:
4949           Move spider from autoplugging to components. Autoplugging is for
4950           internals, not for solutions. ;-).
4951
4952 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4953
4954         * docs/random/ds/0.9-suggested-changes:
4955           Make note on device/location/uri property names.
4956
4957 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4958
4959         * docs/manual/advanced-autoplugging.xml:
4960         * docs/manual/advanced-clocks.xml:
4961         * docs/manual/advanced-interfaces.xml:
4962         * docs/manual/advanced-metadata.xml:
4963         * docs/manual/advanced-position.xml:
4964         * docs/manual/advanced-schedulers.xml:
4965         * docs/manual/advanced-threads.xml:
4966         * docs/manual/appendix-gnome.xml:
4967         * docs/manual/appendix-programs.xml:
4968         * docs/manual/appendix-quotes.xml:
4969         * docs/manual/autoplugging.xml:
4970         * docs/manual/basics-bins.xml:
4971         * docs/manual/basics-data.xml:
4972         * docs/manual/basics-elements.xml:
4973         * docs/manual/basics-helloworld.xml:
4974         * docs/manual/basics-init.xml:
4975         * docs/manual/basics-pads.xml:
4976         * docs/manual/basics-plugins.xml:
4977         * docs/manual/bins-api.xml:
4978         * docs/manual/bins.xml:
4979         * docs/manual/buffers-api.xml:
4980         * docs/manual/buffers.xml:
4981         * docs/manual/clocks.xml:
4982         * docs/manual/components.xml:
4983         * docs/manual/cothreads.xml:
4984         * docs/manual/debugging.xml:
4985         * docs/manual/dparams-app.xml:
4986         * docs/manual/dynamic.xml:
4987         * docs/manual/elements-api.xml:
4988         * docs/manual/elements.xml:
4989         * docs/manual/factories.xml:
4990         * docs/manual/gnome.xml:
4991         * docs/manual/goals.xml:
4992         * docs/manual/helloworld.xml:
4993         * docs/manual/helloworld2.xml:
4994         * docs/manual/highlevel-components.xml:
4995         * docs/manual/highlevel-xml.xml:
4996         * docs/manual/init-api.xml:
4997         * docs/manual/intro-basics.xml:
4998         * docs/manual/intro-motivation.xml:
4999         * docs/manual/intro-preface.xml:
5000         * docs/manual/intro.xml:
5001         * docs/manual/links-api.xml:
5002         * docs/manual/links.xml:
5003         * docs/manual/manual.xml:
5004         * docs/manual/motivation.xml:
5005         * docs/manual/pads-api.xml:
5006         * docs/manual/pads.xml:
5007         * docs/manual/plugins-api.xml:
5008         * docs/manual/plugins.xml:
5009         * docs/manual/programs.xml:
5010         * docs/manual/queues.xml:
5011         * docs/manual/quotes.xml:
5012         * docs/manual/schedulers.xml:
5013         * docs/manual/states-api.xml:
5014         * docs/manual/states.xml:
5015         * docs/manual/threads.xml:
5016         * docs/manual/typedetection.xml:
5017         * docs/manual/win32.xml:
5018         * docs/manual/xml.xml:
5019           Try 2. This time, include a short preface as a "general
5020           introduction", also add code blocks around all code samples
5021           so they get compiled. We still need a way to tell readers
5022           the filename of the code sample. In some cases, don't show
5023           all code in the documentation, but do include it in the generated
5024           code. This allows for focussing on specific bits in the docs,
5025           while still having a full test application available.
5026         * examples/manual/Makefile.am:
5027           Fix up examples for new ADM. Add several of the new examples that
5028           were either added or were missing from the build system.
5029         * examples/manual/extract.pl:
5030           Allow nameless blocks.
5031
5032 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5033
5034         * docs/manual/elements-api.xml:
5035         * docs/manual/helloworld.xml:
5036         * examples/manual/extract.pl:
5037           fix last example.  Add example of adding code blocks that are not
5038           shown in docbook output.
5039
5040 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5041
5042         * docs/manual/dynamic.xml:
5043         * docs/manual/elements-api.xml:
5044         * docs/manual/gnome.xml:
5045         * docs/manual/helloworld2.xml:
5046         * docs/manual/init-api.xml:
5047         * docs/manual/queues.xml:
5048         * docs/manual/threads.xml:
5049         * docs/manual/xml.xml:
5050         * examples/manual/extract.pl:
5051           Make it possible to extract example code from separate blocks.
5052           Should make Ronald happy.
5053
5054 2004-12-15  Wim Taymans  <wim@fluendo.com>
5055
5056         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5057         (remove_from_group), (group_elements_set_visited),
5058         (normalize_group), (gst_opt_scheduler_iterate):
5059         Fix bug where a flag was not updated on a decoupled entry point 
5060         because we were just checking the group element list and decoupled
5061         elements are not in that list..
5062
5063 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5064
5065         * docs/manual/advanced-autoplugging.xml:
5066         * docs/manual/advanced-clocks.xml:
5067         * docs/manual/advanced-dparams.xml:
5068         * docs/manual/advanced-interfaces.xml:
5069         * docs/manual/advanced-metadata.xml:
5070         * docs/manual/advanced-position.xml:
5071         * docs/manual/advanced-schedulers.xml:
5072         * docs/manual/advanced-threads.xml:
5073         * docs/manual/appendix-debugging.xml:
5074         * docs/manual/appendix-gnome.xml:
5075         * docs/manual/appendix-programs.xml:
5076         * docs/manual/appendix-quotes.xml:
5077         * docs/manual/appendix-win32.xml:
5078         * docs/manual/autoplugging.xml:
5079         * docs/manual/basics-bins.xml:
5080         * docs/manual/basics-data.xml:
5081         * docs/manual/basics-elements.xml:
5082         * docs/manual/basics-helloworld.xml:
5083         * docs/manual/basics-init.xml:
5084         * docs/manual/basics-pads.xml:
5085         * docs/manual/basics-plugins.xml:
5086         * docs/manual/bins-api.xml:
5087         * docs/manual/bins.xml:
5088         * docs/manual/buffers-api.xml:
5089         * docs/manual/buffers.xml:
5090         * docs/manual/clocks.xml:
5091         * docs/manual/components.xml:
5092         * docs/manual/cothreads.xml:
5093         * docs/manual/debugging.xml:
5094         * docs/manual/dparams-app.xml:
5095         * docs/manual/dynamic.xml:
5096         * docs/manual/elements-api.xml:
5097         * docs/manual/elements.xml:
5098         * docs/manual/factories.xml:
5099         * docs/manual/gnome.xml:
5100         * docs/manual/goals.xml:
5101         * docs/manual/helloworld.xml:
5102         * docs/manual/helloworld2.xml:
5103         * docs/manual/highlevel-components.xml:
5104         * docs/manual/highlevel-xml.xml:
5105         * docs/manual/init-api.xml:
5106         * docs/manual/intro-motivation.xml:
5107         * docs/manual/intro-preface.xml:
5108         * docs/manual/intro.xml:
5109         * docs/manual/links-api.xml:
5110         * docs/manual/links.xml:
5111         * docs/manual/manual.xml:
5112         * docs/manual/motivation.xml:
5113         * docs/manual/pads-api.xml:
5114         * docs/manual/pads.xml:
5115         * docs/manual/plugins-api.xml:
5116         * docs/manual/plugins.xml:
5117         * docs/manual/programs.xml:
5118         * docs/manual/queues.xml:
5119         * docs/manual/quotes.xml:
5120         * docs/manual/schedulers.xml:
5121         * docs/manual/states-api.xml:
5122         * docs/manual/states.xml:
5123         * docs/manual/threads.xml:
5124         * docs/manual/typedetection.xml:
5125         * docs/manual/win32.xml:
5126         * docs/manual/xml.xml:
5127           First try at rewriting the ADM. Needs lotsamore work, but some
5128           parts might already be somewhat useful.
5129         * docs/pwg/advanced-interfaces.xml:
5130           Remove properties interface, it never actually existed (except for
5131           on my HD...).
5132
5133 2004-12-13  David Schleef  <ds@schleef.org>
5134
5135         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5136         be NULL (bug #160220).
5137
5138 2004-12-13  David Schleef  <ds@schleef.org>
5139
5140         * configure.ac: remove all mmx stuff, because it's not used.
5141         * docs/random/ds/0.9-suggested-changes: additional notes
5142         * include/Makefile.am: we don't use these anymore
5143         * include/mmx.h: remove
5144         * include/sse.h: remove
5145
5146 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5147
5148         * docs/random/mimetypes:
5149           Add FOURCC code for h264 codec (VSSH)
5150           Add alternate FOURCC codes for h263 related codecs
5151
5152 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5153
5154         * docs/manual/programs.xml:
5155           Added more gst-launch examples.
5156
5157 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5158
5159         * gst/gstqueue.c: (gst_queue_handle_src_query):
5160           Check for availability again.
5161
5162 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5163
5164         * gst/gstcaps.c: (gst_caps_compare_structures):
5165           Simple caps go first. This has the nice side-effect of fixing an
5166           obscure warning.
5167
5168 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5169
5170         * gst/gstversion.h.in:
5171           Protect header.
5172
5173 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5174
5175         * gst/schedulers/gstoptimalscheduler.c:
5176         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5177         (gst_opt_scheduler_get_wrapper):
5178           When we're recursing into a chain run, only run the directly
5179           related group, not all queued ones. This will fix a possible
5180           deadlock in chains with more than two groups.
5181
5182 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5183
5184         * autogen.sh:
5185           remove patch if autopoint fails
5186
5187 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5188
5189         * docs/gst/gstreamer-sections.txt:
5190           Document Thomas' addition, fix build, make Luis the sheriff happy.
5191
5192 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5193
5194         * gst/gstplugin.c:
5195         * gst/gstplugin.h:
5196           add accessor for version field
5197
5198 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5199
5200         submitted by: Luca Ferretti <elle.uca@infinito.it>
5201
5202         * po/LINGUAS:
5203         * po/it.po:
5204           New tranlation added: Italian
5205
5206 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5207
5208         * gst/gstpad.c: (gst_pad_is_negotiated),
5209         (gst_pad_get_negotiated_caps):
5210           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5211           it doesn't actually check the contents), so be sure to hand it
5212           a RealPad else we'll crash.
5213
5214 2004-12-03  Wim Taymans  <wim@fluendo.com>
5215
5216         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5217         (gst_queue_link), (gst_queue_handle_src_query):
5218         Reverted to 1.110 until this makes the testsuite and various
5219         apps work.
5220
5221 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5222
5223         * docs/upload.mak: fix included CVS conflict strings
5224
5225 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5226
5227         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5228
5229         * gst/gstelement.c: (gst_element_error_full):
5230           Use g_error_new_literal because error text may have
5231           percentage signs in it. Fixes #160019.
5232
5233 2004-12-01  Benjamin Otte  <otte@gnome.org>
5234
5235         * gst/elements/gstbufferstore.c:
5236         (gst_buffer_store_add_buffer_func):
5237           don't try to make subbuffers bigger than they can be. (fixes
5238           #159970)
5239
5240 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5241
5242         * docs/gst/gstreamer-sections.txt:
5243         * docs/gst/tmpl/gstvalue.sgml:
5244           Add new function to docs to fix build.
5245
5246 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5247
5248         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5249         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5250         (_gst_pad_default_fixate_foreach):
5251         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5252         * gst/gstvalue.h:
5253           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5254           in some cases (arrays), the fixedness depends on the content.
5255         * gst/gstqueue.c: (gst_queue_handle_src_query):
5256           Check for availability before doing something.
5257
5258 2004-11-29  Wim Taymans  <wim@fluendo.com>
5259
5260         * testsuite/threads/Makefile.am:
5261         * testsuite/threads/signals.c: (gst_test_get_type),
5262         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5263         (gst_test_set_property), (gst_test_get_property),
5264         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5265         (gst_test_do_prop), (run_thread), (main):
5266         Added a bunch of testcases that show threadsafety bugs in glib.
5267
5268 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5269
5270         * docs/manual/programs.xml:
5271           Added a first batch of gst-launch examples, as provided by Ronald
5272           and others from the devel-mlist
5273
5274 2004-11-28  Benjamin Otte  <otte@gnome.org>
5275
5276         * gst/gstelement.c: (gst_element_negotiate_pads):
5277           simplify
5278         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5279         (gst_value_serialize_string), (gst_value_deserialize_string):
5280           add unwrapping of previously wrapped strings. Fix bug in wrapping
5281           while at it.
5282         * testsuite/caps/value_serialize.c: (test1),
5283         (test_string_serialization), (test_string_deserialization), (main):
5284           add tests for string (de)serialization
5285
5286 2004-11-26  Wim Taymans  <wim@fluendo.com>
5287
5288         * testsuite/threads/159566.c: (object_deep_notify), (main):
5289         * testsuite/threads/Makefile.am:
5290         Added testsuite to show bug #159566
5291
5292 2004-11-25  Wim Taymans  <wim@fluendo.com>
5293
5294         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5295         (gst_thread_child_state_change), (gst_thread_main_loop):
5296         Ref the thread object in the GThread mainloop. Break out of the
5297         thread mainloop if it holds the last ref. This properly exits
5298         the threads when disposing the thread from its own context. It
5299         also avoids possible deadlocks in the dispose function.
5300
5301 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5302
5303         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5304         it is necessary to wait.
5305
5306 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5307
5308         * docs/pwg/building-boiler.xml:
5309           Make description somewhat clearer.
5310
5311 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5312
5313         * docs/upload.mak:
5314           Apparently docs changed location on FDO's server.
5315
5316 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5317
5318         * docs/pwg/appendix-checklist.xml:
5319           Add some random notes on things to check when writing an element.
5320           This list can be extended as people see fit.
5321
5322 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5323
5324         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5325         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5326         pad. The queue will now wait until it is empty and forward the new
5327         caps to the source.
5328         * gst/gstbin.c (gst_bin_set_element_sched)
5329         (gst_bin_unset_element_sched): Make sure that all elements and
5330         links are registered and unregistered with the scheduler exactly
5331         once. This elaborates on a fix by Benjamin Otte, but
5332         guarantees that decoupled elements are also registered.
5333
5334 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5335
5336         * docs/manual/quotes.xml:
5337           add a quote
5338         * configure.ac:
5339         * gst/gst.c:
5340         * gst/gstinfo.c:
5341           add LIBDIR and move init message higher up so it's at the start
5342
5343 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5344
5345         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5346         * gstreamer.spec.in: add fair
5347
5348 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5349
5350         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5351         * gst/elements/gstidentity.c: (gst_identity_class_init):
5352           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5353           <teuf@gnome.org> (#157263).
5354         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5355         (gst_type_find_handle_src_query):
5356           Subtract size of internally stored data from position queries.
5357
5358 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5359
5360         * gst/schedulers/fairscheduler.c:
5361         * gst/schedulers/faircothreads.c:
5362         * gst/schedulers/faircothreads.h:
5363         New cothread based scheduler: Fair scheduler.
5364         * gst/schedulers/gthread-cothreads.h: 
5365         Add the standard #if around the whole file.
5366         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5367         compilation of the functions defined in this file. This is
5368         necessary to be able to use this file as a normal header.
5369         * gst/schedulers/Makefile.am: Add compiling support for fair
5370         scheduler.
5371         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5372         scheduler cothreads layer from documentation generation.
5373
5374 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5375
5376         * gst/autoplug/gstspideridentity.c:
5377         (gst_spider_identity_sink_loop_type_finding):
5378           Don't crash if that function is not implemented.
5379
5380 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5381
5382         * docs/pwg/advanced-types.xml:
5383           Another typo.
5384
5385 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5386
5387         * docs/pwg/intro-preface.xml:
5388           Hm, ok, so the brackets weren't really useful...
5389         * docs/pwg/other-ntoone.xml:
5390           Fix embarassing typo.
5391
5392 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5393
5394         * docs/pwg/intro-preface.xml:
5395           Rewrite preface.
5396
5397 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5398
5399         * docs/pwg/advanced-scheduling.xml:
5400         * docs/pwg/advanced-tagging.xml:
5401         * docs/pwg/advanced-types.xml:
5402         * docs/pwg/building-boiler.xml:
5403         * docs/pwg/building-chainfn.xml:
5404         * docs/pwg/building-signals.xml:
5405         * docs/pwg/building-state.xml:
5406         * docs/pwg/building-testapp.xml:
5407         * docs/pwg/intro-basics.xml:
5408         * docs/pwg/other-manager.xml:
5409         * docs/pwg/other-source.xml:
5410           Typo fixes.
5411         * docs/pwg/other-manager.xml:
5412           Add some first content. No example code yet.
5413         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5414           Remove double newlines.
5415
5416 2004-11-04  Wim Taymans  <wim@fluendo.com>
5417
5418         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5419         (remove_from_group), (normalize_group), (group_migrate_connected),
5420         (gst_opt_scheduler_iterate):
5421         * testsuite/schedulers/.cvsignore:
5422         * testsuite/schedulers/Makefile.am:
5423         * testsuite/schedulers/queue_link.c: (main):
5424         Added testcase for scheduler segfault.
5425         Fix scheduler segfault when removing a decoupled
5426         entry point as the last element from a group.
5427
5428 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5429
5430         * gst/gstmarshal.list: add missing marshaller, fixes build
5431
5432 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5433
5434         * docs/random/signal: added notes about using BOXED for GstBuffer
5435         signal marshallers, not POINTER
5436
5437 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5438
5439         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5440         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5441         POINTER=>BOXED changes to marshal GstBuffers
5442
5443 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5444
5445         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5446         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5447
5448 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5449
5450         * docs/gst/gstreamer-sections.txt:
5451         * docs/gst/tmpl/gstcaps.sgml:
5452         * docs/gst/tmpl/gsterror.sgml:
5453         * docs/gst/tmpl/gstinfo.sgml:
5454         * docs/gst/tmpl/gstmacros.sgml:
5455         * docs/gst/tmpl/gstutils.sgml:
5456         * docs/random/ensonic/interfaces.txt:
5457         * gst/gstinfo.h:
5458           added some more docs, removed two obsolete defines
5459
5460 2004-11-02  Kjartan Maraas <as at gnome.org>
5461
5462         reviewed by: Wim Taymans, Ronald Bultje.
5463
5464         * gst/cothreads.c: (cothread_create):
5465         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5466         (gst_bin_child_state_change_func):
5467         * gst/gstbuffer.c: (gst_buffer_span):
5468         * gst/gstelement.c: (gst_element_get_index),
5469         (gst_element_get_event_masks), (gst_element_get_query_types),
5470         (gst_element_get_formats):
5471         * gst/gsterror.c: (_gst_core_errors_init),
5472         (_gst_library_errors_init), (_gst_resource_errors_init),
5473         (_gst_stream_errors_init):
5474         * gst/gstobject.c: (gst_object_default_deep_notify):
5475         * gst/gstpad.c: (gst_pad_get_event_masks),
5476         (gst_pad_get_internal_links_default):
5477         * gst/gstplugin.c: (gst_plugin_register_func),
5478         (gst_plugin_get_module):
5479         * gst/gststructure.c: (gst_structure_get_string),
5480         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5481         (gst_structure_to_abbr):
5482         * gst/gstutils.c: (gst_print_element_args):
5483         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5484         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5485         Aplied part of patch #157127: Cleanup of issues reported by 
5486         sparse.
5487         Also do not try to use cothreads when there is no cothread
5488         context yet.
5489
5490 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5491
5492         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5493         (gst_opt_scheduler_iterate):
5494         Applied patch #154061. Running a pipeline in which an element 
5495         calls GST_ELEMENT_ERROR in the chain function, the opt 
5496         scheduler doesn't unref the chain so it never gets freed.
5497
5498 2004-11-02  Wim Taymans  <wim@fluendo.com>
5499
5500         * gst/gststructure.c: (gst_structure_get_abbrs),
5501         (gst_structure_from_abbr), (gst_structure_to_abbr):
5502         Remove that ugly if-then thing in the code that converts
5503         between strings and types.
5504
5505 2004-11-02  Wim Taymans  <wim@fluendo.com>
5506
5507         * gst/gstscheduler.c: (gst_scheduler_add_element),
5508         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5509         Aplied clock distribution patch, this should fix bug
5510         #148787.
5511
5512 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5513
5514         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5515
5516         * po/LINGUAS:
5517         * po/nb.po:
5518           Added Norwegian Bokmaal translation
5519
5520 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5521
5522         * tools/gst-inspect.c: (print_signal_info):
5523           print signal arguments as pointers if they are
5524
5525 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5526
5527         * docs/pwg/building-boiler.xml:
5528           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5529
5530 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5531
5532         * gst/parse/parse.l:
5533         * testsuite/parse/parse1.c: (main):
5534         Since parse can do 'element name=a:b' make 'a:b.' work as
5535         well. 
5536         Added testcase to verify fix.
5537
5538 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5539
5540         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
5541         Use the realpad when printing the direction.
5542         Add extra \n when printing extensions of typefind factories.
5543
5544 2004-10-13  David Schleef  <ds@schleef.org>
5545
5546         * examples/manual/Makefile.am: $< isn't portable in Makefile
5547         rules.
5548
5549 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
5550
5551         * docs/gst/tmpl/gstobject.sgml:
5552         * docs/gst/tmpl/gstplugin.sgml:
5553         * docs/gst/tmpl/gstpluginfeature.sgml:
5554         * docs/gst/tmpl/gstregistry.sgml:
5555         * docs/gst/tmpl/gstversion.sgml:
5556         * gst/gstbin.c:
5557           more api documentation
5558         * gst/gstplugin.c: (gst_plugin_register_func),
5559         (gst_plugin_check_file), (gst_plugin_load_file):
5560           better error signaling and logging
5561
5562 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5563
5564         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
5565           Subtract current queue contents from position queries.
5566
5567 2004-10-11  Johan Dahlin  <johan@gnome.org>
5568
5569         * gst/gsturi.c (gst_uri_get_location): unescape string
5570         (gst_uri_construct): escape string.
5571
5572 2004-10-11  Benjamin Otte  <otte@gnome.org>
5573
5574         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
5575         (gst_pad_try_set_caps_nonfixed):
5576           allow renegotiation of unconnected pads (as inside spider). Simply
5577           return OK if unconnected - mimic try_set_caps there.
5578
5579 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5580
5581         * gst/gstbin.c: (gst_bin_sync_children_state):
5582           Add missing break.
5583
5584 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5585
5586         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
5587         Set element to EOS before sending EOS event
5588
5589 2004-10-08  Wim Taymans  <wim at fluendo dot com>
5590
5591         * gst/elements/gsttypefindelement.c:
5592         (gst_type_find_element_handle_event):
5593         Handle EOS events when doing the transition from
5594         typefind to data passing. This should fix the
5595         infinite loops in short files.
5596
5597 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5598
5599         * gst/gstthread.c: (gst_thread_change_state),
5600         (gst_thread_child_state_change):
5601         Make sure no iteration happens while performing
5602         the state change as it could mess up the internal
5603         consistency of the thread state.
5604
5605 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5606
5607         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
5608         (gst_thread_change_state), (gst_thread_child_state_change):
5609         Do not try to grab the iterate lock in the state change method
5610         when we are in the same thread as the iterate or else we
5611         could deadlock. Some other cleanups.
5612
5613 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5614
5615         * configure.ac:
5616           bump nano to cvs
5617
5618 === release 0.8.7 ===
5619
5620 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5621
5622         * configure.ac:
5623         * NEWS:
5624         * RELEASE:
5625         * configure.ac:
5626           releasing 0.8.7, "A Cruise"
5627
5628 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5629
5630         * docs/random/mimetypes:
5631         Add an entry for Sony ATRAC3 audio format with mime-type
5632         used by rmdemux et riff-read
5633
5634 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5635
5636         * gst/elements/gsttypefindelement.c: (stop_typefinding):
5637         Push the buffer store instead of clearing it in case that
5638         the stream is not seekable.
5639
5640 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5641
5642         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
5643         (gst_thread_main_loop):
5644         Lock the iteration and the state change so that automatic
5645         negotiation and fixation does not happen at the same time
5646         as the in stream negotiation.
5647
5648 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5649
5650         * configure.ac:
5651           bump nano to cvs
5652
5653 === release 0.8.6 ===
5654
5655 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5656
5657         * configure.ac:
5658         * NEWS:
5659         * RELEASE:
5660         * configure.ac:
5661           releasing 0.8.6, "Narc"
5662
5663 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5664
5665         * configure.ac:
5666           prerel bump
5667
5668 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5669
5670         patch by: Steve Lhomme
5671
5672         * gst/elements/gstfakesrc.c:
5673         * gst/elements/gstidentity.c:
5674         * gst/gstthread.c:
5675           Fix for #153881
5676
5677 2004-10-01  Wim Taymans  <wim at fluendo dot com>
5678
5679         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
5680         Fix threadsafety of the crc checking function.
5681
5682 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5683
5684         patch by: Ronald Bultje
5685
5686         * gst/elements/gsttypefindelement.c: (stop_typefinding),
5687         (gst_type_find_element_handle_event),
5688         (gst_type_find_element_chain):
5689         * gst/elements/gsttypefindelement.h:
5690          #153657.
5691          Filter out discont event from seekable sources when typefind
5692          asks them to seek.  Fixes typefind with demuxers for
5693          avi, asf and matroska.
5694
5695 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5696
5697         * docs/gst/gstreamer-sections.txt:
5698         * gst/gstcaps.c:
5699         * gst/gstcaps.h:
5700         * gst/gstpad.c:
5701           Revert preferred caps: (#147789)
5702
5703 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
5704
5705         * win32/dirent.c:
5706           fix a memory leak
5707
5708 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5709
5710         * configure.ac:
5711           bump for prerelease
5712
5713 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5714
5715         * docs/Makefile.am:
5716         * docs/manual/elements-api.xml:
5717           restructure so that common stuff is shown first
5718         * docs/manual/init-api.xml:
5719           convert to examples
5720         * docs/manual/manual.xml:
5721         * docs/manuals.mak:
5722         * docs/url.entities:
5723           link to API on the website, possibly override later in build
5724         * examples/manual/.cvsignore:
5725           ignore more
5726         * examples/manual/Makefile.am:
5727           add more examples
5728         * examples/manual/extract.pl:
5729           error out on failure
5730
5731 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5732
5733         * docs/gst/tmpl/gstthread.sgml:
5734         * docs/manual/init-api.xml:
5735         * examples/manual/Makefile.am:
5736           convert two code bits to examples
5737
5738 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5739
5740         * gst/gstelement.c: (gst_element_change_state):
5741           Well, actually, I was about to remove this insane assert when
5742           I noticed Wim already did that. A warning is nice so we can
5743           fix actual ugs (using --g-fatal-warnings and backtraces), so
5744           I added that instead.
5745
5746 2004-09-06  Wim Taymans  <wim@fluendo.com>
5747
5748         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
5749         (gst_element_threadsafe_properties_post_run),
5750         (gst_element_set_state), (gst_element_change_state):
5751         Added extra refcounting around various places. 
5752
5753 2004-09-06  Wim Taymans  <wim@fluendo.com>
5754
5755         * gst/gstpad.c: (gst_pad_link_call_link_functions):
5756         Fix debug info.
5757
5758 2004-09-06  Wim Taymans  <wim@fluendo.com>
5759
5760         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5761         (remove_from_group):
5762         Some more debug info.
5763
5764 2004-09-03  Wim Taymans  <wim@fluendo.com>
5765
5766         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5767         (gst_fakesrc_init), (gst_fakesrc_set_clock),
5768         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5769         (gst_fakesrc_get), (gst_fakesrc_change_state):
5770         * gst/elements/gstfakesrc.h:
5771         * gst/elements/gstidentity.c: (gst_identity_class_init),
5772         (gst_identity_init), (gst_identity_chain),
5773         (gst_identity_set_property), (gst_identity_get_property),
5774         (gst_identity_change_state):
5775         * gst/elements/gstidentity.h:
5776         Added datarate properties to limit the datarate.
5777
5778 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5779
5780         * gst/autoplug/gstspider.c: (plugin_init):
5781           don't set a rank. We don't want to autoplug by inserting spiders.
5782
5783 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5784
5785         * gst/autoplug/gstspider.c: (gst_spider_class_init),
5786         (gst_spider_identity_plug):
5787           add a template for spider's sink
5788         * gst/gst.c: (gst_register_core_elements):
5789           queue's rank should be NULL, we don't want spider to add it.
5790
5791 2004-08-18  David Schleef  <ds@schleef.org>
5792
5793         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
5794         * docs/libs/Makefile.am: same
5795         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
5796         * docs/random/ds/0.9-planning: random additions
5797         * docs/random/ds/0.9-suggested-changes: same
5798         * gst/gstxml.h: remove vestigal GstXMLNs definition
5799
5800         Preferred caps: (#147789)
5801         * docs/gst/gstreamer-sections.txt: Add symbols
5802         * docs/gst/tmpl/gstcaps.sgml: Add symbols
5803         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
5804         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
5805         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
5806         (gst_caps_get_preferred), (gst_caps_set_preferred),
5807         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
5808         (gst_caps_use_preferred): Handle caps preferences
5809         * gst/gstcaps.h: Add caps preferences
5810         * gst/gstpad.c: (gst_pad_link_get_preferred),
5811         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
5812         (gst_pad_renegotiate), (gst_pad_guess_preferred),
5813         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
5814         negotiation.
5815
5816 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5817
5818         * gst/autoplug/gstspideridentity.c:
5819         (gst_spider_identity_request_new_pad):
5820         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
5821         (gst_aggregator_init):
5822         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
5823         (gst_fakesink_init):
5824         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
5825         (gst_fakesrc_init):
5826         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
5827         (gst_fdsink_init):
5828         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
5829         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
5830         (gst_filesink_init):
5831         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
5832         (gst_filesrc_init):
5833         * gst/elements/gstidentity.c: (gst_identity_base_init),
5834         (gst_identity_init):
5835         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
5836         (gst_multifilesrc_init):
5837         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
5838         (gst_pipefilter_init):
5839         * gst/elements/gststatistics.c: (gst_statistics_base_init),
5840         (gst_statistics_init):
5841         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
5842         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
5843           s/gst_pad_new/&_from_template/
5844           register pad templates in the base_init function
5845           add static pad template definitions
5846
5847 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5848
5849         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
5850         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
5851         * testsuite/refcounting/pad.c: (main):
5852         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
5853           s/gst_pad_new/&_from_template/
5854           prepare deprecation of gst_pad_new
5855
5856 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
5857
5858         patch by: Luca Ognibene <skaboy81@virgilio.it>
5859
5860         * gst/gstcaps.c:
5861         * gst/gstelement.c:
5862         * gst/gstpad.c:
5863         * gst/gstxml.c:
5864           fix memleaks.  Fixes #150001
5865
5866 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5867
5868         * docs/random/ds/0.9-suggested-changes:
5869           add notes - mostly about pad templates
5870
5871 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
5872
5873         * win32/GStreamer.vcproj:
5874           temporary locale files are .gmo not .mo
5875
5876 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5877
5878         * configure.ac: bump nano to cvs
5879
5880 === release 0.8.5 ===
5881
5882 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5883
5884         * configure.ac:
5885           releasing 0.8.5, "Stuttgart"
5886         * NEWS:
5887         * RELEASE:
5888         * configure.ac:
5889         * docs/random/release:
5890           updates for release
5891
5892 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5893
5894         patch by: Wim Taymans (wim@fluendo.com)
5895
5896         * gst/gstbuffer.c:
5897         * gst/gstindex.h:
5898         * libs/gst/dataprotocol/dataprotocol.c:
5899           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
5900
5901 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5902
5903         * Makefile.am:
5904         * win32/MANIFEST:
5905           add win32 dir to the build.  Fixes #149981.
5906
5907 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5908
5909         * configure.ac:
5910           bump libtool versioning
5911         * gst/gststructure.c:
5912           mark function as static
5913         * po/af.po:
5914         * po/az.po:
5915         * po/ca.po:
5916         * po/cs.po:
5917         * po/en_GB.po:
5918         * po/fr.po:
5919         * po/nl.po:
5920         * po/sq.po:
5921         * po/sr.po:
5922         * po/sv.po:
5923         * po/tr.po:
5924         * po/uk.po:
5925           translations update
5926         * win32/README.txt:
5927           trademark protection
5928
5929 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5930
5931         * configure.ac:
5932           fix GST_ORIGIN
5933           set GST_PACKAGE to source, and distinguish between release and other
5934         * tools/gst-inspect.c:
5935           print out plugin an element factory is part of so we see this info
5936
5937 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5938
5939         * docs/gst/gstreamer-sections.txt:
5940         * docs/gst/tmpl/gstbuffer.sgml:
5941         * docs/gst/tmpl/gstschedulerfactory.sgml:
5942           reorder docs a little, make GstBuffer's more sensible.
5943         * gst/gstbuffer.h:
5944           API: added GST_BUFFER_FLAG_DELTA_UNIT
5945         * gst/gstscheduler.c:
5946           comment API addition
5947
5948 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5949
5950         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
5951           work with non-regular files that can be mmapped (like /dev/zero)
5952         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
5953           get rid of typefinds that require a seek when we can't seek instead
5954           of trying them over and over again
5955         * tools/gst-launch.c: (idle_func), (error_cb), (main):
5956           return non-zero failure value when the pipeline was interrupted or
5957           an error occurred
5958
5959 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5960
5961         * win32/config.h:
5962         * win32/GStreamer.vcproj:
5963           compile and install the locales
5964
5965 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5966
5967         * gst/gstvalue.c:
5968           fix a possible memory leak under Windows
5969
5970 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5971
5972         * win32/GStreamer.vcproj:
5973           fix a memory leak that occured under Windows
5974         * win32/gstreamer.def:
5975           add gst_scheduler_register
5976
5977 2004-08-11  Benjamin Otte  <otte@gnome.org>
5978
5979         * docs/gst/gstreamer-sections.txt:
5980         * gst/gstscheduler.c: (gst_scheduler_register):
5981         * gst/gstscheduler.h:
5982           API:
5983           add gst_scheduler_register shortcut similar to gst_element_register
5984         * gst/schedulers/entryscheduler.c: (plugin_init):
5985         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
5986         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
5987           use it
5988
5989 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
5990
5991         * gst/gstvalue.h:
5992           fix a memory leak that occured under Windows
5993
5994 2004-08-10  Colin Walters  <walters@redhat.com>
5995
5996         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
5997         Don't use O_EXCL to open temporary registry.  It will prevent
5998         registry creation if a temporary one already exists, which
5999         is unnecessary.
6000
6001 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6002
6003         * docs/gst/gstreamer-sections.txt:
6004         * docs/gst/tmpl/gstvalue.sgml:
6005           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6006
6007 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6008
6009         * win32/gstbytestream.vcproj:
6010         * win32/gstelements.vcproj:
6011         * win32/gstgetbits.vcproj:
6012         * win32/gst-inspect.vcproj:
6013         * win32/gst-launch.vcproj:
6014         * win32/gstoptimalscheduler.vcproj:
6015         * win32/GStreamer.vcproj:
6016         * win32/gst-register.vcproj:
6017         * win32/gstspider.vcproj:
6018           update the include and lib dirs to fit standard libraries as
6019           described in the Win32 manual
6020
6021 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6022
6023         * win32/config.h:
6024         * win32/gstversion.h:
6025           enable NLS again, push the version number for the coming 0.8.5 release
6026
6027 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6028
6029         * gst/gstvalue.h:
6030           export gst_type_XXX for windows DLLs
6031
6032 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6033
6034         * docs/faq/gst-uninstalled:
6035           fix PKG_CONFIG_PATH and PYTHONPATH
6036         * gst/schedulers/Makefile.am:
6037           cleanup
6038         * libs/gst/bytestream/bytestream.c:
6039           remove newline
6040         * po/LINGUAS:
6041         * po/sq.po:
6042           adding Albanian translation (Laurent Dhima)
6043         * po/cs.po:
6044           updated
6045
6046 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6047
6048         * po/ca.po:
6049         * po/sv.po:
6050           updated translations
6051
6052 2004-08-04  Benjamin Otte  <otte@gnome.org>
6053
6054         * tests/mass_elements.c: (main):
6055           allow specifying src and sink element explicitly, so I can test
6056           videotestsrc instead of fakesrc
6057
6058 2004-08-04  Benjamin Otte  <otte@gnome.org>
6059
6060         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6061         (gst_structure_id_empty_new), (gst_structure_empty_new),
6062         (gst_structure_copy):
6063           add gst_structure_id_empty_new_with_size to allow preallocating
6064           value array sizes. Use this in gst_structure_copy to get rid of
6065           reallocs.
6066           don't do quark=>string=>quark when copying structures
6067
6068 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6069
6070         * docs/manual/win32.xml:
6071         * win32/README.txt:
6072           update documentation with the clean version of dependencies
6073
6074 2004-08-03  Benjamin Otte  <otte@gnome.org>
6075
6076         * gst/schedulers/entryscheduler.c:
6077         (gst_entry_scheduler_remove_element):
6078           fix for GST_DISABLE_DEBUG
6079         * tools/gst-launch.c: (print_tag):
6080           fixes for G_DISABLE_ASSERT
6081
6082 2004-08-03  Benjamin Otte  <otte@gnome.org>
6083
6084         * gst/gst.c: (gst_register_core_elements):
6085           fix for G_DISABLE_ASSERT
6086         * gst/gstinfo.c: (__gst_in_valgrind):
6087           add for GST_DISABLE_DEBUG
6088
6089 2004-08-03  Benjamin Otte  <otte@gnome.org>
6090
6091         * gst/parse/parse.l:
6092           fix for G_DISABLE_ASSERT
6093
6094 2004-08-03  Wim Taymans  <wim@fluendo.com>
6095
6096         * gst/gstbin.c: (gst_bin_get_type),
6097         (gst_bin_child_state_change_func):
6098         * gst/gstthread.c: (gst_thread_change_state):
6099         Backported some debug logging from a reverted patch
6100         Don't try to destroy the thread twice. Added some more
6101         debugging in GstThread. Unlock and signal even if we
6102         are in the thread context.
6103
6104 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6105
6106         * po/uk.po:
6107           updated translation
6108
6109 2004-07-30  David Schleef  <ds@schleef.org>
6110
6111         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6112
6113 2004-07-29  David Schleef  <ds@schleef.org>
6114
6115         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6116         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6117
6118 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6119
6120         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6121         (gst_bin_add_func), (gst_bin_remove_func),
6122         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6123         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6124         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6125         (gst_bin_sync_children_state):
6126         * gst/gstbin.h:
6127         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6128         (gst_thread_change_state):
6129         * testsuite/states/Makefile.am:
6130           revert state change patches as agreed so we can rework them
6131           gradually
6132
6133 2004-07-29  Benjamin Otte  <otte@gnome.org>
6134
6135         * libs/gst/control/Makefile.am:
6136           link to libgstreamer (fixes Debian bug 262019, see
6137           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6138
6139 2004-07-29  Wim Taymans  <wim@fluendo.com>
6140
6141         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6142         (check_from_fraction_convert), (transform_test), (main):
6143         Make the test less pedantic about float roundoff errors.
6144
6145 2004-07-29  Benjamin Otte  <otte@gnome.org>
6146
6147         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6148         (gst_filesrc_srcpad_event):
6149           make seek events to before start/after end of file not fail, but
6150           seek to start/end instead
6151         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6152           add more output
6153
6154 2004-07-29  Benjamin Otte  <otte@gnome.org>
6155
6156         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6157           check that caps are fixed
6158         * gst/gstpad.c: (gst_pad_template_new):
6159           don't try to simplify caps, costs too much time on gst_init
6160         * gst/gstplugin.c: (gst_plugin_add_feature):
6161           G_ERROR if features are added twice
6162         * gst/gsttypefind.c: (gst_type_find_register):
6163         * gst/gstelementfactory.c: (gst_element_register):
6164           don't add features twice
6165         * docs/random/ds/0.9-suggested-changes:
6166           add note about possible gst_init optimization
6167
6168 2004-07-28  David Schleef  <ds@schleef.org>
6169
6170         * testsuite/elements/Makefile.am:
6171         * testsuite/elements/struct_i386.h:
6172         * testsuite/elements/struct_size.c: (main):  A little test
6173         to keep distcheck from working if someone changes a structure
6174         size accidentally.
6175
6176 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6177
6178         * docs/libs/Makefile.am:
6179         * docs/libs/gstreamer-libs-docs.sgml:
6180         * docs/libs/gstreamer-libs-sections.txt:
6181         * docs/libs/tmpl/gstbytestream.sgml:
6182         * docs/libs/tmpl/gstcontrol.sgml:
6183         * docs/libs/tmpl/gstdataprotocol.sgml:
6184         * docs/libs/tmpl/gstgetbits.sgml:
6185         * libs/gst/bytestream/Makefile.am:
6186         * libs/gst/bytestream/bytestream.c:
6187         * libs/gst/bytestream/bytestream.h:
6188         * libs/gst/control/Makefile.am:
6189         * libs/gst/dataprotocol/Makefile.am:
6190         * libs/gst/getbits/Makefile.am:
6191         * libs/gst/getbits/getbits.h:
6192           various doc and style fixes, adding bytestream to libs docs.
6193
6194 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6195
6196         * docs/gst/gstreamer-docs.sgml:
6197         * docs/libs/Makefile.am:
6198         * docs/libs/gstreamer-libs-docs.sgml:
6199         * docs/libs/gstreamer-libs-sections.txt:
6200         * libs/gst/control/dparam.c:
6201           more doc fixes.  gst-libs docs now build the same way as gst.
6202
6203 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6204
6205         * configure.ac:
6206         * testsuite/Makefile.am:
6207         * testsuite/bins/Makefile.am:
6208         * testsuite/caps/Makefile.am:
6209         * testsuite/cleanup/Makefile.am:
6210         * testsuite/clock/Makefile.am:
6211         * testsuite/debug/Makefile.am:
6212         * testsuite/dlopen/Makefile.am:
6213         * testsuite/dynparams/Makefile.am:
6214         * testsuite/elements/.cvsignore:
6215         * testsuite/elements/Makefile.am:
6216         * testsuite/enumcaps/Makefile.am:
6217         * testsuite/enumcaps/enumcaps.c:
6218         * testsuite/ghostpads/Makefile.am:
6219         * testsuite/indexers/Makefile.am:
6220         * testsuite/negotiation/Makefile.am:
6221         * testsuite/parse/Makefile.am:
6222         * testsuite/plugin/Makefile.am:
6223         * testsuite/refcounting/Makefile.am:
6224         * testsuite/schedulers/.cvsignore:
6225         * testsuite/states/Makefile.am:
6226         * testsuite/tags/Makefile.am:
6227         * testsuite/threads/Makefile.am:
6228           fold enumcaps into caps dir
6229           clean up Makefile.am's for testsuite
6230
6231 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6232
6233         * docs/gst/Makefile.am:
6234         * docs/libs/Makefile.am:
6235           clean up docs build.  Fixes needless rebuilding of template files.
6236
6237 2004-07-28  Wim Taymans  <wim@fluendo.com>
6238
6239         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6240         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6241         Make sure that a bin state change tries to keep the children
6242         in sync. 
6243         Added debug logging to the thread.
6244
6245 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6246
6247         * win32/GStreamer.vcproj:
6248         * win32/gstreamer.def:
6249           more exports for the plugins
6250
6251 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6252
6253         * win32/gstgetbits.vcproj:
6254         * win32/gstgetbits.def:
6255         * win32/msvc71.sln:
6256           add support for the getbits plugin
6257
6258 2004-07-27  Wim Taymans  <wim@fluendo.com>
6259
6260         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6261         (gst_value_transform_fraction_double), (_gst_value_initialize):
6262         * testsuite/caps/Makefile.am:
6263         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6264         (check_from_fraction_convert), (transform_test), (main):
6265         Added transform functions between double and fraction.
6266         Added testcase to verify transforms
6267
6268 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6269
6270         * win32/GStreamer.vcproj:
6271           rename GStreamer-0.8.lib to libgstreamer.lib
6272
6273 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6274
6275         * win32/gstelements.vcproj:
6276         * win32/gstoptimalscheduler.vcproj:
6277           fixes for the Release build
6278
6279 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6280
6281         * win32/config.h:
6282           update the version number
6283
6284 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6285
6286         * win32/GStreamer.vcproj:
6287           add gstinterface to the build
6288
6289 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6290
6291         * win32/gstreamer.def:
6292           add many definitions needed by plugins,
6293           GST_CAT_DEFAULT only available in the Debug build ?
6294
6295 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6296
6297         * gst/gstelement.c: (gst_element_set_eos_recursive):
6298           various whitespace fixes.
6299           doc fix, fixes #148497
6300
6301 2004-07-25  Benjamin Otte  <otte@gnome.org>
6302
6303         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6304           don't delay links on the sink elements, it causes unnegotiated
6305           links.
6306         * gst/elements/gsttypefindelement.c:
6307         (gst_type_find_element_base_init):
6308           add our padtemplates, we indeed do have some.
6309         * gst/elements/gsttypefindelement.c:
6310         (gst_type_find_element_handle_event),
6311         (gst_type_find_element_chain):
6312           don't push data when typefinding failed.
6313         * gst/gstpad.c: (gst_pad_link_fixate):
6314           check that no fixate function returns empty caps.
6315         * gst/gstpad.c: (gst_pad_push):
6316           check that the link is negotiated before data gets pushed.
6317         * tools/gst-register.c: (main):
6318           don't assert (fixes #148283)
6319
6320 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6321
6322         * docs/gst/gstreamer-sections.txt:
6323         * docs/gst/tmpl/gstconfig.sgml:
6324           add GST_PLUGIN_EXPORT definition
6325
6326 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6327
6328         * gst/gstplugin.h:
6329         * gst/gstconfig.h.in:
6330         * win32/gstconfig.h:
6331         * win32/gstelements.def:
6332         * win32/gstelements.vcproj:
6333         * win32/gstoptimalscheduler.def:
6334         * win32/gstoptimalscheduler.vcproj:
6335         * win32/gstspider.def:
6336         * win32/gstspider.vcproj:
6337           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6338
6339 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6340
6341         * docs/gst/gstreamer-sections.txt:
6342           remove GST_CAT_DEFAULT because the type has changed
6343
6344 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6345
6346         * win32/gstbytestream.vcproj:
6347         * win32/gstelements.vcproj:
6348         * win32/gst-inspect.vcproj:
6349         * win32/gst-launch.vcproj:
6350         * win32/gstoptimalscheduler.vcproj:
6351         * win32/GStreamer.vcproj:
6352         * win32/gst-register.vcproj:
6353         * win32/gstspider.vcproj:
6354         * win32/msvc71.sln:
6355           Copy the files where needed after building, The testsuite will be
6356           built separately
6357
6358 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6359
6360         * win32/config.h:
6361         * win32/README.txt:
6362         * docs/manual/win32.xml:
6363         Fixed the plugin and GStreamer location
6364
6365 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6366
6367         * win32/gstreamer.def:
6368         More exports for the plugins
6369
6370 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6371
6372         * gst/gstinfo.h:
6373         Marc was right, we need to export literally GST_CAT_DEFAULT
6374
6375 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6376
6377         * win32/config.h:
6378         NLS crashes in gettext, disabled until this is solved
6379
6380 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6381
6382         * win32/gst-inspect.vcproj:
6383         * win32/gst-launch.vcproj:
6384         Should use NLS when available
6385
6386 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6387
6388         * gst/registries/gstxmlregistry.c:
6389         removing the file doesn't seem to be a good idea on Linux
6390
6391 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6392
6393         * gst/registries/gstxmlregistry.c:
6394         Remove the registry before renaming the tempfile (needed for Windows)
6395
6396 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6397
6398         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6399         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6400         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6401         * gst/elements/gstmultifilesrc.h:
6402         Added newmedia property so it generates newmedia events between each
6403         file when property is set, as well as fixed eos handling
6404
6405 2004-07-22  David Schleef  <ds@schleef.org>
6406
6407         * gst/gststructure.c: (gst_structure_id_empty_new),
6408         (gst_structure_empty_new):  Set type field correctly.
6409         * gst/gststructure.h: Check type field correctly.
6410         * testsuite/caps/Makefile.am:
6411         * testsuite/caps/structure.c: (test1), (main): Add a very small
6412         test for structures.
6413
6414 2004-07-22  David Schleef  <ds@schleef.org>
6415
6416         * docs/random/ds/0.9-suggested-changes: more comments
6417         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6418
6419 2004-07-22  Benjamin Otte  <otte@gnome.org>
6420
6421         * gst/gstelementfactory.c: (gst_element_register):
6422           set the factory in the class struct, so gst_element_get_factory
6423           actually works
6424         * gst/parse/grammar.y:
6425           set element to playing when it gets unlocked as we can't rely on the
6426           bin state - all elements in the bin state might still be locked in
6427           NULL)
6428
6429 2004-07-22  Benjamin Otte  <otte@gnome.org>
6430
6431         * gst/gstelement.c: (gst_element_set_state_func):
6432           make this a static function
6433
6434 2004-07-22  Wim Taymans  <wim@fluendo.com>
6435
6436         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6437         (gst_opt_scheduler_pad_link):
6438         fix 147894-2 and the group_link problem.
6439
6440 2004-07-22  Wim Taymans  <wim@fluendo.com>
6441
6442         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6443         (handoff_identity), (main):
6444         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6445         (handoff_identity), (main):
6446         * testsuite/schedulers/Makefile.am:
6447         * testsuite/schedulers/group_link.c: (main):
6448         Show bug in scheduler when linking chain and loop based element 
6449         where the chain based element was not yet in a group.
6450
6451 2004-07-21  Benjamin Otte  <otte@gnome.org>
6452
6453         * gst/.cvsignore:
6454         * gst/autoplug/.cvsignore:
6455         * gst/elements/.cvsignore:
6456         * gst/indexers/.cvsignore:
6457         * libs/gst/bytestream/.cvsignore:
6458         * libs/gst/control/.cvsignore:
6459         * libs/gst/getbits/.cvsignore:
6460         * testsuite/states/.cvsignore:
6461         * testsuite/threads/.cvsignore:
6462           keep this up to date, since I seem to be the only one who cares
6463           about not missing files on commits (editor's note: no you don't,
6464           but feel free to change them at the time you add stuff instead
6465           of later on)
6466
6467 2004-07-21  Benjamin Otte  <otte@gnome.org>
6468
6469         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6470         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6471         (gst_bin_child_state_change_func), (set_kid_state_func),
6472         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6473           make state changes work correctly and reentrant (so removing
6474           elements from bins during state changes of bins doesn't cause
6475           segfaults or even wrong states)
6476           add debugging category and debugging output to print children states
6477         * gst/gstbin.c: (gst_bin_dispose): 
6478           add some assertion checks
6479         * gst/gstbin.h:
6480         * gst/gstbin.c: (gst_bin_sync_children_state):
6481           deprecate this function - it just does gst_bin_set_state (bin,
6482           GST_STATE (bin)) 
6483         * testsuite/threads/queue.c: (main):
6484           don't use gst_bin_sync_children_state anymore
6485         * testsuite/states/Makefile.am:
6486         * testsuite/states/bin.c:
6487           test that the state changes of bins work as expected
6488         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6489           some adjustments to change states correctly, too
6490         * gst/gstthread.c: (gst_thread_change_state):
6491           don't enable/disable "threadsafe" properties, they're unused and
6492           cause random segfaults
6493         * testsuite/threads/Makefile.am:
6494           the queue check randomly passes now, ignore it
6495
6496 2004-07-21  Benjamin Otte  <otte@gnome.org>
6497
6498         * gst/gstpad.c:
6499           check if data is NULL before outputting debug info. (fixes #145100)
6500
6501 2004-07-21  Benjamin Otte  <otte@gnome.org>
6502
6503         * gst/schedulers/entryscheduler.c:
6504         (gst_entry_scheduler_loop_wrapper),
6505         (gst_entry_scheduler_chain_wrapper),
6506         (gst_entry_scheduler_get_wrapper):
6507           reset the state when the cothread starts, so we don't get assertion
6508           failures on restarting of cothreads
6509
6510 2004-07-20  Benjamin Otte  <otte@gnome.org>
6511
6512         * gst/gstelement.c: (gst_element_link_pads_filtered):
6513           use correct sinkpad, if only sinkpad is specified, but not srcpad
6514           (fixes #147889)
6515         * gst/gstelement.c: (gst_element_set_state_func),
6516         (gst_element_change_state): ref/unref the element, signal handlers
6517         could get rid of the element otherwise
6518
6519 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6520
6521         * docs/random/ds/0.9-suggested-changes:
6522           Make note about renaming fixed-list to array.
6523         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6524         (_gst_value_initialize):
6525           Add array intersections.
6526         * testsuite/caps/intersect2.c: (main):
6527           Add test for array intersections.
6528
6529 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6530
6531         * configure.ac: back to cvs
6532
6533 === release 0.8.4 ===
6534
6535 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6536
6537         * configure.ac:
6538           releasing 0.8.4, "Paella"
6539           bump libtool versioning
6540
6541 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6542
6543         * po/LINGUAS:
6544         * po/ca.po:
6545           adding Catalan translation (Jordi Mallach)
6546
6547 2004-07-20  Wim Taymans  <wim@fluendo.com>
6548
6549         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6550         (handoff_identity), (main):
6551         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6552         (handoff_identity), (main):
6553         * testsuite/schedulers/Makefile.am:
6554         Added failing testcase for variant of #147894
6555
6556 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6557
6558         patch by: David Moore
6559
6560         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6561         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
6562         (group_migrate_connected):
6563         * testsuite/schedulers/Makefile.am:
6564           fix for #142813 (Deadlock in optimal scheduler)
6565
6566 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6567
6568         patch by: Wim Taymans
6569
6570         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6571         (gst_opt_scheduler_schedule_run_queue),
6572         (gst_opt_scheduler_get_wrapper), (get_group),
6573         (group_migrate_connected):
6574         * testsuite/schedulers/Makefile.am:
6575           fix for #147819 (Add some checks in the opt scheduler)
6576
6577 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6578
6579         patch by: Benjamin Otte
6580
6581         * gst/gstelementfactory.c: (__gst_element_details_set):
6582           fix for #147929: running gst-register in non-utf8 locale can cause
6583           invalid registry
6584
6585 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6586
6587         patch by: Wim Taymans
6588
6589         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
6590         (group_has_element), (element_get_reachables_func),
6591         (group_migrate_connected):
6592           fix for #147894 (opt scheduler decoupled elements mismanagement)
6593         * testsuite/schedulers/Makefile.am:
6594           testsuite app now passes
6595
6596 2004-07-19  Wim Taymans  <wim@fluendo.com>
6597
6598         * testsuite/schedulers/147819.c: (handoff_identity1),
6599         (handoff_identity2), (main):
6600         * testsuite/schedulers/Makefile.am:
6601         Added testcase for bug 147819
6602
6603 2004-07-19  Wim Taymans  <wim@fluendo.com>
6604
6605         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6606         (handoff_identity), (main):
6607         * testsuite/schedulers/Makefile.am:
6608         Added testcase for bug 147894
6609
6610 2004-07-16  Wim Taymans  <wim@fluendo.com>
6611
6612         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
6613         * testsuite/schedulers/142183.c: (handoff_identity), (main):
6614         * testsuite/schedulers/Makefile.am:
6615         Added testsuite for bug 142183 in its two incarnations. Refcount
6616         is not increased for scheduled elements and threadsafe properties
6617         mutexes are not properly unlocked.
6618
6619 2004-07-16  Wim Taymans  <wim@fluendo.com>
6620
6621         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
6622         (create_chain), (destroy_chain), (create_group), (destroy_group),
6623         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
6624         (group_dec_link), (gst_opt_scheduler_pad_link),
6625         (group_inc_links_for_element), (group_migrate_connected):
6626         Call group_inc_link with the proper src->sink ordering -- 
6627         break this, and we break sort_chain. patch from wingo for bug
6628         147713.
6629         Partially revert patch 1.89. When adding a loop based element to 
6630         the scheduler, the links to other groups are automatically followed
6631         and incremented. This should not happen because the bin will call
6632         pad_link explicitly for those connection, resulting in them counted 
6633         twice. Results in assertion failure on pipeline cleanup.
6634
6635 2004-07-16  Wim Taymans  <wim@fluendo.com>
6636
6637         * testsuite/schedulers/143777-2.c: (main):
6638         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
6639         (main):
6640         * testsuite/schedulers/Makefile.am:
6641         Added cleanup code to testcase 143777-2.
6642         Added testcase to show bug 147713, does not really show the
6643         deadlock as I can't figure out how to trigger it, but it does
6644         demonstrate bad ordering in the scheduler.
6645
6646 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6647
6648         * gst/gstvalue.c: (gst_value_deserialize_fraction):
6649           change strndup to g_strndup.  Fixes #147707
6650
6651 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6652
6653         * po/af.po:
6654         * po/az.po:
6655         * po/cs.po:
6656         * po/en_GB.po:
6657         * po/fr.po:
6658         * po/nl.po:
6659         * po/sr.po:
6660         * po/sv.po:
6661         * po/tr.po:
6662         * po/uk.po:
6663           updated translations
6664
6665 2004-07-16  Benjamin Otte  <otte@gnome.org>
6666
6667         * gst/gstvalue.c: (gst_greatest_common_divisor):
6668           use ints and return ints, fractions only use ints, too, so this
6669           avoids accidently casting multiplications to unsigned
6670         (gst_value_lcopy_fraction): it's ints, not uint32
6671         (gst_value_set_fraction): disallow minint, multiplying and negation
6672           are broken with it
6673         (gst_value_fraction_multiply): fix to make large numbers work and get
6674         rid of the assumption that the multiplication of two ints fits an
6675         int64 - dunno if that's true for all systems
6676         * testsuite/caps/Makefile.am:
6677         * testsuite/caps/fraction-multiply-and-zero.c:
6678         (check_multiplication), (check_equal), (zero_test), (main):
6679           add tests for all the stuff above
6680         * testsuite/caps/value_compare.c: (test1):
6681           fix comment
6682         * tests/.cvsignore:
6683         * testsuite/caps/.cvsignore:
6684         * testsuite/debug/.cvsignore:
6685         * testsuite/dlopen/.cvsignore:
6686         * testsuite/states/.cvsignore:
6687           get up to date
6688
6689 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6690
6691         * docs/manual/bins-api.xml:
6692         * docs/manual/factories.xml:
6693         * docs/manual/helloworld.xml:
6694         * docs/manual/links-api.xml: 
6695           fixes for out of date info, incorrect info and grammar
6696
6697 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6698
6699         * docs/manual/pads.xml:
6700         * docs/manual/pads-api.xml: grammar fix
6701
6702 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6703
6704         * docs/manual/pads-api.xml: typo + grammar fix
6705
6706 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6707
6708         * docs/gst/gstreamer-sections.txt:
6709           add new symbols
6710         * docs/gst/tmpl/gstelement.sgml:
6711         * docs/gst/tmpl/gstpad.sgml:
6712         * docs/gst/tmpl/gsttypes.sgml:
6713         * docs/gst/tmpl/gstvalue.sgml:
6714           update docs
6715         * gst/gststructure.c: (gst_structure_set_valist),
6716         (gst_structure_from_abbr), (gst_structure_to_abbr):
6717         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
6718         (gst_greatest_common_divisor), (gst_value_init_fraction),
6719         (gst_value_copy_fraction), (gst_value_collect_fraction),
6720         (gst_value_lcopy_fraction), (gst_value_set_fraction),
6721         (gst_value_get_fraction_numerator),
6722         (gst_value_get_fraction_denominator),
6723         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
6724         (gst_value_deserialize_fraction),
6725         (gst_value_transform_fraction_string),
6726         (gst_value_transform_string_fraction),
6727         (gst_value_compare_fraction), (_gst_value_initialize):
6728         * gst/gstvalue.h:
6729           adding GstFraction GValue type, get/set, and multiply
6730         * testsuite/caps/Makefile.am:
6731         * testsuite/caps/fraction.c: (test), (main):
6732         * testsuite/caps/string-conversions.c: (main):
6733         * testsuite/caps/value_compare.c: (test1), (main):
6734           add regression tests for GstFraction
6735
6736 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6737         
6738         * docs/manual/init-api.xml: Grammar fix
6739
6740 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6741
6742         * docs/manual/states.xml: Fix inconsistent information
6743
6744 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6745
6746         * gst/gstelement.c: (gst_element_set_state):
6747         * gst/gstpad.c: (gst_pad_try_set_caps):
6748         * gst/gststructure.c:
6749         * gst/gstthread.c: (gst_thread_child_state_change):
6750         * gst/gstvalue.c: (gst_value_compare_double):
6751         * gst/gstvalue.h:
6752         * testsuite/parse/parse1.c: (main):
6753           debugging additions and style cleanups
6754
6755 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6756
6757         * docs/manual/states.xml: Grammar fix
6758
6759 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6760
6761         * docs/manual/pads.xml: Grammar fix
6762
6763 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6764
6765         * docs/manual/elements.xml: Fixed image reference
6766
6767 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6768
6769         * docs/manual/goals.xml: Grammar fix
6770
6771 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6772
6773         * docs/manual/motivation.xml:
6774         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
6775
6776 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6777
6778         * docs/manual/motivation.xml: Fix spelling
6779
6780 2004-07-15  Benjamin Otte  <otte@gnome.org>
6781
6782         * gst/gstelement.h: 
6783           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
6784           strings.
6785         * gst/gstelement.c (gst_element_class_init):
6786           GError's are boxed, not objects
6787         * gst/gstmarshal.list:
6788           update list for the fixed error signal
6789
6790 2004-07-14  Andy Wingo  <wingo@pobox.com>
6791
6792         * gst/gsttag.c: Add a tag merge func for pointers. The header was
6793         there all along, but the function wasn't. (guile-gstreamer's build
6794         system uses the address of the function -- I wasn't actually
6795         trying to use this.)
6796
6797 2004-07-14  Andy Wingo  <wingo@pobox.com>
6798
6799         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
6800         as gst_pad_proxy_pad_link) just link to every other pad when they
6801         are called. In the case where the graph has cycles, this will mean
6802         that a call to try_set_caps will recurse. Allow this recursion
6803         and return OK, while we wait for the first try_set_caps to give a
6804         proper return value.
6805         (gst_pad_link_call_link_functions): Since this function is the
6806         only one to set the NEGOTIATING flag on a pad, if the flag is set
6807         it means that the link functions have indirectly recursed. If this
6808         happens, error out to avoid infinite recursion and an eventual
6809         SEGV.
6810         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
6811         (gst_pad_proxy_getcaps): Intersect the result with the template
6812         caps to ensure that the return value is valid.
6813
6814 2004-07-14  Andy Wingo  <wingo@pobox.com>
6815
6816         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
6817         one refcount, the calling function is the owner of the buffer.
6818
6819 2004-07-14  Wim Taymans  <wim@fluendo.com>
6820
6821         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
6822         (gst_opt_scheduler_pad_link), (group_migrate_connected):
6823         Fix stupid warning when an element is to be migrated but
6824         is already migrated.
6825
6826 2004-07-14  Wim Taymans  <wim@fluendo.com>
6827
6828         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
6829         (gst_opt_scheduler_pad_link), (group_migrate_connected):
6830         Make sure that a single non-loop-based element does not 
6831         end up in a group. This fixes the testsuite again.
6832
6833 2004-07-14  Wim Taymans  <wim@fluendo.com>
6834
6835         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6836         (add_to_group), (merge_groups), (schedule_group),
6837         (gst_opt_scheduler_get_wrapper), (group_elements),
6838         (group_dec_link), (gst_opt_scheduler_pad_link),
6839         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
6840         (gst_opt_scheduler_iterate):
6841         move isolated groups to a new chain.
6842         Emit a warning instead of segfaulting in some error cases.
6843         Fix a bug where the link count between groups was not calculated 
6844         correctly. Fixes #144510.
6845
6846 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
6847         * gst/elements/gstfilesrc.c:
6848           Binary files support under Windows now OK
6849       
6850 2004-07-13  Benjamin Otte  <otte@gnome.org>
6851
6852           compatibility fixes for Solaris 8/gcc 2.95
6853         * configure.ac:
6854           include libintl libs in LDFLAGS
6855         * gstvalue.c (gst_value_deserialize_buffer):
6856           cast isxdigit stuff to int to silence compiler warning
6857
6858 2004-07-12  Benjamin Otte  <otte@gnome.org>
6859
6860         * gst/gsttypes.h:
6861           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
6862           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
6863           just causes support madness
6864         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
6865           make it work without this
6866         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
6867         (gst_file_index_commit):
6868           glib IO channels don't want binary mode
6869         * testsuite/bytestream/filepadsink.c: (main):
6870         * testsuite/bytestream/test1.c: (read_param_file):
6871           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
6872
6873 2004-07-12  Benjamin Otte  <otte@gnome.org>
6874
6875         * gst/gstelement.c: (gst_element_class_init),
6876         (gst_element_set_state), (gst_element_set_state_func):
6877           virutalize gst_element_set_state, use set_state member in class
6878           struct that was already added in 0.7 for this.
6879         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
6880         (gst_bin_change_state):
6881           make gst_bin_foreach works similar to other foreach functions, plug
6882           memleaks in it. Make functions using it work with the new approach.
6883           Document gst_bin_foreach, so it can be exported if we want to
6884         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
6885           use virtualized set_state to make set_state on bins set the state of
6886           all its children.
6887
6888 2004-07-12  Benjamin Otte  <otte@gnome.org>
6889
6890         * configure.ac:
6891           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
6892           http://bugs.gentoo.org/show_bug.cgi?id=53967)
6893         * gst/gstpad.c: (gst_pad_alloc_buffer):
6894           allow buffer_alloc functions to return NULL and allocate a normal
6895           buffer in that case
6896
6897 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6898         * gst/elements/gstfilesink.c:
6899         * gst/elements/gstfilesrc.c:
6900         * gst/indexers/gstfileindex.c:
6901         * gst/gsttypes.h:
6902         * testsuite/bytestream/filepadsink.c:
6903         * testsuite/bytestream/test1.c:
6904           Handle binary files under Windows
6905
6906 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6907         * docs/manual/win32.xml:
6908         * win32/config.h:
6909         * win32/gst-register.vcproj:
6910         * win32/gstreamer.def:
6911           Update to another gettext public build
6912
6913 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6914         * gst/gstplugin.c:
6915           Fix an impossible C syntax
6916         * win32/config.h:
6917           Disable i18n under Windows for the moment
6918         * win32/gst-register.vcproj:
6919           Use this configuration
6920
6921 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
6922         * docs/manual/quotes.xml:
6923           Keep the quotes file alive
6924         * docs/random/ds/0.9-suggested-changes:
6925           Add the suggestion of including a 'rowstride' as part of video
6926           format caps
6927
6928 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6929
6930         * gst/gstelement.c: (gst_element_set_state),
6931         (gst_element_change_state):
6932           d'oh.  Set PENDING state correctly before forcing bin to change.
6933         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6934         (gst_structure_parse_fixed_list):
6935         * gst/schedulers/gstoptimalscheduler.c:
6936         (gst_opt_scheduler_state_transition):
6937         * testsuite/states/parent.c: (main):
6938           remove comment now that it's fixed.
6939
6940 2004-07-11  Benjamin Otte  <otte@gnome.org>
6941
6942         * gst/gstclock.h:
6943           GST_SECOND shouldn't cause a conversion to unsigned.
6944         * testsuite/clock/.cvsignore:
6945         * testsuite/clock/Makefile.am:
6946         * testsuite/clock/signedness.c: (main):
6947           make sure it never will again
6948
6949 2004-07-11  Andy Wingo  <wingo@pobox.com>
6950
6951         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
6952         whose state is higher than the bin state, raise the bin state to
6953         ensure that bin state := highest child state.
6954         
6955 2004-07-11  Andy Wingo  <wingo@pobox.com>
6956
6957         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
6958         procedure on the children of a bin. Assumes that the procedure can
6959         change the set of children.
6960         (set_kid_state_func): New static function.
6961         (gst_bin_change_state): Use gst_bin_foreach to call
6962         set_kid_state_func. Fixes a bug: if a child had a state-change
6963         handler that removes it from the bin, there would be a segfault.
6964         Hopefully it should also work in the case where the state-change
6965         handler on one child adds or removes other children. In any case,
6966         fixes should go to gst_bin_foreach.
6967
6968 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6969
6970         * gst/gstelement.c: (gst_element_set_state):
6971           compatibility fix for latest plugins release.  Change loop back
6972           to while {}
6973
6974 2004-07-09  Wim Taymans  <wim@fluendo.com>
6975
6976         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
6977         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
6978         (gst_thread_main_loop):
6979         Since remove is virtual in GstBin we must not assume the 
6980         elements GList to have anothing useful.
6981         Add some more logging to GstThread and be a bit more paranoid
6982         when resetting the scheduler.
6983         Set the state of the bin to NULL before removing the children.
6984
6985 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6986
6987         * testsuite/threads/Makefile.am:
6988         * testsuite/threads/threadg.c:
6989           added test to check if problem when removing all elements from a
6990           GstThread before setting GstThread state to NULL
6991
6992 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6993
6994         * docs/gst/tmpl/gstelement.sgml:
6995         * docs/gst/tmpl/gsttypes.sgml:
6996         * gst/gstbin.c: (gst_bin_change_state):
6997         * gst/gstelement.c: (gst_element_set_state),
6998         (gst_element_change_state):
6999           rework so that for bins we try to set the state on all children
7000           as well even if the bin is in the correct state already.
7001           change while to do so at least one iteration is done.
7002           For regular elements, we fall back to the previous behaviour for
7003           now since we first need a new plugins release.
7004         * testsuite/states/parent.c: (main):
7005           test for this case
7006           Fixes #123774
7007
7008 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7009
7010         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7011         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7012         (gst_queue_release_locks), (gst_queue_change_state),
7013         (gst_queue_set_property):
7014           add proper lock debugging.  Change dispose to finalize, since
7015           we're freeing mutexes and other stuff which should happen only once.
7016
7017 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7018
7019         * docs/gst/tmpl/gstelement.sgml:
7020         * docs/gst/tmpl/gstplugin.sgml:
7021         * docs/gst/tmpl/gsttypes.sgml:
7022         * docs/pwg/building-state.xml:
7023         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7024         * gst/gstelement.c: (gst_element_change_state):
7025         * gst/gstthread.c: (gst_thread_change_state):
7026           catch wrong state changes in element base class.
7027
7028 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7029
7030         * gst/gstinfo.h:
7031           clean up layout a little.
7032
7033 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7034
7035         * configure.ac:
7036         * testsuite/Makefile.am:
7037         * testsuite/states/Makefile.am:
7038         * testsuite/states/parent.c: (main):
7039           re-enable states testsuite dir.  Add test for state changes and
7040           parent behaviour
7041
7042 2004-07-09  Wim Taymans  <wim@fluendo.com>
7043
7044         * gst/schedulers/gstoptimalscheduler.c:
7045         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7046         (element_get_reachables_func), (element_get_reachables),
7047         (debug_element), (rechain_group), (group_migrate_connected),
7048         (gst_opt_scheduler_pad_unlink):
7049         Do not try to migrate decoupled elements to a new group since
7050         they are not added to groups.
7051
7052 2004-07-08  Benjamin Otte  <otte@gnome.org>
7053
7054         * gst/gstelement.c: (gst_element_error_func):
7055           make reentrant (= allow removing elements in error handler)
7056
7057 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7058
7059         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7060         (gst_pad_send_event), (gst_pad_call_chain_function):
7061           events sent to elements below PAUSED cannot be handled, so
7062           don't try to
7063
7064 2004-07-08  Wim Taymans  <wim@fluendo.com>
7065
7066         * gst/schedulers/gstoptimalscheduler.c:
7067         (chain_recursively_migrate_group), (create_group),
7068         (schedule_group), (gst_opt_scheduler_pad_link),
7069         (group_elements_set_visited), (element_get_reachables_func),
7070         (element_get_reachables), (group_can_reach_group), (debug_element),
7071         (rechain_group), (group_migrate_connected),
7072         (gst_opt_scheduler_pad_unlink):
7073         * testsuite/schedulers/Makefile.am:
7074         Implemented group splitting and rechaining.
7075         Fixes 143777 and 143777-2 in the testsuite.
7076
7077 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7078
7079         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7080           extra debugging
7081         * gst/gstevent.h:
7082         * gst/gstinfo.c: (gst_debug_log_default):
7083           print time nicely.  add thread pointer until someone figures out
7084           a completely portable way of getting at thread id's.
7085         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7086         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7087         (gst_pad_call_chain_function):
7088           extra debugging
7089         * gst/schedulers/gstoptimalscheduler.c:
7090         (get_group_schedule_function), (loop_group_schedule_function),
7091         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7092         (pad_clear_queued), (gst_opt_scheduler_iterate):
7093           rename BUFPEN and friends to DATAPEN since that's what they are.
7094
7095 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7096
7097         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7098         * gst/gstbuffer.h:
7099         * gst/gstpad.c:
7100           cleanups and debugging
7101
7102 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7103
7104         * configure.ac:
7105         * gst/gstvalue.c: (gst_value_compare_enum),
7106         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7107         (gst_value_can_compare), (gst_value_compare):
7108         * testsuite/Makefile.am:
7109         * testsuite/enumcaps/Makefile.am:
7110         * testsuite/enumcaps/enumcaps.c:
7111           Fix enum serialization, deserialization, comparison in caps, add
7112           a test to ensure that this continues working in the future.
7113
7114 2004-07-06  David Schleef  <ds@schleef.org>
7115
7116         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7117         Fix memleak.
7118
7119 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7120
7121         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7122         * gst/gstplugin.h:
7123         * gst/registries/gstxmlregistry.c:
7124         (plugin_times_older_than_recurse), (plugin_times_older_than),
7125         (gst_xml_registry_parse_padtemplate):
7126           only rebuild registry when actual plugins have a newer time than
7127           the registry.  Fixes #145520
7128
7129 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7130
7131         * docs/manual/manual.xml:
7132         * docs/manual/win32.xml:
7133           add chapter on win32 building.  fixes #142422
7134
7135 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7136
7137         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7138
7139         * gst/autoplug/gstspider.c: (gst_spider_init),
7140         (gst_spider_dispose):
7141           fix spider memleaks.  fixes #137863
7142
7143 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7144
7145         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7146
7147         * gst/schedulers/gstoptimalscheduler.c:
7148         (gst_opt_scheduler_pad_unlink):
7149           fix SIGBUS error, fixes #145338
7150
7151 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7152
7153         * gst/gstobject.c: (gst_object_replace):
7154         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7155         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7156           clean up clock lifecycle.  Fixes #109831
7157
7158 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7159
7160         * po/LINGUAS:
7161         * po/cs.po:
7162           added Czech translation (Miloslav Trmac)
7163
7164 2004-07-04  David Schleef  <ds@schleef.org>
7165
7166         * tools/Makefile.am:
7167         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7168
7169 2004-07-04  David Schleef  <ds@schleef.org>
7170
7171         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7172
7173 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7174
7175         * gst/gstbin.c: (gst_bin_restore_thyself):
7176           chain to parent restore so the bins get restored correctly
7177           in the editor
7178
7179 2004-07-03  David Schleef  <ds@schleef.org>
7180
7181         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7182         Actually do something in these functions, like before the big
7183         caps change.  (bug #145137)
7184
7185 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7186
7187         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7188         (gst_element_get_compatible_pad_filtered):
7189         * gst/gstthread.c: (gst_thread_main_loop):
7190           more debugging
7191
7192 2004-07-02  David Schleef  <ds@schleef.org>
7193
7194         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7195         * gst/gstobject.h:
7196         * gst/gstparse.h:
7197         * gst/gsttrace.h:
7198         * gst/gstxml.h:
7199
7200 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7201
7202         * gst/gstpad.c: (gst_pad_check_schedulers),
7203         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7204         (gst_pad_link_prepare):
7205           revert until testsuite is fixed
7206
7207 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7208
7209         * testsuite/Makefile.am:
7210         * testsuite/caps/filtercaps.c: (main):
7211         * testsuite/clock/clock1.c: (main):
7212         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7213           fix some more tests
7214
7215 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7216
7217         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7218         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7219         * testsuite/cleanup/cleanup4.c: (main):
7220           fix testsuite
7221
7222 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7223
7224         * libs/gst/control/control.c:
7225         * libs/gst/control/dparam.c:
7226         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7227         * libs/gst/control/dparammanager.c:
7228         * libs/gst/control/dparammanager.h:
7229         * testsuite/dynparams/Makefile.am:
7230         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7231         (gst_dptest_change_state), (gst_dptest_chain), (main):
7232           fix testcase for dparams
7233           add debugging category
7234
7235 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7236
7237         * testsuite/Rules:
7238           change path
7239
7240 2004-07-02  Benjamin Otte  <otte@gnome.org>
7241
7242         * tests/.cvsignore:
7243         * tests/Makefile.am:
7244         * tests/mass_elements.c: (gst_get_current_time), (main):
7245           add simple benchmark to test various speeds of fakesrc ! identity !
7246           identity ! ... ! fakesink.
7247           Usage: mass_elements [num_identities] [num_buffers]
7248           If not specified they default to 1000.
7249
7250 2004-07-02  Benjamin Otte  <otte@gnome.org>
7251
7252         * gst/gstpad.c: (gst_pad_check_schedulers),
7253         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7254         (gst_pad_link_prepare):
7255           check that pads that get linked belong to the same manager. The old
7256           code allowed linking elements before putting them into bins, so it
7257           worked to link them and then put them in different threads, which
7258           lead to weird behaviour.
7259           Since this effectively disallows linking elements before putting
7260           them in a bin, some applications might not work after this and error
7261           out. If these applications are too critical, we might need to revert
7262           that patch. Please test this before the next release...
7263
7264 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7265
7266         * gst/gstpad.c: (gst_pad_get_caps):
7267           throw an error if the getcaps function does not return a subset of
7268           the template caps.
7269         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7270           make disconts without position info an error in debugging
7271         * tests/spidey_bench.c: (handoff), (main):
7272           don't count first try when averaging
7273
7274 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7275
7276         * gst/gstplugin.c: (gst_plugin_load_file):
7277           figure out problem with dynamic test
7278
7279 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7280
7281         * docs/gst/Makefile.am:
7282           fix docs build
7283
7284 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7285
7286         * po/POTFILES.in:
7287         * po/af.po:
7288         * po/az.po:
7289         * po/en_GB.po:
7290         * po/fr.po:
7291         * po/nl.po:
7292         * po/sr.po:
7293         * po/sv.po:
7294         * po/tr.po:
7295         * po/uk.po:
7296         * tools/gst-register.c: (plugin_added_func), (main):
7297           i18n-ize -register, fix plural
7298
7299 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7300
7301         * gst/elements/gstidentity.c: (gst_identity_class_init),
7302         (gst_identity_init), (gst_identity_chain),
7303         (gst_identity_set_property), (gst_identity_get_property):
7304         * gst/elements/gstidentity.h:
7305           check for perfect stream
7306
7307 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7308
7309         * gst/elements/gstidentity.c: (gst_identity_chain):
7310           print offset_end
7311
7312 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7313
7314         * docs/gst/Makefile.am:
7315         * docs/gst/gstreamer-docs.sgml:
7316           doc fixes
7317
7318 2004-06-24  David Schleef  <ds@schleef.org>
7319
7320         * autogen.sh:  Remove call to env, since the buildbot isn't
7321         broken anymore.
7322
7323 2004-06-24  Wim Taymans  <wim@fluendo.com>
7324
7325         * gst/elements/Makefile.am:
7326         * gst/elements/gstelements.c:
7327         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7328         (gst_multifdsink_class_init), (gst_multifdsink_init),
7329         (gst_multifdsink_add), (gst_multifdsink_remove),
7330         (gst_multifdsink_clear), (gst_multifdsink_chain),
7331         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7332         * gst/elements/gstmultifdsink.h:
7333         Added an element that writes to multiple filedescriptors at once.
7334
7335 2004-06-24  Benjamin Otte  <otte@gnome.org>
7336
7337         * gst/parse/grammar.y:
7338           don't try to link elements before they have been added to bins
7339
7340 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7341
7342         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7343         (gst_file_pad_get_length):
7344         * libs/gst/bytestream/filepad.h:
7345           add 2 new functions
7346
7347 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7348
7349         * docs/gst/gstreamer-sections.txt:
7350         remove from docs, the define that Benjamin removed from gstelement.h
7351
7352 2004-06-22  Benjamin Otte  <otte@gnome.org>
7353
7354         * gst/gstelement.h:
7355           remove define that referenced a nonexisting GstElement struct member
7356
7357 2004-06-20  Benjamin Otte  <otte@gnome.org>
7358
7359         * gst/gstdata.c: (gst_data_is_writable):
7360           whoops, return values were wrong, so writable data was marked as
7361           non-writable and vice versa. (fixes #143953, spotted by Francis
7362           Labonte)
7363           Shows how rarely we need to copy data ;)
7364
7365 2004-06-20  Benjamin Otte  <otte@gnome.org>
7366
7367         * testsuite/schedulers/.cvsignore:
7368         * testsuite/schedulers/Makefile.am:
7369         * testsuite/schedulers/143777-2.c: (main):
7370           add test for opt breakage in bug #143777
7371
7372 2004-06-20  Benjamin Otte  <otte@gnome.org>
7373
7374         * gst/gstpad.c: (gst_pad_call_chain_function):
7375           check for if we were unlinked while inside the chainfunction (fixes
7376           entrygthread having issues with #143777)
7377         * testsuite/schedulers/143777.c: (main):
7378         * testsuite/schedulers/Makefile.am:
7379           add a test for that fix
7380
7381 2004-06-20  Benjamin Otte  <otte@gnome.org>
7382
7383         * gst/gstvalue.c: (gst_value_set_int_range):
7384           test that start is smaller then end
7385         * libs/gst/bytestream/Makefile.am:
7386         * libs/gst/bytestream/filepad.c: 
7387         * libs/gst/bytestream/filepad.h:
7388           add GstFilePad - a pad that behaves like a FILE*
7389         * testsuite/bytestream/.cvsignore:
7390         * testsuite/bytestream/Makefile.am:
7391         * testsuite/bytestream/filepadsink.c: 
7392           test for the GstFilePad
7393
7394 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7395
7396         * gst/elements/gstidentity.c: (gst_identity_class_init),
7397         (gst_identity_init), (gst_identity_set_clock),
7398         (gst_identity_chain), (gst_identity_set_property),
7399         (gst_identity_get_property):
7400         * gst/elements/gstidentity.h:
7401         * gst/gstclock.c: (gst_clock_id_wait):
7402           add a "sync" property to sync to the clock
7403
7404 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7405
7406         * gst/gstelementfactory.c: (gst_element_factory_create):
7407           make the freakin "elementfactory bla has no type" message more
7408           useful. So we actually can do something when someone shows up
7409           complaining about it.
7410
7411 2004-06-15  Johan Dahlin  <johan@gnome.org>
7412
7413         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7414         found. This matches the old behavior better. Thanks to Thomas for
7415         pointing out.
7416
7417 2004-06-14  David Schleef  <ds@schleef.org>
7418
7419         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7420         -fomit-frame-pointer.  Appears to generate correct code in
7421         other cases as well.
7422
7423 2004-06-14  Johan Dahlin  <johan@gnome.org>
7424
7425         * tools/gst-inspect.c (main): Add two new command line options: -a
7426         to print all elements and -n to print the name on each line. Also
7427         fix some error reporting.
7428         (main): Simplify, remove -n and always print names if -a is specified
7429
7430 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7431
7432         * win32/gstconfig.h:
7433         * win32/GSTreamer.vcproj:
7434         * win32/Makefile:
7435         * gst/gstconfig.h.in:
7436         * gst/gst.h:
7437         * gst/gstbin.h:
7438         * gst/gstelement.h:
7439         * gst/gstevent.h:
7440         * gst/gstobject.h:
7441         * gst/gstpad.h:
7442         * docs/gst/gstreamer-sections.txt:
7443         * docs/gst/tmpl/gstconfig.sgml:
7444           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7445
7446 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7447         * docs/gst/gstreamer-sections.txt:
7448         * docs/gst/tmpl/gstconfig.sgml:
7449         Add the GSTREAMER_EXPORT macro to the docs
7450
7451 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7452
7453         * tools/gst-compprep.c: (handle_xmlerror), (main):
7454         Add a check for the version that introduced SetStructuredError to fix
7455         the build on FC1
7456
7457 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7458
7459         * win32/msvc71.sln:
7460         * win32/testsuite/:
7461           prepare to compile the testsuite with MSVC
7462
7463 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7464
7465         * docs/manual/win32.xml:
7466           attempt to transform the Win32 README into an XML doc
7467
7468 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7469
7470         * gst/gst.c:
7471         * gst/gstbin.*:
7472         * gst/config.h.in:
7473         * gst/gstelement.*:
7474         * gst/gstevent.h:
7475         * gst/gstobject.*:
7476         * gst/gstpad.h:
7477         * tools/gst-register.c:
7478         * win32/gstreamer.def:
7479           extern symbols are now exported for the Windows DLL
7480
7481 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7482
7483         * gst/gstinfo.h:
7484           fix a problem to enable/disable DEBUG under MSVC
7485
7486 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7487
7488         * win32/:
7489           enable more debug code in DEBUG build
7490
7491 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7492
7493         * win32/config.h:
7494         * gst/gst-i18n-app.h:
7495           enable NLS under Windows
7496
7497 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7498         * tools/gst-compprep.c: (handle_xmlerror), (main):
7499           Make an error that baffled me a bit clearer
7500
7501 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7502
7503         * gst/gstqueue.c:
7504           don't use g_queue_get_length () because it's 2.4, use ->length
7505
7506 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7507
7508         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7509
7510         * tools/gst-inspect.c: (print_signal_info):
7511           don't free random data twice. (fixes #144185)
7512
7513 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7514
7515         * gst/gstqueue.c:
7516         * gst/gstqueue.h:
7517           fix removing from the wrong queue on event timeout
7518           fix disposing of the event queue by casting correctly
7519           add mutexes for handling the event queue
7520           someone was sleeping when fixing queue last time around :)
7521
7522 2004-06-10  Johan Dahlin  <johan@gnome.org>
7523
7524         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7525         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7526
7527 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7528
7529         * docs/random/gdp:
7530         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7531         * libs/gst/dataprotocol/dataprotocol.c:
7532         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7533         (gst_dp_buffer_from_header):
7534         * libs/gst/dataprotocol/dataprotocol.h:
7535         * libs/gst/dataprotocol/dp-private.h:
7536           rev version to 0.1, add buffer flags and copy them
7537
7538 2004-06-09  Johan Dahlin  <johan@gnome.org>
7539
7540         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
7541         the flags from the buffer we're copying.
7542
7543 2004-06-09  Wim Taymans  <wim@fluendo.com>
7544
7545         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
7546         * gst/elements/gstidentity.c: (gst_identity_init),
7547         (gst_identity_chain):
7548         Print more buffer info in fakesink.
7549         Make identity output similar to fakesink.
7550
7551 2004-06-07  Daniel Gazard  <dany42@free.fr>
7552
7553         reviewed by Benjamin Otte  <otte@gnome.org>
7554
7555         * configure.ac:
7556           fix cross compiling not working. (fixes #143741)
7557
7558 2004-06-07  Benjamin Otte  <otte@gnome.org>
7559
7560         * gst/gstelement.c: (gst_element_set_time_delay):
7561           add failure check
7562         * gst/gstinfo.h:
7563           put brackets around macro arguments of GST_TIME_ARGS, add note to
7564           move it to correct header in 0.9
7565
7566 2004-06-07  Benjamin Otte  <otte@gnome.org>
7567
7568         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
7569         (gst_file_index_load), (_file_index_id_save_entries),
7570         (gst_file_index_commit), (gst_file_index_add_association),
7571         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
7572         (gst_file_index_plugin_init):
7573           make debugging use a default category
7574
7575 2004-06-06  David Moore  <dcm@acm.org>
7576
7577         reviewed by Benjamin Otte  <otte@gnome.org>
7578
7579         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
7580         (gst_fdsrc_change_state):
7581           reset offset counter when going READY => PAUSED. (fixes #142903)
7582
7583 2004-06-06  ed@catmur.co.uk
7584
7585         reviewed by Benjamin Otte  <otte@gnome.org>
7586
7587         * gst/registries/gstxmlregistry.c:
7588         (gst_xml_registry_rebuild_recurse):
7589           don't rely on g_dir_open to figure out if a file is a directory, use
7590           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
7591           directories. (fixes #142850)
7592
7593 2004-06-06  Benjamin Otte  <otte@gnome.org>
7594
7595         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
7596           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
7597         * libs/gst/bytestream/adapter.c:
7598         * libs/gst/bytestream/adapter.h:
7599           fix copyright in header and typo in debugging category name
7600
7601 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7602
7603         * configure.ac:
7604           bump nano to cvs
7605
7606 === release 0.8.3 ===
7607
7608 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7609
7610         * configure.ac:
7611           update libtool versioning
7612           do a new release
7613         * docs/gst/tmpl/gstelement.sgml:
7614         * docs/gst/tmpl/gsttypes.sgml:
7615         * gst/gstinfo.c: (_gst_debug_init):
7616           put back GST_CAT_DATAFLOW to fix API breakage
7617
7618 2004-06-04  David Schleef  <ds@schleef.org>
7619
7620         * autogen.sh: Add a temporary 'env' to test buildbot problems.
7621
7622 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7623
7624         * configure.ac:
7625           bump nano to cvs
7626
7627 === release 0.8.2 ===
7628
7629 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7630
7631         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
7632           check GST_DEBUG environment variable which is parsed the same way
7633           as --gst-debug=
7634
7635 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7636
7637         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
7638                             gstmd5sink.c gstshaper.c gsttee.c
7639                             gsttypefindelement.c
7640         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
7641
7642           - removing trailing commas at end of enums
7643             it is correct C99 code but C90 compilers would complain
7644             (AIX, Forte, ...)
7645             ('should' fix #143290, at least partially)
7646
7647 2004-05-27  Wim Taymans  <wim@fluendo.com>
7648
7649         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
7650         (chain_group_set_enabled), (create_group), (add_to_group),
7651         (merge_groups), (setup_group_scheduler), (group_elements),
7652         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
7653         Don't try to follow the pad connections with other groups
7654         when a loop based element is added to the scheduler because
7655         the bin will inform the scheduler about the pad links a little
7656         later.
7657
7658 2004-05-27  Wim Taymans  <wim@fluendo.com>
7659
7660         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7661         (remove_from_chain), (chain_group_set_enabled),
7662         (setup_group_scheduler), (group_element_set_enabled),
7663         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
7664         (gst_opt_scheduler_show):
7665         Elements without a group can do a state change as well, just wait
7666         with the setup of the scheduling function when it is added to a
7667         chain.
7668
7669 2004-05-27  Wim Taymans  <wim@fluendo.com>
7670
7671         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7672         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
7673         (merge_groups), (setup_group_scheduler),
7674         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
7675         (gst_opt_scheduler_show):
7676         Fixes to maintain internal consistency of the scheduler data
7677         structures. 
7678          - adding an enabled group to a chain should increment the
7679            number of enabled elements in that chain.
7680          - removing an enabled group from a chain could disable the
7681            chain.
7682          - removing a disabled group from a chain could enable the
7683            chain.
7684          - add g_assert when internal inconsistency is detected.
7685          - adding an element to a group could increase the number of
7686            links this group has with other groups.
7687          - merging two groups also merges the chains.
7688          - also show group links in the _show method.
7689            
7690
7691 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7692
7693         * gst/gstcaps.c: (gst_caps_structure_simplify):
7694           don't print error messages when there is no error
7695         * gst/gstvalue.c: (gst_value_compare_int_range):
7696           compare the second value, too
7697         * testsuite/caps/Makefile.am:
7698         * testsuite/caps/random.c: (assert_on_error), (main):
7699           add tests to make sure the two things above are checked for
7700
7701 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
7702
7703         * configure.ac:
7704         * libs/gst/dataprotocol/Makefile.am:
7705         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
7706         * libs/gst/dataprotocol/dataprotocol.h:
7707           wrap header in GST_ENABLE_NEW.  make code use it
7708
7709 2004-05-23  Johan Dahlin  <johan@gnome.org>
7710
7711         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
7712         so verbose and print GstElement signal names all the time.
7713
7714 2004-05-22  David Schleef  <ds@schleef.org>
7715
7716         * gst/registries/gstxmlregistry.c:
7717         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
7718         (bug #142957)
7719
7720 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
7721
7722         * configure.ac:
7723           scrub cflags for glib2 so gcc doesn't complain when glib is in
7724           /usr/local
7725
7726 2004-05-21  Johan Dahlin  <johan@gnome.org>
7727
7728         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
7729         __GNUC__, patch from Brian Cameron, fixes bug #142804
7730
7731 2004-05-20  David Schleef  <ds@schleef.org>
7732
7733         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
7734         comparison code.  (bug #142819)
7735
7736 2004-05-20  Wim Taymans  <wim@fluendo.com>
7737
7738         * gst/gstbuffer.c: (gst_buffer_default_copy):
7739         * gst/gstbuffer.h:
7740         Added Comment to a flag.
7741         copy relevant flags in _buffer_copy.
7742
7743 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7744
7745         reviewed by: Wim Taymans <wim at fluendo dot com>
7746
7747         * gst/gstbuffer.h:
7748           add GST_BUFFER_IN_CAPS buffer flag
7749         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7750         (gst_structure_parse_any_list), (gst_structure_parse_list),
7751         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
7752         * gst/gstvalue.c: (gst_value_serialize_any_list),
7753         (gst_value_transform_any_list_string),
7754         (gst_value_list_prepend_value), (gst_value_list_append_value),
7755         (gst_value_list_get_size), (gst_value_list_get_value),
7756         (gst_value_transform_list_string),
7757         (gst_value_transform_fixed_list_string),
7758         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
7759         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
7760         (_gst_value_initialize):
7761         * gst/gstvalue.h:
7762           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
7763           < , > as a format.
7764         * testsuite/caps/string-conversions.c: (main):
7765           add regression tests for < >
7766
7767 2004-05-20  Johan Dahlin  <johan@gnome.org>
7768
7769         * docs/gst/Makefile.am (all-local): Re-add
7770
7771 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7772
7773         * docs/gst/Makefile.am:
7774         * docs/gst/gstreamer-docs.sgml:
7775         * docs/libs/Makefile.am:
7776         * docs/libs/gstreamer-libs-docs.sgml:
7777           fix distcheck issues
7778
7779 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7780
7781         * libs/gst/dataprotocol/Makefile.am:
7782           add to autotest
7783
7784 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7785
7786         * libs/gst/dataprotocol/Makefile.am:
7787         * libs/gst/dataprotocol/dataprotocol.c:
7788         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7789         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
7790         * libs/gst/dataprotocol/dp-private.h:
7791           use GST macros to read/write fixed length ints
7792           add some more asserts
7793
7794 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7795
7796         * docs/libs/gstreamer-libs-docs.sgml:
7797         * docs/libs/gstreamer-libs-sections.txt:
7798           remove idct and putbits
7799         * configure.ac:
7800         * docs/libs/tmpl/gstdataprotocol.sgml:
7801         * libs/gst/Makefile.am:
7802         * libs/gst/dataprotocol/Makefile.am:
7803         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
7804         (buffer_test), (caps_test), (event_test), (main):
7805         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
7806         (gst_dp_dump_byte_array), (gst_dp_init),
7807         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
7808         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7809         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
7810         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
7811         (gst_dp_validate_header), (gst_dp_validate_payload),
7812         (gst_dp_validate_packet), (plugin_init):
7813         * libs/gst/dataprotocol/dataprotocol.h:
7814         * libs/gst/dataprotocol/dp-private.h:
7815           add dataprotocol
7816
7817 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7818
7819         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
7820           fix int variable deserialization and add a helper so we can actually
7821           debug this.
7822
7823 2004-05-18  David Schleef  <ds@schleef.org>
7824
7825         * testsuite/debug/commandline.c: (main): Call ./commandline, not
7826           argv[0].  Calling yourself is probably not the best way to
7827           construct a test like this, btw.
7828
7829 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7830
7831         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
7832           don't claim to be more intelligent than a scheduler when the
7833           scheduler claims the pipeline is stopped
7834         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
7835         (safe_cothread_destroy),
7836         (gst_entry_scheduler_remove_all_cothreads),
7837         (gst_entry_scheduler_reset), (_remove_cothread),
7838         (gst_entry_scheduler_state_transition):
7839           hold off cothread destruction if we're not in main cothread
7840         * configure.ac:
7841         * testsuite/Makefile.am:
7842           add new test dir
7843         * testsuite/schedulers/.cvsignore:
7844         * testsuite/schedulers/Makefile.am:
7845           add tests
7846         * testsuite/schedulers/relink.c: (cb_handoff), (main):
7847           check relinking and adding/removing elements from a running pipeline
7848         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
7849           check unlinking in a running pipeline
7850         * testsuite/schedulers/unref.c: (cb_handoff), (main):
7851           check unreffing a running pipeline
7852         * testsuite/schedulers/useless_iteration.c: (main):
7853           check iterating a pipeline that contains running threads works
7854
7855 2004-05-18  David Schleef  <ds@schleef.org>
7856
7857         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
7858           is false.
7859
7860 2004-05-18  Wim Taymans  <wim@fluendo.com>
7861
7862         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7863         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
7864         Fixed an error introduced with patch for 1.63. When setting
7865         a get based element as the entry point in a group, make sure
7866         to mark the group as GET based.
7867
7868 2004-05-18  Wim Taymans  <wim@fluendo.com>
7869
7870         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7871         (setup_group_scheduler), (loop_group_schedule_function),
7872         (gst_opt_scheduler_pad_link):
7873         Added some more debug info and fixed a bug where the group
7874         type was set to LOOP but it was in fact unknown.
7875
7876 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7877
7878         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
7879           make resetting scheduler work twice in a row
7880
7881 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7882
7883         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
7884         (CREATE_USERIALIZATION), (_gst_value_initialize),
7885         (gst_value_compare_float), (gst_value_serialize_float),
7886         (gst_value_deserialize_float), (gst_value_compare_enum),
7887         (gst_value_serialize_enum), (gst_value_deserialize_enum):
7888           add serialization and comparison functions for long, int64, enum and
7889           float values
7890         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
7891           use best serialization function in type hierarchy instead of only a
7892           matching one. This is required for enums to work.
7893         * gst/parse/grammar.y:
7894           use gst_caps_deserialize
7895         * testsuite/parse/Makefile.am:
7896           parse1 now works
7897         * testsuite/parse/parse1.c: (main):
7898           remove aggregator check, aggregator is broken, this test works now
7899           but fails because of bug #138012
7900         * testsuite/parse/parse2.c: (main):
7901           s/xvideosink/xvimagesink - this test looks a lot like we should
7902           disable it
7903
7904 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7905
7906         * gst/gstelement.c: (gst_element_class_init):
7907           whoops, store the signal id correctly
7908         * gst/schedulers/gstbasicscheduler.c:
7909         (gst_basic_scheduler_chain_wrapper):
7910           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
7911           chain function isn't linked
7912
7913 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
7914         * configure.ac:
7915         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
7916         support until we decide where the flags should be used
7917         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
7918         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
7919         * gst/gstpad.c: (gst_pad_link_call_link_functions):
7920         Output refused caps in the debug info
7921
7922 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7923
7924         * gst/elements/gstidentity.c: (gst_identity_chain):
7925           add duration debug
7926         * gst/gstinfo.c: (gst_debug_log_default):
7927           add timestamp
7928
7929 2004-05-13  Benjamin Otte  <otte@gnome.org>
7930
7931         * gst/gstpipeline.c: (gst_pipeline_dispose),
7932         (gst_pipeline_change_state):
7933           call gst_scheduler_reset on dispose (fixes #141416)
7934
7935 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7936
7937         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7938           compute mapsize correctly
7939         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7940           use correct datatypes when calling a varargs function
7941         * gst/elements/gsttypefindelement.c: (stop_typefinding):
7942           push a DISCONT event as first thing
7943         * gst/gst_private.h:
7944         * gst/gstinfo.c: (_gst_debug_init):
7945           remove GST_DATAFLOW debugging category
7946         * gst/gstbin.c: (gst_bin_iterate):
7947           use GST_SCHEDULING category
7948         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
7949         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
7950         (gst_pad_call_get_function):
7951           add GST_DATAFLOW to easily track flow of buffers or events.
7952         * gst/gstqueue.c: (gst_queue_get_type),
7953         (gst_queue_handle_pending_events), (gst_queue_chain),
7954         (gst_queue_get), (gst_queue_handle_src_event):
7955           use own static debugging category GST_DATAFLOW for dataflow,
7956           use DEBUG category for showing which path events go, use LOG
7957           category for buffers.
7958
7959 2004-05-10  David Schleef  <ds@schleef.org>
7960
7961         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
7962
7963 2004-05-10  David Schleef  <ds@schleef.org>
7964
7965         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
7966         symbols, because otherwise we don't know what they are.  Thanks,
7967         the GStreamer team.
7968         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
7969
7970 2004-05-10  David Schleef  <ds@schleef.org>
7971
7972         (from Steve Lhomme)
7973         * win32/Makefile: When using make clean the MS Visual Studio makefiles
7974         are deleted.  Fix.
7975         * win32/Makefile.inspect:
7976         * win32/Makefile.launch:
7977         * win32/Makefile.register:
7978
7979 2004-05-10  David Schleef  <ds@schleef.org>
7980
7981         * gst/gstinfo.h: Add missing inline function.
7982         * gst/gsttrace.c: add include
7983         * gst/parse/grammar.y: remove unused code
7984         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
7985         more portable.
7986         * tools/gst-register.c: wrap unistd.h
7987         
7988         More additions/fixes from Steve for the MSVC build.
7989         * win32/GStreamer.vcproj:
7990         * win32/Makefile:
7991         * win32/Makefile.inspect:
7992         * win32/Makefile.launch:
7993         * win32/Makefile.register:
7994         * win32/README.txt:
7995         * win32/gst-inspect.vcproj:
7996         * win32/gst-launch.vcproj:
7997         * win32/gst-register.vcproj:
7998         * win32/gstbytestream.def:
7999         * win32/gstbytestream.vcproj:
8000         * win32/gstconfig.h:
8001         * win32/gstelements.def:
8002         * win32/gstelements.vcproj:
8003         * win32/gstenumtypes.c:
8004         * win32/gstenumtypes.h:
8005         * win32/gstoptimalscheduler.def:
8006         * win32/gstoptimalscheduler.vcproj:
8007         * win32/gstreamer.def:
8008         * win32/gstspider.def:
8009         * win32/gstspider.vcproj:
8010         * win32/gstversion.h:
8011         * win32/msvc71.sln:
8012
8013 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8014
8015         * gst/gstelement.c: (gst_element_class_init),
8016         (gst_element_no_more_pads):
8017         * gst/gstelement.h:
8018           add gst_element_no_more_pads and the "no-more-pads" signal
8019
8020 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8021
8022         * gst/gstregistry.c: (gst_registry_add_plugin):
8023           refuse to add plugins when a plugin with same name is already
8024           registered. Fixes a bunch of "How to remove plugins?" issues.
8025           May lead to other problems though, let's test
8026
8027 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8028
8029         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8030         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8031         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8032
8033 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8034
8035         * tests/Makefile.am: fix am16 issue
8036
8037 2004-05-09  Benjamin Otte  <otte@gnome.org>
8038
8039         * libs/gst/bytestream/Makefile.am:
8040           we should indeed add .c files to makefiles or they won't be built
8041           (d'oh)
8042
8043 2004-05-08  Benjamin Otte  <otte@gnome.org>
8044
8045         * gst/gstpad.c: (gst_pad_proxy_fixate):
8046           really reduce the set of caps
8047
8048 2004-05-08  Benjamin Otte  <otte@gnome.org>
8049
8050         * tests/Makefile.am:
8051         * tests/spidey_bench.c: (handoff), (main):
8052           add benchmark to test how long spider needs to create a pipeline
8053
8054 2004-05-08  Benjamin Otte  <otte@gnome.org>
8055
8056         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8057           mark links as unengaged when unnegotiating instead of deactivating.
8058           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8059
8060 2004-05-08  Benjamin Otte  <otte@gnome.org>
8061
8062         * docs/manual/helloworld.xml:
8063           s/audiosink/osssink (patch by Patrick Guimond)
8064
8065 2004-05-07  David Schleef  <ds@schleef.org>
8066
8067         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8068         since it contains important stuff.
8069
8070 2004-05-07  David Schleef  <ds@schleef.org>
8071
8072         * testsuite/caps/caps.c: (test3), (main): A check for appending
8073         ANY caps.
8074
8075 2004-05-07  David Schleef  <ds@schleef.org>
8076
8077         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8078         which may contain commas.  Fixes detection of -Wa,-mregnames
8079
8080 2004-05-06  David Schleef  <ds@schleef.org>
8081
8082         Changes to handle compilers that don't have variadic macro
8083         support.  In particular, glib headers define some inlines
8084         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8085         builds.
8086         * gst/Makefile.am:
8087         * gst/cothreads.c:
8088         * gst/elements/gstfdsink.c:
8089         * gst/elements/gstfdsrc.c:
8090         * gst/elements/gstfilesink.c:
8091         * gst/elements/gstfilesrc.c:
8092         * gst/gst_private.h:
8093         * gst/gstatomic.c:
8094         * gst/gstcaps.c: (gst_caps_append):
8095         * gst/gstcpu.c: (gst_cpuid_i386):
8096         * gst/gstelement.c:
8097         * gst/gsterror.c:
8098         * gst/gstfilter.c:
8099         * gst/gstinfo.h:
8100         * gst/gstprobe.c:
8101         * gst/gstquery.c:
8102         * gst/gstregistry.c:
8103         * gst/gststructure.c:
8104         * gst/gsttaginterface.c:
8105         * gst/gsttrace.c: (gst_trace_new):
8106         * gst/gsttrashstack.c:
8107         * gst/gsturi.c:
8108         * gst/gstvalue.c:
8109         * gst/parse/grammar.y:
8110         * gst/parse/parse.l:
8111         * tools/gst-inspect.c: (main):
8112         * tools/gst-launch.c: (main):
8113         * tools/gst-xmlinspect.c: (PUT_STRING):
8114
8115 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8116
8117         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8118         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8119         * gst/elements/gstfilesrc.h:
8120           send NEW_MEDIA events correctly
8121         * gst/elements/gsttypefindelement.c: (start_typefinding),
8122         (gst_type_find_element_handle_event):
8123           restart typefinding when we get a NEW_MEDIA event
8124         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8125         (gst_bin_dispose):
8126           don't die when someone removes elements in callbacks
8127         * gst/gstelement.c: (gst_element_change_state):
8128           improve debugging
8129         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8130           we need a NEW_MEDIA event to engage a link
8131         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8132           don't g_print debugging stuff
8133         * testsuite/caps/simplify.c: (check_caps):
8134
8135 2004-05-04  Benjamin Otte  <otte@gnome.org>
8136
8137         * gst/parse/grammar.y:
8138           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8139
8140 2004-05-04  Benjamin Otte  <otte@gnome.org>
8141
8142         * testsuite/caps/renegotiate.c: (main):
8143           improve output in error case
8144
8145 2004-05-04  Benjamin Otte  <otte@gnome.org>
8146
8147         * gst/parse/grammar.y:
8148           fix assert to not trigger when there's no error argument
8149         * gst/parse/parse.l:
8150           fix definition of caps to allow more than two structures
8151         * testsuite/caps/Makefile.am:
8152         * testsuite/caps/renegotiate.c: (main):
8153           it's sinesrc and works in that case
8154
8155 2004-05-04  Wim Taymans  <wim@fluendo.com>
8156
8157         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8158         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8159         when removing an element from a group, we always need to
8160         decrement the link count that this group had with other 
8161         groups through the element.
8162         added an extra assert to catch inconsistencies when decrementing
8163         the link count.
8164
8165 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8166
8167         * configure.ac:
8168         * docs/gst/Makefile.am:
8169         * docs/gst/gstreamer-sections.txt:
8170         * docs/gst/tmpl/gstcompat.sgml:
8171         * examples/appreader/Makefile.am:
8172         * examples/cutter/Makefile.am:
8173         * examples/events/Makefile.am:
8174         * examples/helloworld/Makefile.am:
8175         * examples/helloworld2/Makefile.am:
8176         * examples/launch/Makefile.am:
8177         * examples/manual/Makefile.am:
8178         * examples/mixer/Makefile.am:
8179         * examples/pingpong/Makefile.am:
8180         * examples/plugins/Makefile.am:
8181         * examples/queue/Makefile.am:
8182         * examples/queue2/Makefile.am:
8183         * examples/queue3/Makefile.am:
8184         * examples/queue4/Makefile.am:
8185         * examples/retag/Makefile.am:
8186         * examples/thread/Makefile.am:
8187         * examples/typefind/Makefile.am:
8188         * examples/xml/Makefile.am:
8189         * gst/Makefile.am:
8190         * gst/autoplug/Makefile.am:
8191         * gst/elements/Makefile.am:
8192         * gst/gstcompat.h:
8193         * gst/indexers/Makefile.am:
8194         * gst/parse/Makefile.am:
8195         * gst/registries/Makefile.am:
8196         * gst/schedulers/Makefile.am:
8197         * libs/gst/bytestream/Makefile.am:
8198         * libs/gst/control/Makefile.am:
8199         * libs/gst/getbits/Makefile.am:
8200         * po/af.po:
8201         * po/az.po:
8202         * po/en_GB.po:
8203         * po/fr.po:
8204         * po/nl.po:
8205         * po/sr.po:
8206         * po/sv.po:
8207         * po/tr.po:
8208         * po/uk.po:
8209         * tests/Makefile.am:
8210         * tests/bufspeed/Makefile.am:
8211         * tests/instantiate/Makefile.am:
8212         * tests/memchunk/Makefile.am:
8213         * tests/muxing/Makefile.am:
8214         * tests/negotiation/Makefile.am:
8215         * tests/probes/Makefile.am:
8216         * tests/sched/Makefile.am:
8217         * tests/seeking/Makefile.am:
8218         * tests/threadstate/Makefile.am:
8219         * testsuite/caps/Makefile.am:
8220         * testsuite/cleanup/Makefile.am:
8221         * testsuite/dlopen/Makefile.am:
8222         * testsuite/dynparams/Makefile.am:
8223         * testsuite/plugin/Makefile.am:
8224         * testsuite/states/Makefile.am:
8225         * tools/Makefile.am:
8226           reorganize compile/link flags to be consistent
8227           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8228
8229 2004-05-04  David Schleef  <ds@schleef.org>
8230
8231         The "once more, with feeling" check-in.
8232         * testsuite/caps/Makefile.am: dist caps_strings
8233         * testsuite/caps/renegotiate.c: (main): This test triggers a
8234           segfault in the core.  Marking as failing.
8235
8236 2004-05-03  David Schleef  <ds@schleef.org>
8237
8238         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8239           by the build bots.
8240         * testsuite/caps/renegotiate.c: (main): Same.
8241
8242 2004-05-03  David Schleef  <ds@schleef.org>
8243
8244         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8245
8246 2004-05-03  David Schleef  <ds@schleef.org>
8247
8248         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8249           variable to find our source file.
8250
8251 2004-05-03  David Schleef  <ds@schleef.org>
8252
8253         * configure.ac:  Link plugins with libgstreamer and dependent
8254           libraries
8255         * testsuite/caps/Makefile.am:
8256         * testsuite/caps/caps_strings:
8257         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8258           through a file of caps strings and test each one
8259
8260 2004-05-04  Benjamin Otte  <otte@gnome.org>
8261
8262         * libs/gst/bytestream/Makefile.am:
8263         * libs/gst/bytestream/adapter.c: 
8264         * libs/gst/bytestream/adapter.h:
8265           add GstAdapter, similar to bytestream, but doesn't require ugly event
8266           handling or uglier loopbased elements
8267
8268 2004-05-03  David Schleef  <ds@schleef.org>
8269
8270         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8271         * testsuite/caps/erathostenes.c:
8272         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8273
8274 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8275
8276         * docs/pwg/pwg.xml:
8277           remove hardcoded stylesheet path (duh)
8278         * docs/random/release:
8279         * docs/gst/gstreamer-sections.txt:
8280         * gst/Makefile.am:
8281         * gst/gst.h:
8282         * gst/gst_private.h:
8283         * gst/gstcaps.c:
8284         * gst/gstevent.c:
8285         * gst/gstformat.c:
8286         * gst/gstinfo.c:
8287         * gst/gstinfo.h:
8288         * gst/gstinterface.c:
8289         * gst/gstmemchunk.c:
8290         * gst/gstprobe.c:
8291         * gst/gstquery.c:
8292         * gst/gstregistry.c:
8293         * gst/gstregistrypool.c:
8294         * gst/gststructure.c:
8295         * gst/gsttaginterface.c:
8296         * gst/gstthread.c:
8297         * gst/gsttrace.c:
8298         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8299         * gst/gsturi.c:
8300         * gst/gstvalue.c:
8301           deprecate gst_info; remove gstlog.h
8302    
8303
8304 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8305
8306         * Makefile.am:
8307         * po/en_GB.po:
8308         * po/sv.po:
8309         * po/uk.po:
8310           updated translations
8311
8312 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8313
8314         * gst/gstbin.c: (gst_bin_dispose):
8315           better debugging
8316
8317 2004-05-03  Johan Dahlin  <johan@gnome.org>
8318
8319         * gst/schedulers/gstoptimalscheduler.c
8320         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8321         really is a GstElement. Avoids critical when running gst-launch -v
8322         and a oggdemux/decoding pipeline.
8323
8324 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8325
8326         * docs/gst/tmpl/gstpipeline.sgml :
8327         * docs/manual/elements-api.xml :
8328                 doc fix by Patrick Guimond (Protector) from devel ML
8329                 reviewed by ronald
8330
8331 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8332
8333         * docs/gst/Makefile.am :
8334         * docs/libs/Makefile.am :
8335                 apply a patch from Arwed v. Merkatz so that gtk-doc
8336                 generated docs install (same for .devhelp file)
8337                 (fixes part 1 of #138836)
8338
8339 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8340
8341         * docs/faq/dependencies.xml: typo
8342         * docs/faq/getting.xml :
8343             - fix download URL for new gstreamer site
8344             - hide sf.net download page as latest version aren't there
8345             - fix apt URLs
8346             - fill "get via CVS" paragraph (link to dev page on the site)
8347         * docs/faq/general.xml:
8348             hide status tables as they no more exists
8349             change case on plugins license file to reflect reality
8350         * docs/faq/troubleshooting.xml:
8351             remove the wiki question/answer as there is no more wiki
8352
8353 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8354
8355         * gst/gsterror.h:
8356           include the headers needed for declarations used in this header
8357
8358 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8359
8360         * docs/random/uraeus/gstreamer_and_midi.txt :
8361           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8362           (fixes #132288)
8363
8364 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8365
8366         reviewed by Benjamin Otte  <otte@gnome.org>
8367
8368         * gst/schedulers/gthread-cothreads.h:
8369           free allocated data for main cothread, too when destroying context
8370           (fixes #141417)
8371
8372 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8373
8374         * docs/manual/goals.xml : remove duplicated paragraph at end 
8375         of doc page (fixes #141448)
8376
8377 2004-04-29  David Schleef  <ds@schleef.org>
8378
8379         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8380         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8381
8382 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8383
8384         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8385           fix property
8386         * gst/gstcaps.c:
8387           fix doc string
8388         * po/POTFILES.in:
8389           rename typefind source file
8390
8391 2004-04-28  David Schleef  <ds@schleef.org>
8392
8393         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8394         * win32/GStreamer.vcproj:
8395         * win32/Makefile:
8396         * win32/config.h:
8397         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8398         (_trewinddir), (_ttelldir), (_tseekdir):
8399         * win32/dirent.h:
8400         * win32/gst-inspect.vcproj:
8401         * win32/gst-launch.vcproj:
8402         * win32/gst-register.vcproj:
8403         * win32/gstbytestream.vcproj:
8404         * win32/gstelements.vcproj:
8405         * win32/gstoptimalscheduler.vcproj:
8406         * win32/gstspider.vcproj:
8407         * win32/gtchar.h:
8408         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8409         * win32/mman.h:
8410         * win32/mman.inl:
8411         * win32/msvc71.sln:
8412
8413 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8414
8415         * gst/gst.c: (init_post):
8416         * gst/gstinfo.c:
8417           remove useless _gst_progname stuff
8418         * tools/gst-inspect.c: (print_field), (print_caps):
8419           improve caps output
8420
8421 2004-04-28  David Schleef  <ds@schleef.org>
8422
8423         Disable parsing of a lot of files that aren't part of the
8424         exported API.  Move corresponding template files to old/,
8425         waiting for removal when they don't contain anything
8426         interesting.
8427         * docs/gst/Makefile.am:
8428         * docs/gst/gstreamer-sections.txt:
8429         * docs/gst/tmpl/cothreads.sgml:
8430         * docs/gst/tmpl/cothreads_compat.sgml:
8431         * docs/gst/tmpl/gettext.sgml:
8432         * docs/gst/tmpl/gobject2gtk.sgml:
8433         * docs/gst/tmpl/grammar.tab.sgml:
8434         * docs/gst/tmpl/gst-i18n-app.sgml:
8435         * docs/gst/tmpl/gst-i18n-lib.sgml:
8436         * docs/gst/tmpl/gst_private.sgml:
8437         * docs/gst/tmpl/gstaggregator.sgml:
8438         * docs/gst/tmpl/gstarch.sgml:
8439         * docs/gst/tmpl/gstatomic_impl.sgml:
8440         * docs/gst/tmpl/gstbufferstore.sgml:
8441         * docs/gst/tmpl/gstdata_private.sgml:
8442         * docs/gst/tmpl/gstdisksink.sgml:
8443         * docs/gst/tmpl/gstdisksrc.sgml:
8444         * docs/gst/tmpl/gstelementfactory.sgml:
8445         * docs/gst/tmpl/gstextratypes.sgml:
8446         * docs/gst/tmpl/gstfakesink.sgml:
8447         * docs/gst/tmpl/gstfakesrc.sgml:
8448         * docs/gst/tmpl/gstfdsink.sgml:
8449         * docs/gst/tmpl/gstfdsrc.sgml:
8450         * docs/gst/tmpl/gstfilesink.sgml:
8451         * docs/gst/tmpl/gstfilesrc.sgml:
8452         * docs/gst/tmpl/gsthttpsrc.sgml:
8453         * docs/gst/tmpl/gstidentity.sgml:
8454         * docs/gst/tmpl/gstindexfactory.sgml:
8455         * docs/gst/tmpl/gstmarshal.sgml:
8456         * docs/gst/tmpl/gstmd5sink.sgml:
8457         * docs/gst/tmpl/gstmultidisksrc.sgml:
8458         * docs/gst/tmpl/gstmultifilesrc.sgml:
8459         * docs/gst/tmpl/gstpadtemplate.sgml:
8460         * docs/gst/tmpl/gstpipefilter.sgml:
8461         * docs/gst/tmpl/gstschedulerfactory.sgml:
8462         * docs/gst/tmpl/gstsearchfuncs.sgml:
8463         * docs/gst/tmpl/gstshaper.sgml:
8464         * docs/gst/tmpl/gstspider.sgml:
8465         * docs/gst/tmpl/gstspideridentity.sgml:
8466         * docs/gst/tmpl/gststatistics.sgml:
8467         * docs/gst/tmpl/gsttee.sgml:
8468         * docs/gst/tmpl/gsttimecache.sgml:
8469         * docs/gst/tmpl/gsttypefind.sgml:
8470         * docs/gst/tmpl/gsttypefindfactory.sgml:
8471         * docs/gst/tmpl/gstxmlregistry.sgml:
8472         * docs/gst/tmpl/gthread-cothreads.sgml:
8473         * docs/gst/tmpl/old/cothreads.sgml:
8474         * docs/gst/tmpl/old/cothreads_compat.sgml:
8475         * docs/gst/tmpl/old/gettext.sgml:
8476         * docs/gst/tmpl/old/gobject2gtk.sgml:
8477         * docs/gst/tmpl/old/grammar.tab.sgml:
8478         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8479         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8480         * docs/gst/tmpl/old/gst_private.sgml:
8481         * docs/gst/tmpl/old/gstaggregator.sgml:
8482         * docs/gst/tmpl/old/gstarch.sgml:
8483         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8484         * docs/gst/tmpl/old/gstbufferstore.sgml:
8485         * docs/gst/tmpl/old/gstdata_private.sgml:
8486         * docs/gst/tmpl/old/gstdisksink.sgml:
8487         * docs/gst/tmpl/old/gstdisksrc.sgml:
8488         * docs/gst/tmpl/old/gstelementfactory.sgml:
8489         * docs/gst/tmpl/old/gstextratypes.sgml:
8490         * docs/gst/tmpl/old/gstfakesink.sgml:
8491         * docs/gst/tmpl/old/gstfakesrc.sgml:
8492         * docs/gst/tmpl/old/gstfdsink.sgml:
8493         * docs/gst/tmpl/old/gstfdsrc.sgml:
8494         * docs/gst/tmpl/old/gstfilesink.sgml:
8495         * docs/gst/tmpl/old/gstfilesrc.sgml:
8496         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8497         * docs/gst/tmpl/old/gstidentity.sgml:
8498         * docs/gst/tmpl/old/gstindexfactory.sgml:
8499         * docs/gst/tmpl/old/gstmarshal.sgml:
8500         * docs/gst/tmpl/old/gstmd5sink.sgml:
8501         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8502         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8503         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8504         * docs/gst/tmpl/old/gstpipefilter.sgml:
8505         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8506         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8507         * docs/gst/tmpl/old/gstshaper.sgml:
8508         * docs/gst/tmpl/old/gstspider.sgml:
8509         * docs/gst/tmpl/old/gstspideridentity.sgml:
8510         * docs/gst/tmpl/old/gststatistics.sgml:
8511         * docs/gst/tmpl/old/gsttee.sgml:
8512         * docs/gst/tmpl/old/gsttimecache.sgml:
8513         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8514         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8515         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8516         * docs/gst/tmpl/old/types.sgml:
8517         * docs/gst/tmpl/types.sgml:
8518
8519         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8520         gtkdoc-scan doesn't like files with the same name in different
8521         directories.
8522         * gst/elements/Makefile.am:
8523         * gst/elements/gstelements.c:
8524         * gst/elements/gsttypefind.c: 
8525         * gst/elements/gsttypefind.h:
8526         * gst/elements/gsttypefindelement.c:
8527         * gst/elements/gsttypefindelement.h:
8528
8529 2004-04-28  David Schleef  <ds@schleef.org>
8530
8531         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8532         patch (bug #141317):
8533         * gst/gst-i18n-lib.h: Allow disabling gettext.
8534         * gst/gstatomic_impl.h: disable warning when it's dumb.
8535         * gst/gstclock.c: fix include
8536         * gst/gstcompat.h: fix variadic macro
8537         * gst/gstinfo.c: fix include
8538         * gst/gstmacros.h: add defines for inlines on MSVC
8539         * gst/gstplugin.c: fix includes
8540         * gst/gstregistry.c: fix includes
8541         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
8542         * gst/gstsystemclock.c: fix include
8543         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
8544         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
8545         * gst/registries/gstxmlregistry.c:
8546         (gst_xml_registry_parse_element_factory): fix use of non-portable
8547         functions
8548         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
8549         * libs/gst/control/dparammanager.h: same
8550
8551 2004-04-28  David Schleef  <ds@schleef.org>
8552
8553         Move a bunch of unused files to old/ with names that are
8554         not case-insensitive-unique.  These files still contain some
8555         useful information that needs to be merged into gstbin.sgml,
8556         etc., so they shouldn't be deleted yet.
8557         * docs/gst/tmpl/GstBin.sgml:
8558         * docs/gst/tmpl/GstBuffer.sgml:
8559         * docs/gst/tmpl/GstCaps.sgml:
8560         * docs/gst/tmpl/GstClock.sgml:
8561         * docs/gst/tmpl/GstCompat.sgml:
8562         * docs/gst/tmpl/GstData.sgml:
8563         * docs/gst/tmpl/GstElement.sgml:
8564         * docs/gst/tmpl/GstEvent.sgml:
8565         * docs/gst/tmpl/GstIndex.sgml:
8566         * docs/gst/tmpl/GstStructure.sgml:
8567         * docs/gst/tmpl/GstTag.sgml:
8568         * docs/gst/tmpl/old/GstBin.sgml:
8569         * docs/gst/tmpl/old/GstBuffer.sgml:
8570         * docs/gst/tmpl/old/GstCaps.sgml:
8571         * docs/gst/tmpl/old/GstClock.sgml:
8572         * docs/gst/tmpl/old/GstCompat.sgml:
8573         * docs/gst/tmpl/old/GstData.sgml:
8574         * docs/gst/tmpl/old/GstElement.sgml:
8575         * docs/gst/tmpl/old/GstEvent.sgml:
8576         * docs/gst/tmpl/old/GstIndex.sgml:
8577         * docs/gst/tmpl/old/GstStructure.sgml:
8578         * docs/gst/tmpl/old/GstTag.sgml:
8579
8580 2004-04-28  David Schleef  <ds@schleef.org>
8581
8582         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
8583         (gst_caps_append), (gst_caps_append_structure),
8584         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
8585         (gst_caps_set_simple), (gst_caps_set_simple_valist),
8586         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
8587         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
8588         (gst_caps_intersect), (gst_caps_normalize),
8589         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
8590         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
8591         * gst/gstcaps.h: use GST_IS_CAPS().
8592
8593 2004-04-26  David Schleef  <ds@schleef.org>
8594
8595         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
8596         assembly.  gcc doesn't handle it correctly. (bug #141083)
8597         * gst/gsttrashstack.h: same
8598
8599 2004-04-25  Benjamin Otte  <otte@gnome.org>
8600
8601         * gst/gstelement.c: (gst_element_change_state):
8602           fix assertion to do an int comparison
8603
8604 2004-04-25  Benjamin Otte  <otte@gnome.org>
8605
8606         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8607           better debugging output on error
8608
8609 2004-04-25  Benjamin Otte  <otte@gnome.org>
8610
8611         * gst/gstcaps.c: (gst_caps_subtract):
8612           fix memleak
8613
8614 2004-04-23  Benjamin Otte  <otte@gnome.org>
8615
8616         * gst/gstvalue.c: (gst_value_compare_buffer),
8617         (_gst_value_initialize):
8618           add comparison function for buffers
8619
8620 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8621
8622         * docs/pwg/pwg.xml:
8623           Just found out that this so-called "ima-wav" format is really
8624           just "dvi adpcm" (according to the MS WAV documentation). So
8625           renaming it. We didn't use it yet anyway.
8626
8627 2004-04-23  Benjamin Otte  <otte@gnome.org>
8628
8629         * gst/gstcaps.c: (gst_caps_is_always_compatible):
8630           call gst_caps_is_subset
8631
8632 2004-04-23  Benjamin Otte  <otte@gnome.org>
8633
8634         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
8635         (gst_caps_is_subset):
8636           add documentation
8637
8638 2004-04-23  Benjamin Otte  <otte@gnome.org>
8639           
8640         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
8641         (gst_caps_structure_subtract), (gst_caps_subtract),
8642         (gst_caps_structure_figure_out_union),
8643         (gst_caps_structure_simplify), (gst_caps_do_simplify):
8644           fix simplifying and subtracting not working correctly with optional
8645           properties
8646           solve assorted problems that make it now simplify ebven more
8647         * docs/gst/tmpl/gstcaps.sgml:
8648         * gst/gstcaps.h:
8649           make gst_caps_do_simplify return a bool to indicate if it simplified
8650         * testsuite/caps/simplify.c: (main):
8651           add more checks. The tests is quite a bit useless right now because
8652           the core is heavily simplifying itself.
8653         * testsuite/caps/caps.h:
8654           fix caps to contain all optional properties
8655
8656 2004-04-22  Benjamin Otte  <otte@gnome.org>
8657
8658         * docs/gst/tmpl/gstcaps.sgml:
8659         * docs/gst/tmpl/gstfilesrc.sgml:
8660         * docs/gst/tmpl/gststructure.sgml:
8661         * docs/gst/tmpl/gstvalue.sgml:
8662           update for recent API changes
8663         * gst/gstcaps.c: (gst_caps_do_simplify):
8664           fix to stop trying with a freed structure
8665         * gst/gstpad.c: (gst_pad_link_fixate):
8666           simplify caps
8667         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
8668           remove C++ comment
8669         * gst/gstpad.h:
8670           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
8671         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8672         (gst_structure_to_string):
8673           keep the correct type when using lists of ranges
8674         * gst/gstvalue.c: (gst_value_list_prepend_value),
8675         (gst_value_list_append_value):
8676           copy the value before adding to the list (d'oh)
8677         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
8678         (gst_value_subtract_int_range_int_range):
8679           handle overflows correctly
8680         * gst/gstvalue.c: (gst_value_subtract_from_list):
8681           fix memleak
8682         * testsuite/caps/caps.h:
8683           add a caps that caused segfaults
8684
8685 2004-04-22  Benjamin Otte  <otte@gnome.org>
8686
8687         * testsuite/refcounting/pad.c: (main):
8688           fix test
8689
8690 2004-04-22  Benjamin Otte  <otte@gnome.org>
8691
8692         * gst/gstcaps.c: (gst_caps_subtract):
8693           allow subtracting ANY and EMPTY from ANY caps
8694
8695 2004-04-22  Benjamin Otte  <otte@gnome.org>
8696
8697         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
8698         (gst_caps_union):
8699           only simplify in functions that create new caps. Simplifying in
8700           gst_caps_append breaks tests.
8701
8702 2004-04-22  Benjamin Otte  <otte@gnome.org>
8703
8704         * gst/gstcaps.c: (gst_caps_structure_simplify):
8705           unset GValue after use
8706         * gst/gstcaps.c: (gst_caps_append), 
8707         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
8708           use gst_caps_simplify (reduces registry size by 30%)
8709         * gst/gstpad.c: (gst_pad_template_new):
8710           don't allow NULL caps
8711
8712 2004-04-22  Benjamin Otte  <otte@gnome.org>
8713
8714         * docs/gst/gstreamer-sections.txt:
8715           add gst_caps_do_simplify
8716         * gst/gstcaps.c:
8717           add documentation for gst_caps_do_simplify
8718         * gst/gstvalue.h:
8719           fix typo in gst_value_register_subtract_func declaration for gst-doc
8720
8721 2004-04-22  Benjamin Otte  <otte@gnome.org>
8722
8723         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8724           fix bug when converting from empty string.
8725         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
8726         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
8727           use gst_caps_new_empty to allocate a new caps. Only that function
8728           allocates memory for caps now.
8729         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
8730         (gst_caps_remove_structure):
8731           add ability to remove one structure (but not to header yet)
8732         * gst/gstcaps.c: (gst_caps_compare_structures),
8733         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
8734         (gst_caps_structure_simplify), (gst_caps_do_simplify),
8735         * gst/gstcaps.h:
8736           add gst_caps_do_simplify that tries to simplify a caps in place.
8737           Deprecate old gst_caps_simplify function.
8738         * testsuite/caps/caps.h:
8739           add caps.h containing a common set of caps to test against.
8740         * testsuite/caps/sets.c: (check_caps), (main):
8741           use it.
8742         * testsuite/caps/.cvsignore:
8743         * testsuite/caps/Makefile.am:
8744         * testsuite/caps/simplify.c: (check_caps), (main):
8745           add test to check correctness and efficency of caps simplification.
8746
8747 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
8748
8749         reviewed by Benjamin Otte  <otte@gnome.org>
8750
8751         * gst/gstparse.c: (_gst_parse_escape):
8752           Free the GString used in _gst_parse_escape()
8753
8754 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8755
8756         * gst/gstpad.c: (gst_pad_link_negotiate):
8757           refuse to link if the link is not possible
8758         * configure.ac:
8759         * testsuite/Makefile.am:
8760         * testsuite/negotiation/.cvsignore:
8761         * testsuite/negotiation/Makefile.am:
8762         * testsuite/negotiation/pad_link.c: (main):
8763           add test that checks the above behaviour
8764
8765 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8766
8767         * docs/gst/gstreamer-sections.txt:
8768           add newly added API
8769
8770 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8771
8772         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8773         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
8774         (gst_filesrc_open_file), (gst_filesrc_close_file),
8775         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
8776         * gst/elements/gstfilesrc.h:
8777           add support for non-regular files (#140734)
8778
8779 2004-04-21  Benjamin Otte  <otte@gnome.org>
8780
8781         * gst/gstpad.c: (gst_pad_link_fixate):
8782           add sophisticated error checking code to see if fixation functions
8783           did their fixation right
8784
8785 2004-04-21  Benjamin Otte  <otte@gnome.org>
8786
8787         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
8788           check for ANY caps before appending/unioning
8789         * gst/gstcaps.c: (gst_caps_is_subset),
8790         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
8791         (gst_caps_structure_subtract), (gst_caps_subtract):
8792         * gst/gstcaps.h:
8793           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
8794           the API. deprecate gst_caps_is_equal_fixed
8795         * gst/gstpad.c: (gst_pad_try_set_caps):
8796         * gst/gstqueue.c: (gst_queue_link):
8797           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
8798         * gst/gststructure.c: (gst_structure_get_name_id):
8799         * gst/gststructure.h:
8800           add function gst_structure_get_name_id
8801         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
8802         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
8803         (gst_value_subtract_int_range_int_range),
8804         (gst_value_subtract_double_double_range),
8805         (gst_value_subtract_double_range_double),
8806         (gst_value_subtract_double_range_double_range),
8807         (gst_value_subtract_from_list), (gst_value_subtract_list),
8808         (gst_value_can_intersect), (gst_value_subtract),
8809         (gst_value_can_subtract), (gst_value_register_subtract_func),
8810         (_gst_value_initialize):
8811         * gst/gstvalue.h:
8812           add support for subtracting values from each other. Note that
8813           subtracting means subtracting as in set theory. Required for caps
8814           stuff above.
8815         * testsuite/caps/.cvsignore:
8816         * testsuite/caps/Makefile.am:
8817         * testsuite/caps/erathostenes.c: (erathostenes), (main):
8818         * testsuite/caps/sets.c: (check_caps), (main):
8819         * testsuite/caps/subtract.c: (check_caps), (main):
8820           add tests for subtraction and equality code.
8821
8822 2004-04-20  David Schleef  <ds@schleef.org>
8823
8824         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
8825         * gst/indexers/Makefile.am:
8826         * gst/schedulers/Makefile.am:
8827         * libs/gst/bytestream/Makefile.am:
8828         * libs/gst/control/Makefile.am:
8829         * libs/gst/getbits/Makefile.am:
8830
8831 2004-04-20  David Schleef  <ds@schleef.org>
8832
8833         * common/as-libtool.mak: Fine-tune DLL building.
8834         * configure.ac: Link plugins against libgstreamer.  Define plugindir
8835         (like gst-plugins)
8836         * examples/plugins/Makefile.am: remove plugindir
8837         * gst/autoplug/Makefile.am: DLL building fixes
8838         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
8839         Windows.
8840         * gst/elements/gstelements.c: Conditionally disable pipefilter.
8841         * gst/indexers/Makefile.am: DLL building fixes
8842         * gst/schedulers/Makefile.am: DLL building fixes.
8843         * libs/gst/bytestream/Makefile.am: DLL building fixes.
8844         * libs/gst/control/Makefile.am: same
8845         * libs/gst/getbits/Makefile.am: same
8846         * testsuite/Makefile.am: New dlopen directory
8847         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
8848         when dlopened.
8849         * testsuite/dlopen/dlopen_gst.c: (main): same
8850         * testsuite/dlopen/loadgst.c: (do_test): same
8851
8852 2004-04-20  David Schleef  <ds@schleef.org>
8853
8854         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
8855         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
8856
8857 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8858
8859         * gst/gstelement.c: (gst_element_wait),
8860         (gst_element_set_time_delay), (gst_element_change_state):
8861           Use GST_TIME_*
8862
8863 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8864
8865         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
8866         (gst_spider_identity_plug):
8867           improve debugging messages
8868         * gst/gstbin.c: (gst_bin_remove_func):
8869           make sure the state_change function is only called with simple state
8870           transitions
8871
8872 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8873
8874         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
8875         (gst_fakesink_set_property), (gst_fakesink_chain):
8876         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
8877         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
8878         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
8879         * gst/elements/gstidentity.c: (gst_identity_chain),
8880         (gst_identity_set_property):
8881         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
8882         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
8883           add warnings to _set_property for unknown arguments
8884           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
8885
8886 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8887
8888         * Makefile.am:
8889         * docs/manuals.mak:
8890           add .po file download snippet
8891           fix a bug in the doc makefile
8892
8893 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8894
8895         * Makefile.am:
8896         * po/LINGUAS:
8897         * po/en_GB.po:
8898           Added en_GB translation (Gareth Owen)
8899
8900 2004-04-20  Johan Dahlin  <johan@gnome.org>
8901
8902         * gst/gstpad.c (_invent_event): Clean up
8903
8904 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8905
8906         * testsuite/caps/filtercaps.c: (main):
8907           fix test to test things correctly (caps are complicated)
8908
8909 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8910
8911         * testsuite/caps/Makefile.am:
8912         * testsuite/caps/filtercaps.c: (main):
8913           add test (that doesn't work right now, but should)
8914
8915 2004-04-19  David Schleef  <ds@schleef.org>
8916
8917         * configure.ac: Add test for allowing unaligned access.  Add define
8918         to put in gstconfig.h.
8919         * docs/gst/gstreamer-sections.txt: New symbols
8920         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
8921         * docs/gst/tmpl/gstfilesrc.sgml:
8922         * docs/gst/tmpl/gstparse.sgml:
8923         * docs/gst/tmpl/gsttypes.sgml:
8924         * docs/gst/tmpl/gstutils.sgml:
8925         * docs/gst/tmpl/gstvalue.sgml:
8926         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
8927         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
8928         on most !i386/!powerpc architectures.  From Daniel Gazard
8929         <daniel.gazard@free.fr>.  (bug #140156)
8930         * po/af.po: Check in changes made by gettext.
8931         * po/az.po:
8932         * po/fr.po:
8933         * po/nl.po:
8934         * po/sr.po:
8935         * po/sv.po:
8936
8937 2004-04-20  Benjamin Otte  <otte@gnome.org>
8938
8939         * gst/schedulers/entryscheduler.c: 
8940         (gst_entry_scheduler_yield):
8941           refuse to yield when decoupled elements insist on doing that.
8942           At least it's better than crashing
8943
8944 2004-04-19  David Schleef  <ds@schleef.org>
8945
8946         * docs/libs/Makefile.am: Change sinclude to include
8947         * docs/gst/Makefile.am: same
8948         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
8949
8950 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8951
8952         * po/LINGUAS:
8953         * po/uk.po:
8954           Added Ukrainian translation (Maxim V. Dziumanenko)
8955
8956 2004-04-19  Johan Dahlin  <johan@gnome.org>
8957
8958         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
8959         checking here, do it before calling the function.
8960         Clean up, use for loops instead of while loops while iterating
8961         over lists.
8962
8963         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
8964         in debug message.
8965         (gst_spider_create_and_plug): Improve debug message.
8966         General: Replace while loops which iterates over GLists with for
8967         loops. Which are much cleaner, improves readability, especially
8968         for gst_spider_identity_plug
8969
8970         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
8971         fixes bug 140477
8972
8973 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8974
8975         * po/LINGUAS:
8976         * po/tr.po:
8977           Added Turkish translation (Baris Cicek)
8978
8979 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8980
8981         * docs/faq/troubleshooting.xml:
8982           Mention gst-register in the FAQ (fixes 139045).
8983
8984 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8985
8986         * docs/gst/gstreamer-sections.txt:
8987
8988 2004-04-17  Benjamin Otte  <otte@gnome.org>
8989
8990         * gst/gstelement.c: (gst_element_dispose):
8991           simplify
8992         * gst/gstpad.c: (gst_pad_call_chain_function):
8993           don't create loads of events due to bad macro usage
8994
8995 2004-04-16  David Schleef  <ds@schleef.org>
8996
8997         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
8998         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
8999         * gst/gstvalue.c: (gst_value_serialize_buffer),
9000         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9001         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9002         to indicate types that are fixed wrt caps or not.  Switching to
9003         this function fixes (bug #140298).
9004         * gst/gstvalue.h:
9005
9006 2004-04-16  David Schleef  <ds@schleef.org>
9007
9008         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9009         for GST_UNALIGNED_ACESS, since we essentially know which archs
9010         are ok.
9011
9012 2004-04-17  Benjamin Otte  <otte@gnome.org>
9013
9014         * docs/gst/Makefile.am:
9015           ignore gst/parse directory when building docs (fixes #140205)
9016
9017 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9018
9019         * testsuite/refcounting/mem.c: (vmsize):
9020           do error checking
9021
9022 2004-04-16  Johan Dahlin  <johan@gnome.org>
9023
9024         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9025         and gst_pad_call_get_function.
9026
9027 2004-04-15  David Schleef  <ds@schleef.org>
9028
9029         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9030         checks if we can access unaligned memory.
9031         * configure.ac: Use it.
9032
9033 2004-04-16  Benjamin Otte  <otte@gnome.org>
9034
9035         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9036         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9037         * gst/elements/gstfilesrc.h:
9038           s/seek_happened/need_discont/ and require discont before sending any
9039           data
9040
9041 2004-04-15  David Schleef  <ds@schleef.org>
9042
9043         * gst/gstvalue.c: (gst_value_serialize_buffer),
9044         (gst_value_deserialize_buffer), (_gst_value_initialize):
9045         Register these types as fundamental types. (bug #140015)
9046
9047 2004-04-16  Benjamin Otte  <otte@gnome.org>
9048
9049         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9050         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9051         (gst_pad_pull):
9052           implement enforcing discont events before buffers are passed. This
9053           allows state changes of only some elements and later correctly going
9054           on where they left off (or in short: you can now set audio sinks to
9055           NULL to release the device when the pipeline is paused)
9056         * gst/gstpad.c: (gst_pad_call_chain_function),
9057         (gst_pad_call_get_function):
9058         * gst/gstpad.h:
9059           add gst_pad_call_chain_function and gst_pad_call_get_function for
9060           scheduler interaction. They are required because of the changes
9061           above.
9062         * gst/schedulers/entryscheduler.c: (get_buffer),
9063         (gst_entry_scheduler_chain_wrapper),
9064         (gst_entry_scheduler_get_wrapper),
9065         (gst_entry_scheduler_state_transition),
9066         (gst_entry_scheduler_pad_link):
9067         * gst/schedulers/gstbasicscheduler.c:
9068         (gst_basic_scheduler_chain_wrapper),
9069         (gst_basic_scheduler_src_wrapper),
9070         (gst_basic_scheduler_chainhandler_proxy),
9071         (gst_basic_scheduler_gethandler_proxy),
9072         (gst_basic_scheduler_cothreaded_chain),
9073         (gst_basic_scheduler_chain_elements):
9074         * gst/schedulers/gstoptimalscheduler.c:
9075         (get_group_schedule_function), (pad_clear_queued),
9076         (gst_opt_scheduler_pad_link):
9077           use the new functions instead of calling get/chain-functions
9078           directly.
9079
9080 2004-04-15  David Schleef  <ds@schleef.org>
9081
9082         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9083         * docs/gst/tmpl/gstinfo.sgml: same
9084         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9085         gtk-doc put here.
9086         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9087         * examples/queue/queue.c: (main):  We iterate pipelines, not
9088         bins.  (bug #139996)
9089
9090 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9091
9092         * docs/pwg/advanced-types.xml:
9093           Add MS RLE support. Also document Qt RLE although I have no sample
9094           files for that yet. And document an extra property for ADPCM.
9095
9096 2004-04-15  David Schleef  <ds@schleef.org>
9097
9098         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9099         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9100         Windows.
9101
9102 2004-04-15  David Schleef  <ds@schleef.org>
9103
9104         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9105         symbol names to not conflict with new gstinfo.h symbols.
9106         * gst/gstinfo.h: Add inline functions for all those crazy
9107         compilers that don't know how to handle variadic macros (MSVC).
9108
9109 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9110
9111         * configure.ac: bump nano to 1
9112
9113 === release 0.8.1 ===
9114
9115 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9116
9117         * NEWS:
9118         * RELEASE:
9119         * configure.ac:
9120           releasing 0.8.1, "Snow Brigade"
9121
9122 2004-04-14  David Schleef  <ds@schleef.org>
9123
9124         * testsuite/Makefile.am: define tests_ignore
9125         * testsuite/Rules: Added new tests_ignore, which get compiled,
9126         but not run (generally because they're inconsistent or have
9127         heisenbugs).  Now we can ensure all the .c files compile in
9128         testsuite/.
9129         * testsuite/bins/Makefile.am: define tests_ignore
9130         * testsuite/bytestream/Makefile.am:
9131         * testsuite/caps/Makefile.am:
9132         * testsuite/clock/Makefile.am:
9133         * testsuite/debug/Makefile.am:
9134         * testsuite/debug/global.c: (gst_debug_log_one),
9135         (gst_debug_log_two): Fix compilation problem.
9136         * testsuite/dynparams/Makefile.am:
9137         * testsuite/elements/Makefile.am:
9138         * testsuite/ghostpads/Makefile.am:
9139         * testsuite/indexers/Makefile.am:
9140         * testsuite/parse/Makefile.am:
9141         * testsuite/plugin/Makefile.am:
9142         * testsuite/refcounting/Makefile.am:
9143         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9144         results, because it's not calculated correctly.
9145         * testsuite/refcounting/pad.c: (main): same
9146         * testsuite/states/Makefile.am:
9147         * testsuite/tags/Makefile.am:
9148         * testsuite/threads/Makefile.am:
9149
9150 2004-04-14  David Schleef  <ds@schleef.org>
9151
9152         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9153         generating bad code around the cpu detection asm code.
9154
9155 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9156
9157         * tools/gst-inspect.c: (print_element_info):
9158           print numeric version of rank as well, since we added some - 1
9159           rank values to elements
9160
9161 2004-04-13  David Schleef  <ds@schleef.org>
9162
9163         * configure.ac:  Disable various code when compiling for MinGW.
9164         * gst/elements/Makefile.am:
9165         * gst/elements/gstelements.c:
9166         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9167         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9168         * gst/registries/gstxmlregistry.c: (make_dir):
9169
9170 2004-04-13  David Schleef  <ds@schleef.org>
9171
9172         * gst/Makefile.am:
9173         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9174         assembly.
9175         * gst/gstcpuid_i386.s: remove
9176
9177 2004-04-13  David Schleef  <ds@schleef.org>
9178
9179         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9180         seems to think it needs to be done.
9181         * docs/gst/tmpl/gstfakesink.sgml:
9182         * docs/gst/tmpl/gstfakesrc.sgml:
9183         * docs/gst/tmpl/gstfdsink.sgml:
9184         * docs/gst/tmpl/gstfdsrc.sgml:
9185         * docs/gst/tmpl/gstfilesink.sgml:
9186         * docs/gst/tmpl/gstfilesrc.sgml:
9187         * docs/gst/tmpl/gstidentity.sgml:
9188         * docs/gst/tmpl/gstmd5sink.sgml:
9189         * docs/gst/tmpl/gstmultifilesrc.sgml:
9190         * docs/gst/tmpl/gstpipefilter.sgml:
9191         * docs/gst/tmpl/gstshaper.sgml:
9192         * docs/gst/tmpl/gstspider.sgml:
9193         * docs/gst/tmpl/gstspideridentity.sgml:
9194         * docs/gst/tmpl/gststatistics.sgml:
9195         * docs/gst/tmpl/gsttee.sgml:
9196         * docs/gst/tmpl/gsttypefind.sgml:
9197         * docs/gst/tmpl/gstutils.sgml:
9198
9199 2004-04-13  David Schleef  <ds@schleef.org>
9200
9201         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9202         and to build DLLs on Windows.
9203         * gst/Makefile.am:
9204         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9205         (gst_filesrc_open_file):
9206         * gst/schedulers/Makefile.am:
9207
9208 2004-04-13  David Schleef  <ds@schleef.org>
9209
9210         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9211         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9212         fixating lists.
9213
9214 2004-04-12  David Schleef  <ds@schleef.org>
9215
9216         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9217         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9218         to using it.
9219         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9220         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9221         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9222         * gst/gststructure.c: (gst_structure_set_valist),
9223         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9224         support for buffers.
9225         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9226         intended to be const.
9227         * gst/gsttag.h: same
9228         * gst/gstvalue.c: (gst_value_serialize_buffer),
9229         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9230         to (de)serialize buffers.
9231         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9232         * testsuite/caps/string-conversions.c: (main):
9233         * testsuite/caps/value_serialize.c: add new test
9234
9235 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9236
9237         * docs/pwg/advanced-types.xml:
9238           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9239
9240 2004-04-11  Benjamin Otte  <otte@gnome.org>
9241
9242         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9243           rename categories to basic_*
9244         * gst/schedulers/gstbasicscheduler.c: 
9245         (gst_basic_scheduler_chain_wrapper),
9246         (gst_basic_scheduler_chainhandler_proxy),
9247         (gst_basic_scheduler_gethandler_proxy),
9248         (gst_basic_scheduler_eventhandler_proxy):
9249           debugging category fixes - put common stuff in log category
9250         * gst/schedulers/gstbasicscheduler.c: 
9251         (gst_basic_scheduler_chain_elements):
9252           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9253           active and linking two active chains
9254
9255 2004-04-10  Benjamin Otte  <otte@gnome.org>
9256
9257         * docs/pwg/intro-preface.xml:
9258           fix dead links and remove reference to Wiki
9259
9260 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9261
9262         * gst/schedulers/gstbasicscheduler.c:
9263           make sure we can switch back to the main function if we're still in
9264           the main function (supposed to fix #139617)
9265         * gst/schedulers/gthread-cothreads.h:
9266           don't throw an error when switching to the same cothread
9267
9268 2004-04-09  Benjamin Otte  <otte@gnome.org>
9269
9270         * gst/gstbin.c: (gst_bin_get_type):
9271         * gst/gstclock.c: (gst_clock_get_type):
9272         * gst/gstindex.c: (gst_index_get_type):
9273         * gst/gstobject.c: (gst_object_get_type),
9274         (gst_signal_object_get_type):
9275         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9276         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9277         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9278         * gst/gstqueue.c: (gst_queue_get_type):
9279         * gst/gstregistry.c: (gst_registry_get_type):
9280         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9281         * gst/gstthread.c: (gst_thread_get_type):
9282           don't use memchunks for these objects, use malloc instead
9283
9284 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9285
9286         * docs/gst/.cvsignore:
9287         * docs/gst/Makefile.am:
9288         * docs/gst/gstreamer-sections.txt:
9289         * docs/gst/tmpl/gstaggregator.sgml:
9290         * docs/gst/tmpl/gstbuffer.sgml:
9291         * docs/gst/tmpl/gstclock.sgml:
9292         * docs/gst/tmpl/gstelement.sgml:
9293         * docs/gst/tmpl/gstfakesink.sgml:
9294         * docs/gst/tmpl/gstfakesrc.sgml:
9295         * docs/gst/tmpl/gstfdsink.sgml:
9296         * docs/gst/tmpl/gstfdsrc.sgml:
9297         * docs/gst/tmpl/gstfilesink.sgml:
9298         * docs/gst/tmpl/gstfilesrc.sgml:
9299         * docs/gst/tmpl/gstidentity.sgml:
9300         * docs/gst/tmpl/gstindex.sgml:
9301         * docs/gst/tmpl/gstinfo.sgml:
9302         * docs/gst/tmpl/gstmd5sink.sgml:
9303         * docs/gst/tmpl/gstmultifilesrc.sgml:
9304         * docs/gst/tmpl/gstpad.sgml:
9305         * docs/gst/tmpl/gstpipefilter.sgml:
9306         * docs/gst/tmpl/gstpipeline.sgml:
9307         * docs/gst/tmpl/gstpluginfeature.sgml:
9308         * docs/gst/tmpl/gstqueue.sgml:
9309         * docs/gst/tmpl/gstregistry.sgml:
9310         * docs/gst/tmpl/gstscheduler.sgml:
9311         * docs/gst/tmpl/gstshaper.sgml:
9312         * docs/gst/tmpl/gstspider.sgml:
9313         * docs/gst/tmpl/gstspideridentity.sgml:
9314         * docs/gst/tmpl/gststatistics.sgml:
9315         * docs/gst/tmpl/gstsystemclock.sgml:
9316         * docs/gst/tmpl/gsttee.sgml:
9317         * docs/gst/tmpl/gstthread.sgml:
9318         * docs/gst/tmpl/gsttypefind.sgml:
9319         * docs/gst/tmpl/gstutils.sgml:
9320           further doc build fixes
9321
9322 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9323
9324         * docs/gst/Makefile.am:
9325           make docs exit on scanning problems
9326           fix nonsrcdir build issues
9327         * docs/gst/gstreamer-sections.txt:
9328           adding stuff from -unused
9329         * gst/gstqueue.h:
9330           create GstQueueSize
9331         * gst/schedulers/cothreads_compat.h:
9332           fix cothread warnings
9333
9334 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9335
9336         * docs/gst/gstreamer-sections.txt:
9337           remove defines deprecated by Benjamin
9338
9339 2004-04-07  Benjamin Otte  <otte@gnome.org>
9340
9341         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9342           when the buffer is complete, don't check if other buffers are needed
9343         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9344           check that the offset is >0 so we don't try to read before the
9345           beginning of the file
9346         * gst/gstpad.c: (gst_pad_set_pad_template):
9347           sink the template, so we don't end up with 130k pad templates
9348
9349 2004-04-06  Benjamin Otte  <otte@gnome.org>
9350
9351         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9352           don't ref the element, adding already reffed it. And we didn't unref
9353           it later anyway... (huge memleak when you used many spider elements)
9354         * gst/gstelement.c: (gst_element_base_class_finalize):
9355         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9356         (gst_element_register):
9357         * gst/gsturi.c: (gst_element_make_from_uri):
9358           use gst_object_(un)ref instead of g_object(un)ref
9359
9360 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9361
9362         * gst/gstbuffer.h:
9363           remove macro that wouldn't work anymore because struct member has
9364           been removed.
9365         * gst/schedulers/entryscheduler.c: (schedule_forward):
9366           fix segfault for unconnected pads
9367         
9368 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9369
9370         reviewed by David Schleef <ds@schleef.org>
9371
9372         * gst/gstinfo.h:
9373           *_FORMAT modifiers should require putting a % in front of them for
9374           consistency reasons.
9375
9376 2004-04-05  Colin Walters  <walters@redhat.com>
9377
9378         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9379         space.
9380
9381 2004-04-05  Benjamin Otte  <otte@gnome.org>
9382
9383         * configure.ac:
9384         * gst/Makefile.am:
9385         * gst/gst_private.h:
9386         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9387           add support for detecting if GStreamer runs inside valgrind.
9388           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9389           print a big message in valgrind that GStreamer has detected it's
9390           running inside and might now use different code.
9391         * gst/gstmemchunk.c: (populate), (free_area),
9392         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9393         (gst_mem_chunk_free):
9394           flag memchunks for valgrind, so it can detect leaking of chunks.
9395           This allows detecting leaks of GstBuffer and GstEvent correctly
9396           inside valgrind.
9397
9398 2004-04-05  David Schleef  <ds@schleef.org>
9399
9400         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9401           jensgr@gmx.net (Jens Granseuer)
9402
9403 2004-04-05  David Schleef  <ds@schleef.org>
9404
9405         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9406         (gst_buffer_default_free), (gst_buffer_default_copy),
9407         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9408         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9409         structures in one place.
9410
9411 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9412
9413         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9414           (GST_TIME_FORMAT, GST_TIME_ARGS)
9415
9416 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9417
9418         * testsuite/elements/Makefile.am:
9419           disable test until it stops breaking make distcheck
9420
9421 2004-04-05  Johan Dahlin  <johan@gnome.org>
9422
9423         * po/sv.po: Updated translation
9424
9425 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9426
9427         * gst/gstplugin.c: (gst_plugin_load_file):
9428           fix segfault for when original plugin was loaded statically
9429
9430 2004-04-05  Benjamin Otte  <otte@gnome.org>
9431
9432         * testsuite/debug/category.c: (main):
9433         * testsuite/debug/commandline.c: (main):
9434         * testsuite/debug/output.c: (main):
9435           fix tests to work again with debugging enabled
9436
9437 2004-04-05  Benjamin Otte  <otte@gnome.org>
9438
9439         * gst/schedulers/gstbasicscheduler.c:
9440         (gst_basic_scheduler_pad_link):
9441           fix to work with recent scheduling changes
9442
9443 2004-04-05  Benjamin Otte  <otte@gnome.org>
9444
9445         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9446         prepareChangeLog doesn't work when cvs indents):
9447           don't throw an error when no element can be scheduled, there's too
9448           many weird reasons why it doesn't work. Return STOPPED instead.
9449           decoupled elemts' schedulability doesn't depend on bufpens.
9450
9451 2004-04-04  Benjamin Otte  <otte@gnome.org>
9452
9453         * gst/schedulers/gstbasicscheduler.c:
9454         (gst_basic_scheduler_pad_select):
9455           fix uninitialized variable warnings
9456
9457 2004-04-04  Benjamin Otte  <otte@gnome.org>
9458
9459         * gst/gstpad.c: (gst_pad_collect_valist):
9460           fix uninitialized variable warning
9461         * gst/schedulers/entryscheduler.c: (schedule_forward):
9462           fix shadowed variable
9463
9464 2004-04-04  Benjamin Otte  <otte@gnome.org>
9465
9466         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9467         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9468         (gst_pad_select):
9469         * gst/gstpad.h:
9470         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9471         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9472         * gst/gstscheduler.h:
9473           implement gst_pad_collect as replacement for gst_pad_select.
9474           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9475           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9476           new pad_select, lock and unlock calls.
9477         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9478         * gst/cothreads.h:
9479         * gst/schedulers/cothreads_compat.h:
9480         * gst/schedulers/gthread-cothreads.h:
9481           remove unused cothread_lock and cothread_unlock calls
9482         * gst/schedulers/entryscheduler.c:
9483         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9484         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9485         (gst_entry_scheduler_pad_select):
9486           update to new API
9487         * gst/schedulers/gstbasicscheduler.c:
9488         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9489         (gst_basic_scheduler_pad_select):
9490           remove useless lock and unlock calls, update pad_select to new API
9491           (untested)
9492         * gst/schedulers/gstoptimalscheduler.c:
9493         (gst_opt_scheduler_class_init):
9494           remove useless select, lock and unlock function calls
9495         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9496           use gst_pad_collect instead of gst_pad_select
9497
9498 2004-04-04  Benjamin Otte  <otte@gnome.org>
9499
9500         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9501         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9502         (schedule_next_element), (print_entry):
9503           add can_schedule_pad to handle element states.
9504           add schedule_forward to select the correct entry to schedule next
9505
9506 2004-04-03  Benjamin Otte  <otte@gnome.org>
9507
9508         * gst/schedulers/entryscheduler.c: 
9509           remove unused variable, fix error inside Rb, fix compile warning in
9510           unreachable code
9511
9512 2004-04-03  Benjamin Otte  <otte@gnome.org>
9513
9514         * gst/schedulers/entryscheduler.c:
9515           completely revamp the inner workings, so it's a lot easier to
9516           understand and extend
9517
9518 2004-04-03  Andy Wingo  <wingo@pobox.com>
9519
9520         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9521         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9522         This allows better introspection of pipeline topology.
9523         (add_to_chain): Don't do trickery to put loop elements first;
9524         rather, queue a chain sort by marking the chain as dirty.
9525         (remove_from_chain): Mark the chain dirty.
9526         (sort_chain): New function. Sorts the group list so that terminal
9527         sinks are first. This means elements on the sink side will be
9528         preferentially sscheduled before elements on the src side of the
9529         pipeline.
9530         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9531         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9532         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9533         (group_inc_link): Change argument and variable names to match the
9534         new link structure member names (src and sink).
9535         (group_dec_link): Add some description
9536
9537 2004-04-03  Benjamin Otte  <otte@gnome.org>
9538
9539         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9540         * gst/gstinfo.h:
9541         * testsuite/debug/category.c: (main):
9542         * testsuite/debug/commandline.c: (main):
9543         * testsuite/debug/output.c: (main):
9544         * testsuite/debug/printf_extension.c: (main):
9545           fix to successfully build and test with --disable-gst-debug
9546           configure switch (fixes #138705)
9547
9548 2004-04-03  Benjamin Otte  <otte@gnome.org>
9549
9550         * docs/pwg/building-boiler.xml:
9551           add cvs login line and s/anonymous/anoncvs/
9552
9553 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
9554
9555         reviewed by Benjamin Otte  <otte@gnome.org>
9556
9557         * gst/gststructure.c: (gst_structure_free):
9558           memleak fix: free fields array (partial fix for #134839)
9559
9560 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9561
9562         * docs/random/ds/0.9-suggested-changes:
9563           Add a note to change handoff use in fakesrc to be usable in
9564           a more generic way (fakesrc should be renamed to appsrc or so).
9565         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9566           Change signal type to scope, so we can fill the buffer in the
9567           handoff handler (that's the whole use of this signal...).
9568
9569 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9570
9571         * docs/pwg/other-ntoone.xml:
9572           Document muxers and n-to-1 elements.
9573
9574 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
9575
9576         * gst/registries/gstxmlregistry.c
9577         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
9578         determine if a file is a G_MODULE. The old one discards paths
9579         containing "so" somewhere in the middle. My home directory is
9580         called "soto". Go figure...
9581
9582 2004-03-31  David Schleef  <ds@schleef.org>
9583
9584         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
9585         to eventually deprecate gst_buffer_merge().  (bug: #136408)
9586         * gst/gstbuffer.h:
9587
9588 2004-03-31  David Schleef  <ds@schleef.org>
9589
9590         * gst/gstvalue.c: (gst_value_union_int_int_range),
9591         (gst_value_union_int_range_int_range), (gst_value_can_union),
9592         (gst_value_union), (_gst_value_initialize):  Add some union
9593         implementations.  We didn't have any previously.
9594         * testsuite/caps/Makefile.am:
9595         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
9596         (gst_audioscale_getcaps), (test_caps), (main): A little test
9597         that is the same as the caps manipulation in audioscale.
9598
9599 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9600
9601         * docs/faq/general.xml:
9602           add entry about "does gst support format X?"
9603
9604 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9605
9606         * gst/gstthread.c:
9607           fix docs
9608         * gst/gstutils.h:
9609           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
9610
9611 2004-03-30  Benjamin Otte  <otte@gnome.org>
9612
9613         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9614           set the offset of the buffer to the requested offset
9615         * gst/elements/gsttypefind.c: (stop_typefinding):
9616           revert patch 1.18 (which I unfortunately don't know the reason for).
9617           This is needed to allow downstream elements to seek. Otherwise
9618           typefind might overwrite a previous seek by downstream elements.
9619           This lead to errors with id3tag and typefind on some mp3s.
9620         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9621         (gst_entry_scheduler_iterate):
9622           be more verbose when debugging
9623
9624 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9625
9626         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9627           make sure we don't get NULL strings
9628
9629 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9630
9631         * gst/gstcaps.c:
9632         * gst/gstelement.c:
9633         * gst/gstelementfactory.c: (gst_element_factory_get_type):
9634         * gst/gstindex.c: (gst_index_resolver_get_type),
9635         (gst_index_get_type), (gst_index_factory_get_type):
9636         * gst/gstinfo.c:
9637         * gst/gstpad.c:
9638         * gst/gstplugin.c:
9639         * gst/gsturi.c: (gst_uri_handler_get_type):
9640         * gst/gstvalue.c:
9641           first batch of documentation fixes
9642
9643 2004-03-29  David Schleef  <ds@schleef.org>
9644
9645         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
9646         * docs/gst/gstreamer-docs.sgml:  More hacking
9647         * docs/gst/gstreamer-sections.txt:
9648         * docs/gst/tmpl/cothreads_compat.sgml:
9649         * docs/gst/tmpl/gstcaps.sgml:
9650         * docs/gst/tmpl/gstclock.sgml:
9651         * docs/gst/tmpl/gstelement.sgml:
9652         * docs/gst/tmpl/gstevent.sgml:
9653         * docs/gst/tmpl/gstpad.sgml:
9654         * docs/gst/tmpl/gstutils.sgml:
9655         * docs/gst/tmpl/gstxml.sgml:
9656         * docs/gst/tmpl/gthread-cothreads.sgml:
9657         * docs/random/ds/0.9-suggested-changes:
9658         * gst/elements/gstfakesink.h: doc fixes
9659         * gst/elements/gstfakesrc.h: doc fixes
9660         * gst/gstcaps.c: doc fixes
9661         * gst/gstcaps.h: doc fixes
9662         * gst/gstelement.c: doc fixes
9663         * gst/gstelement.h: doc fixes
9664         * gst/gstindex.c: doc fixes
9665         * gst/gstinfo.c: doc fixes
9666         * gst/gstpad.c: doc fixes
9667         * gst/gstpad.h: doc fixes
9668         * gst/gstplugin.c: doc fixes
9669         * gst/gsttypefind.h: doc fixes
9670         * gst/gsturi.c: doc fixes
9671         * gst/gstvalue.c: doc fixes
9672
9673 2004-03-29  Colin Walters  <walters@redhat.com>
9674
9675         * gst/registries/gstxmlregistry.c (get_time)
9676         (plugin_times_older_than_recurse):
9677         Use the result of stat to determine whether a path is a file,
9678         so we don't attempt to opendir() files.
9679
9680 2004-03-29  Benjamin Otte  <otte@gnome.org>
9681
9682         * gst/gstpad.c: (gst_pad_set_explicit_caps):
9683           print caps in debugging output when setting caps failed
9684         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9685         (schedule_next_element), (get_buffer), (run_chainhandler),
9686         (element_may_start), (gst_entry_scheduler_chain_handler),
9687         (gst_entry_scheduler_get_handler),
9688         (gst_entry_scheduler_state_transition),
9689         (gst_entry_scheduler_pad_link):
9690           make this scheduler a testcase for mandatory
9691           discont-before-first-buffer which is needed if we want to allow apps
9692           to release the sound device.
9693           add SCHED_ASSERT macro to print scheduler state before an assertion
9694           triggers.
9695
9696 2004-03-29  Benjamin Otte  <otte@gnome.org>
9697
9698         * COPYING:
9699           replace by LGPL (former COPYING.LIB). The core is completely
9700           licensed LGPL.
9701         * COPYING.LIB:
9702           remove
9703
9704 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9705
9706         * po/af.po:
9707         * po/sv.po:
9708           updated Afrikaans and Swedish
9709
9710 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9711
9712         * po/LINGUAS:
9713         * po/az.po:
9714           adding Azerbaijani (Mətin Əmirov)
9715
9716 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
9717
9718         * gst/gstelement.h: 
9719         * gst/gstelement.c (gst_element_set_time_delay): New function for
9720         setting element time taking into account a hardware buffering
9721         delay.
9722         (gst_element_set_time): Now just an invocation of
9723         gst_element_set_time_delay.
9724         * gst/gstclock.h: 
9725         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
9726         allowing to set event times in the future.
9727         (gst_clock_get_event_time): Now just an invocation of
9728         gst_clock_get_event_time_delay.
9729
9730 2004-03-28  Benjamin Otte  <otte@gnome.org>
9731
9732         * gst/gstbin.c: (gst_bin_set_element_sched),
9733         (gst_bin_unset_element_sched):
9734           don't add decoupled elements to schedulers - otherwise it's
9735           impossible to control if a link to a decoupled element was already
9736           removed from a scheduler or not.
9737         * gst/schedulers/cothreads_compat.h:
9738         * gst/schedulers/gthread-cothreads.h:
9739           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
9740           is no "unused" warning.
9741         * gst/schedulers/Makefile.am:
9742         * gst/schedulers/entryscheduler.c:
9743           add new scheduler, based on ideas from talking to David and Martin.
9744           It's supposed to be small and correct. Currently it's also slow (but
9745           it's not noticable)
9746         * examples/retag/retag.c: (main):
9747         * testsuite/bytestream/test1.c: (main):
9748           fix missing NULLs at end of variadic functions
9749         * testsuite/elements/.cvsignore:
9750           update
9751
9752 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
9753
9754         * gst/gstevent.h:
9755         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
9756
9757 2004-03-25  David Schleef  <ds@schleef.org>
9758
9759         * docs/gst/gstreamer-sections.txt:  More doc hacking.
9760         * docs/gst/tmpl/gstaggregator.sgml:
9761         * docs/gst/tmpl/gstautoplugfactory.sgml:
9762         * docs/gst/tmpl/gstbin.sgml:
9763         * docs/gst/tmpl/gstbuffer.sgml:
9764         * docs/gst/tmpl/gstbufferstore.sgml:
9765         * docs/gst/tmpl/gstfakesink.sgml:
9766         * docs/gst/tmpl/gstfakesrc.sgml:
9767         * docs/gst/tmpl/gstmd5sink.sgml:
9768         * docs/gst/tmpl/gstreamer-unused.sgml:
9769         * docs/gst/tmpl/gstsearchfuncs.sgml:
9770         * docs/gst/tmpl/gstshaper.sgml:
9771         * docs/gst/tmpl/gstspider.sgml:
9772         * docs/gst/tmpl/gsttee.sgml:
9773         * docs/gst/tmpl/gstutils.sgml:
9774         * docs/gst/tmpl/gstvalue.sgml:
9775         * docs/gst/tmpl/gstxml.sgml:
9776         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
9777         and we don't support it.
9778         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
9779         (gst_use_threads), (gst_has_threads): same
9780         * gst/gstthreaddummy.c: same
9781         * gst/autoplug/gstspider.c: Make gst_spider_details static.
9782         * gst/autoplug/gstspider.h: same
9783         * gst/elements/gstaggregator.h: Remove bogus function from header
9784         * gst/elements/gstfakesink.h: same
9785         * gst/elements/gstfakesrc.h: same
9786         * gst/elements/gstmd5sink.h: same
9787         * gst/elements/gstshaper.h: same
9788         * gst/elements/gsttee.h: same
9789         * gst/gstbin.c: doc fixes
9790         * gst/gstbin.h: Remove unused definition.
9791         * gst/gstbuffer.c: doc fixes
9792         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
9793         * gst/gstfilter.c: doc fixes
9794         * gst/gsttag.c: doc fixes
9795         * gst/gstvalue.c: doc fixes
9796
9797 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9798
9799         * docs/pwg/advanced-types.xml:
9800           Document typefinding.
9801         * docs/pwg/other-oneton.xml:
9802           Document one-to-n elements, demuxers and parsers.
9803
9804 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
9805
9806         reviewed by: David Schleef  <ds@schleef.org>
9807
9808         * configure.ac: Check bison version (bug #127838)
9809
9810 2004-03-25  David Schleef  <ds@schleef.org>
9811
9812         * docs/gst/gstreamer-docs.sgml: More fine tuning.
9813         * docs/gst/gstreamer-sections.txt:
9814         * docs/gst/tmpl/gstautoplug.sgml:
9815         * docs/gst/tmpl/gststaticautoplug.sgml:
9816         * docs/gst/tmpl/gststaticautoplugrender.sgml:
9817         * docs/gst/tmpl/gstutils.sgml:
9818         * docs/gst/tmpl/gstxml.sgml:
9819
9820 2004-03-24  David Schleef  <ds@schleef.org>
9821
9822         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
9823         manual being such complete crap, that I decided to do major
9824         hacking of it.  This checkin replaces any fine tuning that
9825         may have been done previously, with the benefit of actually
9826         being complete for much of the API that was changed since
9827         0.6.  Further fine tuning will occur shortly.  (bug #134721)
9828         * docs/gst/gstreamer-sections.txt:
9829         * docs/gst/tmpl/GstBin.sgml:
9830         * docs/gst/tmpl/GstBuffer.sgml:
9831         * docs/gst/tmpl/GstCaps.sgml:
9832         * docs/gst/tmpl/GstClock.sgml:
9833         * docs/gst/tmpl/GstCompat.sgml:
9834         * docs/gst/tmpl/GstData.sgml:
9835         * docs/gst/tmpl/GstElement.sgml:
9836         * docs/gst/tmpl/GstEvent.sgml:
9837         * docs/gst/tmpl/GstIndex.sgml:
9838         * docs/gst/tmpl/GstStructure.sgml:
9839         * docs/gst/tmpl/GstTag.sgml:
9840         * docs/gst/tmpl/cothreads.sgml:
9841         * docs/gst/tmpl/cothreads_compat.sgml:
9842         * docs/gst/tmpl/gettext.sgml:
9843         * docs/gst/tmpl/grammar.tab.sgml:
9844         * docs/gst/tmpl/gst-i18n-app.sgml:
9845         * docs/gst/tmpl/gst-i18n-lib.sgml:
9846         * docs/gst/tmpl/gst.sgml:
9847         * docs/gst/tmpl/gst_private.sgml:
9848         * docs/gst/tmpl/gstaggregator.sgml:
9849         * docs/gst/tmpl/gstarch.sgml:
9850         * docs/gst/tmpl/gstatomic.sgml:
9851         * docs/gst/tmpl/gstatomic_impl.sgml:
9852         * docs/gst/tmpl/gstbin.sgml:
9853         * docs/gst/tmpl/gstbuffer.sgml:
9854         * docs/gst/tmpl/gstbufferstore.sgml:
9855         * docs/gst/tmpl/gstcaps.sgml:
9856         * docs/gst/tmpl/gstclock.sgml:
9857         * docs/gst/tmpl/gstcompat.sgml:
9858         * docs/gst/tmpl/gstconfig.sgml:
9859         * docs/gst/tmpl/gstcpu.sgml:
9860         * docs/gst/tmpl/gstdata.sgml:
9861         * docs/gst/tmpl/gstdata_private.sgml:
9862         * docs/gst/tmpl/gstelement.sgml:
9863         * docs/gst/tmpl/gstenumtypes.sgml:
9864         * docs/gst/tmpl/gsterror.sgml:
9865         * docs/gst/tmpl/gstevent.sgml:
9866         * docs/gst/tmpl/gstfakesink.sgml:
9867         * docs/gst/tmpl/gstfakesrc.sgml:
9868         * docs/gst/tmpl/gstfilesink.sgml:
9869         * docs/gst/tmpl/gstfilter.sgml:
9870         * docs/gst/tmpl/gstindex.sgml:
9871         * docs/gst/tmpl/gstinfo.sgml:
9872         * docs/gst/tmpl/gstinterface.sgml:
9873         * docs/gst/tmpl/gstlog.sgml:
9874         * docs/gst/tmpl/gstmacros.sgml:
9875         * docs/gst/tmpl/gstmarshal.sgml:
9876         * docs/gst/tmpl/gstmd5sink.sgml:
9877         * docs/gst/tmpl/gstmultifilesrc.sgml:
9878         * docs/gst/tmpl/gstobject.sgml:
9879         * docs/gst/tmpl/gstpad.sgml:
9880         * docs/gst/tmpl/gstparse.sgml:
9881         * docs/gst/tmpl/gstpipeline.sgml:
9882         * docs/gst/tmpl/gstplugin.sgml:
9883         * docs/gst/tmpl/gstpluginfeature.sgml:
9884         * docs/gst/tmpl/gstqueue.sgml:
9885         * docs/gst/tmpl/gstreamer-unused.sgml:
9886         * docs/gst/tmpl/gstregistry.sgml:
9887         * docs/gst/tmpl/gstregistrypool.sgml:
9888         * docs/gst/tmpl/gstscheduler.sgml:
9889         * docs/gst/tmpl/gstsearchfuncs.sgml:
9890         * docs/gst/tmpl/gstshaper.sgml:
9891         * docs/gst/tmpl/gstspider.sgml:
9892         * docs/gst/tmpl/gstspideridentity.sgml:
9893         * docs/gst/tmpl/gststructure.sgml:
9894         * docs/gst/tmpl/gstsystemclock.sgml:
9895         * docs/gst/tmpl/gsttag.sgml:
9896         * docs/gst/tmpl/gsttaginterface.sgml:
9897         * docs/gst/tmpl/gsttee.sgml:
9898         * docs/gst/tmpl/gstthread.sgml:
9899         * docs/gst/tmpl/gsttrace.sgml:
9900         * docs/gst/tmpl/gsttrashstack.sgml:
9901         * docs/gst/tmpl/gsttypefind.sgml:
9902         * docs/gst/tmpl/gsttypes.sgml:
9903         * docs/gst/tmpl/gsturi.sgml:
9904         * docs/gst/tmpl/gsturitype.sgml:
9905         * docs/gst/tmpl/gstutils.sgml:
9906         * docs/gst/tmpl/gstvalue.sgml:
9907         * docs/gst/tmpl/gstversion.sgml:
9908         * docs/gst/tmpl/gstxml.sgml:
9909         * docs/gst/tmpl/gstxmlregistry.sgml:
9910         * docs/gst/tmpl/gthread-cothreads.sgml:
9911         * docs/gst/tmpl/types.sgml:
9912
9913 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9914
9915         * docs/pwg/other-sink.xml:
9916         * docs/pwg/other-source.xml:
9917           Documentation on how to write source and sink elements. Other
9918           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
9919           manager, autoplugger) are all still pending.
9920
9921 2004-03-25  Benjamin Otte  <otte@gnome.org>
9922
9923         * testsuite/elements/Makefile.am:
9924         * testsuite/elements/gst-compprep-check:
9925           add check to make sure gst-compprep works
9926         * testsuite/elements/gst-inspect-check.in:
9927           improve initialization output
9928         * testsuite/Makefile.am:
9929         * testsuite/gst-inspect-check:
9930           remove old file
9931
9932 2004-03-24  David Schleef  <ds@schleef.org>
9933
9934         * testsuite/elements/Makefile.am:
9935         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
9936         to the testsuite.
9937
9938 2004-03-24  Benjamin Otte  <otte@gnome.org>
9939
9940         * libs/gst/control/dparam.c: (gst_dparam_attach),
9941         (gst_dparam_detach):
9942         * libs/gst/control/dparammanager.c: (gst_dpman_init):
9943           fix lvalue casts for real
9944
9945 2004-03-24  Benjamin Otte  <otte@gnome.org>
9946
9947         * gst/schedulers/gstbasicscheduler.c:
9948         (gst_basic_scheduler_src_wrapper):
9949         * gst/schedulers/gstoptimalscheduler.c:
9950         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
9951         (pad_clear_queued), (gst_opt_scheduler_add_element),
9952         (gst_opt_scheduler_remove_element):
9953           fix GStreamer to not have issues with lvalue casts anymore (fixes
9954           #136841)
9955
9956 2004-03-24  Benjamin Otte  <otte@gnome.org>
9957
9958         * gst/gstelement.c:
9959           add documentation about a gobject quirk where the object hasn't the
9960           correct class pointer set on initialization
9961         * gst/schedulers/gstbasicscheduler.c:
9962         (gst_basic_scheduler_src_wrapper):
9963           make sure to not run into an infinite loop
9964
9965 2004-03-22  Benjamin Otte  <otte@gnome.org>
9966
9967         * gst/gstutils.c: (gst_util_dump_mem):
9968         * gst/gstutils.h:
9969           first argument of gst_util_dump_mem should be const
9970
9971 2004-03-22  Johan Dahlin  <johan@gnome.org>
9972
9973         * gst/gstvalue.h: Clean up a little bit.
9974
9975 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
9976
9977         reviewed by Benjamin Otte  <otte@gnome.org>
9978
9979         * gst/autoplug/gstspider.c: (gst_spider_dispose):
9980         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
9981         (gst_aggregator_class_init), (gst_aggregator_init):
9982         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9983         (gst_filesrc_dispose), (gst_filesrc_set_location):
9984         * gst/elements/gstidentity.c: (gst_identity_finalize),
9985         (gst_identity_class_init), (gst_identity_chain):
9986         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9987         * gst/elements/gststatistics.c: (gst_statistics_finalize),
9988         (gst_statistics_class_init):
9989         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
9990         (gst_tee_get_property):
9991           clean up used memory in this elements correctly on teardown (closes
9992           #137279)
9993
9994 2004-03-20  Colin Walters  <walters@redhat.com>
9995
9996         * gst/registries/gstxmlregistry.c:
9997         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
9998         registry saving atomic.
9999
10000 2004-03-20  Colin Walters  <walters@redhat.com>
10001
10002         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10003         Just use
10004         access() instead of actually creating and deleting files.
10005
10006 2004-03-18  David Schleef  <ds@schleef.org>
10007
10008         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10009         (bug #137625)
10010
10011 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10012
10013         * po/sv.po: updated translation (Christian Rose)
10014
10015 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10016
10017         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10018         (gst_filesink_get_query_types), (_do_init),
10019         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10020           return FALSE silently
10021         * po/af.po: updated translation (Petri Jooste)
10022
10023 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10024
10025         * Makefile.am:
10026         * configure.ac:
10027           dist common properly
10028         * po/af.po:
10029         * po/fr.po:
10030         * po/nl.po:
10031         * po/sr.po:
10032         * po/sv.po:
10033           refreshing translations
10034
10035 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10036
10037         * po/LINGUAS:
10038         * po/sv.po:
10039         * po/af.po:
10040           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10041
10042 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10043
10044         * Makefile.am: use common/release.mak
10045
10046 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10047
10048         * docs/faq/gst-uninstalled:
10049           adding gst-monkeysaudio to the list of possible plugin dirs
10050
10051 2004-03-16  David Schleef  <ds@schleef.org>
10052
10053         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10054         (gst_init_check_with_popt_table):  Fix some gettext strings to
10055         make them easier to translate.  Required making the strings
10056         non-const.
10057
10058 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10059
10060         * configure.ac: bump nano to 1
10061
10062 === release 0.8.0 ===
10063
10064 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10065
10066         * configure.ac: release 0.8.0, "Executive Slacks"
10067
10068 2004-03-16  Johan Dahlin  <johan@gnome.org>
10069
10070         * gst/schedulers/gstoptimalscheduler.c
10071         (gst_opt_scheduler_pad_unlink): Remove double ;,
10072         spotted by Scott Wheeler
10073
10074 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10075
10076         * configure.ac: bump libtool version
10077
10078 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10079
10080         * gst/gstcaps.h:
10081         * gst/gststructure.h:
10082           add reserved padding
10083
10084 2004-03-15  Benjamin Otte  <otte@gnome.org>
10085
10086         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10087           set the first parameter for select call correctly.
10088           (fixes #137230)
10089
10090 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10091
10092         * *.c,*.h: don't mix tabs and spaces
10093
10094 2004-03-15  Johan Dahlin  <johan@gnome.org>
10095
10096         * gst/schedulers/gstoptimalscheduler.c
10097         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10098         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10099
10100         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10101         
10102 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10103
10104         * testsuite/Rules:
10105           fix gst-register rules
10106
10107 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10108
10109         * testsuite/Rules:
10110           use versioned gst-register
10111
10112 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10113
10114         * docs/libs/gstreamer-libs-sections.txt:
10115           remove </SUBSECTION>
10116         * gst/gstplugin.c:
10117         * gst/gstregistry.c: (gst_registry_add_plugin):
10118         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10119         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10120           add debugging and fix some comment blocks
10121
10122 2004-03-15  Johan Dahlin  <johan@gnome.org>
10123
10124         * *.h: Revert indent changes.
10125         
10126 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10127
10128         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10129           g_error_free the g_error
10130         * tools/gst-feedback-m.m:
10131           check for other versions of gstreamer
10132         * tools/gst-indent:
10133           use sh, not bash
10134
10135 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10136
10137         * tools/gst-register.c: do not spill paths when registries are not
10138           writable, until we fix the "user running gst-register" case.
10139
10140 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10141
10142         * *.c, *.h: commit of gst-indent run on core
10143
10144 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10145
10146         * tools/gst-indent:
10147         * tools/Makefile.am:
10148           add our indentation style as a script
10149
10150 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10151
10152         * po/sr.po:
10153         * po/LINGUAS:
10154           added Serbian translation
10155
10156 2004-03-13  Benjamin Otte  <otte@gnome.org>
10157
10158         * gst/gstelement.c:
10159           add documentation note about gst_element_found_tags_for_pad not
10160           being usable in getfunctions. (see #137042)
10161
10162 2004-03-12  David Schleef  <ds@schleef.org>
10163
10164         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10165         change API right now!  Readd gst_caps_is_simple() macro.
10166         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10167         uninitialized variable.  I'd bet this caused crashes.
10168         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10169
10170 2004-03-12  Johan Dahlin  <johan@gnome.org>
10171
10172         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10173         * gst/gstcaps.h: Clean up
10174
10175         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10176         _gst_caps_initalize()
10177
10178         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10179         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10180
10181         * gst/gststructure.c (gst_structure_get_type): Ditto
10182
10183         * gst/gststructure.h: Ditto
10184         
10185 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10186
10187         * gst/gstqueue.c: (gst_queue_init):
10188           Reset default max. values in queues. Reason is simply to avoid
10189           braindead use. If you want wider values, use the properties. The
10190           default is supposed to always work. Wider values would make this
10191           beast a memory hog by default (250 full-PAL RGB32 video frames?
10192           That's 440 MB! No thank you).
10193
10194 2004-03-10  David Schleef  <ds@schleef.org>
10195
10196         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10197         were found.  (bug #136793)
10198
10199 2004-03-10  Johan Dahlin  <johan@gnome.org>
10200
10201         * gst/schedulers/gstoptimalscheduler.c
10202         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10203         links to elements within the same group, so we can finally remove
10204         that annoying warning. Refactor the code a little bit
10205         (group_dec_links_for_element): Split out
10206
10207 2004-03-09  David Schleef  <ds@schleef.org>
10208
10209         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10210         (bug #134863)
10211
10212 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10213
10214         * configure.ac: first bug fix due to major/minor bump
10215
10216 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10217
10218         * configure.ac: bump nano to 1
10219
10220 === release 0.7.6 ===
10221
10222 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10223
10224         * NEWS:
10225         * RELEASE:
10226         * configure.ac:
10227           releasing 0.7.6, "Almost"
10228         * po/fr.po:
10229         * po/nl.po:
10230         * tools/Makefile.am:
10231         * tools/gst-feedback-m.m:
10232           unversioned source
10233
10234 2004-03-09  Johan Dahlin  <johan@gnome.org>
10235
10236         Reviewed by: Thomas Vander Stichele
10237
10238         * gst/gstelement.c (gst_element_class_init): register second
10239         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10240         language bindings can (de)marshall correctly.
10241
10242         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10243
10244         * gst/gsterror.c (gst_g_error_get_type): New function
10245
10246         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10247         with VOID:OBJECT,OBJECT,STRING 
10248
10249 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10250
10251         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10252         Free a leaked g_timer on early returns.
10253
10254 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10255
10256         * docs/pwg/advanced-types.xml:
10257           Add cinepak description.
10258
10259 2004-03-07  David Schleef  <ds@schleef.org>
10260
10261         * docs/random/mimetypes:  Added cinepak description
10262
10263 2004-03-07  Andy Wingo  <wingo@pobox.com>
10264
10265         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10266
10267         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10268         there are no links to other groups when a group is destroyed.
10269         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10270         removed from a group, make sure the link count to elements linked
10271         to other pads is appropriately decremented. This really fixes
10272         #135672.
10273
10274         The 1.60->1.61 patch has been reapplied in light of this fix.
10275
10276         * gst/gstelement.c (gst_element_dispose): Really protect against
10277         multiple invocations this time.
10278
10279 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10280
10281         * docs/gst/gstreamer-sections.txt:
10282         * docs/gst/tmpl/gsttag.sgml:
10283           remove some deprecated functions, document some existing ones
10284         * gst/gsttag.c: (gst_tag_get_flag):
10285         * gst/gsttag.h:
10286           add accessor function
10287
10288 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10289
10290         * docs/gst/gstreamer-sections.txt:
10291         * docs/gst/tmpl/gsttag.sgml:
10292         * docs/gst/tmpl/gstxml.sgml:
10293         * gst/gsttag.c: (gst_tag_get_flag):
10294         * gst/gsttag.h:
10295
10296 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10297
10298         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10299         leak
10300
10301 2004-03-05  David Schleef  <ds@schleef.org>
10302
10303         * REQUIREMENTS: Add bison and flex.
10304         * configure.ac: Fix comment about bison.
10305         * docs/random/ds/0.9-suggested-changes: yer ma
10306         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10307
10308 2004-03-05  Benjamin Otte  <otte@gnome.org>
10309
10310         * gst/gstelement.c: (gst_element_error_full):
10311           revert recent recursive state changing commit - messing with other
10312           elements' states is evil and should be done by apps only.
10313
10314 2004-03-05  Benjamin Otte  <otte@gnome.org>
10315
10316         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10317           check for empty intersection instead of NULL caps
10318         (gst_element_get_compatible_pad_filtered):
10319           remove old workaround that is only a bug nowadays
10320
10321 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10322
10323         * gst/gstelement.c: (gst_element_error_full):
10324           make elements try to recursively change state to PAUSED on all
10325           parents after an error to suppress ensuing warnings
10326         * gst/parse/grammar.y:
10327           make it check if it was able to sync the state, and throw an error
10328           if not, so stuff like
10329           oggdemux ! vorbisdec ! osssink gets caught
10330
10331 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10332
10333         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10334           it contains lib64; use AS_AC_EXPAND to handle it properly
10335
10336 2004-03-05  David Schleef  <ds@schleef.org>
10337
10338         * gst/gstcpuid_i386.s:  Remove unused code
10339         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10340         (gst_getbits_newbuf): Remove MMX code
10341         * libs/gst/getbits/getbits.h: Remove MMX code
10342
10343 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10344
10345         * debian/.cvsignore:
10346         * debian/README.Debian:
10347         * debian/changelog:
10348         * debian/control:
10349         * debian/control.in:
10350         * debian/copyright:
10351         * debian/gstreamer-core-libs-dev.files:
10352         * debian/gstreamer-core-libs.files:
10353         * debian/gstreamer-core.files:
10354         * debian/gstreamer-core.postinst:
10355         * debian/gstreamer-core.postrm:
10356         * debian/gstreamer-doc.files:
10357         * debian/gstreamer-doc.links:
10358         * debian/gstreamer-doc.lintian:
10359         * debian/gstreamer-runtime.files:
10360         * debian/gstreamer-runtime.manpages:
10361         * debian/gstreamer-runtime.postinst:
10362         * debian/gstreamer-runtime.postrm:
10363         * debian/gstreamer-tools.files:
10364         * debian/gstreamer-tools.manpages:
10365         * debian/libgstreamer-dev.files:
10366         * debian/libgstreamer0.4.1.files:
10367         * debian/libgstreamerVERSION.files:
10368         * debian/rules:
10369         Debian package info not maintained here.
10370
10371 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10372
10373         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10374         * gst/gstbin.c: (gst_bin_class_init):
10375         * gst/gstelement.c: (gst_element_class_init):
10376         * gst/gstindex.c: (gst_index_class_init):
10377         * gst/gstobject.c: (gst_object_class_init),
10378         (gst_signal_object_class_init):
10379         * gst/gstpad.c: (gst_pad_template_class_init):
10380         * gst/gstregistry.c: (gst_registry_class_init):
10381         * gst/gsturi.c: (gst_uri_handler_base_init):
10382         * gst/gstxml.c: (gst_xml_class_init):
10383         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10384         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10385           make all signal names use dashes instead of underscore
10386
10387 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10388
10389         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10390
10391 2004-03-03  Benjamin Otte  <otte@gnome.org>
10392
10393         * gst/schedulers/gstoptimalscheduler.c:
10394           revert last commit by Andy Wingo. It causes segfaults on unreffing
10395           in Rhythmbox. (see bug #135672)
10396
10397 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10398
10399         * po/fr.po: fix typo
10400
10401 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10402
10403         * tools/gst-inspect.c: (main): 
10404         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10405
10406 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10407
10408         * configure.ac:
10409           get GLIB_ONLY and POPT flags for the nonversioned binaries
10410         * tools/Makefile.am:
10411           use them
10412
10413 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10414
10415         * gst/gst.c: (init_post):
10416           change so that GST_REGISTRY now is where the global registry gets
10417           saved, since that is where plugins now get attached to first, and
10418           spilled over to the user registry.  Note that in the case of using
10419           GST_REGISTRY env var, we don't want to affect any real registries
10420           beyond the one given by this var, and thus we don't set a user
10421           registry to spill to.  So make sure GST_REGISTRY is writable.
10422
10423 2004-03-01  David Schleef  <ds@schleef.org>
10424
10425         * AUTHORS:  Added some names.  Add yourself if you're missing.
10426
10427 2004-03-01  David Schleef  <ds@schleef.org>
10428
10429         * MAINTAINERS: Add
10430
10431 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10432
10433         * configure.ac:
10434           remove whitespace
10435         * docs/gst/tmpl/gstbuffer.sgml:
10436         * docs/gst/tmpl/gstdata.sgml:
10437         * docs/gst/tmpl/gstreamer-unused.sgml:
10438         * docs/gst/tmpl/gstxml.sgml:
10439           doc update
10440         * docs/manuals.mak:
10441           add a FIXME
10442         * docs/pwg/intro-preface.xml:
10443         * docs/pwg/pwg.xml:
10444           remove GNOME
10445         * gst/gst.c: (init_post):
10446           try GST_PLUGIN_PATH paths for the _global_registry first
10447         * gst/gstelement.h:
10448           add the error message as well, otherwise (null) debug info doesn't
10449           make much sense
10450         * tools/gst-register.c: (main):
10451           spill paths to next registry if this registry is not writable
10452         * po/fr.po:
10453         * po/nl.po:
10454           translation updates
10455
10456 2004-03-01  Johan Dahlin  <johan@gnome.org>
10457
10458         * gst/gstbuffer.c (_gst_buffer_initialize): 
10459         * gst/gstdata.c (gst_data_get_type): 
10460         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10461         instead of ref, since some applications that uses GBoxed
10462         routines depends on a function that actually returns a copy.
10463
10464 2004-02-27  Benjamin Otte  <otte@gnome.org>
10465
10466         * gst/gstbuffer.h:
10467           remove gst_buffer_free, use gst_data_unref
10468         * gst/gstdata.c: (gst_data_get_type):
10469           use refcounting in GstData GBoxed registration
10470         * gst/gstdata.h:
10471           remove gst_data_free, use gst_data_unref
10472
10473 2004-02-27  Johan Dahlin  <johan@gnome.org>
10474
10475         * gst/gstdata.c (gst_data_get_type): New function, register
10476         GstData as a GBoxed type.
10477
10478         * gst/gstdata.h (GST_TYPE_DATA): New macro
10479
10480 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10481
10482         * Makefile.am:
10483         * gstreamer.spec.in:
10484           put back RELEASE
10485         * gst/Makefile.am:
10486           clean up non-disting of built files
10487         * testsuite/debug/commandline.c:
10488           test fix for option rename
10489
10490 2004-02-26  David Schleef  <ds@schleef.org>
10491
10492         * configure.ac:  We don't really need glib-2.3.  Also remove
10493         some unneeded checks for library functions.
10494         * gst/Makefile.am:  Instead, we need to not dist files created
10495         by glib-genmarshal.
10496
10497 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10498
10499         * configure.ac:
10500           bump glib required version to 2.3.0 for g_value_takes_boxed
10501
10502  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10503
10504         * common/m4/gst-docs.m4
10505         change flavour text from enable to disable as enable is our default
10506         closes bug Bug 135304
10507
10508 === release 0.7.5 ===
10509  
10510  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10511  
10512         * NEWS:
10513           instate NEWS file
10514         * Makefile.am:
10515         * gstreamer.spec.in:
10516         * RELEASE:
10517           put back release
10518         * configure.ac:
10519         * docs/random/release:
10520           more updates
10521
10522 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10523
10524         * gst/gsttag.c: (_gst_tag_initialize):
10525         * po/fr.po:
10526         * po/nl.po:
10527           remove hyphen from codec tags
10528
10529 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10530
10531         * gst/parse/Makefile.am:
10532           fix dependency so that a make from a clean build works the first
10533           time
10534
10535 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10536
10537         * docs/random/release:
10538           update release strategy
10539         * po/fr.po:
10540           auto-update po file
10541         * po/nl.po:
10542           update dutch translation
10543
10544 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10545
10546         * docs/manual/debugging.xml:
10547         fix manual for new debugging system
10548
10549 2004-02-25  Andy Wingo  <wingo@pobox.com>
10550
10551         * gst/gstpad.c (gst_pad_link_prepare): Re-add
10552         gst_pad_link_prepare. Please email the list with specific reasons
10553         for reverting.
10554
10555 2004-02-24  Andy Wingo  <wingo@pobox.com>
10556
10557         * gst/gstelement.c (gst_element_dispose): Protect against multiple
10558         invocations.
10559
10560         * gst/schedulers/gstoptimalscheduler.c:
10561         I added a mess of prototypes at the top of the file by way of
10562         documentation. Some of the operations on chains and groups were
10563         re-organized.
10564
10565         (create_group): Added a type argument so if the group is enabled,
10566         the setup_group_scheduler knows what to do.
10567         (group_elements): Added a type argument here, too, to be passed on
10568         to create_group.
10569         (group_element_set_enabled): If an unlinked PLAYING element is
10570         added to a bin, we have to create a new group to hold the element,
10571         and this function will be called before the group is added to the
10572         chain. Thus we have a valid case for group->chain==NULL. Instead
10573         of calling chain_group_set_enabled, just set the flag on the group
10574         (the chain's status will be set when the group is added to it).
10575         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
10576         Setup the group scheduler when the group is enabled, not
10577         specifically when an element goes PAUSED->PLAYING. This means
10578         PLAYING elements can be added, linked, and scheduled into a
10579         PLAYING pipeline, as was intended.
10580         (add_to_group): Don't ref the group twice. I don't know when this
10581         double-ref got in here. Removing it has the potential to cause
10582         segfaults if other parts of the scheduler are buggy. If you find
10583         that the scheduler is segfaulting for you, put in an extra ref
10584         here and see if that hacks over the underlying issue. Of course,
10585         then find out what code is unreffing a group it doesn't own...
10586         (create_group): Make the extra refcount floating, and remove it
10587         after adding the element. This means that...
10588         (unref_group): Destroy when the refcount reaches 0, not 1, like
10589         every other refcounted object in the known universe.
10590         (remove_from_group): When a group becomes empty, set it to be not
10591         active, and remove it from its chain. Don't unref it again,
10592         there's no floating reference any more.
10593         (destroy_group): We have to remove the group from the chain in
10594         remove_from_group (rather than here) to break refcounting cycles
10595         (the chain always has a ref on the group). So assert that
10596         group->chain==NULL.
10597         (ref_group_by_count): Removed, it was commented out anyway.
10598         (merge_chains): Use the remove_from_chain and add_to_chain
10599         primitives to do the reparenting, instead of rolling our own
10600         implementation.
10601         (add_to_chain): The first non-disabled group in the chain's group
10602         list will be the entry point for the chain. Because buffers can
10603         accumulate in loop elements' peer bufpens, we preferentially
10604         schedule loop groups before get groups to avoid unnecessary
10605         execution of get-based groups when the bufpens are already full.
10606         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
10607         (get_group_schedule_function): Ditto.
10608         (loop_group_schedule_function): Ditto.
10609         (gst_opt_scheduler_loop_wrapper): Ditto.
10610         (gst_opt_scheduler_iterate): Ditto.
10611
10612         I understand the opt scheduler now, yippee!
10613
10614         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
10615         (gst_pad_get_name, gst_pad_set_chain_function) 
10616         (gst_pad_set_get_function, gst_pad_set_event_function) 
10617         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
10618         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
10619         (gst_pad_set_query_function, gst_pad_get_query_types) 
10620         (gst_pad_get_query_types_default) 
10621         (gst_pad_set_internal_link_function) 
10622         (gst_pad_set_formats_function, gst_pad_set_link_function) 
10623         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
10624         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
10625         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
10626         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
10627         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
10628         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
10629         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
10630         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
10631         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
10632         (gst_pad_event_default_dispatch, gst_pad_event_default) 
10633         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
10634         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
10635         (gst_pad_get_formats_default, gst_pad_get_formats): Better
10636         argument checks, and some doc fixes.
10637
10638         (gst_pad_custom_new_from_template): Um, does anyone
10639         use these functions? Actually make a custom pad instead of a
10640         normal one.
10641         (gst_pad_try_set_caps): Transpose some checks.
10642         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
10643         the pad is in negotiation.
10644         (gst_pad_try_relink_filtered): Use pad_link_prepare.
10645         
10646         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
10647
10648         * gst/gstelement.h: 
10649         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
10650         on the list.
10651
10652 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10653
10654         * gst/gstbin.c: (gst_bin_add):
10655           add error for not being able to add elements
10656
10657 2004-02-22  Julien MOUTTE <julien@moutte.net>
10658
10659         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
10660         audio-codec and video-codec.
10661
10662 2004-02-22  Benjamin Otte  <otte@gnome.org>
10663
10664         reported by: Padraig O'Briain <padraig.obriain@sun.com>
10665
10666         * autogen.sh:
10667           replace test -e with test -x for mkinstalldirs to be more portable.
10668           (fixes #134816)
10669
10670 2004-02-22  Benjamin Otte  <otte@gnome.org>
10671
10672         * gst/gstpad.c:
10673           revert last patch from Andy, it makes gst_pad_can_link_filtered much
10674           too noisy
10675         * gst/gsttag.c: (_gst_tag_initialize):
10676         * gst/gsttag.h:
10677           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
10678         * libs/gst/control/dparam.c: (gst_dparam_attach):
10679         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
10680           check that types for attached dparams match
10681
10682 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10683
10684         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10685         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10686         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10687           fix errors
10688
10689 2004-02-20  Andy Wingo  <wingo@pobox.com>
10690
10691         * gst/gstbin.c:
10692         * gst/gstbuffer.c:
10693         * gst/gstplugin.c:
10694         * gst/registries/gstxmlregistry.c: 
10695         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
10696
10697         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
10698         (gst_element_add_pad): DEBUG->INFO, some fixes.
10699         (gst_element_get_compatible_pad_template): Just see if the
10700         templates' caps intersect, not if one is a strict subset of the
10701         other. This conforms more to what gst_pad_link_intersect() does.
10702         (gst_element_class_add_pad_template): Don't memcpy the pad
10703         template, just ref it.
10704         (gst_element_get_compatible_pad_filtered): Clean up debug messages
10705
10706         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
10707         (gst_pad_link_filtered): Debug changes.
10708         (gst_pad_link_prepare): New function, consolidated from
10709         can_link_filtered and link_filtered.
10710
10711         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
10712         look more like that of the functions in gstelement.c
10713
10714         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
10715         object, and return the empty string if object is NULL.
10716
10717         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
10718         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
10719         LOG, not DEBUG. We still get flex info on debug.
10720
10721         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
10722         debug string more verbose.
10723         (plugin_times_older_than): DEBUG->LOG.
10724
10725 2004-02-20  Julien MOUTTE <julien@moutte.net>
10726
10727         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
10728         will emit found_tag for each stream they demux with the codec.
10729
10730 2004-02-20  Benjamin Otte  <otte@gnome.org>
10731
10732         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
10733           copy navigation event correctly. Check freeing tag lists. 
10734         * gst/gstthread.c: (gst_thread_change_state):
10735           don't abort() on state changing mess - it might happen because of
10736           bugs.
10737         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
10738           use boxed functions
10739         * gst/gstvalue.h:
10740           fix GST_VALUE_HOLDS_CAPS
10741
10742 2004-02-19  David Schleef  <ds@schleef.org>
10743
10744         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
10745         and use it for GST_FUNCTION.  (bug #134750)
10746
10747 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10748
10749         * po/fr.po:
10750         * po/nl.po:
10751           updating translations
10752
10753 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10754
10755         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
10756
10757 2004-02-18  kost@imn.htwk-leipzig.de
10758
10759         reviewed by: David Schleef  <ds@schleef.org>
10760
10761         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
10762         for libgstcontrol.
10763
10764 2004-02-18  David Schleef  <ds@schleef.org>
10765
10766         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10767         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10768         (gst_dpsmooth_new): Additional fixes to get double dparams working.
10769         * tools/gst-inspect.c: (print_element_info): Support dumping of
10770         double dparam information.
10771
10772 2004-02-17  David Schleef  <ds@schleef.org>
10773
10774         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10775         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
10776         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
10777         Use GST_TYPE_CAPS in signal prototype.
10778         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
10779         Convert GST_TYPE_CAPS to boxed.
10780         * gst/gstelement.c: (gst_element_class_init):
10781         Use GST_TYPE_TAG_LIST in signal prototype.
10782         * gst/gstindex.c: (gst_index_class_init):
10783         * gst/gstindex.h:
10784         Add GST_TYPE_INDEX_ENTRY type.
10785         * gst/gstmarshal.list:
10786         Add necessary marshal types.
10787         * gst/gstpad.c: (gst_real_pad_class_init),
10788         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
10789         (gst_pad_recover_caps_error):
10790         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
10791         * gst/gststructure.c: (_gst_structure_initialize),
10792         (gst_structure_copy), (_gst_structure_copy_conditional):
10793         * gst/gststructure.h:
10794         Convert GST_TYPE_STRUCTURE to boxed.
10795         * gst/gsttag.c: (gst_tag_list_get_type):
10796         * gst/gsttag.h:
10797         Add GST_TYPE_TAG_LIST type.
10798
10799 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10800
10801         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
10802         to what we agreed with david.
10803         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
10804
10805 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10806
10807         * po/nl.po: update translation
10808
10809 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10810
10811         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10812           throw an error if spider is trying to play a mime type there is
10813           no decoder for
10814         * po/POTFILES.in:
10815           add gst/autoplug/gstspider.c for translation
10816
10817 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10818
10819         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
10820         silently when the pad is negotiating.
10821
10822 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10823
10824         * docs/faq/Makefile.am:
10825           add script to run gstreamer uninstalled 
10826         * docs/faq/faq.xml:
10827         * docs/faq/developing.xml:
10828         * docs/faq/gst-uninstalled:
10829           extract script to run gstreamer uninstalled
10830         * docs/manuals.mak:
10831           add EXTRA_SOURCES variable for Makefile.am's to set to
10832           use additional SOURCE files for the doc build
10833
10834 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10835
10836         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
10837
10838 2004-02-15  Julien MOUTTE  <julien@moutte.net>
10839
10840         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
10841         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
10842         an error was thrown by osssink. Basically a state change failure for
10843         an element in a different scheduling group was considered as
10844         successful, which means that caps nego was going on and weird stuff
10845         happened. Like I wrote in the comment there, if someone wants to
10846         revert that please drop me a mail explaining why because I really see
10847         no point in keeping that broken behaviour there.
10848         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
10849         be empty, we then return NULL which will trigger a nice error when 
10850         pulling from the pad.
10851
10852 2004-02-13  David Schleef  <ds@schleef.org>
10853
10854         * libs/gst/control/dparam.c: (gst_dparam_class_init),
10855         (gst_dparam_get_property), (gst_dparam_set_property),
10856         (gst_dparam_do_update_default):
10857         * libs/gst/control/dparam.h:
10858         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10859         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
10860         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
10861         (gst_dpsmooth_do_update_double):
10862         * libs/gst/control/dparam_smooth.h:
10863         * libs/gst/control/dparammanager.c:
10864         (gst_dpman_inline_direct_update):
10865         Add support for double dparams.
10866
10867 2004-02-13  David Schleef  <ds@schleef.org>
10868
10869         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
10870         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
10871
10872 2004-02-13  Mattias Wadman  <mattias@sudac.org>
10873
10874         reviewed by: David Schleef  <ds@schleef.org>
10875
10876         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
10877         (gst_fdsrc_init), (gst_fdsrc_set_property),
10878         (gst_fdsrc_get_property), (gst_fdsrc_get):
10879         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
10880         and sends an EOS event if file descriptor reading times out.
10881
10882 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10883
10884         * configure.ac:
10885           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
10886
10887 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10888
10889         * configure.ac: pass required libxml version as argument
10890         (bug reported by Christophe Fergeau)
10891
10892 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10893   
10894         * docs/gst/gstreamer-docs.sgml:
10895         * docs/gst/tmpl/gstxml.sgml:
10896         * docs/libs/gstreamer-libs-docs.sgml:
10897           version API docs
10898
10899 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10900
10901         * gst/gstinfo.c:
10902         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
10903         (gst_registry_pool_feature_filter):
10904         * gst/gstthread.c: (gst_thread_class_init):
10905         * gst/gstvalue.c:
10906           add includes exposed by building without libxml
10907         * gst/indexers/Makefile.am:
10908           do not build fileindex when LOADSAVE disabled; we should have
10909           a better libxml check later since fileindex depends on xml, not
10910           LOADSAVE or REGISTRY
10911         * libs/gst/control/Makefile.am:
10912           link with m
10913         * tools/Makefile.am:
10914           fix wrong source code for gst-xmlinspect
10915
10916 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10917
10918         * configure.ac:
10919           fix gcov help output
10920           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
10921         * docs/random/release:
10922           some updated releasing notes
10923         * gstreamer.spec.in:
10924           more updates
10925
10926 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10927
10928         * docs/faq/faq.xml:
10929         * docs/manual/manual.xml:
10930         * docs/pwg/pwg.xml:
10931         * docs/pwg/titlepage.xml:
10932           put version in documentation
10933
10934 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10935
10936         * tools/Makefile.am: fix man page installation
10937
10938 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10939
10940         * configure.ac:
10941           don't check for libxml when load/save and registry disabled (#105844)
10942         * gstreamer.spec.in:
10943           sync with fedora candidate spec
10944
10945 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10946
10947         * po/fr.po:
10948         * po/nl.po:
10949           replace multidisksrc with multifilesrc
10950
10951 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10952
10953         * po/POTFILES.in:
10954           update to multidisksrc => multifilesrc file renaming (#134145)
10955
10956 2004-02-11  David Schleef  <ds@schleef.org>
10957
10958         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
10959         * docs/gst/tmpl/gstpadtemplate.sgml: same
10960         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
10961         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
10962         fixing dance.
10963         * gst/gstutils.c: Remove disabled code that uses GstProps.
10964         * gst/registries/gstxmlregistry.h: same
10965         * docs/random/ds/0.9-suggested-changes: random notes
10966
10967 2004-02-11  kost@imn.htwk-leipzig.de
10968
10969         reviewed by: David Schleef  <ds@schleef.org>
10970
10971         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
10972         initialisation of clock (bug #134128)
10973
10974 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10975
10976         * configure.ac:
10977         * gst/elements/Makefile.am:
10978         * gst/elements/gstelements.c:
10979         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
10980         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
10981         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
10982         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
10983         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
10984         * gst/elements/gstmultifilesrc.h:
10985           rename multidisksrc to multifilesrc (part of #122200)
10986
10987 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10988
10989         * docs/manuals.mak:
10990           fix automake complaints
10991         * gst-element-check.m4:
10992           fix unquotedness
10993
10994 2004-02-11  David Schleef  <ds@schleef.org>
10995
10996         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
10997         * gst/gstatomic_impl.h: Disable sparc implementation.
10998
10999 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11000
11001         * gst-element-check.m4:
11002           fix underquoted macros as reported by automake 1.8.x (#133800)
11003         * configure.ac:
11004           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11005           by autopoint (fixes #132996)
11006
11007 2004-02-10  Andy Wingo  <wingo@pobox.com>
11008
11009         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11010         way to do inheritance.
11011         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11012         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11013         Routine docs.
11014         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11015         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11016         doc.
11017         (gst_pad_unlink, gst_pad_is_linked): Docs.
11018         (gst_pad_renegotiate): A brief description of capsnego.
11019         (gst_pad_try_set_caps): Document.
11020         (gst_pad_try_set_caps_nonfixed): Document.
11021         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11022         (gst_pad_set_parent): Deprecated (although not out of the API).
11023         (gst_pad_get_parent): Deprecated, although many plugins use this.
11024         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11025         are private and will go away in 0.9.
11026         (gst_pad_perform_negotiate): Doc.
11027         (gst_pad_link_unnegotiate): I think this is meant to be static.
11028         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11029         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11030         (gst_pad_get_peer): Doc updates.
11031         (gst_pad_caps_change_notify): Doc.
11032         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11033         (gst_ghost_pad_new): Doc fixes.
11034
11035         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11036         (gst_object_check_uniqueness): 
11037
11038         * gst/gstelement.c (gst_element_add_pad) 
11039         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11040         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11041         (gst_element_get_static_pad, gst_element_get_pad_list) 
11042         (gst_element_class_get_pad_template_list) 
11043         (gst_element_class_get_pad_template): Work on the docs.
11044         (gst_element_get_pad_template_list): Uses the class method.
11045         (gst_element_get_compatible_pad_template): Docs, and consolidate
11046         some test conditions. 
11047         (gst_element_get_pad_from_template): New static function.
11048         (gst_element_request_compatible_pad): Docs, and work with
11049         non-request compatible templates. 
11050         (gst_element_get_compatible_pad_filtered): Docs and remove
11051         redundant checks.
11052         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11053         (gst_element_link_filtered, gst_element_link_many) 
11054         (gst_element_link, gst_element_link_pads) 
11055         (gst_element_unlink_many): Docs.
11056
11057 2004-02-05  Andy Wingo  <wingo@pobox.com>
11058
11059         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11060         s/pointer/boxed/.
11061
11062         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11063
11064         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11065         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11066         with the type=GST_TYPE_CAPS. This allows language bindings to know
11067         what kind of data they're dealing with.
11068
11069         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11070         to NULL when g_value_init is called. GstCaps, which rolls its own
11071         type implementation, now does the same instead of allocating empty
11072         caps.
11073         (_gst_caps_initialize, _gst_caps_collect_value,
11074         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11075         table methods. This allows G_VALUE_COLLECT to work.
11076
11077 2004-02-05  Andy Wingo  <wingo@pobox.com>
11078
11079         * configure.ac:
11080         * testsuite/Makefile.am (SUBDIRS): 
11081         * testsuite/ghostpads/Makefile.am: 
11082         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11083
11084         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11085         These two routines are the only ones that set
11086         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11087         pad template. They should be made static, depending on ABI needs.
11088         (gst_real_pad_dispose): Handle the case of ghost pads without a
11089         parent. Assert after dealing with ghost pads that the ghost pad
11090         list is empty.
11091         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11092         set after creation.
11093         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11094         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11095         functions. set_property will call add_ghost_pad/remove_ghost_pad
11096         as appropriate.
11097         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11098
11099         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11100         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11101         (gst_element_remove_pad): Handle ghost pads as well.
11102         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11103         depending on API-stability needs).
11104
11105 2004-02-05  Andy Wingo  <wingo@pobox.com>
11106
11107         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11108         of course they're const
11109
11110 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11111
11112         * tools/Makefile.am:
11113         * tools/gst-feedback:
11114         * tools/gst-feedback-0.7:
11115           make gst-feedback versioned too for consistency
11116
11117 2004-02-11  David Schleef  <ds@schleef.org>
11118
11119         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11120         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11121
11122 2004-02-10  Julien MOUTTE <julien@moutte.net>
11123
11124         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11125         the structure does not contain a valid tag list. Adding a safety check
11126         to remove a noisy warning in that case.
11127
11128 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11129
11130         * gst/gst.c: fix name to be in line with others
11131
11132 2004-02-09  Julien MOUTTE <julien@moutte.net>
11133
11134         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11135         not shout that loud when len is 0. Just return 0 silently.
11136
11137 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11138
11139         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11140         because data_unref has one and I prefer the debug to be symetric.
11141         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11142         were refed when added to the queue and unrefed only once when the queue
11143         was flushed. Now the flush handler unref the buffers two times : first
11144         unref for the ref added when pushing in the queue's tail and second
11145         unref to destroy the flushed buffer.
11146
11147 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11148
11149         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11150
11151 2004-02-06  David Schleef  <ds@schleef.org>
11152
11153         * docs/random/ds/0.9-suggested-changes: Random ramblings
11154         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11155         to int before printing.
11156         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11157         * gst/parse/parse.l: same.  See bug #129600
11158
11159 2004-02-06  David Schleef  <ds@schleef.org>
11160
11161         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11162         (gst_index_add_entry), (gst_index_add_associationv),
11163         (gst_index_add_association): Add gst_index_add_associationv()
11164         and clean up gst_index_add_association(). #127133
11165
11166 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11167
11168         * autogen.sh: check out common with right tag if CVS/Tag exists
11169
11170 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11171
11172         * testsuite/ghostpads/ghostpads.c: (main):
11173           fix testsuite from segfaulting
11174
11175 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11176
11177         * Makefile.am: add release target
11178         * configure.ac: bump nano to 1
11179         * docs/random/release:
11180
11181 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11182
11183         * gst/gstcaps.h:
11184         * gst/gstelement.c: (gst_element_base_class_init),
11185         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11186         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11187         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11188         (gst_real_pad_dispose):
11189         * gst/gststructure.c: (gst_structure_free),
11190         (gst_structure_from_string):
11191           put reverted patch back in
11192         * gst/gstelement.c: (gst_element_remove_pad):
11193           free explicit caps if they're set
11194         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11195           copy the structure when fixating
11196
11197 2004-02-05  David Schleef  <ds@schleef.org>
11198
11199         * gst/gstmarshal.list:
11200         * gst/gstpad.c: (gst_real_pad_class_init),
11201         (_gst_real_pad_fixate_accumulator):
11202         Revert POINTER->BOXED change in signal marshaller.
11203
11204 === release 0.7.4 ===
11205                                                                                 
11206 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11207                                                                                 
11208         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11209         * configure.ac: changed for release
11210
11211 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11212
11213         * gstreamer.spec.in:
11214           bump required version of gtk-doc
11215
11216 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11217
11218         * gst/gstcaps.h:
11219         * gst/gstelement.c: (gst_element_base_class_init),
11220         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11221         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11222         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11223         (gst_real_pad_dispose):
11224         * gst/gststructure.c: (gst_structure_free),
11225         (gst_structure_from_string):
11226           revert patch that breaks applications, reapply after release
11227           to get this fixed properly
11228
11229 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11230
11231         * gst/gsttag.c: (_gst_tag_initialize):
11232         * gst/gsttag.h:
11233           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11234
11235 2004-02-04  David Schleef  <ds@schleef.org>
11236
11237         Fix some memleaks:
11238         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11239         (gst_spider_plug_from_srcpad):
11240         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11241
11242 2004-02-04  David Schleef  <ds@schleef.org>
11243
11244         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11245         a GstRealPad before accessing its structure members.
11246
11247 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11248
11249         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11250         (gst_clock_get_speed):
11251         * gst/gstclock.h:
11252           reset padding, remove unused fields
11253
11254 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11255
11256         * gst/autoplug/gstspideridentity.c:
11257         (gst_spider_identity_sink_loop_type_finding):
11258           use get_allowed_caps, not get_caps (fixes #132519)
11259         * gst/elements/gsttypefind.c: (stop_typefinding):
11260           use correct order when sending buffers and seeking
11261
11262 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11263
11264         * configure.ac:
11265         * gst/gstelement.h:
11266         * gst/gstpad.h:
11267         * gst/gstqueue.h:
11268           upgrade libtool CURRENT, reset padding
11269
11270 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11271
11272         * configure.ac:
11273           bump to prerelease
11274           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11275
11276 2004-02-04  David Schleef  <ds@schleef.org>
11277
11278         * docs/random/ds/0.9-suggested-changes: random notes
11279         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11280         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11281         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11282         expansion.
11283         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11284         (gst_filesink_get_query_types): same
11285         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11286         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11287         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11288         to use new GST_PTR_FORMAT.
11289         * gst/gstelement.h: deprecate function factory macros
11290         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11291         These are our last variadic macros that can't be replaced with
11292         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11293         attempting to deprecate gst_element_clock_wait().
11294         * gst/gstevent.h: same
11295         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11296         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11297         * gst/gstpad.h: deprecate function factory macros similar to above.
11298
11299 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11300
11301         * configure.ac:
11302         * tools/Makefile.am:
11303         * tools/gst-run.c: (popt_callback), (hash_print_key),
11304         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11305         (get_candidates), (main):
11306           add new source file to generate non-versioned wrapper binaries
11307           for our tools.
11308
11309 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11310
11311         * gst/gstevent.c: (_gst_event_free):
11312           actually break; inside the switch statement
11313         * gst/parse/grammar.y:
11314           fix memleak where GValues weren't unset
11315
11316 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11317
11318         * gst/gststructure.c: (gst_structure_from_string):
11319           fix huge memleak
11320         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11321         (new_entry), (gst_type_find_element_chain):
11322         * gst/gstelement.c: (gst_element_base_class_init),
11323         (gst_element_class_set_details):
11324         * gst/gstpad.c: (gst_pad_can_link_filtered):
11325           fix smaller memleaks
11326         * gst/gstpad.c: (gst_real_pad_dispose):
11327           check that explicit caps are gone
11328         * gst/gststructure.c: (gst_structure_free):
11329           actually free the structure
11330         * gst/gstelement.c: (gst_element_clear_pad_caps):
11331           unset explicit caps
11332
11333 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11334
11335         * tools/Makefile.am:
11336           use AM_CFLAGS since all the CFLAGS are the same
11337           use AM_LDFAGS
11338
11339 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11340
11341         * docs/manual/gnome.xml:
11342           expand example a little
11343         * gst/gst.c: (gst_init_with_popt_table),
11344         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11345           make sure popt option displays are done with right textdomain
11346           use GstPoptOption type
11347         * gst/gst.h:
11348           create GstPoptOption type
11349
11350 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11351
11352         * gst/gsterror.c: (_gst_stream_errors_init):
11353         * gst/gsterror.h:
11354           adding error type for no codec
11355         * po/POTFILES.in:
11356           add gst-inspect
11357         * po/nl.po:
11358           update dutch translation
11359         * tools/gst-inspect.c: (print_element_list), (main):
11360           do proper internationalization
11361         * tools/gst-launch.c: (idle_func):
11362           remove commented out function call
11363
11364 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11365
11366         * docs/README:
11367           add some error fixing notes
11368         * docs/gst/gstreamer-sections.txt:
11369           remove double entries
11370         * docs/gst/tmpl/gstbin.sgml:
11371         * docs/gst/tmpl/gstclock.sgml:
11372           remove override
11373         * docs/gst/tmpl/gstelement.sgml:
11374         * docs/gst/tmpl/gstindex.sgml:
11375         * docs/gst/tmpl/gstobject.sgml:
11376         * docs/gst/tmpl/gstpadtemplate.sgml:
11377         * docs/gst/tmpl/gstreamer-unused.sgml:
11378         * docs/gst/tmpl/gsttag.sgml:
11379         * docs/gst/tmpl/gstthread.sgml:
11380         * docs/gst/tmpl/gstxml.sgml:
11381         * gst/gsttag.h:
11382           sync header prototypes with c decls
11383         * gst/gsttaginterface.c:
11384           fix doc headers
11385
11386 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11387
11388         * gst/parse/Makefile.am:
11389         * gst/gstobject.h:
11390           get rid of gstmarshal.h dependency. It's not needed.
11391         * gst/gst.h:
11392         * gst/elements/gstfakesink.c:
11393         * gst/elements/gstfakesrc.c:
11394         * gst/elements/gstidentity.c:
11395         * gst/gstbin.c:
11396         * gst/gstelement.c:
11397         * gst/gstindex.c:
11398         * gst/gstobject.c:
11399         * gst/gstpad.c:
11400         * gst/gstthread.c:
11401         * gst/gstxml.c:
11402         * libs/gst/control/dparam.c:
11403         * libs/gst/control/dparammanager.c:
11404           include gstmarshal.h.
11405         Fixes #132045
11406
11407 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11408
11409         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11410         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11411         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11412         * gst/elements/gstfilesrc.h:
11413           don't ref the filesrc when creating mmaped buffers. Don't keep a
11414           list of not-yet-destroyed buffers.
11415         * gst/gstbuffer.h:
11416           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11417
11418 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11419
11420         * gst/gst.c: (init_pre):
11421           remove textdomain
11422
11423 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11424
11425         * docs/pwg/advanced-events.xml:
11426         * docs/pwg/advanced-scheduling.xml:
11427         * docs/pwg/intro-basics.xml:
11428         * docs/pwg/other-manager.xml:
11429         * docs/pwg/other-nton.xml:
11430         * docs/pwg/other-ntoone.xml:
11431         * docs/pwg/other-oneton.xml:
11432         * docs/pwg/pwg.xml:
11433           All sort of documentation... Forgot what. Point is that I want this
11434           in before I leave. The 'other-*' will be the last section and will
11435           explain issues specific to these type of elements.
11436
11437 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11438
11439         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11440         (gst_filesrc_get_read):
11441           set all the values on buffers that we can
11442
11443 2004-02-02  David Schleef  <ds@schleef.org>
11444
11445         Change usage of isblah() to g_ascii_isblah() to be more locale
11446         independent.  (#133076)
11447         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11448         * gst/gstutils.c:
11449         * gst/parse/parse.l:
11450
11451 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11452
11453         reviewed by: David Schleef  <ds@schleef.org>
11454
11455         Fix memory leaks:
11456         * gst/gstcaps.c: (gst_caps_to_string):
11457         * gst/registries/gstxmlregistry.c:
11458         (gst_xml_registry_add_path_list_func),
11459         (gst_xml_registry_parse_padtemplate):
11460
11461 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11462
11463         * gst/gstelement.c: (gst_element_default_error):
11464           suffix error messages with period
11465
11466 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11467
11468         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11469         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11470         * gst/gsterror.c: (gst_error_get_message):
11471           Suffix with dots
11472         * po/fr.po:
11473         * po/nl.po:
11474           Update translation files
11475
11476 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11477
11478         * gst/autoplug/gstspideridentity.c:
11479         (gst_spider_identity_sink_loop_type_finding):
11480         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11481         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11482         (gst_filesink_close_file), (gst_filesink_handle_event),
11483         (gst_filesink_chain):
11484         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11485         (gst_filesrc_get_read), (gst_filesrc_open_file):
11486         * gst/elements/gstidentity.c: (gst_identity_chain):
11487         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11488         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11489         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11490         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11491         * gst/gsterror.c: (_gst_core_errors_init),
11492         (_gst_library_errors_init), (_gst_resource_errors_init),
11493         (_gst_stream_errors_init), (gst_error_get_message):
11494         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11495         (gst_pad_recover_caps_error), (gst_pad_pull):
11496         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11497         * gst/schedulers/gstbasicscheduler.c:
11498         (gst_basic_scheduler_chainhandler_proxy),
11499         (gst_basic_scheduler_gethandler_proxy),
11500         (gst_basic_scheduler_cothreaded_chain):
11501           Suffix error messages with period.
11502           Use (NULL) instead of NULL
11503
11504 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11505
11506         * docs/gst/tmpl/gstelement.sgml:
11507         * docs/gst/tmpl/gstxml.sgml:
11508         * gst/gstelement.c: (gst_element_error_full):
11509           add element path to error
11510
11511 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11512
11513         * docs/random/mimetypes:
11514           update raw int/float info
11515         * gst/gsttag.c: (_gst_tag_initialize):
11516         * gst/gsttag.h:
11517           add GST_TAG_ENCODER
11518
11519 2004-01-30  David Schleef  <ds@schleef.org>
11520
11521         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11522           missing (#132991)
11523
11524 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11525
11526         reviewed by Benjamin Otte 
11527           parts of the patch submitted in bug #113913
11528
11529         * configure.ac:
11530           use AC_C_INLINE. Use = instead of == with test
11531         * examples/plugins/example.c:
11532         * gst/autoplug/gstspideridentity.c:
11533         * gst/elements/gstfdsrc.c:
11534         * gst/elements/gstfilesrc.c:
11535         * gst/elements/gstidentity.c:
11536         * gst/elements/gstmultidisksrc.c:
11537         * gst/elements/gststatistics.c:
11538         * gst/gstelement.c:
11539         * gst/gstobject.c:
11540         * gst/gstpad.c:
11541         * gst/gstpipeline.c:
11542         * gst/gstthread.c:
11543           don't end enums with a comma
11544         * gst/gstindex.c: (gst_index_compare_func):
11545           do explicit casting to gint
11546         * gst/gsttrace.c: (gst_trace_text_flush):
11547           #define strsize as a macro
11548
11549 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11550
11551         * docs/README:
11552         * docs/gst/gstreamer-docs.sgml:
11553         * docs/gst/gstreamer-sections.txt:
11554         * docs/gst/tmpl/gstelement.sgml:
11555         * docs/gst/tmpl/gsterror.sgml:
11556         * docs/gst/tmpl/gstinterface.sgml:
11557         * docs/gst/tmpl/gstreamer-unused.sgml:
11558         * docs/gst/tmpl/gststructure.sgml:
11559         * docs/gst/tmpl/gsttag.sgml:
11560         * docs/gst/tmpl/gsttaginterface.sgml:
11561         * docs/gst/tmpl/gstvalue.sgml:
11562         make sure all API ends up in the built docs
11563         * gst/gstinterface.c:
11564         * gst/gststructure.c: (gst_structure_id_set_value),
11565         (gst_structure_set_value), (gst_structure_id_get_value):
11566         * gst/gststructure.h:
11567         * gst/gstvalue.h:
11568         sync .h with .c declarations
11569
11570 2004-01-30  Julien Moutte  <julien@moutte.net>
11571
11572         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
11573         Ronald will fix riffread.
11574
11575 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11576
11577         * docs/pwg/advanced-interfaces.xml:
11578           Added tuner interface docs.
11579
11580 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11581
11582         * docs/random/mimetypes:
11583           correct Theora information
11584         * gst/gstelement.h:
11585           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
11586
11587 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11588
11589         * gst/gstelement.c: (gst_element_error_full):
11590         * gst/gstelement.h:
11591           GST_ELEMENT_ERROR in enum -> _IN_ERROR
11592
11593 2004-01-29  Julien MOUTTE  <julien@moutte.net>
11594
11595         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11596         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
11597         again and even before DISCONT.
11598         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
11599         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
11600         bytestream so that it's not stopping to fill the bytestream if events
11601         different than EOS or DISCONT are received. Instead it process them so
11602         that they go downstream.
11603
11604 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11605
11606         * docs/gst/tmpl/gstelement.sgml:
11607         * docs/gst/tmpl/gstreamer-unused.sgml:
11608         * docs/gst/tmpl/gstxml.sgml:
11609         * gst/autoplug/gstspideridentity.c:
11610         (gst_spider_identity_sink_loop_type_finding):
11611         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11612         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11613         (gst_filesink_close_file), (gst_filesink_handle_event),
11614         (gst_filesink_chain):
11615         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11616         (gst_filesrc_get_read), (gst_filesrc_open_file):
11617         * gst/elements/gstidentity.c: (gst_identity_chain):
11618         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11619         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11620         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11621         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11622         * gst/gstelement.h:
11623         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11624         (gst_pad_recover_caps_error), (gst_pad_pull):
11625         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11626         * gst/schedulers/gstbasicscheduler.c:
11627         (gst_basic_scheduler_chainhandler_proxy),
11628         (gst_basic_scheduler_gethandler_proxy),
11629         (gst_basic_scheduler_cothreaded_chain):
11630           gst_element_error -> GST_ELEMENT_ERROR
11631
11632 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11633
11634         * docs/Makefile.am:
11635         * docs/gst/tmpl/gstelement.sgml:
11636         * docs/gst/tmpl/gstxml.sgml:
11637         * docs/manuals.mak:
11638         * docs/pwg/advanced-request.xml:
11639         * docs/pwg/advanced-scheduling.xml:
11640         * docs/pwg/advanced-tagging.xml:
11641           fix non-validating docbook using CDATA
11642           make sure make check-local gets run first to check if it validates
11643
11644 2004-01-29  Julien MOUTTE <julien@moutte.net>
11645
11646         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
11647         handling (up and downstream).
11648         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
11649         my_filter thing.
11650
11651 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11652
11653         * docs/pwg/advanced-tagging.xml:
11654           Add docs about tag writing.
11655
11656 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11657
11658         * docs/pwg/advanced-tagging.xml:
11659           Add a part about tag reading and application signalling... Tag
11660           writing still needs to be documented.
11661         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11662           We can set file locations in READY, too.
11663
11664 2004-01-29  Julien MOUTTE <julien@moutte.net>
11665
11666         * docs/random/ds/element-checklist: Adding some notes about src
11667         events.
11668
11669 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11670
11671         * docs/random/mimetypes:
11672           Update docs to point to correct elements for various mimetypes, and
11673           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
11674           <stephane.loeuillet@tiscali.fr>.
11675
11676 2004-01-28  David Schleef  <ds@schleef.org>
11677
11678         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
11679
11680 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11681
11682         * docs/random/mimetypes:
11683           update docs for audio/x-raw-float. Add "buffer-frames=0 means
11684           undefined"
11685         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11686           make it only work in NULL.
11687         * gst/gstcaps.c:
11688           don't posion NULL caps
11689         * gst/gstelement.c: (gst_element_set_time):
11690           add debugging statement
11691         * gst/gstelement.c: (gst_element_emit_found_tag),
11692         (gst_element_found_tag_func), (gst_element_found_tags):
11693         * gst/gstelement.h:
11694           These functions take const taglists
11695         * gst/gstpad.c: (gst_pad_proxy_getcaps):
11696           fix memleak
11697         * gst/gstpad.c: (gst_pad_event_default):
11698           make more effort on handling discont and clocks, g_warn if everything
11699           fails
11700         * gst/gststructure.c: (gst_structure_remove_fields),
11701         (gst_structure_remove_fields_valist):
11702         * gst/gststructure.h:
11703           add gst_structure_remove_fields(_valist)
11704         * gst/gsttag.c:
11705           fix doc glitch
11706
11707 2004-01-28  David Schleef  <ds@schleef.org>
11708
11709         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
11710         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
11711         Fix memory leakage of gst_caps_to_string().
11712
11713         Use GST_PTR_FORMAT instead of gst_caps_to_string():
11714         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
11715         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
11716         (gst_spider_identity_sink_loop_type_finding):
11717         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11718         (find_suggest):
11719         * gst/gstpad.c: (gst_pad_try_relink_filtered),
11720         (gst_pad_set_explicit_caps):
11721         * gst/parse/grammar.y:
11722
11723 2004-01-28  David Schleef  <ds@schleef.org>
11724
11725         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
11726         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
11727         * docs/random/ds/0.9-suggested-changes: Notes from Company.
11728         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
11729         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
11730         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
11731         (gst_debug_log_default), (_gst_info_printf_extension),
11732         (_gst_info_printf_extension_arginfo):  Add printf extension.
11733         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
11734         * gst/gststructure.c: (gst_structure_to_string),
11735         (_gst_structure_parse_value): Use gst_value_deserialize() and
11736         remove old code.
11737         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
11738         (gst_value_deserialize_boolean), (gst_strtoi),
11739         (gst_value_deserialize_int), (gst_value_deserialize_double),
11740         (gst_value_deserialize_string), (gst_value_deserialize): Implement
11741         a bunch of deserialize functions and gst_value_deserialize.
11742         * gst/gstvalue.h: er, _de_serialize, not unserialize
11743         * testsuite/caps/string-conversions.c: (main): We don't currently
11744         handle (float) in caps, so convert these to (double).
11745         * testsuite/debug/Makefile.am: Add new test for the printf extension
11746         * testsuite/debug/printf_extension.c: (main): same
11747
11748 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11749
11750         * docs/random/company/time:
11751           Add some docs about clocking and time
11752
11753 2004-01-28  Julien MOUTTE <julien@moutte.net>
11754
11755         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
11756
11757 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11758
11759         * docs/pwg/advanced-clock.xml:
11760         * docs/pwg/advanced-dparams.xml:
11761         * docs/pwg/advanced-events.xml:
11762         * docs/pwg/advanced-interfaces.xml:
11763         * docs/pwg/advanced-midi.xml:
11764         * docs/pwg/advanced-request.xml:
11765         * docs/pwg/advanced-scheduling.xml:
11766         * docs/pwg/advanced-tagging.xml:
11767         * docs/pwg/advanced-types.xml:
11768         * docs/pwg/appendix-checklist.xml:
11769         * docs/pwg/building-boiler.xml:
11770         * docs/pwg/building-chainfn.xml:
11771         * docs/pwg/building-filterfactory.xml:
11772         * docs/pwg/building-pads.xml:
11773         * docs/pwg/building-props.xml:
11774         * docs/pwg/building-signals.xml:
11775         * docs/pwg/building-state.xml:
11776         * docs/pwg/building-testapp.xml:
11777         * docs/pwg/intro-basics.xml:
11778         * docs/pwg/intro-preface.xml:
11779         * docs/pwg/other-autoplugger.xml:
11780         * docs/pwg/other-sink.xml:
11781         * docs/pwg/other-source.xml:
11782         * docs/pwg/titlepage.xml:
11783           fix up id's
11784
11785 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11786
11787         * docs/95NonPath:
11788         * docs/HACKING:
11789         * docs/README:
11790         * docs/building-the-docs-on-debian:
11791           collect relevant bits of doc info
11792
11793 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11794
11795         * docs/pwg/advanced_tagging.xml:
11796           Half-assed commit so Thomas can re-arrange document IDs here to be
11797           consistent, too.
11798
11799 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11800
11801         * docs/manual/autoplugging.xml:
11802         * docs/manual/bins-api.xml:
11803         * docs/manual/bins.xml:
11804         * docs/manual/buffers-api.xml:
11805         * docs/manual/buffers.xml:
11806         * docs/manual/clocks.xml:
11807         * docs/manual/components.xml:
11808         * docs/manual/cothreads.xml:
11809         * docs/manual/debugging.xml:
11810         * docs/manual/dparams-app.xml:
11811         * docs/manual/dynamic.xml:
11812         * docs/manual/elements-api.xml:
11813         * docs/manual/elements.xml:
11814         * docs/manual/factories.xml:
11815         * docs/manual/gnome.xml:
11816         * docs/manual/goals.xml:
11817         * docs/manual/helloworld.xml:
11818         * docs/manual/helloworld2.xml:
11819         * docs/manual/init-api.xml:
11820         * docs/manual/intro.xml:
11821         * docs/manual/links-api.xml:
11822         * docs/manual/links.xml:
11823         * docs/manual/manual.xml:
11824         * docs/manual/motivation.xml:
11825         * docs/manual/pads-api.xml:
11826         * docs/manual/pads.xml:
11827         * docs/manual/plugins-api.xml:
11828         * docs/manual/plugins.xml:
11829         * docs/manual/programs.xml:
11830         * docs/manual/queues.xml:
11831         * docs/manual/quotes.xml:
11832         * docs/manual/schedulers.xml:
11833         * docs/manual/states-api.xml:
11834         * docs/manual/states.xml:
11835         * docs/manual/threads.xml:
11836         * docs/manual/typedetection.xml:
11837         * docs/manual/xml.xml:
11838           use chapter, part, section or misc as id starts for all bits
11839
11840 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11841
11842         * docs/gst/gstreamer-sections.txt:
11843           Fix up TITLE of the sections
11844
11845 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11846
11847         * docs/pwg/advanced_interfaces.xml:
11848           Add documentation on propertyprobing.
11849         * docs/pwg/advanced_events.xml:
11850         * docs/pwg/advanced_tagging.xml:
11851         * docs/pwg/building_boiler.xml:
11852         * docs/pwg/building_filterfactory.xml:
11853         * docs/pwg/pwg.xml:
11854           Move filterfactory and tagging into their own chapter, add a chapter
11855           on events. all these are empty placeholders that will be filled in
11856           some day.
11857
11858 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11859
11860         * docs/pwg/advanced_interfaces.xml:
11861           Docs for mixer interface. Also a check for website uploading.
11862
11863 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11864
11865         * docs/HACKING:
11866         * docs/Makefile.am:
11867         * docs/faq/Makefile.am:
11868         * docs/gst/Makefile.am:
11869         * docs/gst/tmpl/gstelement.sgml:
11870         * docs/gst/tmpl/gstplugin.sgml:
11871         * docs/gst/tmpl/gstreamer-unused.sgml:
11872         * docs/libs/Makefile.am:
11873         * docs/manual/Makefile.am:
11874         * docs/manuals.mak:
11875         * docs/pwg/Makefile.am:
11876         * docs/upload.mak:
11877           Separate out upload target and make it similar for
11878           both docbook and gtk-doc docs
11879
11880 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11881
11882         * docs/manuals.mak:
11883           Fix upload target to work with freedesktop
11884
11885 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11886
11887         * docs/pwg/advanced_types.xml:
11888           Add notes on creating your own types.
11889         * docs/pwg/building_boiler.xml:
11890         * docs/pwg/building_pads.xml:
11891         * docs/pwg/building_state.xml:
11892           Add some stuff about how to retrieve values from structures, how
11893           that relates to types and change layout slightly again to be almost
11894           perfect.
11895
11896 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11897
11898         * docs/pwg/advanced_dparams.xml:
11899         * docs/pwg/advanced_scheduling.xml:
11900           Change index layout slightly.
11901
11902 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11903
11904         * docs/pwg/advanced_clock.xml:
11905         * docs/pwg/advanced_interfaces.xml:
11906         * docs/pwg/advanced_midi.xml:
11907           General placeholders for now.
11908         * docs/pwg/advanced_request.xml:
11909           Explanation about sometimes and request pads.
11910         * docs/pwg/advanced_scheduling.xml:
11911           Concept of bytestream, loopfunctions and schedulers.
11912         * docs/pwg/building_boiler.xml:
11913           Add something about plugin-init.
11914
11915 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11916
11917         * docs/pwg/building_pads.xml:
11918           Fix broken docbook
11919
11920 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11921
11922         * docs/pwg/advanced_interfaces.xml:
11923         * docs/pwg/pwg.xml:
11924           Add as a placeholder for future filling-in.
11925         * docs/pwg/basics_autoplugging.xml:
11926         * docs/pwg/basics_buffers.xml:
11927         * docs/pwg/basics_elements.xml:
11928         * docs/pwg/basics_events.xml:
11929         * docs/pwg/basics_plugins.xml:
11930         * docs/pwg/basics_types.xml:
11931           Remove, because unused (this is all in intro_basics.xml).
11932         * docs/pwg/building_signals.xml:
11933           Short intro to signals + reference to GObject docs - we really
11934           shouldn't go into these sort of things to deply because we don't
11935           use them that extensively anyway.
11936         * docs/pwg/building_state.xml:
11937           Explanation of states. Benjamin, please check.
11938         * docs/pwg/building_testapp.xml:
11939           Put everything in one page - putting only a few lines of content
11940           per page doesn't really make sense.
11941
11942           Time to get into the advanced topics. ;).
11943
11944 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11945
11946         * docs/pwg/advanced_types.xml:
11947           Finish documenting the current state of mimetypes.
11948         * docs/pwg/building_boiler.xml:
11949         * docs/pwg/building_chainfn.xml:
11950         * docs/pwg/building_pads.xml:
11951         * docs/pwg/building_props.xml:
11952         * docs/pwg/building_testapp.xml:
11953           Start documenting the "how to build a simple audio filter" part
11954           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
11955           states and (maybe?) a short introduction to capsnego in the chapter
11956           on pads (building_pads.xml). Capsnego should probably be explained
11957           fully in advanced_capsnego.xml or so.
11958
11959 2004-01-26  David Schleef  <ds@schleef.org>
11960
11961         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
11962         * gst/gstpad.h: Add new function to allow element to (somewhat)
11963         specify non-fixed caps on a pad.
11964         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
11965         that I added a few weeks ago.
11966
11967 2004-01-26  David Schleef  <ds@schleef.org>
11968
11969         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
11970           making try_set_caps() work with non-fixed caps.
11971
11972 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11973
11974         * docs/pwg/advanced_types.xml:
11975         * docs/pwg/intro_basics.xml:
11976         * docs/pwg/intro_preface.xml:
11977         * docs/pwg/pwg.xml:
11978         * docs/pwg/titlepage.xml:
11979           First try to resurrect the PWG. I'm halfway integrating the mimetypes
11980           in here (docs/random/mimetypes), and will from there on work on both
11981           updating outdated parts and adding missing parts.
11982           That doesn't mean I'll fix it completely, but I'll try at least. ;).
11983
11984 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11985
11986         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
11987           policy is set
11988
11989 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11990
11991         * gst/gstelement.h:
11992           remove gst_element_factory_get_version. It doesn't exist anymore.
11993         * gst/gstplugin.c:
11994         * gst/gstplugin.h:
11995           remove gst_plugin_set_name and change gst_plugin_get_longname to
11996           gst_plugin_get_description to match code.
11997         * gst/gsterror.h:
11998           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
11999         * gst/gstpad.c: (gst_pad_try_set_caps):
12000           make it work with nonfixed caps.
12001           Note that even in the nonfixed case the link function of the pad
12002           that tries to set caps isn't called.
12003
12004 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12005
12006         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12007           fix bug where buffer was not assembled correctly
12008         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12009           silence by default
12010         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12011           only seek if there's no more buffers that could work without seeking
12012
12013 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12014
12015         * gst/gsttag.c: (_gst_tag_initialize):
12016         * gst/gsttag.h:
12017           Add application tag (for encoding/muxing app).
12018
12019 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12020
12021         * autogen.sh:
12022           make autopoint force, and libtoolize not copy
12023         * common/m4/as-docbook.m4:
12024           added docbook xml catalog setup check
12025         * common/m4/gst-doc.m4:
12026           use docbook check
12027
12028 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12029
12030         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12031         * gst/gsttag.h:
12032           add GstTagFlag
12033
12034 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12035
12036         * docs/gst/gstreamer-sections.txt:
12037         * docs/gst/tmpl/gst.sgml:
12038         * docs/gst/tmpl/gstbuffer.sgml:
12039         * docs/gst/tmpl/gstclock.sgml:
12040         * docs/gst/tmpl/gstelement.sgml:
12041         * docs/gst/tmpl/gstreamer-unused.sgml:
12042         * docs/gst/tmpl/gstxml.sgml:
12043           sync latest API changes to docs
12044
12045 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12046
12047         * gst/gstpluginfeature.c:
12048           fix doc snippet
12049         * tools/gst-inspect.c: (print_element_list):
12050           fix output of typefind
12051           add GPL header
12052         * tools/gst-launch.c:
12053           add GPL header
12054
12055 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12056
12057         * gst/elements/Makefile.am:
12058         * gst/elements/gstelements.c:
12059         * gst/elements/gsttypefindelement.c:
12060         * gst/elements/gsttypefindelement.h:
12061         * po/POTFILES.in:
12062         * po/fr.po:
12063         * po/nl.po:
12064           renamed gsttypefindelement to gsttypefind, conserving CVS history
12065
12066 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12067
12068         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12069         * gst/gsttag.h:
12070           add some tags used in ogg as well
12071           fix _ in replaygain tags
12072
12073 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12074
12075         * gst/gsterror.h:
12076           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12077
12078 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12079
12080         * gst/gstelement.c: (gst_element_error_full):
12081         * gst/gstelement.h:
12082           change _extended to _full
12083
12084 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12085
12086         reviewed by: <delete if not using a buddy>
12087
12088         * docs/gst/tmpl/gst.sgml:
12089         * docs/gst/tmpl/gstbuffer.sgml:
12090         * docs/gst/tmpl/gstclock.sgml:
12091         * docs/gst/tmpl/gstelement.sgml:
12092         * docs/gst/tmpl/gstreamer-unused.sgml:
12093         * docs/gst/tmpl/gstxml.sgml:
12094         * gst/gstelement.c: (gst_element_error_full):
12095         * gst/gstelement.h:
12096
12097 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12098
12099         * gst/gstelement.h: fix _gst_element_error_printf prototype
12100
12101 2004-01-20  David Schleef  <ds@schleef.org>
12102
12103         * gst/gststructure.c: (gst_structure_to_string):
12104         Convert function to use gst_value_serialize().
12105         * gst/gstvalue.c: (gst_value_serialize_list),
12106         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12107         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12108         (gst_value_serialize_int), (gst_value_serialize_double),
12109         (gst_string_wrap), (gst_value_serialize_string),
12110         (gst_value_serialize), (gst_value_deserialize):
12111         * gst/gstvalue.h:
12112         Add implementations for serialize.
12113
12114 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12115
12116         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12117         we want to keep that one in the future or change xvidenc.c to use 
12118         another error.
12119
12120 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12121
12122         * gst/gstelement.c: (_gst_element_error_printf):
12123         * gst/gstelement.h:
12124           privatise function
12125
12126 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12127
12128         * docs/random/error:
12129           doc explaining error system
12130         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12131           cleanup
12132
12133 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12134
12135         * gst/gst-i18n-app.h:
12136         * gst/gst-i18n-lib.h:
12137           remove inclusion of config.h
12138         * po/POTFILES.in:
12139         * po/nl.po:
12140           add gst/gstelement.c
12141
12142 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12143
12144         * po/nl.po: updated Dutch translation
12145
12146 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12147
12148         * gst/gsterror.c: (_gst_core_errors_init),
12149         (_gst_library_errors_init), (_gst_resource_errors_init),
12150         (_gst_stream_errors_init):
12151         remove ending punctuation dots
12152
12153 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12154
12155         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12156         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12157         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12158         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12159         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12160         use GST_ERROR_SYSTEM
12161
12162 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12163
12164         * gst/gstelement.c: (gst_element_error_printf),
12165         (gst_element_error_extended):
12166         * gst/gstelement.h:
12167           add a helper printf function so we can have NULL values passed.
12168
12169 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12170
12171         * gst/gstelement.h:
12172           add G_STMT macros to gst_element_error, which isn't strictly
12173           necessary but people tell me to anyway.
12174
12175 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12176
12177         * gst/Makefile.am:
12178         * gst/autoplug/gstspideridentity.c:
12179         (gst_spider_identity_sink_loop_type_finding):
12180         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12181         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12182         (gst_filesink_close_file), (gst_filesink_handle_event),
12183         (gst_filesink_chain):
12184         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12185         (gst_filesrc_map_region), (gst_filesrc_get_read),
12186         (gst_filesrc_open_file):
12187         * gst/elements/gstidentity.c: (gst_identity_chain):
12188         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12189         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12190         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12191         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12192         * gst/gst.h:
12193         * gst/gst_private.h:
12194         * gst/gstelement.c: (gst_element_class_init),
12195         (gst_element_default_error), (gst_element_error_func),
12196         (gst_element_error_extended):
12197         * gst/gstelement.h:
12198         * gst/gsterror.c: (_gst_core_errors_init),
12199         (_gst_library_errors_init), (_gst_resource_errors_init),
12200         (_gst_stream_errors_init), (gst_error_get_message):
12201         * gst/gsterror.h:
12202         * gst/gstinfo.c: (_gst_debug_init):
12203         * gst/gstmarshal.list:
12204         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12205         (gst_pad_recover_caps_error), (gst_pad_pull):
12206         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12207         * gst/schedulers/gstbasicscheduler.c:
12208         (gst_basic_scheduler_chainhandler_proxy),
12209         (gst_basic_scheduler_gethandler_proxy),
12210         (gst_basic_scheduler_cothreaded_chain):
12211         * po/POTFILES.in:
12212         * po/fr.po:
12213         * po/nl.po:
12214           change error signal
12215           add error categories
12216
12217 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12218
12219         * gst/gsttag.c: (_gst_tag_initialize):
12220         * gst/gsttag.h:
12221         Add replaygain tag
12222
12223 2004-01-18  Colin Walters  <walters@verbum.org>
12224
12225         * examples/retag/retag.c: Call gst_init before processing
12226         program args.  Add g_assert to _link_many call.
12227
12228 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12229
12230         * gst/gstpad.c: (gst_pad_alloc_buffer):
12231           Return a newly allocated buffer when the pad has no peer.
12232
12233 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12234
12235         * gst/gstclock.c: (gst_clock_get_time):
12236           make it compile with gcc 2.95 again.
12237           Patch by Scott Wheeler
12238
12239 2004-01-15  David Schleef  <ds@schleef.org>
12240
12241         * gst/gstcaps.h:
12242         Added gst_caps_is_simple() macro.
12243         * testsuite/caps/caps.c: (test1):
12244         * testsuite/caps/intersect2.c: (main):
12245         * testsuite/caps/intersection.c: (main):
12246         Fixes to make 'make check' work again after removing
12247         gst_caps_is_chained().
12248
12249 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12250
12251         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12252         and additions to the MIDI document.
12253
12254 2004-01-15  David Schleef  <ds@schleef.org>
12255
12256         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12257         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12258         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12259
12260 2004-01-15  David Schleef  <ds@schleef.org>
12261
12262         * gst/gstqueue.c:
12263         * gst/gstqueue.h:
12264         Fix the spelling of "treshold" and make min_threshold actually
12265         affect the queue.
12266
12267 2004-01-15  David Schleef  <ds@schleef.org>
12268
12269         * gst/gstcaps.c:
12270         Add lots of documentation.
12271         * gst/gstcaps.h:
12272         Deprecate a few functions.
12273         * gst/gstpad.c:
12274         Removed use of deprecated functions.
12275
12276 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12277
12278         * gst/gstpad.c: (gst_pad_is_linked):
12279         * gst/gstpad.h:
12280           implement gst_pad_is_linked
12281         * gst/gstelement.h:
12282           reserve space for initiate_state_change
12283
12284 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12285
12286         * gst/autoplug/gstspideridentity.c:
12287         (gst_spider_identity_sink_loop_type_finding):
12288           break infinite loop by just returning instead of looping
12289         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12290           set event time difference correctly. Set it to 1 second instead
12291           of 100ms to be more tolerant
12292         * gst/gstelement.c: (gst_element_set_time):
12293           add debugging output
12294
12295 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12296
12297         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12298           query if buffers are inside the pool, ignore events
12299
12300 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12301
12302         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12303         (gst_clock_set_speed), (gst_clock_set_active),
12304         (gst_clock_is_active), (gst_clock_reset),
12305         (gst_clock_handle_discont):
12306         * gst/gstclock.h:
12307           deprecate old interface and disable functions that aren't in use
12308           anymore.
12309         * gst/gstelement.h:
12310         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12311         (gst_element_set_time), (gst_element_adjust_time):
12312           add concept of "element time" and functions to get/set this time.
12313         * gst/gstelement.c: (gst_element_change_state):
12314           update element time correctly.
12315         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12316           This is a debug message, not a g_critical.
12317         * gst/gstpad.c: (gst_pad_event_default):
12318           handle discontinuous events right with element time.
12319         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12320           update to clocking fixes.
12321           set clocks on elements in READY=>PAUSED. The old behaviour caused
12322           a wrong element time on the first element that started playing.
12323         * gst/schedulers/gstbasicscheduler.c:
12324         (gst_basic_scheduler_class_init):
12325         * gst/schedulers/gstoptimalscheduler.c:
12326         (gst_opt_scheduler_class_init):
12327           remove code that just implements the default behaviour.
12328         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12329           update to use new clocking functions
12330         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12331         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12332           update to test new element time.
12333         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12334           use _get_allowed_caps instead of _get_caps. This catches filtered
12335           caps correctly.
12336         * testsuite/debug/commandline.c:
12337           update for new GST_DEBUG syntax.
12338         * testsuite/threads/Makefile.am:
12339           disable a test that only works sometimes.
12340
12341 2004-01-13  Julien MOUTTE <julien@moutte.net>
12342
12343         * po/LINGUAS: Adding fr.
12344         * po/fr.po: Adding french translation.
12345
12346 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12347
12348         * gst/parse/grammar.y:
12349         * po/POTFILES.in:
12350         * po/nl.po:
12351         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12352           translate parsing error messages
12353
12354 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12355
12356         * po/POTFILES.in: adding gst-launch
12357         * po/nl.po: updated translation, all 99 strings translated
12358         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12359         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12360           fix strings for translation
12361
12362 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12363
12364         * gst/gst.c:
12365           - capitalize beginnings of popt options
12366           - fix strings for translation
12367           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12368
12369 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12370
12371         * po/README: add some notes on how to update translations
12372
12373 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12374
12375         * ABOUT-NLS: removed, is autogenerated from autopoint
12376         * autogen.sh: add autopoint stuff
12377         * configure.ac: fix up gettext stuff
12378         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12379         * gst/elements/gsttypefindelement.c: add header include
12380         * gst/gettext.h: add header, copy from system-installed header
12381         * gst/gst-i18n-app.h: to be included by each app having translations
12382         * gst/gst-i18n-lib.h: to be included by each lib having translations
12383         * gst/gst.c: (init_pre): fix up gettext calls
12384         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12385         * po/LINGUAS: the new way to specify translations present
12386         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12387         * po/Makevars: the variables filled in for GStreamer
12388         * po/POTFILES.in: added new files with translations
12389         * po/de.po: has new strings
12390         * po/nl.po: readded, has new strings
12391
12392 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12393
12394         * gst/gsttag.c: fix some strings marked for translation
12395
12396 2004-01-13  Iain <iain@prettypeople.org>
12397
12398         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12399         group when we add an element to it, cos we unref it when we remove one
12400
12401 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12402
12403         * testsuite/debug/commandline.c: (debug_not_reached):
12404         * testsuite/debug/output.c: (check_message):
12405           fix testsuite
12406
12407 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12408
12409         * examples/cutter/.cvsignore:
12410         * examples/helloworld/.cvsignore:
12411         * examples/launch/.cvsignore:
12412         * examples/manual/.cvsignore:
12413         * examples/mixer/.cvsignore:
12414         * examples/pingpong/.cvsignore:
12415         * examples/plugins/.cvsignore:
12416         * examples/queue/.cvsignore:
12417         * examples/queue2/.cvsignore:
12418         * examples/queue3/.cvsignore:
12419         * examples/queue4/.cvsignore:
12420         * examples/retag/.cvsignore:
12421         * examples/thread/.cvsignore:
12422         * examples/typefind/.cvsignore:
12423         * examples/xml/.cvsignore:
12424         * gst/.cvsignore:
12425         * gst/autoplug/.cvsignore:
12426         * gst/elements/.cvsignore:
12427         * gst/indexers/.cvsignore:
12428         * gst/parse/.cvsignore:
12429         * gst/registries/.cvsignore:
12430         * gst/schedulers/.cvsignore:
12431         * libs/gst/bytestream/.cvsignore:
12432         * libs/gst/control/.cvsignore:
12433         * libs/gst/getbits/.cvsignore:
12434         * tests/.cvsignore:
12435         * tests/bufspeed/.cvsignore:
12436         * tests/instantiate/.cvsignore:
12437         * tests/memchunk/.cvsignore:
12438         * tests/muxing/.cvsignore:
12439         * tests/sched/.cvsignore:
12440         * tests/seeking/.cvsignore:
12441         * tests/threadstate/.cvsignore:
12442         * testsuite/.cvsignore:
12443         * testsuite/caps/.cvsignore:
12444         * testsuite/cleanup/.cvsignore:
12445         * testsuite/dynparams/.cvsignore:
12446         * testsuite/plugin/.cvsignore:
12447         * tools/.cvsignore:
12448           update - this is huge, because it includes *.bb, *.bbg and *.da files
12449           which are generated for gcov.
12450
12451 2004-01-11  David Schleef  <ds@schleef.org>
12452
12453         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12454         a function to parse integers in ways that strto[u]l() does not.
12455
12456 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12457
12458         * tools/gst-inspect.c: (print_caps):
12459           improve output of caps a bit
12460
12461 2004-01-11  David Schleef  <ds@schleef.org>
12462
12463         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12464         inherit correct flags (READONLY and DONTKEEP).
12465
12466 2004-01-11  David Schleef  <ds@schleef.org>
12467
12468         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12469         (gst_filesrc_map_region):
12470         * gst/gstbuffer.c: (_gst_buffer_initialize),
12471         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12472         (gst_buffer_new), (gst_buffer_create_sub),
12473         (gst_buffer_is_span_fast), (gst_buffer_span):
12474         * gst/gstbuffer.h:
12475         Change GstBuffer private structure element names. (all files)
12476         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12477         (gst_queue_link):
12478         * gst/gstqueue.h:
12479         Implement getcaps/pad_link functions that handle the case where
12480         there are data in the queue.
12481
12482 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12483
12484         * gst/elements/gstbufferstore.c:
12485           initialize debugging structure correctly
12486         * gst/elements/gsttee.c: (gst_tee_set_property):
12487           g_object_notify when property was changed
12488         * gst/elements/gsttypefindelement.c:
12489         (gst_type_find_element_change_state):
12490           clear caps correctly
12491
12492 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12493
12494         * gst/gstqueue.c: (gst_queue_init):
12495           Use better defaults for when a queue should block. This
12496           gets rid of jerky playback for quite a few files.
12497           It takes more memory.
12498
12499 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12500
12501         (gst_xml_registry_parse_padtemplate):
12502           make critical message slightly more useful
12503
12504 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12505
12506         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12507         (gst_debug_message_get), (gst_debug_log_default):
12508         * gst/gstinfo.h:
12509           Change gst_debug_log(_valist) to take a const format string.
12510           Change prototype of log function and functions using those to 
12511           take a GstDebugMessage instead of a string that requires using
12512           gst_debug_message_get.
12513
12514 2004-01-08  David Schleef  <ds@schleef.org>
12515
12516         * Makefile.am:
12517         * configure.ac:
12518         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12519         and -ftest-coverage, which allows gcov to show information about
12520         testsuite coverage.
12521
12522 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12523
12524         * gst/gstutils.h:
12525           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12526           GST_PARENT_CALL_WITH_DEFAULT
12527         * gst/elements/gstaggregator.c: 
12528         * gst/elements/gstbufferstore.c: 
12529         * gst/elements/gstfakesink.c: 
12530         * gst/elements/gstfakesrc.c: 
12531         * gst/elements/gstfdsink.c: 
12532         * gst/elements/gstfdsrc.c: 
12533         * gst/elements/gstfilesink.c: 
12534         * gst/elements/gstfilesrc.c: 
12535         * gst/elements/gstidentity.c: 
12536         * gst/elements/gstmd5sink.c: 
12537         * gst/elements/gstmultidisksrc.c:
12538         * gst/elements/gstpipefilter.c: 
12539         * gst/elements/gstshaper.c:
12540         * gst/elements/gststatistics.c:
12541         * gst/elements/gsttee.c:
12542         * gst/elements/gsttypefindelement.c:
12543           use them.
12544
12545 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
12546
12547         * docs/gst/gstreamer-docs.sgml: remove props
12548         * docs/gst/gstreamer-sections.txt: remove props
12549         * docs/gst/tmpl/gst.sgml:
12550         * docs/gst/tmpl/gstbin.sgml:
12551         * docs/gst/tmpl/gstbuffer.sgml:
12552         * docs/gst/tmpl/gstcaps.sgml:
12553         * docs/gst/tmpl/gstclock.sgml:
12554         * docs/gst/tmpl/gstelement.sgml:
12555         * docs/gst/tmpl/gstindex.sgml:
12556         * docs/gst/tmpl/gstobject.sgml:
12557         * docs/gst/tmpl/gstpad.sgml:
12558         * docs/gst/tmpl/gstpadtemplate.sgml:
12559         * docs/gst/tmpl/gstreamer-unused.sgml:
12560         * docs/gst/tmpl/gstthread.sgml:
12561         * docs/gst/tmpl/gstxml.sgml:
12562           sync with code reorganization
12563
12564 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
12565
12566         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12567         Make the 'Could not find compatible pad' message more informative.
12568
12569 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12570                                                                                 
12571         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
12572           Fix for if we pass NULL as property to location.
12573         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
12574         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
12575           Fix for instantiate-test (see below).
12576         * gst/gststructure.c: (_gst_structure_parse_value):
12577           Fix compile error on gcc-2.96.
12578         * configure.ac:
12579         * tests/Makefile.am:
12580         * tests/instantiate/Makefile.am:
12581         * tests/instantiate/create.c: (create_all_elements), (main):
12582           Add a test that instantiates all elements. This makes it easy to
12583           track dead code for old API/design (like setting event functions
12584           on sink pads and so on).
12585
12586 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
12587
12588         * gst/gstcaps.c: (gst_caps_append_structure):
12589           Move the poisoning to allow a NULL structure
12590         * gst/gstevent.c: (_gst_event_free):
12591           When freeing a navigation event, free the structure
12592           also
12593
12594 2004-01-04  David Schleef  <ds@schleef.org>
12595
12596         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12597         Remove usage of gst_pad_proxy_fixate.
12598         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
12599         (gst_caps_split_one), (gst_caps_replace):
12600         Add poisoning code.
12601         * gst/gstmarshal.list:
12602         Add pointer__pointer for fixate signal
12603         * gst/gstpad.c: (gst_real_pad_class_init),
12604         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12605         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
12606         (gst_pad_set_explicit_caps), (gst_pad_template_new):
12607         Add poisoning code. Add fixate signal on RealPad. Change
12608         set_explicit_caps() to take const GstCaps, like try_set_caps().
12609         * gst/gstpad.h:
12610         * testsuite/caps/Makefile.am:
12611         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
12612
12613 2004-01-03  David Schleef  <ds@schleef.org>
12614
12615         * gst/elements/gsttypefindelement.c:
12616         (gst_type_find_element_have_type), (gst_type_find_element_init):
12617         Use gst_pad_use_explicit_caps for src pad.
12618         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
12619         before using it.
12620
12621 2004-01-03  David Schleef  <ds@schleef.org>
12622
12623         * gst/gstelement.c: (gst_element_link_pads_filtered),
12624         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
12625         that linking was successful.
12626         * gst/gstpad.c: (gst_pad_link_free),
12627         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
12628         (gst_pad_link_try), (gst_pad_link_unnegotiate),
12629         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
12630         GstPadLinkReturn correctly between functions, and don't fail
12631         when DELAYED is used (DELAYED is very important).  Better
12632         cleanup on unlinking and unnegotiation.  Should fix some spider
12633         bugs.
12634
12635 2004-01-02  David Schleef  <ds@schleef.org>
12636
12637         * gst/gstelement.c: (gst_element_class_init),
12638         (gst_element_base_class_init): ->padtemplates should be cleared
12639         in base_init, since we need to have a fresh list for every
12640         class.  (Alternately, we chould copy the list and share the
12641         actual pad templates (not the list), but that would require
12642         changing every plugin to move pad template registration from
12643         base_init to class_init.)
12644
12645 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12646
12647         * gst/gstelement.c: (gst_element_class_add_pad_template):
12648           Refuse registering a pad template if another pad template
12649           with the same name already exists (#114715).
12650
12651 2004-01-02  David Schleef  <ds@schleef.org>
12652
12653         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
12654         (gst_caps_is_equal_fixed): Add new function.
12655         * gst/gstcaps.h: ditto.
12656         * gst/gstpad.c: (gst_real_pad_class_init),
12657         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
12658         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
12659         check new caps against existing caps -- if they're the same, return
12660         OK without renegotiating.  caps-nego-failed signal fixed so that
12661         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
12662         to save an extra caps copy.  Don't complete negotiation if a pad
12663         link function returns DELAYED.
12664
12665 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12666
12667         * gst/gstpad.c: (gst_pad_try_relink_filtered):
12668           Fix wrong g_return_if_fail
12669
12670 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
12671
12672         * gst/gstbin.c: (gst_bin_class_init):
12673         Change the marshalling of element_added/element_removed
12674         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
12675         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
12676
12677 2004-01-01  David Schleef  <ds@schleef.org>
12678
12679         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12680         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
12681         (gst_pad_use_explicit_caps):
12682         * gst/gstpad.h:
12683         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
12684         to use an internal getcaps and link fuction so that negotiation
12685         always results in the explicitly set caps.
12686         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
12687         are particularly useful for decoders.
12688
12689 2003-12-31  David Schleef  <ds@schleef.org>
12690
12691         * gst/elements/gstidentity.c: (gst_identity_class_init),
12692         (gst_identity_init), (gst_identity_chain),
12693         (gst_identity_set_property), (gst_identity_get_property):
12694         * gst/elements/gstidentity.h:
12695         * gst/gstqueue.c: (gst_queue_init):
12696           Negotiation fixes.
12697
12698 2003-12-31  David Schleef  <ds@schleef.org>
12699
12700         * gst/gstcaps.c: (gst_caps_intersect),
12701         (_gst_caps_normalize_foreach), (gst_caps_normalize):
12702           Implement gst_caps_normalize().
12703         * testsuite/caps/normalisation.c: (main):
12704           Add an additional test
12705
12706 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12707
12708         * gst/gstqueue.c: (gst_queue_init):
12709           use gst_pad_proxy_getcaps()
12710
12711 2003-12-31  David Schleef  <ds@schleef.org>
12712
12713         * gst/elements/gstshaper.c: (gst_shaper_link):
12714         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12715         * gst/gstqueue.c: (gst_queue_link):
12716           Negotiation fixes.
12717
12718 2003-12-31  David Schleef  <ds@schleef.org>
12719
12720         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
12721         * gst/gstpad.h: Add functions that are useful as default pad
12722         link and fixate functions for elements.
12723
12724 2003-12-30  David Schleef  <ds@schleef.org>
12725
12726         * gst/gstpad.c: (gst_pad_link_try):
12727           Fix segfault when attempting to return to old caps
12728
12729 2003-12-29  David Schleef  <ds@schleef.org>
12730
12731         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
12732         (gst_caps_structure_simplify), (gst_caps_simplify):
12733         * gst/gstcaps.h:
12734           Add simplify function
12735         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
12736         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
12737         * gst/gstpad.h:
12738           Copy over srcnotify, sinknotify when calling old pad_link
12739           functions.  Add new is_negotiated() function.
12740         * gst/gststructure.c: (gst_structure_copy):
12741           Fix an incredibly stupid bug that should have been noticed
12742           weeks ago.  _copy() returned the argument, not the new copy.
12743
12744 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12745
12746         * gst/gstcaps.c: (gst_caps_append):
12747           add sanity checks
12748         * gst/gstcaps.h: (gst_caps_debug):
12749           remove, it doesn't exist anymore.
12750         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
12751         (gst_element_threadsafe_properties_post_run):
12752           make debugging messages not clutter up THREAD debug category
12753         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
12754         (gst_element_change_state):
12755           update to new caps API
12756         * gst/gstinterface.c: (gst_implements_interface_cast):
12757           don't put vital code in g_return_if_fail
12758         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
12759         (gst_pad_link_filtered):
12760           add pst_pad_try_link and use it.
12761         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
12762           implement correctly, deprecate first one.
12763         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
12764           add and implement.
12765         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
12766           implement.
12767         (gst_pad_get_negotiated_caps):
12768           add and implement. Make GST_PAD_CAPS call this function.
12769         (gst_pad_get_caps):
12770           remove unneeded check..
12771         (gst_pad_recover_caps_error):
12772           disable, always return FALSE.
12773         (gst_real_pad_dispose):
12774           don't free caps and appfilter anymore, they're unused.
12775         * gst/gstpad.h:
12776           Reflect changes mentioned above.
12777         * gst/gstsystemclock.c: (gst_system_clock_wait):
12778           Make 'clock is way behind' a debugging message.
12779         * gst/gstthread.c: (gst_thread_change_state):
12780           Fix debugging message
12781
12782 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12783
12784         * gst/gstinfo.h:
12785           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
12786         * docs/gst/tmpl/gstreamer-unused.sgml:
12787           removed all traces of cvs conflicts
12788
12789 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12790
12791         * configure.ac:
12792         * gst/schedulers/cothreads_compat.h:
12793         * libs/Makefile.am:
12794           remove last instances of wingo cothread usage
12795
12796 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12797
12798         * gst/gstplugin.c:
12799         * gst/gstversion.h.in:
12800         * gst/parse/grammar.y:
12801           change comment block from /** to /* when not gtk-doc comments
12802
12803 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12804
12805         * gst/gst.c: whitespace and doc style fixes
12806
12807 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12808
12809         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
12810
12811 2003-12-24  Colin Walters  <walters@verbum.org>
12812
12813         * gst/elements/gsttypefindelement.c:
12814           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
12815           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
12816           Don't double-free caps.
12817
12818 2003-12-23  David Schleef  <ds@schleef.org>
12819
12820         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
12821           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
12822           Many little fixes and additions of debug statements to
12823           get rhythmbox working.
12824
12825 2003-12-23  Colin Walters  <walters@verbum.org>
12826
12827         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
12828         Use GST_PAD_LINK_SUCCESSFUL.
12829
12830 2003-12-23  David Schleef  <ds@schleef.org>
12831
12832         * gst/elements/gstaggregator.c:
12833         * gst/elements/gsttee.c:
12834           Use gst_pad_proxy_getcaps().
12835         * gst/gstpad.c:
12836         * gst/gstpad.h:
12837           Add gst_pad_proxy_getcaps(), which filter elements can use
12838           as a generic getcaps implementation.
12839           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
12840           was advertised.
12841
12842 2003-12-23  David Schleef  <ds@schleef.org>
12843
12844         * gst/gstpad.c:
12845           Rearrange/rewrite much of the pad negotiation code, since it
12846           resembled pasta.  This actually changes the way some
12847           negotiation works, since the previous code was inconsistent
12848           depending on how it was invoked.  Add (internal) structure
12849           GstPadLink, which is used to hold some information (more in
12850           the future) about the link between two pads.  Fixes a number
12851           of bugs, including random lossage of filter caps when the
12852           initial negotiation is delayed.  A few functions are still
12853           unimplemented.
12854         * gst/gstpad.h:
12855           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
12856           these when testing GstPadLinkReturn values instead of comparing
12857           directly.
12858
12859 2003-12-23  David Schleef  <ds@schleef.org>
12860
12861         * gst/gstvalue.c: 
12862         * gst/gstvalue.h:
12863           Rearrange lots of code.  Change registration of compare function
12864           into registration of compare/serialize/deserialize functions.
12865           Doesn't include implementation of gst_value_[de]serialize(),
12866           but that should be easy.
12867
12868 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12869
12870         * docs/gst/gstreamer-sections.txt:
12871         * docs/gst/tmpl/gstprops.sgml: removed
12872         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
12873           David removed props and caps code, so let's remove their docs as well.
12874           Removed all no longer existing symbols from gstreamer-sections.txt
12875           
12876 2003-12-22  Colin Walters  <walters@verbum.org>
12877
12878         * gst/gsttaginterface.c, gst/gsttaginterface.h,
12879           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
12880           of tags directly.
12881
12882 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12883
12884         * gst/elements/gstelements.c:
12885           Set ranks of elements to NONE, so the autoplugger doesn't use them.
12886         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
12887           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
12888           gst_caps (peer).
12889
12890 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12891
12892         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
12893         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
12894         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
12895         (gst_spider_identity_sink_loop_type_finding):
12896         * gst/autoplug/gstspideridentity.h:
12897           Fix autoplugging in spider element, so it works with new caps.
12898           This was mainly caused by identifying empty caps incorrectly.
12899
12900 2003-12-22  David Schleef  <ds@schleef.org>
12901
12902         * gststructure.c, gstvalue.c, gstvalue.h: Add
12903           gst_value_init_and_copy() and use it, to avoid silly mistakes in
12904           using g_value_copy()
12905
12906 2003-12-21  David Schleef  <ds@schleef.org>
12907
12908         * many, many files: Merge CAPS branch.  This includes:
12909           - implemention of GstValue and several GstValue types
12910           - implemention of GstStructure
12911           - entire rewrite of GstCaps
12912           - removal of GstProps
12913           - many changes to GstPad to compensate for new caps paradigm
12914           - removal of GstBufferpool
12915         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
12916         gstvalue.h, gst/gstcaps[2]*.[ch]:
12917           - rename gstcaps2.[ch] to gstcaps.[ch]
12918
12919 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12920
12921         * gst/gstqueue.c: (gst_queue_handle_pending_events),
12922         (gst_queue_chain), (gst_queue_handle_src_event):
12923           implement timeout for sending events. Workaround for if the
12924           pipeline on this queue is not passing any data.
12925
12926 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
12927                                                                                 
12928         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
12929         * moved CVS to freedesktop.org
12930