Forgot changelog entry
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-16 Philippe Khalaf <burger@speedy.org>
2         * gst/elements/gstfdsrc.c:
3         * gst/elements/gstfdsrc.h:
4         * gst/elements/gstelements.c:
5         * gst/elements/Makefile.am:
6         Ported fdsrc to 0.9.
7
8 2005-07-16  Wim Taymans  <wim@fluendo.com>
9
10         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
11         (gst_base_sink_do_sync):
12         Fix compile error.
13
14 2005-07-16  Wim Taymans  <wim@fluendo.com>
15
16         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
17         (gst_base_sink_event), (gst_base_sink_get_times),
18         (gst_base_sink_do_sync), (gst_base_sink_change_state):
19         * gst/base/gstbasesink.h:
20         Store and use discont values when syncing buffers as described
21         in design docs.
22         
23         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
24         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
25         (gst_base_src_activate_push):
26         Push discont event when starting.
27
28         * gst/elements/gstidentity.c: (gst_identity_transform):
29         Small cleanups.
30
31         * gst/gstbin.c: (gst_bin_change_state):
32         Small cleanups in base_time  distribution.
33
34         * gst/gstelement.c: (gst_element_set_base_time),
35         (gst_element_get_base_time), (gst_element_change_state):
36         * gst/gstelement.h:
37         Added methods for the base_time of the element.
38         Some MT fixes.
39
40         * gst/gstpipeline.c: (gst_pipeline_send_event),
41         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
42         (gst_pipeline_get_last_stream_time):
43         * gst/gstpipeline.h:
44         MT fixes.
45         Handle seeking as described in design doc, remove stream_time
46         hack.
47         Cleanups clock and stream_time selection code. Added accessors
48         for the stream_time.
49         
50
51 2005-07-16  Andy Wingo  <wingo@pobox.com>
52
53         * gst/gsterror.c (_gst_core_errors_init): Use the magic word..
54
55 2005-07-16  Wim Taymans  <wim@fluendo.com>
56
57         * check/gst/gstbin.c: (GST_START_TEST):
58         Make elements silent as the deep_notify refs the
59         parent, which might make the test fail.
60
61         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
62         Don't hold the lock for too long.
63
64 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
65
66         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
67           Don't unref the caps we passed to gst_caps_make_writable() after
68           passing them. gst_caps_make_writable() will do that for us.
69
70 2005-07-15  Andy Wingo  <wingo@pobox.com>
71
72         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
73         (#157311).
74
75         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
76         own marshalling function for the handoff signal. Properly type the
77         buffer as a buffer. Fixes some warnings. Should do a more general
78         solution.
79         (gst_identity_class_init): Plug into the right marshaller.
80
81 2005-07-15  Wim Taymans  <wim@fluendo.com>
82
83         * docs/design/part-TODO.txt:
84         * docs/design/part-clocks.txt:
85         * docs/design/part-element-sink.txt:
86         * docs/design/part-events.txt:
87         * docs/design/part-gstpipeline.txt:
88         Updated docs, mostly DISCONT related.
89
90 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
91
92         * docs/pwg/building-pads.xml:
93           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
94
95 2005-07-15  Andy Wingo  <wingo@pobox.com>
96
97         * tools/gst-typefind.c: Update, add copyright block.
98
99         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
100         Normalize and truncate caps before fixation.
101
102         * gst/gstcaps.h:
103         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
104         discards all but the first structure from its argument.
105
106 2005-07-15  Wim Taymans  <wim@fluendo.com>
107
108         * gst/base/gstbasetransform.c: (gst_base_transform_init),
109         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
110         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
111         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
112         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
113         (gst_base_transform_chain), (gst_base_transform_change_state),
114         (gst_base_transform_set_passthrough),
115         (gst_base_transform_is_passthrough):
116         * gst/base/gstbasetransform.h:
117         Make passthrough work using the bufferpools.
118         Changed API a bit, subclasses have to write into a buffer
119         provided by the base class.
120         More debug info in nego functions.
121         
122         * gst/elements/gstidentity.c: (gst_identity_init),
123         (gst_identity_transform):
124         Port to new base class.
125
126 2005-07-15  Wim Taymans  <wim@fluendo.com>
127
128         * gst/gstmessage.c: (gst_message_new_state_changed):
129         * tools/gst-launch.c: (event_loop), (main):
130         Totally dump messages in -launch with the -m option.
131         Fix message name for State messages,
132
133 2005-07-14  Wim Taymans  <wim@fluendo.com>
134
135         * gst/base/gstbasesrc.c: (gst_base_src_loop):
136         Post error messages on errors.
137
138 2005-07-14  Wim Taymans  <wim@fluendo.com>
139
140         * gst/gstcaps.c: (gst_caps_do_simplify):
141         Remove debug info.
142
143         * gst/gsterror.h:
144         Define error for stream stopped.
145
146         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
147         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
148         Do proper return values.
149
150         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
151         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
152         (gst_pad_get_range):
153         Better return values.
154
155         * gst/gstpad.h:
156         Reorganise return values, add macro to check for fatal errors.
157
158         * gst/gstqueue.c: (gst_queue_chain):
159         Return proper GstFlowReturn values,
160
161 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
162
163         * docs/gst/gstreamer-sections.txt:
164         * docs/gst/gstreamer.types:
165         * docs/gst/tmpl/gst.sgml:
166         * docs/gst/tmpl/gstbasesink.sgml:
167         * docs/gst/tmpl/gstbasesrc.sgml:
168         * docs/gst/tmpl/gstbasetransform.sgml:
169         * docs/gst/tmpl/gstbin.sgml:
170         * docs/gst/tmpl/gstbuffer.sgml:
171         * docs/gst/tmpl/gstcaps.sgml:
172         * docs/gst/tmpl/gstclock.sgml:
173         * docs/gst/tmpl/gstcompat.sgml:
174         * docs/gst/tmpl/gstconfig.sgml:
175         * docs/gst/tmpl/gstelement.sgml:
176         * docs/gst/tmpl/gstelementdetails.sgml:
177         * docs/gst/tmpl/gstelementfactory.sgml:
178         * docs/gst/tmpl/gstenumtypes.sgml:
179         * docs/gst/tmpl/gsterror.sgml:
180         * docs/gst/tmpl/gstevent.sgml:
181         * docs/gst/tmpl/gstfakesink.sgml:
182         * docs/gst/tmpl/gstfakesrc.sgml:
183         * docs/gst/tmpl/gstfilesink.sgml:
184         * docs/gst/tmpl/gstfilesrc.sgml:
185         * docs/gst/tmpl/gstfilter.sgml:
186         * docs/gst/tmpl/gstformat.sgml:
187         * docs/gst/tmpl/gstghostpad.sgml:
188         * docs/gst/tmpl/gstimplementsinterface.sgml:
189         * docs/gst/tmpl/gstindex.sgml:
190         * docs/gst/tmpl/gstindexfactory.sgml:
191         * docs/gst/tmpl/gstinfo.sgml:
192         * docs/gst/tmpl/gstiterator.sgml:
193         * docs/gst/tmpl/gstmacros.sgml:
194         * docs/gst/tmpl/gstmemchunk.sgml:
195         * docs/gst/tmpl/gstminiobject.sgml:
196         * docs/gst/tmpl/gstobject.sgml:
197         * docs/gst/tmpl/gstpad.sgml:
198         * docs/gst/tmpl/gstpadtemplate.sgml:
199         * docs/gst/tmpl/gstparse.sgml:
200         * docs/gst/tmpl/gstpipeline.sgml:
201         * docs/gst/tmpl/gstplugin.sgml:
202         * docs/gst/tmpl/gstpluginfeature.sgml:
203         * docs/gst/tmpl/gstquery.sgml:
204         * docs/gst/tmpl/gstqueue.sgml:
205         * docs/gst/tmpl/gstregistry.sgml:
206         * docs/gst/tmpl/gstregistrypool.sgml:
207         * docs/gst/tmpl/gstscheduler.sgml:
208         * docs/gst/tmpl/gstschedulerfactory.sgml:
209         * docs/gst/tmpl/gststructure.sgml:
210         * docs/gst/tmpl/gstsystemclock.sgml:
211         * docs/gst/tmpl/gsttaglist.sgml:
212         * docs/gst/tmpl/gsttagsetter.sgml:
213         * docs/gst/tmpl/gsttrace.sgml:
214         * docs/gst/tmpl/gsttrashstack.sgml:
215         * docs/gst/tmpl/gsttypefind.sgml:
216         * docs/gst/tmpl/gsttypefindfactory.sgml:
217         * docs/gst/tmpl/gsttypes.sgml:
218         * docs/gst/tmpl/gsturihandler.sgml:
219         * docs/gst/tmpl/gsturitype.sgml:
220         * docs/gst/tmpl/gstutils.sgml:
221         * docs/gst/tmpl/gstvalue.sgml:
222         * docs/gst/tmpl/gstversion.sgml:
223         * docs/gst/tmpl/gstxml.sgml:
224         * docs/libs/tmpl/gstcontrol.sgml:
225         * docs/libs/tmpl/gstdataprotocol.sgml:
226         * docs/libs/tmpl/gstdparam.sgml:
227         * docs/libs/tmpl/gstdplinint.sgml:
228         * docs/libs/tmpl/gstdpman.sgml:
229         * docs/libs/tmpl/gstdpsmooth.sgml:
230         * docs/libs/tmpl/gstgetbits.sgml:
231         * docs/libs/tmpl/gstunitconvert.sgml:
232         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
233         (gst_push_src_base_init), (gst_push_src_class_init),
234         (gst_push_src_init), (gst_push_src_create):
235         * gst/base/gstpushsrc.h:
236         * gst/elements/gstelements.c:
237         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
238         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
239         (gst_fake_sink_init), (gst_fake_sink_set_property),
240         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
241         (gst_fake_sink_event), (gst_fake_sink_preroll),
242         (gst_fake_sink_render), (gst_fake_sink_change_state):
243         * gst/elements/gstfakesink.h:
244         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
245         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
246         (gst_fake_src_base_init), (gst_fake_src_class_init),
247         (gst_fake_src_init), (gst_fake_src_event_handler),
248         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
249         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
250         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
251         (gst_fake_src_create_buffer), (gst_fake_src_create),
252         (gst_fake_src_start), (gst_fake_src_stop):
253         * gst/elements/gstfakesrc.h:
254         * gst/elements/gstfilesink.c: (_do_init),
255         (gst_file_sink_base_init), (gst_file_sink_class_init),
256         (gst_file_sink_init), (gst_file_sink_dispose),
257         (gst_file_sink_set_location), (gst_file_sink_set_property),
258         (gst_file_sink_get_property), (gst_file_sink_open_file),
259         (gst_file_sink_close_file), (gst_file_sink_query),
260         (gst_file_sink_event), (gst_file_sink_render),
261         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
262         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
263         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
264         * gst/elements/gstfilesink.h:
265         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
266         (gst_file_src_class_init), (gst_file_src_init),
267         (gst_file_src_finalize), (gst_file_src_set_location),
268         (gst_file_src_set_property), (gst_file_src_get_property),
269         (gst_file_src_map_region), (gst_file_src_map_small_region),
270         (gst_file_src_create_mmap), (gst_file_src_create_read),
271         (gst_file_src_create), (gst_file_src_is_seekable),
272         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
273         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
274         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
275         (gst_file_src_uri_handler_init):
276         * gst/elements/gstfilesrc.h:
277           more autistic cleanliness in functions/names/defines
278
279 2005-07-13  Andy Wingo  <wingo@pobox.com>
280
281         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
282         source couldn't negotiate.
283
284         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
285         connections again.
286
287         * gst/gstutils.h:
288         * gst/gstutils.c (gst_element_link_pads_filtered): New old
289         function. I am channeling Hades. Put your boots on suckers!!!
290
291 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
292
293         * testsuite/caps/Makefile.am:
294         * testsuite/caps/value_compare.c:
295         * testsuite/caps/value_intersect.c:
296         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
297           move two testsuite apps over to the check dir
298
299 2005-07-12  Wim Taymans  <wim@fluendo.com>
300
301         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
302         Added more debug info in the negotiate process.
303
304         * gst/gstmessage.h:
305         Prepare for segment playback.
306
307         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
308         Better debugging.
309
310         * gst/gstutils.c:
311         Some more docs.
312
313         * tools/gst-launch.c: (main):
314         NULL pipeline on errors.
315
316 2005-07-12  Andy Wingo  <wingo@pobox.com>
317
318         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
319         not it comes from a malloc region. Make sure our copy gets freed.
320
321 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
322
323         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
324         * check/gst/gstmessage.c: (GST_START_TEST):
325         * check/gst/gststructure.c: (GST_START_TEST),
326         (gst_structure_suite), (main):
327           more testing
328         * gst/gstelement.c: (gst_element_message_full):
329           clean up GError and debug string now that they get copied
330         * gst/gstmessage.c: (gst_message_new_error),
331         (gst_message_new_warning), (gst_message_parse_error),
332         (gst_message_parse_warning):
333           use GST_TYPE_G_ERROR for structure_new, and take copies of
334           arguments, so that we don't mess up refcounting
335
336 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
337
338         * check/Makefile.am:
339           add per-test valgrind targets
340         * check/gst-libs/gdp.c: (GST_START_TEST),
341         (gst_data_protocol_suite), (main):
342           clean up
343
344 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
345
346         * check/Makefile.am:
347           instate more valgrindable tests
348         * check/elements/gstfakesrc.c: (chain_func), (event_func),
349         (GST_START_TEST), (fakesrc_suite):
350         * check/gst/gstpad.c: (GST_START_TEST):
351         * check/gst/gststructure.c: (GST_START_TEST):
352           fix test leaks
353         * docs/gst/tmpl/gstminiobject.sgml:
354         * gst/gstpad.c: (gst_pad_finalize):
355           fix the static mutex leak
356
357 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
358
359         * check/Makefile.am:
360           add two more tests for valgrinding
361         * check/gst/gstvalue.c: (GST_START_TEST):
362           test refcount of deserialized buffer, found a leak
363         * docs/gst/gstreamer-docs.sgml:
364         * docs/gst/gstreamer-sections.txt:
365         * docs/gst/gstreamer.types:
366         * docs/gst/tmpl/gstminiobject.sgml:
367           add miniobject to docs
368         * gst/gstminiobject.c:
369           add some docs
370         * gst/gstvalue.c: (gst_value_deserialize_buffer),
371         (gst_string_unwrap):
372           fix a hard-to-find invalid write for one of the tests
373           fix a leak for deserialized buffers
374
375 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
376
377         * docs/pwg/advanced-events.xml:
378         * docs/pwg/advanced-request.xml:
379         * docs/pwg/advanced-scheduling.xml:
380         * docs/pwg/appendix-porting.xml:
381         * docs/pwg/building-boiler.xml:
382         * docs/pwg/intro-preface.xml:
383         * docs/pwg/other-ntoone.xml:
384           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
385           of example code and explanation for pad activation, loop() and
386           getrange() functions and a bit more. Remove old comments pointing
387           to loop-functions.
388         * examples/pwg/Makefile.am:
389           Add loop/getrange examples.
390
391 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
392
393         * configure.ac:
394           check for valgrind binary + some fixes
395         * check/gst.supp:
396           valgrind suppressions for the tests
397         * check/Makefile.am:
398           add a valgrind: target that valgrinds the unit tests
399         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
400         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
401         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
402         * check/gst/gstghostpad.c:
403           added some cleanup
404         * check/gst/gstdata.c:
405           removed
406         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
407         (thread_unref), (gst_mini_object_suite), (main):
408           added
409         * gst/gst.c: (gst_deinit):
410         * gst/gst.h:
411           add a method to clean up.
412         * gst/gstsystemclock.c: (gst_system_clock_dispose),
413         (gst_system_clock_obtain):
414           allow for disposing the system clock.
415         * tools/gst-launch.c: (main):
416           deinit
417
418 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
419
420         * docs/gst/tmpl/gstbasesrc.sgml:
421         * docs/gst/tmpl/gstfakesrc.sgml:
422         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
423         (gst_base_src_init), (gst_base_src_set_property),
424         (gst_base_src_get_property), (gst_base_src_get_range),
425         (gst_base_src_start):
426         * gst/base/gstbasesrc.h:
427           add num-buffers property
428         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
429         (gst_fakesrc_init), (gst_fakesrc_set_property),
430         (gst_fakesrc_get_property), (gst_fakesrc_create),
431         (gst_fakesrc_start):
432           remove num-buffers property
433
434 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
435
436         * docs/gst/gstreamer-sections.txt:
437         * docs/gst/tmpl/gstbasesink.sgml:
438         * docs/gst/tmpl/gstbasesrc.sgml:
439         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
440         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
441         (gst_base_sink_finalize), (gst_base_sink_set_clock),
442         (gst_base_sink_set_property), (gst_base_sink_get_property),
443         (gst_base_sink_handle_object), (gst_base_sink_event),
444         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
445         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
446         (gst_base_sink_loop), (gst_base_sink_deactivate),
447         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
448         (gst_base_sink_change_state):
449         * gst/base/gstbasesink.h:
450         * gst/base/gstbasesrc.h:
451         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
452         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
453         (gst_filesink_init):
454           more macro splitting
455
456 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
457
458         * gst/gstelement.c: (gst_element_get_bus):
459           add debug
460         * tools/gst-launch.c: (check_intr), (event_loop):
461           fix bus leaks
462
463 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
464
465         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
466           fix a caps leak
467
468 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
469
470         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
471         (gst_base_src_finalize):
472           add finalize method and clean up properly
473         * gst/gstpipeline.c: (gst_pipeline_dispose):
474           add debug
475
476 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
477
478         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
479         (gst_bin_suite):
480           add more things to check
481         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
482         * gst/gstelement.c:
483           more debug
484
485 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
486
487         * check/elements/gstfakesrc.c: (chain_func), (event_func),
488         (GST_START_TEST), (fakesrc_suite):
489         * check/gst-libs/gdp.c: (GST_START_TEST):
490         * check/gst/gst.c: (GST_START_TEST):
491         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
492         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
493         * check/gst/gstbus.c: (GST_START_TEST):
494         * check/gst/gstcaps.c: (GST_START_TEST):
495         * check/gst/gstdata.c: (GST_START_TEST):
496         * check/gst/gstelement.c: (GST_START_TEST):
497         * check/gst/gstghostpad.c: (GST_START_TEST):
498         * check/gst/gstiterator.c: (GST_START_TEST):
499         * check/gst/gstmessage.c: (GST_START_TEST):
500         * check/gst/gstobject.c: (GST_START_TEST):
501         * check/gst/gstpad.c: (GST_START_TEST):
502         * check/gst/gststructure.c: (GST_START_TEST):
503         * check/gst/gstsystemclock.c: (GST_START_TEST),
504         (gst_systemclock_suite):
505         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
506         * check/gst/gstvalue.c: (GST_START_TEST):
507         * check/pipelines/cleanup.c: (GST_START_TEST):
508         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
509         * check/states/sinks.c: (GST_START_TEST):
510         * check/gstcheck.c: (gst_check_init):
511         * check/gstcheck.h:
512           add debugging category
513           use GST_START_TEST now, so we add a debug line
514
515 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
516
517         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
518           add test for state change message on a bin
519         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
520           add another test
521         * gst/gstbin.c: (gst_bin_init):
522         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
523         * gst/gstelement.c: (gst_element_post_message),
524         (gst_element_set_state):
525         * gst/gstelementfactory.c: (gst_element_factory_create):
526         * gst/gstmessage.c: (gst_message_new):
527         * gst/gstscheduler.c:
528           various debugging additions and cleanups
529
530 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
531
532         * check/Makefile.am:
533         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
534         (main):
535           adding tests for elements
536         * gst/gstelement.c: (gst_element_dispose):
537
538 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
539
540         * gst/registries/gstlibxmlregistry.c: (load_feature):
541           plug more leaks.  A simple gst_init() now is leakfree, yay.
542
543 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
544
545         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
546         (gst_xml_registry_load):
547           plug another memleak
548
549 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
550
551         * configure.ac:
552           use GST_SET_ERROR_CFLAGS
553         * docs/faq/cvs.xml:
554           change to ERROR_CFLAGS
555
556 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
557
558         * configure.ac:
559           make GST_ERROR_CFLAGS overridable and re-enable Werror
560         * docs/faq/cvs.xml:
561           add a note about error CFLAGS
562         * docs/gst/tmpl/gstfakesrc.sgml:
563         * gst/elements/gstfakesrc.c:
564           comment out some unused code
565         * gst/gst.c: (split_and_iterate):
566         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
567         (load_feature):
568           plug some memleaks
569
570 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
571
572         * common/Makefile.am:
573         * common/gtk-doc.mak:
574         * docs/gst/Makefile.am:
575           factor out gtk-doc.mak
576
577 2005-07-07  Wim Taymans  <wim@fluendo.com>
578
579         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
580         (gst_thread_scheduler_dispose):
581         Unlock the STREAM_LOCK completely.
582
583 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
584
585         * check/Makefile.am:
586         * check/elements/.cvsignore:
587         * check/elements/gstfakesrc.c: (chain_func), (event_func),
588         (START_TEST), (fakesrc_suite), (main):
589         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
590         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
591         (gst_fakesrc_create), (gst_fakesrc_start):
592         * gst/elements/gstfakesrc.h:
593           adding a first element test
594
595 2005-07-07  Andy Wingo  <wingo@pobox.com>
596
597         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
598         debug message.
599
600 2005-07-07  Wim Taymans  <wim@fluendo.com>
601
602         * gst/gstquery.c:
603         * gst/gstquery.h:
604         Remove old types
605
606 2005-07-07  Wim Taymans  <wim@fluendo.com>
607
608         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
609         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
610         Allow subclasses to implement their own negotiation.
611
612 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
613
614         * docs/design/part-gstbin.txt:
615         * docs/design/part-gstpipeline.txt:
616           Update design notes to reflect the movement of
617           responsibility for bus handling from GstPipeline to
618           GstBin
619
620 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
621
622         * configure.ac:
623           Remove unnecessary queue2/3/4 examples.
624
625 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
626
627         * examples/Makefile.am:
628         * examples/helloworld/helloworld.c: (event_loop), (main):
629         * examples/queue/queue.c: (event_loop), (main):
630         * examples/queue2/queue2.c: (main):
631           Update a couple of the examples to work again.
632
633         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
634         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
635          Spelling corrections and extra debug.
636         
637         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
638         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
639         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
640         * gst/gstbin.h:
641         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
642         (gst_pipeline_change_state):
643         * gst/gstpipeline.h:
644           Move the bus handler for children to the GstBin, and create a
645           separate bus for receiving messages from children to the one the
646           bus sends 'upwards' on.
647
648 2005-07-06  Wim Taymans  <wim@fluendo.com>
649
650         * gst/base/README:
651         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
652         (gst_base_sink_handle_object), (gst_base_sink_loop),
653         (gst_base_sink_change_state):
654         * gst/base/gstbasesink.h:
655         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
656         (gst_base_src_init), (gst_base_src_setcaps),
657         (gst_base_src_getcaps), (gst_base_src_loop),
658         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
659         (gst_base_src_start), (gst_base_src_change_state):
660         * gst/base/gstbasesrc.h:
661         Make basesrc negotiate.
662         Handle the case where preroll fails in basesink.
663         Update README.
664
665 2005-07-06  Wim Taymans  <wim@fluendo.com>
666
667         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
668         Implement the fixate function.
669         Clean up acceptcaps.
670
671 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
672
673         * docs/pwg/building-filterfactory.xml:
674         * docs/pwg/pwg.xml:
675           Remove never-written filter-factory chapter; I'll add the various
676           base classes to part 4 ("other element types") later on.
677
678 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
679
680         * docs/pwg/advanced-negotiation.xml:
681         * docs/pwg/building-boiler.xml:
682         * docs/pwg/building-pads.xml:
683         * docs/pwg/pwg.xml:
684         * examples/pwg/Makefile.am:
685           Add a chapter on caps negotiation, simplify the original code
686           samples a bit w.r.t. caps negotiation, add link to the advanced
687           section. Add a bunch of examples showing different use cases of
688           different types of caps negotiation. Upstream renegotiation isn't
689           fully documented yet since nobody knows how that works.
690
691 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
692
693         * check/gst/gstpad.c:
694         * check/gstcheck.c:
695         * gst/gstpad.c: (gst_pad_get_internal_links_default):
696           if pad has no parent, return NULL as list of internal links
697
698 2005-07-05  Andy Wingo  <wingo@pobox.com>
699
700         * gst/elements/gstfilesrc.c:
701         * gst/elements/gstfakesrc.c: 
702         * gst/base/gstpushsrc.c:
703         * gst/base/gstbasesrc.h: 
704         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
705         
706 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
707
708         * Makefile.am:
709           better report generation target (lcov needs a patch)
710
711 2005-07-05  Andy Wingo  <wingo@pobox.com>
712
713         * gst/elements, testsuite: Null if we got it...
714
715 2005-07-05  Wim Taymans  <wim@fluendo.com>
716
717         * configure.ac:
718         * libs/gst/dataprotocol/Makefile.am:
719         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
720         * libs/gst/dataprotocol/dataprotocol.h:
721         * pkgconfig/Makefile.am:
722         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
723         * pkgconfig/gstreamer-dataprotocol.pc.in:
724         Ported dataprotol to 0.9. 
725         Added pkgconfig files.
726
727 2005-07-05  Andy Wingo  <wingo@pobox.com>
728
729         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
730         Default to returning TRUE for the case when tranform_caps returns
731         a fixed caps, like for identity or volume.
732
733         * check/gst/gstbus.c (pound_bus_with_messages): 
734         * check/gst/gstmessage.c (START_TEST): 
735         * check/pipelines/simple_launch_lines.c (got_handoff): Application
736         message API change.
737
738         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
739         logic weaks here: always run transform_caps, trying passthrough
740         operation only if the original caps intersects with the transform.
741
742         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
743         source and sink caps.
744
745         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
746         Intersect the peer caps with the pad template before going into
747         transform_caps.
748         (gst_base_transform_transform_caps): More debugging.
749
750         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
751         src argument.
752
753 2005-07-04  Edward Hervey  <edward@fluendo.com>
754
755         * gst/gstutils.c:
756         * gst/gstutils.h:
757         (gst_pad_add_*_probe): now returns the signal id for better wrapping
758         in bindings.
759
760 2005-07-04  Andy Wingo  <wingo@pobox.com>
761
762         * check/gst/gstpad.c: Only set explicit caps on pads.
763
764 2005-07-01  Andy Wingo  <wingo@pobox.com>
765
766         * tests/network-clock.scm: Commentary update.
767
768         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
769         Didn't really make sense, not implementable with basetransform,
770         etc.
771         (gst_identity_transform): Unref inbuf via make_writable. Feeble
772         attempt at implementing the sync property, needs an unlock method.
773
774         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
775         New func, by default returns the same caps (the identity
776         transformation).
777         (gst_base_transform_getcaps): Uses transform_caps to return
778         something sensible.
779         (gst_base_transform_setcaps): Complicated logic to get caps on
780         both pads, even if they are different, and to call set_caps once
781         for every time both pads get their caps set.
782         (gst_base_transform_handle_buffer): Give the ref to the transform
783         function. Allows in-place modification of the buffer.
784
785         * gst/base/gstbasetransform.h (transform_caps): New class method.
786         Given caps on one side, what can I do on the other.
787         (set_caps): Take two caps, one for each side of the element.
788
789         * gst/gstpad.h:
790         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
791         caps in place. This is safe because we can check the mutability of
792         the caps, and a good idea because fixate functions are just called
793         as a matter of last resort. (Not actually implemented.)
794         (gst_pad_set_caps): If the caps we're setting is actually the same
795         as the existing pad caps, just update the pointer without calling
796         setcaps. Assert that caps is either NULL or fixed, as per the
797         docs.
798
799         * gst/gstghostpad.c: Update for fixate changes.
800
801 2005-07-02  Andy Wingo  <wingo@pobox.com>
802
803         * gst/gstcaps.c:
804         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
805         two refcounts makes it immutable, which is enough. Doc more.
806
807 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
808
809         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
810           Put the mini_object into GValue as a mini_object,
811           not a gpointer, since that's how we declared
812           the signal.
813
814 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
815
816         * examples/pwg/Makefile.am:
817           Fix buildbot again.
818
819 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
820
821         * docs/pwg/building-testapp.xml:
822           Add extra check.
823         * examples/pwg/Makefile.am:
824           Fix buildbot.
825
826 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
827
828         * configure.ac:
829         * examples/Makefile.am:
830         * examples/pwg/Makefile.am:
831         * examples/pwg/extract.pl:
832           Enable building the PWG examples.
833         * docs/pwg/advanced-interfaces.xml:
834           Add URI interface stub.
835         * docs/pwg/advanced-types.xml:
836         * docs/pwg/other-autoplugger.xml:
837         * docs/pwg/appendix-porting.xml:
838         * docs/pwg/pwg.xml:
839           Add porting guide (mostly stubs), remove autoplugging (see ADM).
840         * docs/pwg/building-boiler.xml:
841         * docs/pwg/building-chainfn.xml:
842         * docs/pwg/building-pads.xml:
843         * docs/pwg/building-props.xml:
844         * docs/pwg/building-state.xml:
845         * docs/pwg/building-testapp.xml:
846           Update the building-*.xml parts for 0.9 changes. All examples
847           code blocks compile in examples/pwg/*.
848
849 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
850
851         * docs/manual/advanced-autoplugging.xml:
852         * docs/manual/appendix-checklist.xml:
853         * docs/manual/appendix-integration.xml:
854         * docs/manual/highlevel-components.xml:
855           Fix playbin/decodebin examples, update docs a bit, mention bus
856           instead of signals in various places, mention kmplayer and
857           kaffeine since they have a working GStreamer backend in the KDE
858           section.
859
860 2005-06-30  Wim Taymans  <wim@fluendo.com>
861
862         * CHANGES-0.9:
863         * docs/design/draft-ghostpads.txt:
864         * docs/design/draft-push-pull.txt:
865         * docs/design/draft-query.txt:
866         * docs/design/part-TODO.txt:
867         * docs/design/part-query.txt:
868         Added CHANGES-0.9 doc, updated status of other docs.
869         
870         * gst/gstquery.h:
871         Remove "hmm" macro
872
873 2005-06-30  Wim Taymans  <wim@fluendo.com>
874
875         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
876         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
877         (gst_base_sink_change_state):
878         * gst/base/gstbasesink.h:
879         Some tweaks, only EOS and a buffer complete a preroll.
880
881 2005-06-30  Andy Wingo  <wingo@pobox.com>
882
883         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
884         activate_push down to the internal pad as well.
885
886 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
887
888         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
889
890         * gst/gsttaginterface.c:
891           Some documentation fixes (#307394 and #307397).
892
893 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
894
895         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
896
897         * gst/gstvalue.c: (gst_value_intersect_list):
898           Fix memleak (#309125).
899
900 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
901
902         * docs/manual/advanced-dataaccess.xml:
903           Fix fakesrc example to compile; doesn't work, bug somewhere...?
904         * docs/manual/basics-pads.xml:
905           Add reference for filtered caps to above chapter.
906
907 2005-06-30  Wim Taymans  <wim@fluendo.com>
908
909         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
910         (gst_bin_change_state):
911         Probes are gone.
912         Lame attempt at making the state change function a bit
913         more readable.
914
915 2005-06-30  Wim Taymans  <wim@fluendo.com>
916
917         * docs/design/part-clocks.txt:
918         * docs/design/part-element-sink.txt:
919         * docs/design/part-events.txt:
920         * docs/design/part-preroll.txt:
921         * docs/design/part-states.txt:
922         Some more tweeks and additions to the docs.
923
924 2005-06-30  Wim Taymans  <wim@fluendo.com>
925
926         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
927         (default_have_data), (gst_pad_class_init), (gst_pad_init),
928         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
929         (gst_pad_check_pull_range), (gst_pad_get_range),
930         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
931         * gst/gstpad.h:
932         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
933         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
934         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
935         (gst_pad_remove_buffer_probe):
936         Removed atomic operations, use existing LOCK.
937         Move exception handling out of main code path.
938
939 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
940
941         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
942         (silly_return_true_function), (gst_pad_class_init),
943         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
944         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
945         (gst_pad_send_event):
946           Fix accumulator, add default value by using _emitv() instead
947           of _emit() for signal emission.
948
949 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
950
951         * docs/manual/advanced-dataaccess.xml:
952         * examples/manual/Makefile.am:
953           Add probe example.
954         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
955           Make work (??).
956
957 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
958
959         * gst/elements/gstfilesink.c: (gst_filesink_render):
960           Simplify code so that we don't have to handle short
961           writes and return GST_FLOW_ERROR if an error occured.
962
963 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
964
965         * docs/gst/gstreamer-docs.sgml:
966           Remove probes more.
967
968 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
969
970         * docs/gst/gstreamer-sections.txt:
971         * docs/gst/tmpl/gstpad.sgml:
972         * docs/gst/tmpl/gstprobe.sgml:
973         * gst/Makefile.am:
974         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
975         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
976         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
977         (gst_pad_push_event), (gst_pad_send_event):
978         * gst/gstpad.h:
979         * gst/gstutils.c: (gst_pad_add_data_probe),
980         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
981         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
982         (gst_pad_remove_buffer_probe):
983         * gst/gstutils.h:
984           Remove old probes, add new g-signal-based probes and some utility
985           functions.
986
987 2005-06-29  Edward Hervey  <edward@fluendo.com>
988
989         * gst/gstelementfactory.c:
990         * gst/gstutils.h:
991         * gst/gstutils.c:
992         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
993         the definition to the header file.
994
995 2005-06-29  Andy Wingo  <wingo@pobox.com>
996
997         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
998         plugins from the source directory.
999
1000 2005-06-29  Wim Taymans  <wim@fluendo.com>
1001
1002         * docs/gst/tmpl/gstbuffer.sgml:
1003         * docs/gst/tmpl/gstclock.sgml:
1004         Some fixings for blantently wrong text.
1005
1006 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1007
1008         * check/Makefile.am:
1009         * gst/gst.c: (add_path_func), (init_pre):
1010         * gst/gstregistry.c: (gst_registry_add_path):
1011           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1012           only scan the GST_PLUGIN_PATH locations, and not add
1013           system locations
1014
1015 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1016
1017         * docs/gst/gstreamer-sections.txt:
1018         * docs/gst/tmpl/gstbasesrc.sgml:
1019         * gst/gstelement.c:
1020         * gst/gstelement.h:
1021         * gst/gstevent.c:
1022         * gst/gstutils.c:
1023           doc fixes
1024
1025 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1026
1027         * docs/manual/advanced-autoplugging.xml:
1028           Fix autoplugging example.
1029
1030 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1031
1032         * docs/manual/advanced-autoplugging.xml:
1033         * docs/manual/mime-world.fig:
1034           Try to get autoplugging working, fix type detection. Fix text
1035           in hello-world image.
1036
1037 2005-06-29  Wim Taymans  <wim@fluendo.com>
1038
1039         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1040         (gst_base_sink_change_state):
1041         Small debug line.
1042
1043         * gst/gstclock.h:
1044         map SIGNAL and BROADCAST to the right function.
1045
1046         * gst/gstobject.h:
1047         Remove redundant braces.
1048
1049         * gst/gstpad.c: (gst_pad_set_caps):
1050         Don't call setcaps function when reseting caps to NULL.
1051
1052         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1053         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1054         (gst_system_clock_id_unschedule):
1055         Use BROADCAST as this is what we do.
1056
1057 2005-06-29  Wim Taymans  <wim@fluendo.com>
1058
1059         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1060         We are actually prerolling before commiting the state
1061         change. 
1062
1063 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1064
1065         * docs/manual/advanced-clocks.xml:
1066         * docs/manual/advanced-interfaces.xml:
1067         * docs/manual/advanced-metadata.xml:
1068         * docs/manual/advanced-position.xml:
1069         * docs/manual/advanced-schedulers.xml:
1070         * docs/manual/advanced-threads.xml:
1071         * docs/manual/appendix-porting.xml:
1072         * docs/manual/basics-bins.xml:
1073         * docs/manual/basics-bus.xml:
1074         * docs/manual/basics-elements.xml:
1075         * docs/manual/basics-helloworld.xml:
1076         * docs/manual/basics-pads.xml:
1077         * docs/manual/highlevel-components.xml:
1078         * docs/manual/manual.xml:
1079         * docs/manual/thread.fig:
1080           Update (until threads/scheduling) Application Development Manual;
1081           remove GstThread, add GstBus, add simple porting checklist, add
1082           documentation for tag writing, clocks, make all examples until this
1083           part compile and run.
1084         * examples/manual/Makefile.am:
1085           Update from changes to Application Development Manual; add bus
1086           example, remove thread example.
1087
1088 2005-06-28  Wim Taymans  <wim@fluendo.com>
1089
1090         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1091         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1092         (gst_bus_source_dispatch):
1093         Add debugging messages.
1094         Make internal methods static.
1095         Handle the case where the bus is flushed in the handler.
1096         
1097         * gst/gstelement.c: (gst_element_get_bus):
1098         Fix refcount in _get_bus();
1099
1100         * gst/gstpipeline.c: (gst_pipeline_change_state),
1101         (gst_pipeline_get_clock_func):
1102         Clock refcounting fixes.
1103         Handle the case where preroll timed out more gracefully.
1104         
1105         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1106         Clean up the internal thread in dispose. This is needed
1107         for subclasses that actually get disposed.
1108         
1109         * gst/schedulers/threadscheduler.c:
1110         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1111         (gst_thread_scheduler_dispose):
1112         Free thread pool in dispose.
1113
1114 2005-06-28  Andy Wingo  <wingo@pobox.com>
1115
1116         * tests/network-clock-utils.scm (debug, print-event): New utils.
1117
1118         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1119         (*packet-loss*): Unified loss probability.
1120         (network-time): Report out-of-band events.
1121
1122         * tests/plot-data: Add support for out-of-band events. Hack it
1123         into this script instead of passing it down the pipe; should fix
1124         this later.
1125
1126 2005-06-28  Wim Taymans  <wim@fluendo.com>
1127
1128         * docs/gst/gstreamer.types:
1129         * docs/gst/tmpl/gstbasesrc.sgml:
1130         * docs/gst/tmpl/gstpad.sgml:
1131         Docs fixes.
1132
1133 2005-06-28  Wim Taymans  <wim@fluendo.com>
1134
1135         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1136         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1137         (gst_proxy_pad_do_fixatecaps):
1138         Correctly proxy the check_pull_range function.
1139
1140 2005-06-28  Andy Wingo  <wingo@pobox.com>
1141
1142         * tests/network-clock.scm: Removed need for slib.
1143         
1144 2005-06-28  Wim Taymans  <wim@fluendo.com>
1145
1146         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1147         (gst_basesink_preroll_queue_flush):
1148         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1149         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1150         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1151         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1152         (gst_proxy_pad_set_property):
1153         * gst/gstpad.c:
1154         * gst/gstpad.h:
1155         * gst/gstqueue.c: (gst_queue_init):
1156         The deprecated pad loop function is removed now.
1157
1158 2005-06-28  Andy Wingo  <wingo@pobox.com>
1159
1160         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1161         New parameters, simulate network packet loss.
1162
1163         * tests/network-clock-utils.scm: Initialize the RNG.
1164
1165 2005-06-28  Wim Taymans  <wim@fluendo.com>
1166
1167         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1168         (gst_basesink_event), (gst_basesink_deactivate):
1169         Flushing the preroll queue always needs to unlock the waiters.
1170
1171 2005-06-28  Edward Hervey  <edward@fluendo.com>
1172
1173         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1174         Wheen a seek was successful on a pipeline, set the stream_time to the
1175         seek offset in order to have a synchronized stream_time.
1176
1177 2005-06-28  Wim Taymans  <wim@fluendo.com>
1178
1179         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1180         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1181         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1182         (gst_proxy_pad_do_fixatecaps):
1183         Call wrapper function instead of just calling the function
1184         pointers. This takes care of any locking and whatmore.
1185
1186 2005-06-28  Wim Taymans  <wim@fluendo.com>
1187
1188         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1189         (gst_pad_pull_range):
1190         * gst/gstpad.h:
1191         CONNECTED -> LINKED.
1192
1193 2005-06-28  Andy Wingo  <wingo@pobox.com>
1194
1195         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1196         source-munging commit!!!
1197
1198         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1199         (gst_object_sink): Take gpointer arguments, not GstObject --
1200         avoids casts. Like GLib.
1201
1202         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1203         activate.
1204
1205 2005-06-27  Andy Wingo  <wingo@pobox.com>
1206
1207         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1208         remaining buffer.
1209
1210         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1211         returns a sorted copy of the trace list.
1212         (gst_alloc_trace_print_live): New API, only prints traces with
1213         live objects. Sort the list.
1214         (gst_alloc_trace_print_all): Sort the list.
1215         (gst_alloc_trace_print): Align columns.
1216
1217         * gst/elements/gstttypefindelement.c:
1218         * gst/elements/gsttee.c:
1219         * gst/base/gstbasesrc.c:
1220         * gst/base/gstbasesink.c:
1221         * gst/base/gstbasetransform.c:
1222         * gst/gstqueue.c: Adapt for pad activation changes.
1223
1224         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1225         sched.
1226         (gst_pipeline_dispose): Drop ref on sched.
1227
1228         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1229         (gst_pad_activate_default): Push mode by default.
1230         (pre_activate_switch, post_activate_switch): New stubs, things to
1231         do before and after switching activation modes on pads.
1232         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1233         the pad's activate function to choose which mode to activate.
1234         Shortcut on deactivation and call the right function directly.
1235         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1236         mode.
1237         (gst_pad_activate_push): New API, same for push mode.
1238         (gst_pad_set_activate_function) 
1239         (gst_pad_set_activatepull_function) 
1240         (gst_pad_set_activatepush_function): Setters for new API.
1241
1242         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1243         Trace all miniobjects.
1244         (gst_mini_object_make_writable): Unref the arg if we copy, like
1245         gst_caps_make_writable.
1246
1247         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1248
1249         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1250         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1251         Adapt for new pad API.
1252
1253         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1254
1255         * gst/gstelement.h:
1256         * gst/gstelement.c (gst_element_iterate_src_pads) 
1257         (gst_element_iterate_sink_pads): New API functions.
1258         
1259         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1260         should fold into gstiterator.c in some form.
1261         (gst_element_pads_activate): Simplified via use of fold and
1262         delegation of decisions to gstpad->activate.
1263
1264         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1265         help in debugging.
1266
1267         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1268         class once in init, like gstmessage. Didn't run into this issue
1269         but it seems correct. Don't initialize a trace, gstminiobject does
1270         that.
1271
1272         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1273         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1274         to the bus.
1275         (assert_live_count): New util function, uses alloc traces to check
1276         cleanup.
1277
1278         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1279         To be modified when unlink drops the internal pad.
1280
1281 2005-06-27  Wim Taymans  <wim@fluendo.com>
1282
1283         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1284         (gst_bin_change_state):
1285         Cleanup the get_state() function a little, make sure it
1286         iterates the same set of elements.
1287         Added stub iterate_state_order().
1288
1289 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1290
1291         * docs/gst/gstreamer-docs.sgml:
1292         * docs/gst/gstreamer-sections.txt:
1293         * docs/gst/gstreamer.types:
1294         * docs/gst/tmpl/gstbasesink.sgml:
1295         * docs/gst/tmpl/gstbasesrc.sgml:
1296         * docs/gst/tmpl/gstbasetransform.sgml:
1297         * docs/gst/tmpl/gstelement.sgml:
1298         * docs/gst/tmpl/gstiterator.sgml:
1299         * gst/base/gstbasesrc.c:
1300         * gst/base/gstbasesrc.h:
1301         * gst/base/gstbasetransform.h:
1302         * gst/gstelement.c:
1303         * gst/gstiterator.h:
1304           adding basetransform and iterator docs
1305
1306 2005-06-27  Andy Wingo  <wingo@pobox.com>
1307
1308         * docs/design/part-activation.txt: Notes on how activation should
1309         work -- not quite implemented yet.
1310
1311 2005-06-25  Wim Taymans  <wim@fluendo.com>
1312
1313         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1314         At least get the chain function correct, needs more
1315         fixing.
1316
1317 2005-06-25  Wim Taymans  <wim@fluendo.com>
1318
1319         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1320         (gst_basesink_handle_object), (gst_basesink_event),
1321         (gst_basesink_do_sync), (gst_basesink_handle_event),
1322         (gst_basesink_change_state):
1323         * gst/gsttask.h:
1324         Right, two problems here: ghostpads don't take locks and
1325         glib _rec_mutex_lock_full() with depth==0 still locks.
1326         Catch illegal locking and g_warn them.
1327
1328 2005-06-25  Wim Taymans  <wim@fluendo.com>
1329
1330         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1331         Have to check for completion now...
1332
1333 2005-06-25  Wim Taymans  <wim@fluendo.com>
1334
1335         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1336         (gst_basesink_handle_object), (gst_basesink_event),
1337         (gst_basesink_do_sync), (gst_basesink_handle_event),
1338         (gst_basesink_change_state):
1339         * gst/gstpad.h:
1340         Unlock STREAM_LOCK whatever the recursion was.
1341
1342 2005-06-25  Wim Taymans  <wim@fluendo.com>
1343
1344         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1345         (gst_basesink_preroll_queue_empty),
1346         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1347         (gst_basesink_event), (gst_basesink_do_sync),
1348         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1349         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1350         (gst_basesink_change_state):
1351         Reworked the base sink, handle event and buffer serialisation
1352         correctly and removed possible deadlock.
1353         Handle EOS correctly.
1354
1355 2005-06-25  Wim Taymans  <wim@fluendo.com>
1356
1357         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1358         (gst_pipeline_change_state):
1359         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1360         Allow elements to post EOS in the state change function.
1361         Fix up -launch, make it exit the poll loop when the
1362         pipeline actually changed state.
1363         Fix up warning parsing in -launch.
1364
1365 2005-06-25  Wim Taymans  <wim@fluendo.com>
1366
1367         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1368         (gst_tee_sink_activate):
1369         Core takes STREAM_LOCK for us now.
1370
1371 2005-06-25  Wim Taymans  <wim@fluendo.com>
1372
1373         * gst/gstelement.c: (gst_element_get_state_func),
1374         (gst_element_set_state):
1375         * gst/gstelement.h:
1376         * gst/gstmessage.c: (gst_message_parse_error),
1377         (gst_message_parse_warning):
1378         Keep track of current target state while performing a state
1379         change so that subclasses can do something interesting.
1380         Fix parsing of warning/error messages when GError is NULL.
1381
1382 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1383
1384         * docs/gst/Makefile.am:
1385         * docs/gst/gstreamer-docs.sgml:
1386         * docs/gst/gstreamer-sections.txt:
1387         * docs/gst/gstreamer.types:
1388         * docs/gst/tmpl/gstbasesink.sgml:
1389         * docs/gst/tmpl/gstbasesrc.sgml:
1390         * docs/gst/tmpl/gstbin.sgml:
1391         * docs/gst/tmpl/gstcompat.sgml:
1392         * docs/gst/tmpl/gstfakesink.sgml:
1393         * docs/gst/tmpl/gstfakesrc.sgml:
1394         * docs/gst/tmpl/gstfilesink.sgml:
1395         * docs/gst/tmpl/gstfilesrc.sgml:
1396         * docs/gst/tmpl/gstindex.sgml:
1397         * docs/manual/appendix-quotes.xml:
1398         * gst/base/gstbasesrc.h:
1399         * gst/elements/gstfakesrc.h:
1400         * gst/gstmessage.h:
1401           start pulling in base classes and elements in our docs
1402
1403 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1404
1405         * docs/gst/Makefile.am:
1406         * docs/libs/Makefile.am:
1407           fixed make distcheck with gtk-doc 1.3
1408
1409 2005-06-23  Wim Taymans  <wim@fluendo.com>
1410
1411         * gst/gstelement.c: (gst_element_get_state_func),
1412         (gst_element_set_state), (gst_element_change_state):
1413         When the state did not change, also report NO_PREROLL
1414         when it matters.
1415
1416 2005-06-23  Wim Taymans  <wim@fluendo.com>
1417
1418         * gst/gstpad.c: (gst_pad_event_default):
1419         * gst/gstqueue.c: (gst_queue_loop):
1420         No unsafe task pausing please.
1421
1422 2005-06-23  Wim Taymans  <wim@fluendo.com>
1423
1424         * gst/schedulers/threadscheduler.c:
1425         (gst_thread_scheduler_task_start),
1426         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1427         Ref the task before pushing it on the threadpool. This
1428         makes sure that we have a ref when the threadfunction is
1429         actually called.
1430
1431 2005-06-23  Andy Wingo  <wingo@pobox.com>
1432
1433         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1434         offset is greater than the file's size.
1435
1436         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1437         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1438         * gst/gstobject.c (gst_object_class_init): Make the class lock
1439         recursive. Wim won't let me drop deep_notify. Decodebin works
1440         again, whoopdy doo.
1441
1442         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1443         internal pad, and hacks accordingly. Doesn't do it on the target
1444         pad because we change its caps. Probably catches all cases of
1445         interest tho.
1446         (gst_ghost_pad_set_property): Connect to notify::caps as
1447         appropritate.
1448
1449         * tests/network-clock.scm (plot-simulation): Pipe data to the
1450         elite python skript.
1451
1452         * tests/network-clock-utils.scm (define-parameter): New macro,
1453         defines a parameter that can be set via the command line.
1454         (set-parameter!, parse-parameter-arguments): Command line args
1455         parser.
1456
1457         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1458         stdin.
1459
1460 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1461
1462         * gst/elements/gsttypefindelement.c:
1463         (gst_type_find_element_handle_event):
1464           Don't restart typefinding on a discont.
1465         * gst/gstelement.c: (gst_element_set_state):
1466           Debug spelling fix.
1467         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1468           Allow changing mode of an active pad.
1469           Debug output fixes.
1470         * gst/registries/gstlibxmlregistry.c: (load_feature):
1471           Don't cast a static pad template to a normal pad template.
1472
1473 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1474
1475         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1476         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1477           remove gst_strtoll completely, since it didn't actually do
1478           anything more than what g_ascii_strtoull already does.
1479           check for range errors when deserializing
1480           do a cast for the unsigned cases; but further fixing needs
1481           a decision on what the interpretation of "(int)" and
1482           deserialization should be for values that fall outside the
1483           type's boundaries (ie, refuse, or interpret as casting)
1484
1485 2005-06-23  Wim Taymans  <wim@fluendo.com>
1486
1487         * check/Makefile.am:
1488         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1489         * docs/design/part-live-source.txt:
1490         * docs/design/part-states.txt:
1491         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1492         (gst_basesrc_set_live), (gst_basesrc_is_live),
1493         (gst_basesrc_get_range), (gst_basesrc_activate),
1494         (gst_basesrc_change_state):
1495         * gst/base/gstbasesrc.h:
1496         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1497         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1498         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1499         * gst/gstelement.c: (gst_element_get_state_func),
1500         (gst_element_set_state):
1501         * gst/gstelement.h:
1502         * gst/gsttypes.h:
1503         * tools/gst-launch.c: (event_loop), (main):
1504         Added support for live sources and other elements that
1505         cannot do preroll.
1506         Updated design docs, added live-source design doc.
1507         Implemented live source functionality in basesrc
1508         Fix error condition in _bin_get_state()
1509         Implement live source handling in -launch.
1510         Added check for live sources.
1511         Fixed case in GstBin where elements were changed state
1512         multiple times.
1513
1514
1515 2005-06-23  Andy Wingo  <wingo@pobox.com>
1516
1517         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1518         borken refcounting.
1519
1520         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1521         gst_caps_replace takes care of this for us.
1522
1523         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1524         gst_pad_set_caps on the target, not just its setcaps() function.
1525
1526         * tests/network-clock.scm: 
1527         * tests/network-clock-utils.scm: A network clock simulator.
1528         Something of an algorithmic testbed before doing something in C.
1529
1530 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1531
1532         * check/Makefile.am:
1533         * check/gst/capslist.h:
1534           copy over from 0.8, and add two with bitmasks specified with
1535           (int) 0xFF...
1536         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1537           add test to parse everything from capslist.h
1538         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
1539         (main):
1540           add test for structure deserialization
1541         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1542           add tests for deserialization of strings to int types
1543         * gst/gststructure.c: (gst_structure_nth_field_name):
1544         * gst/gststructure.h:
1545           add a way to get the name of a field referenced by index
1546         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1547           instead of checking if the resulting long long lies between
1548           min and max, we check if the long long would fit into
1549           a number of bytes for the final type.
1550           This fixes cases where a string represents 2^32 - 1, which
1551           when cast to int would be the (valid) -1, but is bigger than
1552           G_MAXINT
1553
1554 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1555
1556         * gst/parse/grammar.y:
1557           add a log line for type deserialization
1558
1559 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1560
1561         * check/gst/gstvalue.c: (START_TEST):
1562         * gst/gstvalue.c: (gst_value_deserialize):
1563           return long long, not int, so gint64 deserialization actually
1564           works.  Is there any flag that makes the compiler check this ?
1565           Fixes #308559
1566
1567 2005-06-22  Wim Taymans  <wim@fluendo.com>
1568
1569         * gst/gstbuffer.h:
1570         Added convenience macros for setting buffers in GValue.
1571
1572 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1573
1574         * check/gst/.cvsignore:
1575         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1576           add a test deserializing int64, and comment part out because
1577           it fails, yay !
1578
1579 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1580
1581         * check/Makefile.am:
1582         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
1583         * testsuite/Makefile.am:
1584         * testsuite/caps/Makefile.am:
1585         * testsuite/caps/value_serialize.c:
1586         * testsuite/test_gst_init.c:
1587           move a value_serialize test over
1588
1589 2005-06-20  Wim Taymans  <wim@fluendo.com>
1590
1591         * gst/gstpad.c:
1592         Small doc updates.
1593         
1594         * gst/gstvalue.c: (gst_value_compare_buffer),
1595         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
1596         (gst_value_compare_flags), (gst_value_serialize_flags),
1597         (gst_value_deserialize_flags), (_gst_value_initialize):
1598         Fix serialisation of buffers, they are not boxed types anymore
1599
1600 2005-06-20  Wim Taymans  <wim@fluendo.com>
1601
1602         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1603         Testcase to show error in buffer-on-caps serialisation.
1604
1605 2005-06-20  Andy Wingo  <wingo@pobox.com>
1606
1607         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
1608         will be adding to later.
1609
1610         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
1611         if its socks fill with rocks.
1612         (gst_system_clock_obtain): Set the name on object construction.
1613         Avoid double-checked locking.
1614
1615 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
1616
1617         * gst/gsturi.c: (gst_element_make_from_uri):
1618           Fix potential endless loop.
1619
1620 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1621
1622         * check/Makefile.am:
1623           add gsttag
1624         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
1625         (main):
1626           move over from testsuite dir and clean up
1627         * configure.ac:
1628         * gst/gsttag.c:
1629         * testsuite/Makefile.am:
1630         * testsuite/tags/.cvsignore:
1631         * testsuite/tags/Makefile.am:
1632         * testsuite/tags/merge.c:
1633           remove testsuite/tags
1634
1635 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1636
1637         * docs/gst/gstreamer-sections.txt:
1638         * docs/gst/tmpl/gstenumtypes.sgml:
1639         * win32/gstenumtypes.c:
1640           clean up documentation build a little
1641
1642 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1643
1644         * check/gstcheck.h:
1645           add macros for checking refcounts on objects and caps
1646         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
1647           add some more unit tests
1648         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1649         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
1650           fix leaked refcounts (I hope :)) so unittest works
1651         * gst/gstpad.h:
1652           whitespace removal
1653
1654 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1655
1656         * configure.ac: back to HEAD
1657
1658 === release 0.9.1 ===
1659
1660 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1661
1662         * NEWS:
1663         * RELEASE:
1664           updated
1665
1666 2005-06-17  Andy Wingo  <wingo@pobox.com>
1667
1668         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
1669         assert; it's always possible that the pad gets deactivated in
1670         between the checks in gstpad.c and the implementation. Rely on
1671         finish_preroll() to return a FLUSHING or similar instead of on the
1672         assert.
1673         
1674         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
1675         clock and post an EOS message if we come out of finish_preroll in
1676         the playing state.
1677
1678 2005-06-16  David Schleef  <ds@schleef.org>
1679
1680         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
1681         (gst_capsfilter_set_property): Allow NULL as possible value
1682         for filter_caps property, indicating GST_CAPS_ANY.
1683
1684 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1685
1686         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
1687           fix debug output
1688         * gst/schedulers/Makefile.am:
1689           use libgst prefix
1690         * gstreamer.spec.in:
1691           fix spec for it
1692
1693 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1694
1695         * gstreamer.spec.in:
1696           clean up
1697
1698 2005-06-08  Andy Wingo  <wingo@pobox.com>
1699
1700         * gst/gstutils.c: RPAD fixes all around.
1701         (gst_element_link_pads): Refcounting fixes.
1702
1703         * tools/gst-inspect.c:
1704         * tools/gst-xmlinspect.c:
1705         * parse/grammar.y:
1706         * gst/base/gsttypefindhelper.c:
1707         * gst/base/gstbasesink.c:
1708         * gst/gstqueue.c: RPAD fixes.
1709
1710         * gst/gstghostpad.h:
1711         * gst/gstghostpad.c: New ghost pad implementation as full proxy
1712         pads. The tricky thing is they provide both source and sink
1713         interfaces, since they proxy the internal pad for the external
1714         pad, and vice versa. Implement with lower-level ProxyPad objects,
1715         with the interior proxy pad as a child of the exterior ghost pad.
1716         Should write a doc on this.
1717         
1718         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
1719         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
1720         gst_object API.
1721         
1722         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
1723         pads are real pads. No ghost pads in this file. Not documenting
1724         the myriad s/RPAD/PAD/ and REALIZE fixes.
1725         (gst_pad_class_init): Add properties for "direction" and
1726         "template". Both are construct-only, so they can't change during
1727         the life of the pad. Fixes properly deriving from GstPad.
1728         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
1729         derived objects, just set properties when creating the objects via
1730         g_object_new.
1731         (gst_pad_get_parent): Implement as a function, return NULL if the
1732         parent is not an element.
1733         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
1734         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
1735         
1736         * gst/gstobject.c (gst_object_class_init): Make name a construct
1737         property. Don't set it in the object init.
1738
1739         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
1740         with UNKNOWN direction.
1741         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
1742         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
1743         (gst_element_remove_pad): Remove ghost-pad special cases.
1744         (gst_element_pads_activate): Remove rpad cruft.
1745
1746         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
1747         catch the pad's-parent-not-an-element case.
1748
1749         * gst/gst.h: Include gstghostpad.h.
1750
1751         * gst/gst.c (init_post): No more real, ghost pads.
1752
1753         * gst/Makefile.am: Add gstghostpad.[ch].
1754
1755         * check/Makefile.am:
1756         * check/gst/gstbin.c:
1757         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
1758         into a bin creates ghost pads, and that the refcounts are right.
1759         Partly moved from gstbin.c.
1760
1761 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1762
1763         * check/gst-libs/.cvsignore:
1764         * check/gst/.cvsignore:
1765         * check/pipelines/.cvsignore:
1766           ignore more
1767         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
1768         (START_TEST), (cleanup_suite), (main):
1769           add some tests related to cleanup after running pipelines
1770
1771 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1772
1773         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
1774           add a testsuite for GstBuffer
1775
1776 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1777
1778         * gst/gstminiobject.h:
1779           add defines for accessing the refcount
1780
1781 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
1782
1783         * Makefile.am: added support for html unit test coverage reports
1784
1785 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
1786
1787         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
1788           Free existing caps if the capsfilter changes. Add a FIXME about
1789           setting those caps on the pads.
1790
1791         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
1792           Before adding a ghost pad to a parent bin, check that there isn't
1793           already one for the element on the bin. Prevents infinite recursion
1794           when using decodebin in parse pipelines. Andy says he'll rewrite the
1795           way this works anyway, so ignore the hack.
1796
1797 2005-06-02  Andy Wingo  <wingo@pobox.com>
1798
1799         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
1800         file size, pass it on to the type find helper.
1801
1802         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
1803         segment_start and segment_end properly according to the seek
1804         method. Segment_end is still a bit flaky because offset can be
1805         negative for CUR and END cases, but it takes -1 as an "unset"
1806         value.
1807
1808 2005-06-02  Wim Taymans  <wim@fluendo.com>
1809
1810         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
1811         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
1812         (gst_basesink_activate):
1813         * gst/base/gstbasesink.h:
1814         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1815         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1816         (gst_pad_query), (gst_pad_start_task):
1817         * gst/gstpad.h:
1818         * gst/gstqueue.c: (gst_queue_bufferalloc),
1819         (gst_queue_handle_sink_event), (gst_queue_chain):
1820         Bufferalloc: return GstFlowReturn to more accuratly report
1821         why allocation failed.
1822
1823 2005-06-02  Wim Taymans  <wim@fluendo.com>
1824
1825         * gst/gstpipeline.c: (gst_pipeline_send_event):
1826         Take snapshot of state without blocking.
1827
1828 2005-06-02  Wim Taymans  <wim@fluendo.com>
1829
1830         * docs/design/part-TODO.txt:
1831         * docs/design/part-caps.txt:
1832         * docs/design/part-clocks.txt:
1833         * docs/design/part-negotiation.txt:
1834         * docs/design/part-preroll.txt:
1835         Small doc updates 
1836
1837 2005-05-30  Wim Taymans  <wim@fluendo.com>
1838
1839         * gst/elements/gstidentity.c: (gst_identity_event),
1840         (gst_identity_transform), (gst_identity_get_property):
1841         Protect last_message property as it is accessed from
1842         multiple threads.
1843
1844 2005-05-30  Wim Taymans  <wim@fluendo.com>
1845
1846         * gst/gstelement.c: (gst_element_init),
1847         (gst_element_pads_activate), (gst_element_change_state):
1848         Slicker pad activation code.
1849
1850 2005-05-30  Wim Taymans  <wim@fluendo.com>
1851
1852         * gst/Makefile.am:
1853         * gst/gstelement.h:
1854         * gst/gstelementfactory.h:
1855         * gst/gsttypes.h:
1856         Move elementfactory methods to separate .h file.
1857
1858 2005-05-30  Wim Taymans  <wim@fluendo.com>
1859
1860         * docs/design/part-overview.txt:
1861         * gst/gstsystemclock.h:
1862         Small typo fixes, doc updates.
1863
1864 2005-05-30  Wim Taymans  <wim@fluendo.com>
1865
1866         * gst/gst.c: (gst_init_get_popt_table), (init_post),
1867         (init_popt_callback):
1868         Remove cpu-opt flag.
1869
1870 2005-05-30  Wim Taymans  <wim@fluendo.com>
1871
1872         * gst/gstbuffer.c: (gst_subbuffer_finalize),
1873         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
1874         * gst/gstbuffer.h:
1875         Avoid typechecking in places where not needed.
1876         Added accessor for malloc_data.
1877
1878 2005-05-30  Wim Taymans  <wim@fluendo.com>
1879
1880         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
1881         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
1882         (gst_pad_configure_sink), (gst_pad_configure_src),
1883         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
1884         (gst_pad_start_task):
1885         Propagate errors from _set_caps() in configure_src/sink
1886         functions instead of returning TRUE.
1887         FLUSH events can travel up and downstream
1888
1889
1890 2005-05-30  Wim Taymans  <wim@fluendo.com>
1891
1892         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1893         (gst_basesink_activate):
1894         Handle EOS in preroll.
1895
1896 2005-05-30  Wim Taymans  <wim@fluendo.com>
1897
1898         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1899         (gst_queue_loop), (gst_queue_handle_src_event):
1900         Remove old pieces of code
1901         Flushing the queue in an upstream event is a very bad idea.
1902
1903 2005-05-26  Andy Wingo  <wingo@pobox.com>
1904
1905         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
1906         gst_value_set_mini_object so as to add a ref on the object (which
1907         will be removed when the value is unset).
1908
1909         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
1910         arg type in ::handoff.
1911
1912         * gst/gstelement.c (gst_element_change_state): Also deactivate
1913         pads in READY->NULL, just in case the element didn't make it to
1914         PAUSED. Wingo tested, Wim approved.
1915
1916 2005-05-26  Wim Taymans  <wim@fluendo.com>
1917
1918         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1919         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1920         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
1921         A flushing pad cannot be used to alloc_buffer from.
1922
1923 2005-05-26  Wim Taymans  <wim@fluendo.com>
1924
1925         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
1926         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
1927         (gst_bus_source_dispatch), (gst_bus_source_finalize),
1928         (gst_bus_create_watch), (gst_bus_add_watch_full):
1929         * gst/gstbus.h:
1930         Implement a real GSource and use g_main_context_wakeup() to
1931         signal new messages instead of the socketpair.
1932
1933 2005-05-25  Wim Taymans  <wim@fluendo.com>
1934
1935         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
1936         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
1937         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1938         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1939         (gst_pad_send_event), (gst_pad_start_task):
1940         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
1941         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
1942         (gst_queue_sink_activate), (gst_queue_src_activate),
1943         (gst_queue_change_state):
1944         * gst/gstqueue.h:
1945         Fix state changes for non sinks. We now change sinks, then elements
1946         with unconnected srcpads, then the rest.
1947         More efficient queue unlocking in flush and state changes.
1948         Set the pad activate mode even if it does not have an activate
1949         function.
1950
1951 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1952
1953         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
1954           Don't go in pull mode for non-seekable sources.
1955         * gst/elements/gsttypefindelement.h:
1956         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1957         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
1958         (free_entry), (stop_typefinding),
1959         (gst_type_find_element_handle_event), (find_peek),
1960         (gst_type_find_element_chain), (do_pull_typefind),
1961         (gst_type_find_element_change_state):
1962           Allow typefinding (w/o seeking) in push-mode, simplified version
1963           of what was in 0.8.
1964         * gst/gstutils.c: (gst_buffer_join):
1965         * gst/gstutils.h:
1966           gst_buffer_join() from 0.8.
1967
1968 2005-05-25  Wim Taymans  <wim@fluendo.com>
1969
1970         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1971         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1972         (gst_pad_send_event), (gst_pad_start_task):
1973         Disable attempt at mode switching until it is figured out.
1974
1975 2005-05-25  Wim Taymans  <wim@fluendo.com>
1976
1977         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
1978         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1979         (gst_basesink_finish_preroll), (gst_basesink_chain),
1980         (gst_basesink_loop), (gst_basesink_activate),
1981         (gst_basesink_change_state):
1982         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
1983         (gst_basesrc_get_range), (gst_basesrc_loop),
1984         (gst_basesrc_activate):
1985         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1986         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
1987         (gst_real_pad_init), (gst_real_pad_set_property),
1988         (gst_real_pad_get_property), (gst_pad_set_active),
1989         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
1990         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
1991         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
1992         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
1993         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1994         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
1995         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
1996         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1997         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
1998         (gst_pad_stop_task):
1999         * gst/gstpad.h:
2000         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2001         (gst_queue_loop), (gst_queue_src_activate):
2002         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2003         (gst_task_get_state):
2004         * gst/gsttask.h:
2005         * gst/schedulers/threadscheduler.c:
2006         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2007         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2008         in task function.
2009         Remove ACTIVE pad flag, use FLUSHING everywhere
2010         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2011         functions.
2012         Add locks around IS_FLUSHING when reading.
2013         Take STREAM lock in chain(), get_range() functions so plugins
2014         don't need to take it anymore.
2015         
2016
2017
2018 2005-05-25  Wim Taymans  <wim@fluendo.com>
2019
2020         * tools/gst-launch.c: (event_loop):
2021         Unref message after using its contents instead of
2022         before.
2023
2024 2005-05-24  Wim Taymans  <wim@fluendo.com>
2025
2026         * docs/design/draft-ghostpads.txt:
2027         * docs/design/draft-push-pull.txt:
2028         * docs/design/draft-query.txt:
2029         * docs/design/part-overview.txt:
2030         Docs updates, added general overview doc.
2031
2032 2005-05-21  David Schleef  <ds@schleef.org>
2033
2034         * docs/gst/tmpl/old/GstBin.sgml:
2035         * docs/gst/tmpl/old/GstBuffer.sgml:
2036         * docs/gst/tmpl/old/GstCaps.sgml:
2037         * docs/gst/tmpl/old/GstClock.sgml:
2038         * docs/gst/tmpl/old/GstCompat.sgml:
2039         * docs/gst/tmpl/old/GstData.sgml:
2040         * docs/gst/tmpl/old/GstElement.sgml:
2041         * docs/gst/tmpl/old/GstEvent.sgml:
2042         * docs/gst/tmpl/old/GstIndex.sgml:
2043         * docs/gst/tmpl/old/GstStructure.sgml:
2044         * docs/gst/tmpl/old/GstTag.sgml:
2045         * docs/gst/tmpl/old/cothreads.sgml:
2046         * docs/gst/tmpl/old/cothreads_compat.sgml:
2047         * docs/gst/tmpl/old/gettext.sgml:
2048         * docs/gst/tmpl/old/gobject2gtk.sgml:
2049         * docs/gst/tmpl/old/grammar.tab.sgml:
2050         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2051         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2052         * docs/gst/tmpl/old/gst_private.sgml:
2053         * docs/gst/tmpl/old/gstaggregator.sgml:
2054         * docs/gst/tmpl/old/gstarch.sgml:
2055         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2056         * docs/gst/tmpl/old/gstbufferstore.sgml:
2057         * docs/gst/tmpl/old/gstdata_private.sgml:
2058         * docs/gst/tmpl/old/gstdisksink.sgml:
2059         * docs/gst/tmpl/old/gstdisksrc.sgml:
2060         * docs/gst/tmpl/old/gstelementfactory.sgml:
2061         * docs/gst/tmpl/old/gstextratypes.sgml:
2062         * docs/gst/tmpl/old/gstfakesink.sgml:
2063         * docs/gst/tmpl/old/gstfakesrc.sgml:
2064         * docs/gst/tmpl/old/gstfdsink.sgml:
2065         * docs/gst/tmpl/old/gstfdsrc.sgml:
2066         * docs/gst/tmpl/old/gstfilesink.sgml:
2067         * docs/gst/tmpl/old/gstfilesrc.sgml:
2068         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2069         * docs/gst/tmpl/old/gstidentity.sgml:
2070         * docs/gst/tmpl/old/gstindexfactory.sgml:
2071         * docs/gst/tmpl/old/gstmarshal.sgml:
2072         * docs/gst/tmpl/old/gstmd5sink.sgml:
2073         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2074         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2075         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2076         * docs/gst/tmpl/old/gstpipefilter.sgml:
2077         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2078         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2079         * docs/gst/tmpl/old/gstshaper.sgml:
2080         * docs/gst/tmpl/old/gstspider.sgml:
2081         * docs/gst/tmpl/old/gstspideridentity.sgml:
2082         * docs/gst/tmpl/old/gststatistics.sgml:
2083         * docs/gst/tmpl/old/gsttee.sgml:
2084         * docs/gst/tmpl/old/gsttimecache.sgml:
2085         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2086         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2087         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2088         * docs/gst/tmpl/old/types.sgml:
2089           I didn't intend to add these or check them in.
2090
2091 2005-05-19  David Schleef  <ds@schleef.org>
2092
2093         * configure.ac: Use -no-common everywhere.  In a sane world, it
2094           would be the default in libtool, because without it, you can't
2095           build DLLs on Windows.
2096         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2097         * docs/gst/gstreamer-sections.txt:
2098         * docs/gst/tmpl/gstcpu.sgml:
2099         * docs/gst/tmpl/gstdata.sgml:
2100         * docs/gst/tmpl/gstthread.sgml:
2101
2102 2005-05-19  David Schleef  <ds@schleef.org>
2103
2104         * gst/gstminiobject.c: (gst_value_set_mini_object),
2105         (gst_value_take_mini_object), (gst_value_get_mini_object):
2106         * gst/gstminiobject.h: Add GValue set/get functions.
2107
2108 2005-05-19  Wim Taymans  <wim@fluendo.com>
2109
2110         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2111         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2112         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2113         * gst/gstbuffer.h:
2114         * gst/gstbus.c: (gst_bus_post):
2115         * gst/gstelement.c: (gst_element_get_random_pad):
2116         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2117         Make subbufer unref the parent in finalize.
2118         some more debugging info.
2119
2120
2121 2005-05-19  Wim Taymans  <wim@fluendo.com>
2122
2123         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2124         (gst_basesink_init), (gst_basesink_finalize),
2125         (gst_basesink_activate), (gst_basesink_change_state):
2126         Don't free preroll queue too early.
2127
2128 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2129
2130         * gst/Makefile.am:
2131         * gst/ROADMAP:
2132           Hi, I'm outdated. Please shoot me.
2133
2134 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2135
2136         * gst/gstpipeline.c: (gst_pipeline_send_event):
2137           Do not access variables after they have been deleted.
2138
2139 2005-05-19  Wim Taymans  <wim@fluendo.com>
2140
2141         * tools/gst-inspect.c: (print_plugin_features):
2142         A plugin feature does unfortunatly not use the
2143         object name yet...
2144
2145 2005-05-18  Wim Taymans  <wim@fluendo.com>
2146
2147         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2148         Port _span() functions to new subbuffers.
2149
2150 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2151
2152         * gst/gstbin.c: (gst_bin_add_func):
2153           Fix clock settery in bins when adding kids after the clock has
2154           been selected.
2155
2156 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2157
2158         * gst/elements/gstidentity.c: (gst_identity_class_init):
2159           Workaround until signals support GstMiniObject.
2160
2161 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2162
2163         * gst/gstbuffer.c:
2164         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2165
2166 2005-05-18  Wim Taymans  <wim@fluendo.com>
2167
2168         * gst/base/Makefile.am:
2169         * gst/base/gstadapter.c: (gst_adapter_base_init),
2170         (gst_adapter_class_init), (gst_adapter_init),
2171         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2172         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2173         (gst_adapter_flush), (gst_adapter_available),
2174         (gst_adapter_available_fast):
2175         * gst/base/gstadapter.h:
2176         Ported and added adapter to the base classes.
2177
2178 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2179
2180         * gst/gst.c:
2181         * gst/gstmessage.c:
2182           Make sure the class is reffed/unreffed once before threads can be
2183           used.  Fixes #304551.
2184
2185 2005-05-17  Wim Taymans  <wim@fluendo.com>
2186
2187         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2188         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2189         * gst/gstminiobject.c: (gst_mini_object_get_type),
2190         (gst_mini_object_free):
2191         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2192         (gst_pad_push), (gst_pad_push_event):
2193         * gst/gstqueue.c: (gst_queue_change_state):
2194         Don't queue buffers in basesink when we are flushing.
2195         Unref buffer when flushing in basesink.
2196         Flush queue when going to READY
2197         Unref buffer when _push() returns an error.
2198         Don't free MiniObject instance when refcount is incremented
2199         in _finalize() so that we can recover objects.
2200
2201 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2202
2203         * docs/manual/advanced-schedulers.xml:
2204         * docs/manual/appendix-checklist.xml:
2205         * docs/pwg/advanced-clock.xml:
2206         * docs/pwg/advanced-interfaces.xml:
2207         * docs/pwg/advanced-request.xml:
2208         * docs/pwg/advanced-types.xml:
2209         * docs/pwg/intro-preface.xml:
2210         * examples/plugins/example.c: (gst_example_get_type),
2211         (gst_example_class_init), (gst_example_chain),
2212         (gst_example_set_property), (gst_example_get_property),
2213         (gst_example_change_state), (plugin_init):
2214         * examples/plugins/example.h:
2215           small doc fixes
2216
2217 2005-05-17  Wim Taymans  <wim@fluendo.com>
2218
2219         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2220         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2221         * gst/gstqueue.c: (gst_queue_change_state):
2222         Clear queue when going to READY.
2223         Remove IN_SETCAPS flag too.
2224
2225 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2226
2227         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2228           Remove implicit cast from gboolean to GstElementStateReturn;
2229           make sure we still return failure in paused => ready case if
2230           the parent class fails to change state and our own stop 
2231           vfunc succeeds.
2232
2233 2005-05-17  Wim Taymans  <wim@fluendo.com>
2234
2235         * tools/gst-launch.c: (event_loop):
2236         Message was unreffed too soon.
2237
2238 2005-05-16  Andy Wingo  <wingo@pobox.com>
2239
2240         * gst/gstbin.c (sink_iterator_filter): Err... um...
2241
2242         * check/gst/gstbin.c (test_ghost_pads): New test for the
2243         ghosting-if-elements-not-in-same-bin behavior.
2244
2245 2005-05-16  David Schleef  <ds@schleef.org>
2246
2247         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2248         accessing refcount directly.
2249
2250 2005-05-15  David Schleef  <ds@schleef.org>
2251
2252         * check/Makefile.am: remove GstData checks
2253         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2254         * gst/Makefile.am: add miniobject, remove data
2255         * gst/gst.h: add miniobject, remove data
2256         * gst/gstdata.c: remove
2257         * gst/gstdata.h: remove
2258         * gst/gstdata_private.h: remove
2259         * gst/gsttypes.h: remove GstEvent and GstMessage
2260         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2261         * gst/gstmarshal.list: change BOXED -> OBJECT
2262
2263         Implement GstMiniObject.
2264         * gst/gstminiobject.c:
2265         * gst/gstminiobject.h:
2266
2267         Modify to be subclasses of GstMiniObject.
2268         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2269         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2270         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2271         (gst_subbuffer_get_type), (gst_subbuffer_init),
2272         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2273         (gst_buffer_span):
2274         * gst/gstbuffer.h:
2275         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2276         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2277         (_gst_event_copy), (gst_event_new):
2278         * gst/gstevent.h:
2279         * gst/gstmessage.c: (_gst_message_initialize),
2280         (gst_message_get_type), (gst_message_class_init),
2281         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2282         (gst_message_new), (gst_message_new_error),
2283         (gst_message_new_warning), (gst_message_new_tag),
2284         (gst_message_new_state_changed), (gst_message_new_application):
2285         * gst/gstmessage.h:
2286         * gst/gstprobe.c: (gst_probe_perform),
2287         (gst_probe_dispatcher_dispatch):
2288         * gst/gstprobe.h:
2289         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2290         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2291         (_gst_query_copy), (gst_query_new):
2292
2293         Update elements for GstData -> GstMiniObject changes
2294         * gst/gstquery.h:
2295         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2296         (gst_queue_chain), (gst_queue_loop):
2297         * gst/elements/gstbufferstore.c:
2298         (gst_buffer_store_add_buffer_func),
2299         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2300         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2301         (gst_fakesink_render):
2302         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2303         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2304         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2305         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2306         (gst_filesrc_create_read):
2307         * gst/elements/gstidentity.c: (gst_identity_class_init):
2308         * gst/elements/gsttypefindelement.c:
2309         (gst_type_find_element_src_event), (free_entry_buffers),
2310         (gst_type_find_element_handle_event):
2311         * libs/gst/dataprotocol/dataprotocol.c:
2312         (gst_dp_header_from_buffer):
2313         * libs/gst/dataprotocol/dataprotocol.h:
2314         * libs/gst/dataprotocol/dp-private.h:
2315
2316 2005-05-15  David Schleef  <ds@schleef.org>
2317
2318         * gst/elements/gstelements.c: Don't include headers that were
2319         just removed.
2320
2321 2005-05-15  David Schleef  <ds@schleef.org>
2322
2323         * gst/elements/Makefile.am: Remove some elements that don't
2324         need to be in the core (or even exist at all).
2325         * gst/elements/gstaggregator.c:
2326         * gst/elements/gstaggregator.h:
2327         * gst/elements/gstmd5sink.c:
2328         * gst/elements/gstmd5sink.h:
2329         * gst/elements/gstmultifilesrc.c:
2330         * gst/elements/gstmultifilesrc.h:
2331         * gst/elements/gstpipefilter.c:
2332         * gst/elements/gstpipefilter.h:
2333         * gst/elements/gstshaper.c:
2334         * gst/elements/gstshaper.h:
2335         * gst/elements/gststatistics.c:
2336         * gst/elements/gststatistics.h:
2337         * po/POTFILES.in: Remove above files.
2338
2339 2005-05-14  Andy Wingo  <wingo@pobox.com>
2340
2341         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2342         so as to get the refs right.
2343         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2344         unreffing objects that don't pass the filter.
2345
2346         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2347         gst_element_set_bus.
2348         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2349         normal cases, this will destroy the bus.
2350
2351         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2352         object.
2353
2354         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2355         has no sinks.
2356
2357 2005-05-13  Andy Wingo  <wingo@pobox.com>
2358
2359         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2360         gst_pad_link, call pad_link_maybe_ghosting,
2361         (pad_link_maybe_ghosting): Links pads, making sure that the
2362         elements being linked are in the same bin.
2363         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2364         Helpers for pad_link_maybe_ghosting.
2365
2366 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2367
2368         * configure.ac:
2369           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2370
2371 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2372
2373         * docs/design/part-element-source.txt:
2374           Mention GstPushSrc
2375
2376 2005-05-12  Wim Taymans  <wim@fluendo.com>
2377
2378         * gst/base/gstbasesink.c: (gst_basesink_init),
2379         (gst_basesink_activate):
2380         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2381         (gst_basesrc_is_seekable):
2382         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2383         (bin_element_is_sink), (gst_bin_change_state):
2384         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2385         * gst/gstelement.h:
2386         Identify sinks by their flag to avoid overly complicated
2387         checks (fow now).
2388         Do state changes even for elements not reachable from the
2389         sinks.
2390         BaseSink is a sink now :)
2391         Some more debugging info in the basesrc.
2392
2393
2394 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2395
2396         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2397           Implement _query on a bin, similar to _send_event.
2398
2399 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2400
2401         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2402           Discont event offset format should be GST_FORMAT_BYTES,
2403           not GST_FORMAT_TIME.
2404
2405 2005-05-12  Wim Taymans  <wim@fluendo.com>
2406
2407         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2408         Same fix as Ronald's but without the signal. 
2409
2410 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2411
2412         * gst/gstutils.c: (gst_element_query_position):
2413           No, an element is not a pad.
2414
2415 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2416
2417         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2418         (gst_bin_get_state):
2419           If a child is removed from a bin while we remove the child from
2420           the bin and while we're retrieving its state, signal this to the
2421           get_state function so we abort the wait (instead of waiting for
2422           a timeout) and can immediately re-iterate over all other elements.
2423
2424 2005-05-12  Wim Taymans  <wim@fluendo.com>
2425
2426         * gst/base/Makefile.am:
2427         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2428         (gst_basesrc_start):
2429         * gst/base/gstbasesrc.h:
2430         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2431         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2432         (gst_pushsrc_init), (gst_pushsrc_create):
2433         * gst/base/gstpushsrc.h:
2434         Added is_seekable to BaseSrc
2435         Added simple PushSrc.
2436
2437 2005-05-11  Wim Taymans  <wim@fluendo.com>
2438
2439         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2440         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2441         (gst_element_link_pads), (gst_element_query_position),
2442         (gst_element_query_convert), (intersect_caps_func),
2443         (gst_pad_query_position), (gst_pad_query_convert):
2444         Fix refcounting in utils function.
2445         No point in trying to activate a pad when it's added, it could
2446         be added from the state change function and then we deadlock, the
2447         element has to decide what to do.
2448
2449 2005-05-10  Andy Wingo  <wingo@pobox.com>
2450
2451         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2452         *all* the arguments.
2453
2454         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2455         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2456         lock (according to the docs -- if this is wrong change the docs).
2457
2458         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2459         flush messages in the NULL state.
2460
2461         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2462         message immediately and return.
2463         (gst_bus_set_flushing): New function. If a bus is flushing, it
2464         flushes out any queued messages and immediately unrefs new
2465         messages. This is so when an element goes to NULL, all of the
2466         unhandled messages coming from it can be freed, and their
2467         references to the element dropped. In other words: message source
2468         ref considered harmful :P
2469
2470         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2471         we're finished with it.
2472
2473         * gst/gstmessage.c (gst_message_new_state_changed): 
2474
2475 2005-05-10  Wim Taymans  <wim@fluendo.com>
2476
2477         * gst/gstvalue.c: (gst_value_compare_flags),
2478         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2479         (_gst_value_initialize):
2480         Added flags serialize/deserialize/compare code.
2481
2482 2005-05-09  Andy Wingo  <wingo@pobox.com>
2483
2484         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2485         Intersect the peer's caps with our caps.
2486
2487 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2488
2489         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2490         * gst/elements/gsttypefindelement.c: (find_peek):
2491           Handle negative offsets better. Fixes decodebin.
2492
2493 2005-05-09  Wim Taymans  <wim@fluendo.com>
2494
2495         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2496         (gst_base_transform_event):
2497         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2498         Implement accept_caps.
2499         Fix silly lock/unlock mismatch in base class.
2500
2501 2005-05-09  Wim Taymans  <wim@fluendo.com>
2502
2503         * docs/design/draft-push-pull.txt:
2504         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2505         * gst/elements/gstfilesink.c: (gst_filesink_init),
2506         (gst_filesink_query):
2507         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2508         (gst_type_find_handle_src_query), (find_element_get_length):
2509         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2510         * gst/gstelement.h:
2511         * gst/gstmessage.c:
2512         * gst/gstmessage.h:
2513         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2514         (gst_real_pad_get_caps_unlocked),
2515         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2516         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2517         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2518         (gst_real_pad_dispose), (gst_real_pad_finalize),
2519         (gst_pad_load_and_link), (gst_pad_save_thyself),
2520         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2521         (gst_pad_check_pull_range), (gst_pad_pull_range),
2522         (gst_pad_template_get_type), (gst_pad_template_class_init),
2523         (gst_pad_template_init), (gst_pad_template_dispose),
2524         (name_is_valid), (gst_static_pad_template_get),
2525         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2526         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2527         (gst_pad_get_element_private), (gst_pad_start_task),
2528         (gst_pad_pause_task), (gst_pad_stop_task),
2529         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2530         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2531         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
2532         (gst_ghost_pad_new):
2533         * gst/gstpad.h:
2534         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
2535         (gst_query_new_position), (gst_query_set_position),
2536         (gst_query_parse_position), (gst_query_new_convert),
2537         (gst_query_set_convert), (gst_query_parse_convert):
2538         * gst/gstquery.h:
2539         * gst/gstqueryutils.c:
2540         * gst/gstqueryutils.h:
2541         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2542         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2543         (gst_queue_handle_src_query):
2544         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2545         (gst_element_query_position), (gst_element_query_convert),
2546         (intersect_caps_func), (gst_pad_query_position),
2547         (gst_pad_query_convert):
2548         * gst/gstutils.h:
2549         * tools/gst-inspect.c: (print_pad_info):
2550         * tools/gst-xmlinspect.c: (print_element_info):
2551         Remove old query functions. Ported old code.
2552         Added position/convert helper functions to gstutils.
2553         Reordered gstpad.c code, grouping relevant things.
2554         Remove gst_message_new(), always need to speficy a specific
2555         message.
2556
2557
2558 2005-05-09  Andy Wingo  <wingo@pobox.com>
2559
2560         * gst/gstiterator.h: Add some includes.
2561
2562         * gst/gstqueryutils.h: Include more headers.
2563
2564         * gst/gstpad.h:
2565         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
2566         some uses of gst_pad_query.
2567
2568         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
2569         NULL out parameters.
2570         (gst_query_new_position): New proc, allocates a new position
2571         query.
2572
2573         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
2574         gstqueryutils.c to the build.
2575
2576         * gst/gststructure.c (gst_structure_set_valist): Implement with
2577         the generic G_VALUE_COLLECT.
2578         
2579 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
2580
2581         * gst/Makefile.am: (gst_headers):
2582         Added gstqueryutils.h to the list of headers to install, that was
2583         a 'nachty' move wingo :)
2584
2585 2005-05-06  Andy Wingo  <wingo@pobox.com>
2586
2587         * gst/gstquery.h
2588         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
2589         GstData, init a memchunk.
2590         (standard_definitions): Add a few query types, deprecate a few.
2591         (gst_query_get_type): New proc.
2592         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
2593         implementation.
2594         (gst_query_new_application, gst_query_get_structure): New public
2595         procs.
2596
2597         * docs/design/draft-query.txt: Removed LINKS from the query types,
2598         because all the rest can be dispatched to other pads -- seemed
2599         ugly to have a query that couldn't be dispatched. internal_links
2600         is fine as a pad method.
2601
2602         * gst/gstpad.h: Add query2 as a pad method, add the new functions
2603         in gstpad.c, but maintain binary compatibility for the moment.
2604         Will fix before 0.9 is out.
2605
2606         * gst/gstqueryutils.c: 
2607         * gst/gstqueryutils.h: New files, implement 3 methods for each
2608         query type: parse_query, parse_response, and set. Probably need an
2609         allocator as well.
2610
2611         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
2612
2613         * gst/elements/gstfilesink.c (gst_filesink_query2):
2614         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
2615         query_types, and formats methods.
2616
2617         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
2618         (gst_pad_set_query2_function): New functions.
2619         (gst_real_pad_init): Set query2_default as the default query2
2620         function. Basically just dispatches to internally linked pads.
2621
2622         Needs review!
2623         
2624         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
2625         without using the atomic operations. Only one thread can possibly
2626         be accessing the data at this point. Changed so as to avoid
2627         gst_atomic operations.
2628
2629 2005-05-06  Wim Taymans  <wim@fluendo.com>
2630
2631         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
2632         Also set caps if we use the fallback buffer alloc.
2633
2634 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
2635
2636         * docs/gst/Makefile.am:
2637         * docs/gst/gstreamer-docs.sgml:
2638         * docs/gst/gstreamer-sections.txt:
2639         * docs/gst/tmpl/gstatomic.sgml:
2640         * docs/gst/tmpl/gstmemchunk.sgml:
2641         * testsuite/elements/struct_i386.h:
2642         * win32/GStreamer.vcproj:
2643         * win32/Makefile:
2644           Purge GstAtomic stuff from docs and win32 makefiles as well
2645
2646 2005-05-06  Wim Taymans  <wim@fluendo.com>
2647
2648         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
2649         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
2650         * gst/gstpad.c: (gst_pad_peer_get_caps):
2651         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2652         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2653         (gst_queue_src_activate), (gst_queue_change_state):
2654         * gst/gstqueue.h:
2655         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2656         (intersect_caps_func):
2657         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
2658         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
2659         Some fixes for the peer_get_caps() change.
2660
2661 2005-05-06  Wim Taymans  <wim@fluendo.com>
2662
2663         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2664         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
2665         (gst_basesink_activate):
2666         Actually do something with error codes returned from the push
2667         functions.
2668
2669 2005-05-06  Wim Taymans  <wim@fluendo.com>
2670
2671         * docs/design/part-element-sink.txt:
2672         * docs/design/part-element-source.txt:
2673         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2674         (gst_basesink_event), (gst_basesink_activate):
2675         * gst/base/gstbasesink.h:
2676         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
2677         (gst_basesrc_activate):
2678         * gst/base/gstbasesrc.h:
2679         * gst/gstelement.c: (gst_element_pads_activate):
2680         Some more documentation.
2681         Fixed scheduling decision in _pads_activate().
2682
2683 2005-05-05  Andy Wingo  <wingo@pobox.com>
2684
2685         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
2686         the test suite.
2687
2688 2005-05-05  Wim Taymans  <wim@fluendo.com>
2689
2690         * gst/base/Makefile.am:
2691         * gst/base/gstbasesink.h:
2692         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2693         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
2694         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
2695         (gst_collectpads_class_init), (gst_collectpads_init),
2696         (gst_collectpads_finalize), (gst_collectpads_new),
2697         (gst_collectpads_set_function), (gst_collectpads_add_pad),
2698         (find_pad), (gst_collectpads_remove_pad),
2699         (gst_collectpads_is_active), (gst_collectpads_collect),
2700         (gst_collectpads_collect_range), (gst_collectpads_start),
2701         (gst_collectpads_stop), (gst_collectpads_peek),
2702         (gst_collectpads_pop), (gst_collectpads_available),
2703         (gst_collectpads_read), (gst_collectpads_flush),
2704         (gst_collectpads_chain):
2705         * gst/base/gstcollectpads.h:
2706         * gst/elements/Makefile.am:
2707         * gst/elements/gstelements.c:
2708         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2709         (gst_fakesink_get_times), (gst_fakesink_event),
2710         (gst_fakesink_preroll), (gst_fakesink_render):
2711         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2712         (gst_filesink_init), (gst_filesink_set_location),
2713         (gst_filesink_open_file), (gst_filesink_close_file),
2714         (gst_filesink_pad_query), (gst_filesink_event),
2715         (gst_filesink_render), (gst_filesink_change_state):
2716         * gst/elements/gstfilesink.h:
2717         Added object to help in making collect pad based elements.
2718         Ported filesink.
2719         Make event function in sink baseclass return gboolean.
2720
2721 2005-05-05  Wim Taymans  <wim@fluendo.com>
2722
2723         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
2724         (gst_bin_get_by_name):
2725         * gst/gstbuffer.h:
2726         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
2727         (gst_clock_finalize):
2728         * gst/gstdata.c: (gst_data_replace):
2729         * gst/gstdata.h:
2730         * gst/gstelement.c: (gst_element_request_pad),
2731         (gst_element_pads_activate):
2732         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
2733         (gst_object_unref):
2734         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2735         (gst_pad_set_checkgetrange_function),
2736         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
2737         (gst_pad_check_pull_range), (gst_pad_pull_range),
2738         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2739         (gst_pad_pause_task), (gst_pad_stop_task):
2740         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2741         (gst_element_request_pad), (gst_pad_proxy_getcaps):
2742         Fix name lookup in GstBin.
2743         Added _data_replace() function and _buffer_replace()
2744         Use finalize method to clean up clock.
2745         Fix refcounting on request pads.
2746         Fix pad schedule mode error.
2747         Some more object refcounting debug info,
2748
2749
2750 2005-05-04  Andy Wingo <wingo@pobox.com>
2751
2752         * check/Makefile.am:
2753         * docs/gst/tmpl/gstatomic.sgml:
2754         * docs/gst/tmpl/gstplugin.sgml:
2755         * gst/base/gstbasesink.c: (gst_basesink_activate):
2756         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
2757         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
2758         (gst_basesrc_query), (gst_basesrc_set_property),
2759         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
2760         (gst_basesrc_activate):
2761         * gst/base/gstbasesrc.h:
2762         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
2763         (gst_base_transform_src_activate):
2764         * gst/elements/gstelements.c:
2765         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2766         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2767         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2768         * gst/elements/gsttypefindelement.c: (find_element_get_length),
2769         (gst_type_find_element_checkgetrange),
2770         (gst_type_find_element_activate):
2771         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
2772         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
2773         (gst_caps_load_thyself):
2774         * gst/gstelement.c: (gst_element_pads_activate),
2775         (gst_element_save_thyself), (gst_element_restore_thyself):
2776         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
2777         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
2778         * gst/gstpad.h:
2779         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
2780         (gst_xml_parse_file), (gst_xml_parse_memory),
2781         (gst_xml_get_element), (gst_xml_make_element):
2782         * gst/indexers/gstfileindex.c: (gst_file_index_load),
2783         (_file_index_id_save_xml), (gst_file_index_commit):
2784         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
2785         (read_enum), (load_pad_template), (load_feature), (load_plugin),
2786         (load_paths):
2787         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
2788         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
2789         * tools/gst-complete.c: (main):
2790         * tools/gst-compprep.c: (main):
2791         * tools/gst-inspect.c: (print_element_properties_info):
2792         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
2793         * tools/gst-xmlinspect.c: (print_element_properties):
2794         GCC 4 fixen.
2795         
2796 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
2797
2798         * gst/gstplugin.c: (gst_plugin_check_module),
2799         (gst_plugin_check_file), (gst_plugin_load_file):
2800             apply patch from #172526 to make register work on MacOSX
2801
2802 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2803
2804         * docs/gst/tmpl/gstconfig.sgml:
2805         * gst/gstconfig.h.in:
2806           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
2807         * testsuite/debug/printf_extension.c: (main):
2808           Do not use GST_PTR_FORMAT on pointers to types with
2809           sizeof < sizeof(gpointer).  Fixes test on 64-bit
2810         * testsuite/elements/property.h:
2811           use correct printf format
2812
2813 2005-05-02  Wim Taymans  <wim@fluendo.com>
2814
2815         * docs/design/draft-push-pull.txt:
2816         * docs/design/draft-query.txt:
2817         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
2818         (gst_basesrc_start):
2819         Added draft for new query API.
2820         Added draft for better selecting scheduling methods.
2821         Make basesrc ignore length if the subclass does not support
2822         it.
2823
2824 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2825
2826         * gst/Makefile.am:
2827           possible fixes for automake-1.5 - _LIBADD is reserved
2828
2829 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2830
2831         * docs/faq/Makefile.am:
2832         * docs/manual/Makefile.am:
2833         * docs/manuals.mak:
2834         * docs/pwg/Makefile.am:
2835         * gst/Makefile.am:
2836           possible fixes for automake-1.5
2837
2838 2005-04-28  Wim Taymans  <wim@fluendo.com>
2839
2840         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2841         (gst_basesink_pad_getcaps), (gst_basesink_init),
2842         (gst_basesink_do_sync):
2843         * gst/gstclock.c: (gst_clock_entry_new):
2844         * gst/gstevent.c: (gst_event_discont_get_value):
2845         * gst/gstpipeline.c: (pipeline_bus_handler),
2846         (gst_pipeline_change_state):
2847         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
2848         Better debugging of clocking info.
2849         Allow NULL values when getting discont values.
2850
2851 2005-04-27  Wim Taymans  <wim@fluendo.com>
2852
2853         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2854         * check/gst/gstpad.c: (gst_pad_suite):
2855         Increase timeout for checks.
2856
2857 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2858
2859         * check/Makefile.am:
2860           fix the broken rule for cleanup.  Apparently this rule is
2861           only needed on FC2, so maybe this warrants further autotool
2862           inspection.
2863
2864 2005-04-26  Wim Taymans  <wim@fluendo.com>
2865
2866         * gst/gsttrashstack.h:
2867         Ooohh. a nasty one! After having a failed pop() from the stack,
2868         it's possible that the stack is empty. In that case, don't
2869         follow the NULL pointer.
2870
2871 2005-04-25  Wim Taymans  <wim@fluendo.com>
2872
2873         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2874         (gst_pad_set_checkgetrange_function),
2875         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
2876         (gst_pad_check_pull_range), (gst_pad_pull_range),
2877         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2878         (gst_pad_pause_task), (gst_pad_stop_task):
2879         * gst/gstplugin.c: (gst_plugin_load):
2880         * gst/gstplugin.h:
2881         Remove gst_library_load as it does more harm than good with
2882         the new g_module flags.
2883         Revert bogus caps template check in pad linking, pad caps
2884         are important when linking not the template, which is more
2885         general than the current caps.
2886
2887 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2888
2889         * gst/autoplug/.cvsignore:
2890         * gst/autoplug/Makefile.am:
2891         * gst/autoplug/gstsearchfuncs.c:
2892         * gst/autoplug/gstsearchfuncs.h:
2893         * gst/autoplug/gstspider.c:
2894         * gst/autoplug/gstspider.h:
2895         * gst/autoplug/gstspideridentity.c:
2896         * gst/autoplug/gstspideridentity.h:
2897         * gst/autoplug/spidertest.c:
2898           Die, spider, die.
2899
2900 2005-04-25  Wim Taymans  <wim@fluendo.com>
2901
2902         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2903         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2904         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
2905         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
2906         * gst/gstpad.h:
2907         Added stubs for unimplemented functions. 
2908
2909 2005-04-24  David Schleef  <ds@schleef.org>
2910
2911         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
2912         please fix.
2913
2914 2005-04-24  David Schleef  <ds@schleef.org>
2915
2916         Convert everything from GstAtomicInt to g_atomic_int_*, and
2917         remove gstatomic.
2918         * gst/Makefile.am:
2919         * gst/gstatomic.c:
2920         * gst/gstatomic.h:
2921         * gst/gstatomic_impl.h:
2922         * gst/gstbuffer.c:
2923         * gst/gstcaps.c:
2924         * gst/gstcaps.h:
2925         * gst/gstclock.c:
2926         * gst/gstclock.h:
2927         * gst/gstdata.c:
2928         * gst/gstdata.h:
2929         * gst/gstdata_private.h:
2930         * gst/gstevent.c:
2931         * gst/gstinfo.c:
2932         * gst/gstinfo.h:
2933         * gst/gstmessage.c:
2934         * gst/gstobject.c:
2935         * gst/gstobject.h:
2936         * gst/gststructure.c:
2937         * gst/gststructure.h:
2938         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
2939         * gst/gstutils.h:
2940
2941 2005-04-24  David Schleef  <ds@schleef.org>
2942
2943         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
2944         make the regressions tests work.  Remove some code that is no
2945         longer true.
2946         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
2947         Disable warning for pads without templates.
2948
2949 2005-04-24  David Schleef  <ds@schleef.org>
2950
2951         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
2952         functions that handle filtered links.
2953         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
2954         removed functions.
2955         * gst/gstutils.c: Fix/remove utility functions that handle
2956         filtered caps.
2957         * gst/gstutils.h:
2958         * gst/gstvalue.c: Add serialization/deserialization of caps
2959         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
2960         requires fixing so that the filter caps notation creates
2961         a capsfilter element and sets the filter_caps property.  I
2962         think everyone probably wants to keep the shorthand notation.
2963         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
2964         * docs/gst/tmpl/gstpad.sgml:
2965
2966         * gst/elements/gstelements.c: Register capsfilter element.
2967         * gst/Makefile.am: fix spacing
2968         * docs/random/ds/0.9-suggested-changes: random
2969
2970 2005-04-23  David Schleef  <ds@schleef.org>
2971
2972         * gst/elements/Makefile.am:
2973         * gst/elements/gstcapsfilter.c: New element that acts like an
2974         identity, but filters caps.  Will eventually replace filtered
2975         caps in pad linking.
2976         * gst/gstutils.c: (gst_element_create_all_pads): New function
2977         to create all the ALWAYS pads that are registered with an
2978         element class.  This functionality should eventually be
2979         merged in with GstElement initialization.
2980         * gst/gstutils.h:
2981         * testsuite/trigger/README: part of trigger test code that should
2982         have been checked in a long time ago.
2983
2984 2005-04-23  David Schleef  <ds@schleef.org>
2985
2986         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
2987         needed with new versions of libtool (nobody will confirm this),
2988         and hard to carry around.
2989         * gst/autoplug/Makefile.am:
2990         * gst/base/Makefile.am:
2991         * gst/elements/Makefile.am:
2992         * gst/indexers/Makefile.am:
2993         * gst/schedulers/Makefile.am:
2994         * libs/gst/bytestream/Makefile.am:
2995         * libs/gst/control/Makefile.am:
2996         * libs/gst/dataprotocol/Makefile.am:
2997         * libs/gst/getbits/Makefile.am:
2998
2999 2005-04-21  Wim Taymans  <wim@fluendo.com>
3000
3001         * docs/design/draft-push-pull.txt:
3002         * docs/design/part-MT-refcounting.txt:
3003         * docs/design/part-TODO.txt:
3004         * docs/design/part-caps.txt:
3005         * docs/design/part-events.txt:
3006         * docs/design/part-gstbus.txt:
3007         * docs/design/part-gstpipeline.txt:
3008         * docs/design/part-messages.txt:
3009         * docs/design/part-push-pull.txt:
3010         * docs/design/part-query.txt:
3011         Some more docs.
3012
3013 2005-04-21  Wim Taymans  <wim@fluendo.com>
3014
3015         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3016         (gst_message_new), (gst_message_new_error),
3017         (gst_message_new_warning), (gst_message_new_tag),
3018         (gst_message_new_state_changed), (gst_message_new_application),
3019         (gst_message_get_structure):
3020         * gst/gstmessage.h:
3021         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3022         (gst_structure_copy_conditional):
3023         Use parent refcount in GstMessage to ensure GstStructure
3024         consistency.
3025         Cleaned up headers a bit.
3026         
3027
3028 2005-04-20  Wim Taymans  <wim@fluendo.com>
3029
3030         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3031         (gst_basesink_pad_getcaps), (gst_basesink_init),
3032         (gst_basesink_chain_unlocked):
3033         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3034         (gst_type_find_helper):
3035         * gst/elements/gsttypefindelement.c:
3036         (gst_type_find_element_have_type), (gst_type_find_element_init),
3037         (stop_typefinding), (gst_type_find_element_handle_event),
3038         (find_suggest), (gst_type_find_element_chain),
3039         (gst_type_find_element_checkgetrange),
3040         (gst_type_find_element_getrange), (do_typefind),
3041         (gst_type_find_element_activate):
3042         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3043         (gst_buffer_default_free), (gst_buffer_default_copy),
3044         (gst_buffer_set_caps):
3045         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3046         (gst_caps_replace):
3047         * gst/gstmessage.c: (gst_message_new),
3048         (gst_message_new_state_changed):
3049         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3050         (gst_pad_set_checkgetrange_function),
3051         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3052         (gst_pad_set_caps), (gst_pad_check_pull_range),
3053         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3054         * gst/gstpad.h:
3055         * gst/gsttypefind.c: (gst_type_find_register):
3056         Make gst_caps_replace() work like other _replace() functions.
3057         Use _caps_replace() where possible.
3058         Make sure _message_new() initialises its field.
3059         Add gst_static_pad_template_get_caps()
3060
3061
3062 2005-04-18  Andy Wingo  <wingo@pobox.com>
3063
3064         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3065         on the peer, not the pad. I think that was a typo. Pass an extra
3066         arg to see if random access is possible. Activate the pads as
3067         PULL_RANGE if possible.
3068
3069         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3070
3071         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3072         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3073         to PROP_....
3074
3075 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3076
3077         * docs/faq/using.xml:
3078           Add note on gstreamer-properties (#154996).
3079
3080 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3081
3082         * docs/random/bbb/optional-properties:
3083           Some analysis on optional properties.
3084
3085 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3086
3087         * docs/gst/tmpl/gstelementfactory.sgml:
3088         * gst/gstelement.h:
3089         * gst/gstelementfactory.c: (gst_element_factory_init),
3090         (gst_element_factory_cleanup), (gst_element_register),
3091         (__gst_element_factory_add_static_pad_template),
3092         (gst_element_factory_get_static_pad_templates),
3093         (gst_element_factory_can_src_caps),
3094         (gst_element_factory_can_sink_caps):
3095         * gst/registries/Makefile.am:
3096         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3097         (gst_xml_registry_class_init), (gst_xml_registry_init),
3098         (gst_xml_registry_new), (gst_xml_registry_set_property),
3099         (gst_xml_registry_get_property), (get_time), (make_dir),
3100         (gst_xml_registry_get_perms_func),
3101         (plugin_times_older_than_recurse), (plugin_times_older_than),
3102         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3103         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3104         (add_to_char_array), (read_string), (read_uint), (read_enum),
3105         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3106         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3107         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3108         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3109         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3110         (gst_xml_registry_rebuild):
3111         * gst/registries/gstlibxmlregistry.h:
3112         * tools/gst-compprep.c: (main):
3113         * tools/gst-inspect.c: (print_pad_templates_info):
3114         * tools/gst-xmlinspect.c: (print_element_info):
3115           Use libxml2 for registry parsing, use staticpadtemplates in
3116           elementfactories. Makes gst_init() +/- 10x faster.
3117
3118 2005-04-12  Wim Taymans  <wim@fluendo.com>
3119
3120         * gst/base/Makefile.am:
3121         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3122         (gst_basesink_pad_getcaps), (gst_basesink_init),
3123         (gst_basesink_event), (gst_basesink_change_state):
3124         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3125         (gst_basesrc_init), (gst_basesrc_query),
3126         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3127         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3128         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3129         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3130         (gst_basesrc_stop), (gst_basesrc_activate),
3131         (gst_basesrc_change_state):
3132         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3133         (helper_find_suggest), (gst_type_find_helper):
3134         * gst/base/gsttypefindhelper.h:
3135         * gst/elements/Makefile.am:
3136         * gst/elements/gstelements.c:
3137         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3138         (gst_fakesink_get_times), (gst_fakesink_event),
3139         (gst_fakesink_preroll), (gst_fakesink_render):
3140         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3141         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3142         (gst_fakesrc_get_property), (gst_fakesrc_create),
3143         (gst_fakesrc_start), (gst_fakesrc_stop):
3144         * gst/elements/gstfakesrc.h:
3145         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3146         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3147         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3148         (gst_filesrc_create_read), (gst_filesrc_create),
3149         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3150         (gst_filesrc_start):
3151         * gst/elements/gsttypefindelement.c:
3152         (gst_type_find_element_have_type), (gst_type_find_element_init),
3153         (start_typefinding), (stop_typefinding), (push_buffer_store),
3154         (gst_type_find_element_handle_event),
3155         (gst_type_find_element_chain),
3156         (gst_type_find_element_checkgetrange),
3157         (gst_type_find_element_getrange), (do_typefind),
3158         (gst_type_find_element_activate),
3159         (gst_type_find_element_change_state):
3160         * gst/elements/gsttypefindelement.h:
3161         * gst/gstpipeline.c: (pipeline_bus_handler):
3162         Added typefind helper.
3163         Small preroll fix in the base sink.
3164         Disable typefind code in basesrc.
3165         Crude port of typefindelement.
3166         Fakesrc cleanups.
3167
3168
3169 2005-04-11  Wim Taymans  <wim@fluendo.com>
3170
3171         * check/gst/gstbus.c: (gstbus_suite):
3172         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3173         * check/gstcheck.h:
3174           Fix up the timeout so that the test does not fail.
3175
3176 2005-04-06  Wim Taymans  <wim@fluendo.com>
3177
3178         * gst/base/README:
3179         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3180         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3181         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3182         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3183         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3184         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3185         (gst_basesrc_stop), (gst_basesrc_activate),
3186         (gst_basesrc_change_state), (basesrc_find_peek),
3187         (basesrc_find_suggest), (gst_basesrc_type_find):
3188         * gst/base/gstbasesrc.h:
3189         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3190         (gst_filesrc_class_init), (gst_filesrc_init),
3191         (gst_filesrc_finalize), (gst_filesrc_set_location),
3192         (gst_filesrc_set_property), (gst_filesrc_get_property),
3193         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3194         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3195         (gst_filesrc_create_read), (gst_filesrc_create),
3196         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3197         * gst/elements/gstfilesrc.h:
3198         * gst/gstelement.c: (gst_element_get_state_func),
3199         (gst_element_lost_state), (gst_element_pads_activate):
3200         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3201         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3202         (gst_pad_pull_range):
3203         * gst/gstpad.h:
3204         More work on the generic source base class, implement seeking,
3205         query.
3206         Make filesrc extend the base source class.
3207         Added gst_pad_set_checkgetrange_function to GstPad.
3208
3209 2005-04-06  Andy Wingo  <wingo@pobox.com>
3210
3211         * pkgconfig/gstreamer-base.pc.in:
3212         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3213
3214         * pkgconfig/Makefile.am:
3215         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3216
3217 2005-04-04  Wim Taymans  <wim@fluendo.com>
3218
3219         * gst/base/Makefile.am:
3220         * gst/base/README:
3221         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3222         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3223         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3224         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3225         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3226         (gst_basesrc_base_init), (gst_basesrc_class_init),
3227         (gst_basesrc_init), (gst_basesrc_get_formats),
3228         (gst_basesrc_get_query_types), (gst_basesrc_query),
3229         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3230         (gst_basesrc_set_property), (gst_basesrc_get_property),
3231         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3232         (gst_basesrc_loop), (gst_basesrc_activate),
3233         (gst_basesrc_change_state):
3234         * gst/base/gstbasesrc.h:
3235         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3236         (gst_fakesrc_class_init), (gst_fakesrc_init),
3237         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3238         (gst_fakesrc_get_property), (gst_fakesrc_create):
3239         * gst/elements/gstfakesrc.h:
3240         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3241         (gst_filesrc_open_file), (gst_filesrc_loop),
3242         (gst_filesrc_activate), (filesrc_find_peek),
3243         (gst_filesrc_type_find):
3244         Made base source class, make fakesrc extend it.
3245         Add comments to basesink class.
3246         Some filesrc cleanup.
3247
3248 2005-03-31  David Schleef  <ds@schleef.org>
3249
3250         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3251         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3252         expected to link against libgstreamer.
3253         * gst/base/Makefile.am: link against libgstreamer
3254         * gst/elements/Makefile.am: same
3255
3256 2005-03-31  Andy Wingo  <wingo@pobox.com>
3257
3258         * tests/instantiate/Makefile.am:
3259         * tests/instantiate/caps.c: Add test to test speed of caps copy
3260         and free.
3261
3262         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3263         GMemChunk to be fair.
3264
3265         * gst/gsttrashstack.h: Remove warning about using the fallback
3266         trash stack implementation, it's still faster than malloc.
3267
3268 2005-03-30  Andy Wingo  <wingo@pobox.com>
3269
3270         * tests/complexity.c: Add a copyright.
3271
3272 2005-03-31  Wim Taymans  <wim@fluendo.com>
3273
3274         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3275         (gst_base_transform_class_init), (gst_base_transform_init),
3276         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3277         (gst_base_transform_get_property),
3278         (gst_base_transform_sink_activate),
3279         (gst_base_transform_src_activate),
3280         (gst_base_transform_change_state):
3281         * gst/base/gstbasetransform.h:
3282         * gst/elements/gstidentity.c: (gst_identity_class_init),
3283         (gst_identity_event), (gst_identity_check_perfect),
3284         (gst_identity_transform), (gst_identity_start),
3285         (gst_identity_stop):
3286         Added start/stop methods to transform base class so subclasses 
3287         don't need to deal with state changes even.
3288
3289 2005-03-31  Wim Taymans  <wim@fluendo.com>
3290
3291         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3292         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3293         * gst/gstevent.h:
3294         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3295         (gst_pad_pull_range):
3296         Added rate to the discont event to prepare for variable speed
3297         and reverse playback.
3298
3299 2005-03-29  David Schleef  <ds@schleef.org>
3300
3301         * configure.ac:
3302         * testsuite/trigger/Makefile.am:
3303         * testsuite/trigger/trigger.c: A little example program to show
3304         how trigger-based elements can work.
3305
3306 2005-03-29  Wim Taymans  <wim@fluendo.com>
3307
3308         * gst/base/Makefile.am:
3309         * gst/base/README:
3310         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3311         (gst_basesink_base_init), (gst_basesink_class_init),
3312         (gst_basesink_pad_getcaps), (gst_basesink_init),
3313         (gst_basesink_activate), (gst_basesink_change_state):
3314         * gst/base/gstbasesink.h:
3315         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3316         (gst_base_transform_base_init), (gst_base_transform_finalize),
3317         (gst_base_transform_class_init), (gst_base_transform_init),
3318         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3319         (gst_base_transform_event), (gst_base_transform_getrange),
3320         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3321         (gst_base_transform_set_property),
3322         (gst_base_transform_get_property),
3323         (gst_base_transform_sink_activate),
3324         (gst_base_transform_src_activate),
3325         (gst_base_transform_change_state):
3326         * gst/base/gstbasetransform.h:
3327         * gst/elements/gstidentity.c: (gst_identity_finalize),
3328         (gst_identity_class_init), (gst_identity_init),
3329         (gst_identity_event), (gst_identity_check_perfect),
3330         (gst_identity_transform), (gst_identity_set_property),
3331         (gst_identity_get_property), (gst_identity_change_state):
3332         * gst/elements/gstidentity.h:
3333         * gst/gstelement.c: (gst_element_get_state_func),
3334         (gst_element_lost_state), (gst_element_pads_activate):
3335         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3336         (gst_pad_check_pull_range), (gst_pad_pull_range):
3337         * gst/gstpad.h:
3338         Simplify pad activation.
3339         Added function to check if pull_range can be performed.
3340         Error out when pulling inactive or flushing pads.
3341         Removed const from refcounted types as it does not make sense.
3342         Simplify pad templates in basesink
3343         Added base class for simple 1-to-1 transforms.
3344         Make identity subclass the base transform.
3345
3346 2005-03-29  Andy Wingo  <wingo@pobox.com>
3347
3348         * docs/libs/gstreamer-libs-overrides.txt: 
3349         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3350         really don't understand what's going on, but like whatever. I want
3351         green buildbot!
3352
3353         * docs/gst/Makefile.am:
3354         * docs/libs/Makefile.am: Dist the overrides files.
3355
3356         * check/Makefile.am (clean-local): Remove .libs directories.
3357
3358         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3359         elements to EXTRA_DIST, so po/ files are happy.
3360
3361         * po/POTFILES.in: Er, remove it here.
3362
3363         * po/POTFILES: Remove gstspider.c.
3364
3365         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3366
3367         * docs/libs/gstreamer-libs-docs.sgml: 
3368         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3369         bytestream.
3370
3371         * tests/complexity.c (main): Set the length of the preroll queue
3372         on the sinks to prevent a lockup.
3373
3374         * libs/gst/dataprotocol/Makefile.am: 
3375         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3376         the same as the one in check/gst-libs/gdp.c.
3377
3378         * po/, docs/gst/: Commit automatic changes to docs and po files.
3379
3380         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3381         the versioned libgstbase.
3382
3383         * check/Makefile.am: Depend on an unversioned gst-register, seems
3384         to make autoconf happier.
3385
3386         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3387
3388 2005-03-28  Wim Taymans  <wim@fluendo.com>
3389
3390         * configure.ac:
3391         * docs/design/part-gstelement.txt:
3392         * docs/design/part-negotiation.txt:
3393         * docs/design/part-preroll.txt:
3394         * docs/design/part-scheduling.txt:
3395         * docs/design/part-states.txt:
3396         * gst/Makefile.am:
3397         * gst/base/Makefile.am:
3398         * gst/base/README:
3399         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3400         (gst_basesink_base_init), (gst_basesink_class_init),
3401         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3402         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3403         (gst_basesink_set_pad_functions),
3404         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3405         (gst_basesink_set_property), (gst_basesink_get_property),
3406         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3407         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3408         (gst_basesink_preroll_queue_push),
3409         (gst_basesink_preroll_queue_empty),
3410         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3411         (gst_basesink_event), (gst_basesink_get_times),
3412         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3413         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3414         (gst_basesink_loop), (gst_basesink_activate),
3415         (gst_basesink_change_state):
3416         * gst/base/gstbasesink.h:
3417         * gst/elements/Makefile.am:
3418         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3419         (gst_fakesink_class_init), (gst_fakesink_init),
3420         (gst_fakesink_set_property), (gst_fakesink_get_property),
3421         (gst_fakesink_get_times), (gst_fakesink_event),
3422         (gst_fakesink_preroll), (gst_fakesink_render),
3423         (gst_fakesink_change_state):
3424         * gst/elements/gstfakesink.h:
3425         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3426         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3427         * gst/gstelement.c: (gst_element_add_pad),
3428         (gst_element_get_state_func), (gst_element_abort_state),
3429         (gst_element_commit_state), (gst_element_lost_state),
3430         (gst_element_set_state), (gst_element_pads_activate):
3431         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3432         * gst/gstpipeline.c: (gst_pipeline_send_event),
3433         (gst_pipeline_change_state):
3434         Added state change code.
3435         Added/updated docs.
3436         Added sink base class, make fakesink extend the base class.
3437         Small cleanups in GstPipeline.
3438
3439 2005-03-26  David Schleef  <ds@schleef.org>
3440
3441         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3442         is broken and should be implemented in a different library.
3443         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3444         * gst/gst.h: remove gstcpu.h
3445         * gst/gstcpu.c: remove
3446         * gst/gstcpu.h: remove
3447         * gst/Makefile.am.future: Remove this file.  It's ancient.
3448
3449 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3450
3451         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3452         (gst_bin_send_event):
3453           Add default event/set_manager handlers. The set_manager handler
3454           takes care that the manager is distributed over kids that were
3455           already in the bin before the manager was set. The event handler
3456           is a utility virtual function that sends the event over all sinks,
3457           so that gst_element_send_event (bin, event); has the expected
3458           behaviour.
3459         * gst/gstpad.c: (gst_pad_event_default):
3460           Re-install default event handling for discontinuities, so that
3461           seeking works without requiring hacks in applications or extra
3462           code in sinks.
3463         * gst/gstpipeline.c: (gst_pipeline_class_init),
3464         (gst_pipeline_send_event):
3465           Half hack, half utility: set a pipeline to PAUSED for seek events,
3466           since that is the only way we can guarantee a/v sync. Means that
3467           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3468           and it "just works".
3469
3470 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3471
3472         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3473           Lock/unlock mismatch.
3474
3475 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3476
3477         * docs/faq/gst-uninstalled:
3478           add gst-plugins-base
3479         * docs/gst/Makefile.am:
3480           don't error out until docs are fixed
3481         * docs/gst/gstreamer.types:
3482           remove thread
3483
3484 2005-03-22  Wim Taymans  <wim@fluendo.com>
3485
3486         * check/Makefile.am:
3487         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3488         * gst/gststructure.c: (gst_structure_set_valist),
3489         (gst_structure_copy_conditional):
3490         Activated more tests.
3491         Added message test.
3492         Added G_TYPE_POINTER to GstStructure.
3493         
3494
3495 2005-03-22  Wim Taymans  <wim@fluendo.com>
3496
3497         * docs/design/part-TODO.txt:
3498         * docs/design/part-events.txt:
3499         * docs/design/part-gstbin.txt:
3500         * docs/design/part-gstbus.txt:
3501         * docs/design/part-gstpipeline.txt:
3502         * docs/design/part-messages.txt:
3503         * gst/gstbus.c:
3504         * gst/gstmessage.c:
3505         Docs updates
3506
3507 2005-03-21  Wim Taymans  <wim@fluendo.com>
3508
3509         * gst/gstbus.c: (gst_bus_post):
3510         Fix copy-and-paste error.
3511
3512 2005-03-21  Wim Taymans  <wim@fluendo.com>
3513
3514         * check/Makefile.am:
3515         * gst/Makefile.am:
3516         * gst/elements/Makefile.am:
3517         * gst/elements/gstelements.c:
3518         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3519         (gst_fakesink_event), (gst_fakesink_chain):
3520         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3521         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3522         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3523         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3524         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3525         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3526         (gst_fakesrc_loop), (gst_fakesrc_activate),
3527         (gst_fakesrc_change_state):
3528         * gst/elements/gstfakesrc.h:
3529         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3530         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
3531         (gst_filesrc_open_file), (gst_filesrc_loop),
3532         (gst_filesrc_activate), (gst_filesrc_change_state),
3533         (filesrc_find_peek), (filesrc_find_suggest),
3534         (gst_filesrc_type_find):
3535         * gst/elements/gstidentity.c: (gst_identity_finalize),
3536         (gst_identity_class_init), (gst_identity_init),
3537         (gst_identity_proxy_getcaps), (identity_queue_push),
3538         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
3539         (gst_identity_getrange), (gst_identity_chain),
3540         (gst_identity_sink_loop), (gst_identity_src_loop),
3541         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
3542         (gst_identity_set_property), (gst_identity_get_property),
3543         (gst_identity_change_state):
3544         * gst/elements/gstidentity.h:
3545         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
3546         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
3547         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
3548         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
3549         (gst_tee_sink_activate):
3550         * gst/elements/gsttee.h:
3551         * gst/gst.c: (gst_register_core_elements), (init_post):
3552         * gst/gst.h:
3553         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
3554         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
3555         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
3556         (gst_bin_change_state):
3557         * gst/gstbin.h:
3558         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
3559         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
3560         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
3561         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
3562         (gst_bus_set_sync_handler), (gst_bus_create_watch),
3563         (bus_watch_callback), (bus_watch_destroy),
3564         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
3565         (poll_timeout), (gst_bus_poll):
3566         * gst/gstbus.h:
3567         * gst/gstcaps.h:
3568         * gst/gstdata.h:
3569         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3570         (gst_element_post_message), (gst_element_message_full),
3571         (gst_element_get_state_func), (gst_element_get_state),
3572         (gst_element_abort_state), (gst_element_commit_state),
3573         (gst_element_lost_state), (gst_element_set_state),
3574         (gst_element_pads_activate), (gst_element_change_state),
3575         (gst_element_dispose), (gst_element_set_manager_func),
3576         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
3577         (gst_element_set_manager), (gst_element_get_manager),
3578         (gst_element_set_bus), (gst_element_get_bus),
3579         (gst_element_set_scheduler), (gst_element_get_scheduler):
3580         * gst/gstelement.h:
3581         * gst/gstevent.c: (gst_event_new_segment_seek),
3582         (gst_event_new_flush):
3583         * gst/gstevent.h:
3584         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
3585         (_gst_message_free), (gst_message_get_type), (gst_message_new),
3586         (gst_message_new_eos), (gst_message_new_error),
3587         (gst_message_new_warning), (gst_message_new_tag),
3588         (gst_message_new_state_changed), (gst_message_new_application),
3589         (gst_message_get_structure), (gst_message_parse_tag),
3590         (gst_message_parse_state_changed), (gst_message_parse_error),
3591         (gst_message_parse_warning):
3592         * gst/gstmessage.h:
3593         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
3594         (gst_real_pad_set_property), (gst_pad_set_active),
3595         (gst_pad_is_active), (gst_pad_set_blocked_async),
3596         (gst_pad_set_blocked), (gst_pad_is_blocked),
3597         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
3598         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
3599         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
3600         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
3601         (gst_pad_link_filtered), (gst_pad_relink_filtered),
3602         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
3603         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
3604         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
3605         (gst_pad_set_caps), (gst_pad_configure_sink),
3606         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
3607         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
3608         (gst_real_pad_dispose), (gst_real_pad_finalize),
3609         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
3610         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3611         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
3612         * gst/gstpad.h:
3613         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
3614         (pipeline_bus_handler), (gst_pipeline_change_state),
3615         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
3616         * gst/gstpipeline.h:
3617         * gst/gstprobe.h:
3618         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
3619         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
3620         (gst_queue_link_src), (gst_queue_bufferalloc),
3621         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
3622         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
3623         (gst_queue_loop), (gst_queue_handle_src_event),
3624         (gst_queue_handle_src_query), (gst_queue_src_activate),
3625         (gst_queue_change_state):
3626         * gst/gstqueue.h:
3627         * gst/gstscheduler.c: (gst_scheduler_init),
3628         (gst_scheduler_dispose), (gst_scheduler_create_task),
3629         (gst_scheduler_factory_create):
3630         * gst/gstscheduler.h:
3631         * gst/gststructure.c: (gst_structure_get_type),
3632         (gst_structure_copy_conditional):
3633         * gst/gststructure.h:
3634         * gst/gsttaginterface.h:
3635         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
3636         (gst_task_init), (gst_task_dispose), (gst_task_create),
3637         (gst_task_get_state), (gst_task_start), (gst_task_stop),
3638         (gst_task_pause):
3639         * gst/gsttask.h:
3640         * gst/gstthread.c:
3641         * gst/gstthread.h:
3642         * gst/gsttypes.h:
3643         * gst/schedulers/Makefile.am:
3644         * gst/schedulers/cothreads_compat.h:
3645         * gst/schedulers/entryscheduler.c:
3646         * gst/schedulers/faircothreads.c:
3647         * gst/schedulers/faircothreads.h:
3648         * gst/schedulers/fairscheduler.c:
3649         * gst/schedulers/gstbasicscheduler.c:
3650         * gst/schedulers/gstoptimalscheduler.c:
3651         * gst/schedulers/gthread-cothreads.h:
3652         * gst/schedulers/threadscheduler.c:
3653         (gst_thread_scheduler_task_get_type),
3654         (gst_thread_scheduler_task_class_init),
3655         (gst_thread_scheduler_task_init),
3656         (gst_thread_scheduler_task_start),
3657         (gst_thread_scheduler_task_stop),
3658         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
3659         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
3660         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
3661         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
3662         (plugin_init):
3663         * libs/gst/Makefile.am:
3664         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
3665         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
3666         (gst_file_pad_parent_set):
3667         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3668         (gst_dp_event_from_packet):
3669         * tests/complexity.c: (main):
3670         * tests/mass_elements.c: (main):
3671         * testsuite/states/locked.c: (message_received), (main):
3672         * testsuite/states/parent.c: (main):
3673         * tools/gst-inspect.c: (print_element_flag_info),
3674         (print_implementation_info), (print_pad_info):
3675         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
3676         (main):
3677         * tools/gst-md5sum.c: (event_loop), (main):
3678         * tools/gst-typefind.c: (main):
3679         * tools/gst-xmlinspect.c: (print_element_info):
3680         Next big merge.
3681         Added GstBus for mainloop integration.
3682         Added GstMessage for sending notifications on the bus.
3683         Added GstTask as an abstraction for pipeline entry points.
3684         Removed GstThread.
3685         Removed Schedulers.
3686         Simplified GstQueue for multithreaded core.
3687         Made _link threadsafe, removed old capsnego.
3688         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
3689         Added pad blocking functions.
3690         Reworked scheduling functions in GstPad to prepare for
3691         scheduling updates soon.
3692         Moved events out of data stream.
3693         Simplified GstEvent types.
3694         Added return values to push/pull.
3695         Removed clocking from GstElement.
3696         Added prototypes for state change function for next merge.
3697         Removed iterate from bins and state change management.
3698         Fixed some elements, disabled others for now.
3699         Fixed -inspect and -launch.
3700         Added check for GstBus.
3701
3702 2005-03-10  Wim Taymans  <wim@fluendo.com>
3703
3704         * docs/design/part-MT-refcounting.txt:
3705         * docs/design/part-clocks.txt:
3706         * docs/design/part-gstelement.txt:
3707         * docs/design/part-gstobject.txt:
3708         * docs/design/part-standards.txt:
3709         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3710         (gst_bin_remove_func), (gst_bin_remove):
3711         * gst/gstbin.h:
3712         * gst/gstbuffer.c:
3713         * gst/gstcaps.h:
3714         * testsuite/clock/clock1.c: (main):
3715         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
3716         (main):
3717         * testsuite/dlopen/loadgst.c: (do_test):
3718         * testsuite/refcounting/bin.c: (add_remove_test1),
3719         (add_remove_test2), (main):
3720         * testsuite/refcounting/element.c: (main):
3721         * testsuite/refcounting/element_pad.c: (main):
3722         * testsuite/refcounting/pad.c: (main):
3723         * tools/gst-launch.c: (sigint_handler_sighandler):
3724         * tools/gst-typefind.c: (main):
3725         Doc updates.
3726         Added doc about clock.
3727         removed gst_bin_iterate_recurse_up(), marked methods
3728         for removal.
3729         Fix more testsuites.
3730
3731 2005-03-09  Wim Taymans  <wim@fluendo.com>
3732
3733         * gst/gstpad.c: (gst_pad_get_direction),
3734         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
3735         (gst_pad_collect_valist):
3736         * testsuite/bins/interface.c: (main):
3737         * testsuite/caps/audioscale.c: (test_caps):
3738         * testsuite/caps/caps.c: (test1), (test2), (test3):
3739         * testsuite/caps/deserialize.c: (main):
3740         * testsuite/caps/enumcaps.c: (main):
3741         * testsuite/caps/filtercaps.c: (main):
3742         * testsuite/caps/intersect2.c: (main):
3743         * testsuite/caps/random.c: (main):
3744         * testsuite/caps/renegotiate.c: (my_fixate), (main):
3745         * testsuite/caps/sets.c: (check_caps):
3746         * testsuite/caps/simplify.c: (check_caps), (main):
3747         * testsuite/caps/subtract.c: (check_caps):
3748         Fix _pad_get_direction wrt ghostpads.
3749         Fix caps testsuite.
3750
3751 2005-03-09  Wim Taymans  <wim@fluendo.com>
3752
3753         * check/Makefile.am:
3754         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
3755         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
3756         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
3757         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
3758         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
3759         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
3760         (gst_bin_remove), (gst_bin_iterate_recurse_up),
3761         (bin_element_is_sink), (gst_bin_iterate_sinks),
3762         (gst_bin_iterate_all_by_interface):
3763         * gst/gstbin.h:
3764         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
3765         (gst_element_change_state), (gst_element_dispose),
3766         (gst_element_finalize), (gst_element_set_loop_function):
3767         * gst/gstelement.h:
3768         * gst/gstiterator.c: (find_custom_fold_func):
3769         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3770         (gst_pad_collectv), (gst_pad_collect_valist),
3771         (gst_pad_template_new):
3772         * gst/gstpipeline.c: (gst_pipeline_class_init),
3773         (gst_pipeline_dispose), (gst_pipeline_set_property),
3774         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
3775         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
3776         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
3777         * gst/gstutils.h:
3778         * gst/schedulers/entryscheduler.c:
3779         * gst/schedulers/gstbasicscheduler.c:
3780         (gst_basic_scheduler_cothreaded_chain),
3781         (gst_basic_scheduler_chain_add_element):
3782         * testsuite/bins/interface.c: (main):
3783         Added GstBin test.
3784         Added GstSystemClock test.
3785         Implemented clock distribution code in GstBin.
3786         Implemented iterate sinks method for future use.
3787         Rearranged gstelement.h
3788         Fix GstIterator comparison bug.
3789         Moved some code to GstPipeline, mostly clocking related.
3790
3791 2005-03-09  Wim Taymans  <wim@fluendo.com>
3792
3793         * configure.ac:
3794         * gst/gst_private.h:
3795         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3796         (gst_bin_remove_func), (gst_bin_remove),
3797         (gst_bin_get_by_name_recurse_up):
3798         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
3799         (gst_clock_id_compare_func), (gst_clock_id_wait),
3800         (gst_clock_id_wait_async), (gst_clock_init),
3801         (gst_clock_adjust_unlocked), (gst_clock_get_time):
3802         * gst/gstelement.h:
3803         * gst/gstinfo.c: (_gst_debug_init):
3804         * gst/gstobject.h:
3805         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3806         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
3807         * gst/gstpad.h:
3808         Bump version number, we're now 0.9.0
3809         Add future debugging category.
3810         Fix NULL _unref() in _get_by_name_recurse_up
3811         Rearrange gstpad.h.
3812         Update some docs.
3813
3814 2005-03-08  Wim Taymans  <wim@fluendo.com>
3815
3816         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
3817         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3818         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3819         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
3820         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
3821         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
3822         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
3823         * gst/elements/gstidentity.c: (gst_identity_class_init):
3824         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
3825         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
3826         * gst/elements/gstshaper.c: (gst_shaper_class_init):
3827         * gst/elements/gststatistics.c: (gst_statistics_class_init):
3828         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
3829         (gst_tee_link):
3830         * gst/gstelement.c: (gst_element_class_init),
3831         (gst_element_base_class_init), (gst_element_init),
3832         (gst_element_get_random_pad), (gst_element_wait_state_change),
3833         (gst_element_change_state), (gst_element_dispose),
3834         (gst_element_finalize), (gst_element_set_loop_function):
3835         * gst/gstelement.h:
3836         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
3837         * gst/gstthread.c: (gst_thread_class_init),
3838         (gst_thread_release_children_locks), (gst_thread_change_state):
3839         * gst/schedulers/gstbasicscheduler.c:
3840         (gst_basic_scheduler_loopfunc_wrapper),
3841         (gst_basic_scheduler_chain_wrapper),
3842         (gst_basic_scheduler_src_wrapper),
3843         (gst_basic_scheduler_remove_element):
3844         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3845         Remove threadsafe properties. Fix elements because GObject
3846         complains when installing a property before declaring a
3847         set/get_property handler.
3848         Rearrange gstelement.h file, use STATE macros for state locks.
3849         Free mutexes in the finalize method instead of dispose.
3850
3851 2005-03-08  Wim Taymans  <wim@fluendo.com>
3852
3853         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3854         * gst/gstthread.c: (gst_thread_release_children_locks):
3855         Added parentage check.
3856         Fix build og GstThread again.
3857
3858 2005-03-08  Wim Taymans  <wim@fluendo.com>
3859
3860         * docs/design/part-MT-refcounting.txt:
3861         * docs/design/part-conventions.txt:
3862         * docs/design/part-gstobject.txt:
3863         * docs/design/part-relations.txt:
3864         * docs/design/part-standards.txt:
3865         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3866         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
3867         (gst_bin_get_by_name), (gst_bin_get_by_interface),
3868         (gst_bin_iterate_all_by_interface):
3869         * gst/gstbuffer.h:
3870         * gst/gstclock.h:
3871         * gst/gstelement.c: (gst_element_class_init),
3872         (gst_element_change_state), (gst_element_set_loop_function):
3873         * gst/gstelement.h:
3874         * gst/gstiterator.c:
3875         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
3876         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
3877         (gst_object_dispatch_properties_changed), (gst_object_set_name),
3878         (gst_object_set_parent), (gst_object_unparent),
3879         (gst_object_check_uniqueness):
3880         * gst/gstobject.h:
3881         Docs updates, clean up some headers.
3882
3883 2005-03-07  Wim Taymans  <wim@fluendo.com>
3884
3885         * check/.cvsignore:
3886         * check/Makefile.am:
3887         * check/gst-libs/.cvsignore:
3888         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
3889         * check/gst/.cvsignore:
3890         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
3891         (START_TEST), (gstbus_suite), (main):
3892         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
3893         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
3894         (gst_data_suite), (main):
3895         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
3896         (add_fold_func), (gstiterator_suite), (main):
3897         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
3898         (thread_name_object), (thread_name_object_default),
3899         (gst_object_name_compare), (gst_object_suite), (main):
3900         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
3901         (gst_pad_suite), (main):
3902         * check/gstcheck.c: (gst_check_log_message_func),
3903         (gst_check_log_critical_func), (gst_check_init):
3904         * check/gstcheck.h:
3905         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
3906         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
3907         Added checks.
3908
3909 2005-03-07  Wim Taymans  <wim@fluendo.com>
3910
3911         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
3912         (gst_list_iterator_next), (gst_list_iterator_resync),
3913         (gst_list_iterator_free), (gst_iterator_new_list),
3914         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
3915         (gst_iterator_free), (gst_iterator_push), (filter_next),
3916         (filter_resync), (filter_uninit), (filter_free),
3917         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
3918         (gst_iterator_foreach), (find_custom_fold_func),
3919         (gst_iterator_find_custom):
3920         * gst/gstiterator.h:
3921         Added missing files.
3922
3923 2005-03-07  Wim Taymans  <wim@fluendo.com>
3924
3925         * Makefile.am:
3926         * configure.ac:
3927         * docs/design/part-MT-refcounting.txt:
3928         * docs/design/part-conventions.txt:
3929         * docs/design/part-gstobject.txt:
3930         * docs/design/part-relations.txt:
3931         * examples/mixer/mixer.c: (main):
3932         * examples/thread/thread.c: (eos), (main):
3933         * gst/Makefile.am:
3934         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
3935         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
3936         (gst_spider_plug_from_srcpad):
3937         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
3938         (gst_spider_identity_change_state),
3939         (gst_spider_identity_sink_loop_type_finding):
3940         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
3941         * gst/elements/gstidentity.c: (gst_identity_init):
3942         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
3943         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
3944         * gst/elements/gsttypefindelement.c: (free_entry):
3945         * gst/gst.c:
3946         * gst/gst.h:
3947         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
3948         (gst_bin_set_clock_func), (gst_bin_auto_clock),
3949         (gst_bin_set_index), (gst_bin_set_element_sched),
3950         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
3951         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
3952         (gst_bin_iterate_elements), (iterate_child_recurse),
3953         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
3954         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
3955         (compare_interface), (gst_bin_get_by_interface),
3956         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
3957         * gst/gstbin.h:
3958         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
3959         (gst_buffer_default_free), (gst_buffer_default_copy),
3960         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
3961         (gst_buffer_create_sub):
3962         * gst/gstbuffer.h:
3963         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
3964         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
3965         (gst_caps_unref), (gst_static_caps_get),
3966         (gst_caps_remove_and_get_structure), (gst_caps_append),
3967         (gst_caps_append_structure), (gst_caps_remove_structure),
3968         (gst_caps_copy_nth), (gst_caps_set_simple),
3969         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
3970         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
3971         (gst_caps_structure_intersect_field), (gst_caps_intersect),
3972         (gst_caps_structure_subtract_field), (gst_caps_subtract),
3973         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
3974         (gst_caps_structure_figure_out_union),
3975         (gst_caps_switch_structures), (gst_caps_do_simplify),
3976         (gst_caps_replace), (gst_caps_from_string),
3977         (gst_caps_copy_conditional):
3978         * gst/gstcaps.h:
3979         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
3980         (_gst_clock_id_free), (gst_clock_id_unref),
3981         (gst_clock_id_compare_func), (gst_clock_id_wait),
3982         (gst_clock_id_wait_async), (gst_clock_class_init),
3983         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
3984         (gst_clock_get_time), (gst_clock_set_time_adjust),
3985         (gst_clock_set_property), (gst_clock_get_property):
3986         * gst/gstclock.h:
3987         * gst/gstcompat.h:
3988         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
3989         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
3990         * gst/gstdata.h:
3991         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3992         (gst_element_requires_clock), (gst_element_provides_clock),
3993         (gst_element_set_clock), (gst_element_clock_wait),
3994         (gst_element_wait), (gst_element_set_time_delay),
3995         (gst_element_is_indexable), (gst_element_add_pad),
3996         (gst_element_add_ghost_pad), (gst_element_remove_pad),
3997         (pad_compare_name), (gst_element_get_static_pad),
3998         (gst_element_request_pad), (gst_element_get_request_pad),
3999         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4000         (gst_element_class_get_pad_template_list),
4001         (gst_element_class_get_pad_template), (gst_element_error_func),
4002         (gst_element_get_random_pad), (gst_element_get_event_masks),
4003         (gst_element_send_event), (gst_element_seek),
4004         (gst_element_get_query_types), (gst_element_query),
4005         (gst_element_get_formats), (gst_element_convert),
4006         (gst_element_is_locked_state), (gst_element_set_locked_state),
4007         (gst_element_sync_state_with_parent), (gst_element_change_state),
4008         (gst_element_finalize), (gst_element_yield),
4009         (gst_element_interrupt), (gst_element_set_scheduler),
4010         (gst_element_get_scheduler), (gst_element_set_loop_function):
4011         * gst/gstelement.h:
4012         * gst/gstevent.h:
4013         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4014         (gst_format_get_by_nick), (gst_format_get_details),
4015         (gst_format_iterate_definitions):
4016         * gst/gstformat.h:
4017         * gst/gstindex.c: (gst_index_gtype_resolver):
4018         * gst/gstinfo.c:
4019         * gst/gstinfo.h:
4020         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4021         (gst_mem_chunk_free):
4022         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4023         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4024         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4025         (gst_object_dispatch_properties_changed),
4026         (gst_object_set_name_default), (gst_object_set_name),
4027         (gst_object_get_name), (gst_object_set_name_prefix),
4028         (gst_object_get_name_prefix), (gst_object_set_parent),
4029         (gst_object_get_parent), (gst_object_unparent),
4030         (gst_object_check_uniqueness), (gst_object_save_thyself),
4031         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4032         (gst_object_set_property), (gst_object_get_property),
4033         (gst_object_get_path_string):
4034         * gst/gstobject.h:
4035         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4036         (gst_real_pad_init), (gst_real_pad_get_property),
4037         (gst_pad_custom_new), (gst_pad_get_direction),
4038         (gst_pad_set_active), (gst_pad_is_active),
4039         (gst_pad_set_event_function), (gst_pad_is_linked),
4040         (gst_pad_link_free), (gst_pad_link_intersect),
4041         (gst_pad_link_fixate), (gst_pad_set_caps),
4042         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4043         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4044         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4045         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4046         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4047         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4048         (gst_pad_realize), (gst_pad_get_allowed_caps),
4049         (gst_real_pad_dispose), (gst_real_pad_finalize),
4050         (gst_pad_collectv), (gst_pad_collect_valist),
4051         (gst_pad_template_dispose), (gst_pad_template_new),
4052         (gst_pad_get_internal_links):
4053         * gst/gstpad.h:
4054         * gst/gstpipeline.c: (gst_pipeline_dispose),
4055         (gst_pipeline_change_state):
4056         * gst/gstpipeline.h:
4057         * gst/gstplugin.c:
4058         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4059         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4060         * gst/gstpluginfeature.h:
4061         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4062         * gst/gstquery.c: (_gst_query_type_initialize),
4063         (gst_query_type_register), (gst_query_type_get_by_nick),
4064         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4065         * gst/gstquery.h:
4066         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4067         * gst/gstscheduler.c: (gst_scheduler_add_element),
4068         (gst_scheduler_factory_create):
4069         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4070         (gst_structure_free), (gst_structure_set_name),
4071         (gst_structure_id_set_value), (gst_structure_set_value),
4072         (gst_structure_set_valist), (gst_structure_remove_field),
4073         (gst_structure_remove_fields),
4074         (gst_structure_remove_fields_valist),
4075         (gst_structure_remove_all_fields), (gst_structure_foreach),
4076         (gst_structure_map_in_place),
4077         (gst_caps_structure_fixate_field_nearest_int),
4078         (gst_caps_structure_fixate_field_nearest_double):
4079         * gst/gststructure.h:
4080         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4081         (gst_system_clock_init), (gst_system_clock_dispose),
4082         (gst_system_clock_async_thread),
4083         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4084         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4085         * gst/gstsystemclock.h:
4086         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4087         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4088         * gst/gsttaginterface.c:
4089         * gst/gstthread.c: (gst_thread_dispose),
4090         (gst_thread_release_children_locks), (gst_thread_change_state),
4091         (gst_thread_main_loop):
4092         * gst/gsttrashstack.h:
4093         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4094         * gst/gsttypes.h:
4095         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4096         (gst_element_request_pad), (gst_element_get_pad_from_template),
4097         (gst_element_request_compatible_pad),
4098         (gst_element_get_compatible_pad_filtered),
4099         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4100         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4101         (gst_element_link_many), (gst_element_link),
4102         (gst_element_link_pads), (gst_element_unlink_pads),
4103         (gst_element_unlink_many), (gst_element_unlink),
4104         (gst_pad_can_link_filtered), (gst_pad_can_link),
4105         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4106         (gst_object_default_error), (gst_bin_add_many),
4107         (gst_bin_remove_many), (gst_element_populate_std_props),
4108         (gst_element_class_install_std_props), (gst_buffer_merge),
4109         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4110         (link_fold_func), (gst_pad_proxy_setcaps):
4111         * gst/gstutils.h:
4112         * gst/gstvalue.c: (gst_value_deserialize_string):
4113         * gst/parse/grammar.y:
4114         * gst/schedulers/gstbasicscheduler.c:
4115         (gst_basic_scheduler_cothreaded_chain),
4116         (gst_basic_scheduler_chain_recursive_add),
4117         (gst_basic_scheduler_pad_link):
4118         * gst/schedulers/gstoptimalscheduler.c:
4119         (get_group_schedule_function),
4120         (gst_opt_scheduler_state_transition),
4121         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4122         * libs/gst/bytestream/bytestream.c:
4123         * libs/gst/dataprotocol/dataprotocol.c:
4124         (gst_dp_header_from_buffer):
4125         * po/nb.po:
4126         * po/ru.po:
4127         * tests/threadstate/threadstate2.c: (eos):
4128         * tools/gst-compprep.c: (main):
4129         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4130         (print_pad_info), (print_children_info):
4131         * tools/gst-launch.c: (idle_func), (main):
4132         * tools/gst-md5sum.c: (idle_func), (main):
4133         * tools/gst-xmlinspect.c: (print_element_info):
4134         First THREADED backport attempt, focusing on adding locks and
4135         making sure the API is threadsafe. Needs more work. More docs
4136         follow this week.
4137
4138 2005-02-24  Andy Wingo  <wingo@pobox.com>
4139
4140         * tests/bench-complexity.scm:
4141         * tests/complexity.gnuplot: New files, good for running complexity
4142         benchmarks.
4143
4144         * tests/Makefile.am:
4145         * tests/complexity.c: New test, sets up N elements, at each level
4146         teeing into M streams per element. Eeeenteresting.
4147
4148         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4149         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4150         running bench-mass_elements.scm.
4151
4152         * tests/bench-mass_elements.scm: New script, runs mass_elements
4153         for various numbers of identities, outputting the results to a
4154         file. Requires guile 1.6. Just for testing.
4155
4156 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4157
4158         * gst/schedulers/fairscheduler.c:
4159           compile with debug disabled
4160
4161 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4162
4163         * configure.ac:
4164           hunting season on 0.9 is now OPEN
4165
4166 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4167
4168         * docs/libs/tmpl/gstcontrol.sgml:
4169         * docs/libs/tmpl/gstdparam.sgml:
4170         * docs/libs/tmpl/gstdplinint.sgml:
4171         * docs/libs/tmpl/gstdpman.sgml:
4172         * docs/libs/tmpl/gstdpsmooth.sgml:
4173         * docs/libs/tmpl/gstunitconvert.sgml:
4174           more docs for the state of dparams
4175
4176 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4177
4178         * gst/gstelementfactory.c: (gst_element_factory_create):
4179         * gst/gstobject.c: (gst_object_init),
4180         (gst_object_set_name_default), (gst_object_set_name):
4181           name objects by default, not in gst_element_factory_create. Allows
4182           using elements created with g_object_new. (fixes #167283)
4183
4184 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4185
4186         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4187           make the time that debugging functions print relative to when
4188           gst_init was called
4189
4190 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4191
4192         * gst/gsttaginterface.c:
4193           Fix inline docs: tag setter vararg functions are NULL-terminated,
4194           GST_TAG_INVALID doesn't exist any more.
4195
4196 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4197
4198         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4199         Allocate the 1 byte more memory that was forgotten!!!!!
4200         fixes memory corruption on 64bit platforms
4201
4202 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4203
4204         * docs/pwg/building-pads.xml:
4205         * docs/pwg/intro-basics.xml:
4206           fixed a few typos, relabeled introductionary list of types
4207         * docs/random/ensonic/dparams.txt:
4208           more notes abut dparam changes
4209         * libs/gst/control/dparam.c: (gst_dparam_attach):
4210         * libs/gst/control/dparammanager.c:
4211         * libs/gst/control/dparammanager.h:
4212           - many comments and notes on dparam implementation
4213           - new dparams are were not initialized to the default value
4214             from param spec
4215
4216 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4217
4218         submitted by: Peter Astakhov
4219
4220         * po/LINGUAS:
4221         * po/ru.po:
4222           adding Russian translation
4223
4224 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4225
4226         * configure.ac:
4227         * docs/gst/Makefile.am:
4228         * docs/libs/Makefile.am:
4229           make sure popt is added to gtk-doc flags.  Fixes #147782.
4230
4231 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4232
4233         * docs/faq/using.xml:
4234           Fix typo in FAQ (artssink => artsdsink)
4235
4236 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4237
4238         * tools/gst-launch.1.in:
4239           Fix typo (#166699).
4240
4241 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4242
4243         * docs/faq/using.xml:
4244           Add -v argument to fakesrc/fakesink gst-launch line,
4245           so that the promised output will actually show up.
4246
4247 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4248
4249         * gst/gstthread.c: (gst_thread_change_state):
4250           Implement state-change error handling (#166073).
4251
4252 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4253
4254         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4255           Release interrupt after handling (#166250).
4256
4257 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4258
4259         * configure.ac:
4260           back to HEAD
4261
4262 === release 0.8.9 ===
4263
4264 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4265
4266         * NEWS:
4267         * RELEASE:
4268         * configure.ac:
4269           releasing 0.8.9, "Like Eating Glass"
4270
4271 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4272
4273         submitted by: Clytie Siddall
4274
4275         * po/vi.po: Added Vietnamese translation
4276
4277 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4278
4279         patch by: Tim Philipp-Müller
4280
4281         * configure.ac:
4282         * gst/gstpad.c:
4283           unref data when probe function returns FALSE.  Fixes #166362
4284
4285 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4286
4287         * gst/gst.c: (gst_init_get_popt_table):
4288           Fix typo (#166269).
4289
4290 2005-02-04  Andy Wingo  <wingo@pobox.com>
4291
4292         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4293         the debugging on whether the caps are compatible.
4294
4295 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4296
4297         * docs/manual/basics-elements.xml:
4298           Fix two typos.
4299
4300 2005-02-02  Wim Taymans  <wim@fluendo.com>
4301
4302         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4303         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4304         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4305         Remove some FIXMEs after analysing and commenting why they
4306         are not issues.
4307
4308 2005-02-02  Wim Taymans  <wim@fluendo.com>
4309
4310         * gst/schedulers/gstoptimalscheduler.c:
4311         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4312         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4313         (get_invalid_call), (chain_invalid_call),
4314         (get_group_schedule_function), (loop_group_schedule_function),
4315         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4316         (gst_opt_scheduler_state_transition),
4317         (gst_opt_scheduler_add_element),
4318         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4319         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4320         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4321         (gst_opt_scheduler_show):
4322         Added lock to protect scheduler data structures.
4323
4324 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4325
4326         * testsuite/threads/threadi.c: (cb_data):
4327           Fix buglet in test.
4328
4329 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4330
4331         * testsuite/threads/Makefile.am:
4332         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4333           On Wim's request, split the test in three separately-compiled
4334           tests that each test a very specific bug. Two of them still fail,
4335           will create bugs for those. threadi.c indicates why they fail.
4336
4337 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4338
4339         * gst/schedulers/gstoptimalscheduler.c:
4340         (get_group_schedule_function):
4341           Try to work with the threading mess that queue_link is.
4342
4343 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4344
4345         * gst/gstbin.c: (gst_bin_remove_func):
4346           Explicitely make an element release locks in a group when being
4347           remove from a bin.
4348         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4349           If there's no scheduler, always return immediately (similar to
4350           gst_element_interrupt).
4351
4352 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4353
4354         * gst/gstbin.c: (gst_bin_child_state_change_func):
4355           Remove a piece of code that could never be reached.
4356         * docs/gst/gstreamer-sections.txt:
4357         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4358         (gst_pad_call_get_function):
4359         * gst/gstpad.h:
4360         * testsuite/pad/Makefile.am:
4361           Fix #150546, enable tests.
4362
4363 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4364
4365         * docs/pwg/advanced-types.xml:
4366           Fix description for buffer-frames=0.
4367         * docs/gst/tmpl/gstbin.sgml:
4368         * gst/gstbin.c: (gst_bin_child_state_change_func),
4369         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4370         * gst/gstbin.h:
4371         * testsuite/threads/Makefile.am:
4372         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4373         (cb_state), (cb_play), (main):
4374           Fix non-recursive state changes to *really* change the state
4375           of the object, and not just call parent_class->state_change.
4376           Fix a lot of lockups caused by this. Fixes #132775. Add test
4377           for the problem. Also enable test to show #142588 (fixed).
4378         * gst/gstthread.c: (gst_thread_change_state),
4379         (gst_thread_child_state_change):
4380           Don't exit the thread if we go to NULL and are inside thread
4381           context. Instead, return control to the main thread context
4382           and exit from there.
4383         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4384           Don't unset virtual functions, since those may still be used.
4385           That's not necessarily correct, but suffices for now.
4386         * configure.ac:
4387         * testsuite/Makefile.am:
4388         * testsuite/pad/Makefile.am:
4389         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4390         (gst_test_sink_base_init), (gst_test_sink_chain),
4391         (gst_test_sink_init), (main):
4392         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4393         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4394         (main):
4395         * testsuite/pad/link.c: (gst_test_element_class_init),
4396         (gst_test_element_base_init), (gst_test_src_get),
4397         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4398         (gst_test_filter_loop), (gst_test_filter_init),
4399         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4400         (cb_error), (main):
4401           Add tests to show #150546. Pass, but should fail (currently
4402           disabled from the testsuite).
4403         * gst/gstscheduler.c: (gst_scheduler_dispose):
4404           Dereference child schedulers on dispose (#94464).
4405         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4406           Fix typo.
4407         * testsuite/threads/thread.c: (main):
4408           Add more debug.
4409
4410 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4411
4412         * gst/gstpad.c: (gst_pad_push):
4413           Oops, revert previous commit, broke testsuite...
4414
4415 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4416
4417         * gst/gstpad.c: (gst_pad_push):
4418           Add check that the pad on which the push is performed is not a
4419           get-based pad (#150546).
4420
4421 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4422
4423         * gst/elements/gsttypefindelement.c:
4424         (gst_type_find_element_handle_event):
4425           Fix buffer pushing if stream EOSes during typefinding.
4426
4427 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4428
4429         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4430
4431         * gst/gstvalue.c: (gst_string_wrap):
4432           Allow NULL-strings as argument (#165365).
4433
4434 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4435
4436         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4437
4438         * gst/schedulers/faircothreads.c:
4439         (gst_fair_scheduler_cothread_queue_show):
4440           Fix build without debug enabled.
4441
4442 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4443
4444         * docs/gst/gstreamer-sections.txt:
4445         * docs/libs/gstreamer-libs-docs.sgml:
4446         * docs/libs/gstreamer-libs-sections.txt:
4447         * docs/libs/tmpl/gstcontrol.sgml:
4448         * docs/libs/tmpl/gstdparam.sgml:
4449         * docs/libs/tmpl/gstdplinint.sgml:
4450         * docs/libs/tmpl/gstdpman.sgml:
4451         * docs/libs/tmpl/gstdpsmooth.sgml:
4452         * docs/libs/tmpl/gstputbits.sgml:
4453         * docs/libs/tmpl/gstunitconvert.sgml:
4454         * libs/gst/control/dparam.c:
4455         * libs/gst/control/dparam.h:
4456         * libs/gst/control/dparammanager.c:
4457         (gst_dpman_add_required_dparam_callback),
4458         (gst_dpman_add_required_dparam_direct),
4459         (gst_dpman_add_required_dparam_array),
4460         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4461         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4462         (gst_dpman_get_manager)
4463           restructured DParam docs
4464
4465 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4466
4467         * gst-element-check.m4:
4468           Only check for gst-inspect if we haven't already
4469           found it in previous element check runs
4470
4471 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4472
4473         * docs/gst/Makefile.am:
4474         * docs/libs/Makefile.am:
4475           fixed install rules to treat style.css as optional
4476
4477 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4478
4479         * docs/gst/Makefile.am:
4480         * docs/libs/Makefile.am:
4481           install style.css along with docs
4482         * docs/gst/tmpl/gstbin.sgml:
4483         * docs/gst/tmpl/gstclock.sgml:
4484         * docs/gst/tmpl/gstdata.sgml:
4485         * docs/gst/tmpl/gstelement.sgml:
4486         * gst/gstbin.h:
4487         * gst/gstelement.c: (gst_element_class_init):
4488         * gst/gstelement.h:
4489           fixing incomplete docs
4490
4491 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4492
4493         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4494           Don't unref seek event twice when fflush() fails
4495           
4496 2005-01-22  David Schleef  <ds@schleef.org>
4497
4498         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4499
4500 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4501
4502         * docs/gst/Makefile.am:
4503         * docs/libs/Makefile.am:
4504           added params for deprecation guards
4505         * gst/gst.c:
4506         * gst/gst.h:
4507         * gst/gsterror.c: (_gst_resource_errors_init),
4508         (_gst_stream_errors_init):
4509         * gst/gsterror.h:
4510           documented some more enums
4511
4512 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4513         * gst/autoplug/gstspideridentity.c:
4514         Cosmetic fix - spider_find_peek should be static
4515         * gst/parse/parse.l:
4516         Applying fix for #164261
4517
4518 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4519
4520         * docs/gst/gstreamer-sections.txt:
4521         * docs/gst/tmpl/gstplugin.sgml:
4522         * docs/libs/gstreamer-libs-sections.txt:
4523         * docs/libs/tmpl/gstcontrol.sgml:
4524         * gst/gstbuffer.h:
4525         * gst/gsttag.h:
4526         * gst/gstvalue.c:
4527           added docs for the TAG defines
4528
4529 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4530
4531         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4532           Only unref entry if there is an entry.
4533
4534 2005-01-17  Wim Taymans  <wim@fluendo.com>
4535
4536         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4537         (remove_from_group), (schedule_group), (normalize_group),
4538         (gst_opt_scheduler_iterate):
4539         Also ref/unref decoupled elements before iterating the
4540         group since they are not added to the list of elements.
4541
4542 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4543
4544         * docs/manual/highlevel-components.xml:
4545           Add subtitle/streamselection as new features to playbin.
4546
4547 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4548
4549         * docs/manual/manual.xml:
4550           Re-enable dataaccess docs (oops).
4551
4552 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4553
4554         * docs/pwg/advanced-types.xml:
4555         * docs/random/mimetypes:
4556           Add documentation on libsndfile types (#163309), by Steve Baker
4557           <steve@stevebaker.org>.
4558         * gst/gstelement.c: (gst_element_release_request_pad):
4559           If an element has no explicit function, just remove the pad.
4560
4561 2005-01-17  Luca Ognibene  <luogni@tin.it>
4562
4563         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4564
4565         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
4566           Fix memleak (#163801).
4567
4568 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4569
4570         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
4571           I think this is actually more correct...
4572
4573 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4574
4575         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4576           Another workaround for memory access while destroyed in callback.
4577           Please, someone with refcount knowledge, have a look at this.
4578
4579 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4580
4581         * docs/faq/faq.xml:
4582         * docs/faq/legal.xml:
4583           move the legal Q&A here
4584
4585 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4586
4587         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
4588         (gst_tee_request_new_pad):
4589           Fix negotiation.
4590
4591 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4592
4593         * docs/random/omega/caps2:
4594         * testsuite/caps/caps_strings:
4595           replace framerate aproximations by their real value
4596           (24000/1001, 30000/1001, 60000/1001)
4597           Partially fixes bug #164049
4598
4599 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4600
4601         * docs/gst/Makefile.am:
4602           don't fail on the stupid GstPoptOption
4603
4604 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4605
4606         * gst/gstpad.h:
4607         * gst/gstprobe.c:
4608           allow probes to work on ghost pads by realizing the pad
4609           probe debugging
4610
4611 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4612
4613         * docs/gst/gstreamer-sections.txt:
4614         * docs/gst/tmpl/gstpad.sgml:
4615         * gst/gstpad.c: (gst_pad_set_active_recursive):
4616         * gst/gstpad.h:
4617           Add gst_pad_set_active_recursive().
4618
4619 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4620
4621         * docs/random/release:
4622           updates
4623         * gst/gst_private.h:
4624         * gst/gstinfo.c:
4625         * gst/gstobject.c:
4626           move deep_notify logging to a new category
4627         * gst/gstprobe.c:
4628         * gst/gstprobe.h:
4629           add stuff so bindings can wrap probes
4630
4631 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4632
4633         * gst/gstplugin.c: (gst_plugin_load):
4634           Fix plugin loading if plugin/lib was already loaded. Fixes
4635           #163383
4636
4637 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
4638
4639         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4640
4641         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
4642           Protect plugin loading by a mutex so it's threadsafe. Fixes
4643           #163234.
4644
4645 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4646
4647         * gst/gstevent.c: (_gst_event_copy):
4648           Reference source object when copying events, since it'll be
4649           dereferenced on event dereferencing as well.
4650
4651 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4652
4653         * docs/gst/gstreamer-sections.txt:
4654         * docs/gst/tmpl/gstevent.sgml:
4655         * gst/gstevent.c: (gst_event_new_filler_stamped),
4656         (gst_event_filler_get_duration):
4657         * gst/gstevent.h:
4658           Add two new functions for filler events (which are used to
4659           synchronize streams if one of them is not having any data
4660           for a while) without interrupting the actual data-stream.
4661           Basically a no-op.
4662         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4663         (gst_queue_link_sink), (gst_queue_link_src),
4664         (gst_queue_change_state):
4665           Allow for renegotiation while filled. Required for stream
4666           switching while playing.
4667
4668 2005-01-08  Benjamin Otte  <otte@gnome.org>
4669
4670         * gst/gstelement.c: (gst_element_link_many):
4671           fix up g_return_if_fail's
4672         * po/LINGUAS:
4673         * po/de.po:
4674           add German translation, that was somehow not included
4675
4676 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4677
4678         * docs/random/mimetypes:
4679           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
4680           do not add them to riff-lib as they are not common
4681
4682 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4683
4684         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4685           Check for existence of probe after performing the probe before
4686           re-accessing it to prevent segfaults caused by removal of the
4687           probe in the callback.
4688
4689 2005-01-05  David Schleef  <ds@schleef.org>
4690
4691         * testsuite/registry/Makefile.am:
4692         * testsuite/registry/gst-print-formats.c:
4693         (print_pad_templates_info), (print_element_list),
4694         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
4695         (g_list_uniqify), (get_pad_templates_info),
4696         (get_element_mime_list), (print_mime_list), (main): A little
4697         program that looks through the registry to find elements of
4698         a given type.  Not particularly interesting as a test, except
4699         that there's no other test covering the same area.
4700
4701 2005-01-05  David Schleef  <ds@schleef.org>
4702
4703         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
4704         (fault_handler_sigaction), (fault_spin),
4705         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
4706         in signal.h-type signal handlers by not calling forbidden functions,
4707         including gst_element_set_state().
4708
4709 2005-01-05  David Schleef  <ds@schleef.org>
4710
4711         * gst/gstvalue.h: Mark _gst_reserved[] as private
4712
4713 2005-01-05  David Schleef  <ds@schleef.org>
4714
4715         * gst/gstvalue.c: Fix doc build problem.
4716
4717 2005-01-05  David Schleef  <ds@schleef.org>
4718
4719         * gst/gstvalue.c: Add some documentation
4720
4721 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
4722
4723         * docs/README:
4724           another shell oneliner for empty return value docs
4725         * gst/gstcaps.c:
4726         * gst/gstvalue.c:
4727         * libs/gst/control/dparam.c:
4728           more doc fixes (parameters and return values)
4729
4730 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
4731
4732         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4733
4734         * gst/gstregistry.h:
4735         * gst/registries/gstxmlregistry.c:
4736           Fix macro's for Mingw (fixes #162276).
4737
4738 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
4739
4740         * docs/README:
4741           quick shell oneliner to find undocumented members
4742         * docs/gst/tmpl/gstplugin.sgml:
4743         * docs/gst/tmpl/gstscheduler.sgml:
4744         * docs/gst/tmpl/gstthread.sgml:
4745           more enumtypes cleanup
4746         * gst/gsterror.h:
4747           activated documentation comments, now someone needs to document
4748           the enums :(
4749
4750 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4751
4752         * docs/manual/manual.xml:
4753           Add dataaccess part (doh!).
4754
4755 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4756
4757         * docs/manual/advanced-autoplugging.xml:
4758           Fix typo (intiate -> initiate).
4759
4760 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4761
4762         * docs/random/bbb/streamselection:
4763           Add some notes on how to handle multi-subtitle/-audio streams.
4764
4765 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
4766
4767         * docs/gst/gstreamer-docs.sgml:
4768         * docs/gst/gstreamer-sections.txt:
4769         * docs/gst/tmpl/gstenumtypes.sgml:
4770         * docs/gst/tmpl/gsterror.sgml:
4771         * docs/gst/tmpl/gstevent.sgml:
4772         * docs/gst/tmpl/gstpad.sgml:
4773         * docs/gst/tmpl/gstpadtemplate.sgml:
4774         * docs/gst/tmpl/gstthread.sgml:
4775           removed gstenumtypes section from docs and put all the enums into
4776           their sections
4777
4778 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4779
4780         * gst/gstplugin.c:
4781           document gst_library_load a bit more (riff special case + return
4782           value if already loaded)
4783         * testsuite/bytestream/filepadsink.c:
4784           plugin name is 'gstbytestream', not 'bytestream'
4785
4786 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4787
4788         * docs/random/bbb/subtitles:
4789           Add some first mind rumblings on proper subtitle support.
4790
4791 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
4792
4793         * po/ca.po:
4794         * po/sv.po:
4795           updated translations
4796
4797 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4798
4799         * docs/manual/advanced-dataaccess.xml:
4800           Add section on how to use fakesrc/fakesink/identity in your
4801           application, plus section on how to embed plugins. Also mention
4802           probes.
4803         * docs/manual/appendix-checklist.xml:
4804         * docs/manual/appendix-debugging.xml:
4805         * docs/manual/appendix-gnome.xml:
4806         * docs/manual/appendix-integration.xml:
4807           Debug -> checklist, GNOME -> integration, add sections on Linux,
4808           KDE integration and add other things useful for application
4809           development.
4810         * docs/manual/manual.xml:
4811           Remove some fixmes, update some file pointers.
4812         * docs/pwg/appendix-checklist.xml:
4813           Fix typo.
4814         * docs/pwg/building-boiler.xml:
4815           Remove ugly header and add commented fixme.
4816         * docs/pwg/pwg.xml:
4817           Add fixme.
4818         * examples/manual/Makefile.am:
4819           Add example for added docs.
4820
4821 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4822
4823         * configure.ac:
4824           back to HEAD
4825
4826 === release 0.8.8 ===
4827
4828 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4829
4830         * NEWS:
4831         * RELEASE:
4832         * configure.ac:
4833           Releasing 0.8.8, "I'll Take Care Of You"
4834
4835 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4836
4837         * configure.ac:
4838           second prerelease
4839
4840 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4841
4842         patch by: Wim Taymans
4843
4844         * gst/gstbin.c:
4845           Fix for #159852 - make iterate emission threadsafe
4846
4847 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4848
4849         * docs/faq/cvs.xml:
4850           notes about new fdo account request
4851
4852 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
4853
4854         * docs/gst/gstreamer-docs.sgml:
4855         * docs/gst/tmpl/gstenumtypes.sgml:
4856         * docs/gst/tmpl/gstplugin.sgml:
4857         * docs/libs/gstreamer-libs-docs.sgml:
4858           Added missing short docs. Added ids for navigation.
4859
4860 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4861
4862         * docs/manual/advanced-autoplugging.xml:
4863         * docs/manual/advanced-schedulers.xml:
4864         * docs/manual/advanced-threads.xml:
4865           Rewrites. Remove cothreads, go a bit into opt specifically,
4866           document threads and their gotchas, and do some technical stuff
4867           on autoplugging plus add some working examples. Fixes #157395.
4868         * examples/manual/Makefile.am:
4869           Add typefind/autoplugger example (one that actually works).
4870           Remove queue example since it's a duplicate of the thread one.
4871
4872 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4873
4874         * gst/gstvalue.c: (gst_value_deserialize_string):
4875           use deprecated g_value_set_string_take_ownership to keep compatible
4876           with glib 2.2
4877
4878 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4879
4880         * gst/gstvalue.c: (gst_value_deserialize_string):
4881           revert last patch, only dom a g_utf8_validate now before accepting
4882           the string - caps parsing strips " from strings so we can't rely on
4883           them
4884         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4885           disable a test that tested the above and comment it
4886
4887 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
4888
4889         Patch reviewed by David Schleef  <ds@schleef.org>
4890
4891         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
4892         bug #153882)
4893         * win32/gstenumtypes.h: same
4894
4895 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4896
4897         * gst/gstpad.c: (gst_pad_query):
4898           Do query on realized pad, similar to how convert/send_event handle
4899           this. Also makes sense, since this pad belongs to the function to
4900           which this query will be sent. Fixes #158163.
4901
4902 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
4903
4904         * docs/manual/appendix-programs.xml: fix pipeline to actually work
4905
4906 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4907
4908         * docs/faq/general.xml: fix pipeline to actually work
4909
4910 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4911
4912         * gst/gstvalue.c: (gst_value_deserialize_string):
4913           check that a simple string that gets deserialized does not contain
4914           invalid characters
4915         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4916           remove a test that tested a wring behaviour
4917
4918 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
4919
4920         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4921
4922         * docs/manual/intro-motivation.xml:
4923           Fix typos.
4924
4925 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
4926
4927         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4928
4929         * docs/gst/tmpl/gstprobe.sgml:
4930           Fix documentation of probe callback - it is supposed to return
4931           FALSE, not TRUE, to remove data from the stream (#159087).
4932
4933 2004-12-16  Daniel Gazard  <dany42@free.fr>
4934
4935         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4936
4937         * gst/gstelementfactory.c: (gst_element_factory_create):
4938           Fix compile failure if compiling without libxml2 support (#149936).
4939
4940 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4941
4942         * docs/manual/advanced-autoplugging.xml:
4943         * docs/manual/highlevel-components.xml:
4944           Move spider from autoplugging to components. Autoplugging is for
4945           internals, not for solutions. ;-).
4946
4947 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4948
4949         * docs/random/ds/0.9-suggested-changes:
4950           Make note on device/location/uri property names.
4951
4952 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4953
4954         * docs/manual/advanced-autoplugging.xml:
4955         * docs/manual/advanced-clocks.xml:
4956         * docs/manual/advanced-interfaces.xml:
4957         * docs/manual/advanced-metadata.xml:
4958         * docs/manual/advanced-position.xml:
4959         * docs/manual/advanced-schedulers.xml:
4960         * docs/manual/advanced-threads.xml:
4961         * docs/manual/appendix-gnome.xml:
4962         * docs/manual/appendix-programs.xml:
4963         * docs/manual/appendix-quotes.xml:
4964         * docs/manual/autoplugging.xml:
4965         * docs/manual/basics-bins.xml:
4966         * docs/manual/basics-data.xml:
4967         * docs/manual/basics-elements.xml:
4968         * docs/manual/basics-helloworld.xml:
4969         * docs/manual/basics-init.xml:
4970         * docs/manual/basics-pads.xml:
4971         * docs/manual/basics-plugins.xml:
4972         * docs/manual/bins-api.xml:
4973         * docs/manual/bins.xml:
4974         * docs/manual/buffers-api.xml:
4975         * docs/manual/buffers.xml:
4976         * docs/manual/clocks.xml:
4977         * docs/manual/components.xml:
4978         * docs/manual/cothreads.xml:
4979         * docs/manual/debugging.xml:
4980         * docs/manual/dparams-app.xml:
4981         * docs/manual/dynamic.xml:
4982         * docs/manual/elements-api.xml:
4983         * docs/manual/elements.xml:
4984         * docs/manual/factories.xml:
4985         * docs/manual/gnome.xml:
4986         * docs/manual/goals.xml:
4987         * docs/manual/helloworld.xml:
4988         * docs/manual/helloworld2.xml:
4989         * docs/manual/highlevel-components.xml:
4990         * docs/manual/highlevel-xml.xml:
4991         * docs/manual/init-api.xml:
4992         * docs/manual/intro-basics.xml:
4993         * docs/manual/intro-motivation.xml:
4994         * docs/manual/intro-preface.xml:
4995         * docs/manual/intro.xml:
4996         * docs/manual/links-api.xml:
4997         * docs/manual/links.xml:
4998         * docs/manual/manual.xml:
4999         * docs/manual/motivation.xml:
5000         * docs/manual/pads-api.xml:
5001         * docs/manual/pads.xml:
5002         * docs/manual/plugins-api.xml:
5003         * docs/manual/plugins.xml:
5004         * docs/manual/programs.xml:
5005         * docs/manual/queues.xml:
5006         * docs/manual/quotes.xml:
5007         * docs/manual/schedulers.xml:
5008         * docs/manual/states-api.xml:
5009         * docs/manual/states.xml:
5010         * docs/manual/threads.xml:
5011         * docs/manual/typedetection.xml:
5012         * docs/manual/win32.xml:
5013         * docs/manual/xml.xml:
5014           Try 2. This time, include a short preface as a "general
5015           introduction", also add code blocks around all code samples
5016           so they get compiled. We still need a way to tell readers
5017           the filename of the code sample. In some cases, don't show
5018           all code in the documentation, but do include it in the generated
5019           code. This allows for focussing on specific bits in the docs,
5020           while still having a full test application available.
5021         * examples/manual/Makefile.am:
5022           Fix up examples for new ADM. Add several of the new examples that
5023           were either added or were missing from the build system.
5024         * examples/manual/extract.pl:
5025           Allow nameless blocks.
5026
5027 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5028
5029         * docs/manual/elements-api.xml:
5030         * docs/manual/helloworld.xml:
5031         * examples/manual/extract.pl:
5032           fix last example.  Add example of adding code blocks that are not
5033           shown in docbook output.
5034
5035 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5036
5037         * docs/manual/dynamic.xml:
5038         * docs/manual/elements-api.xml:
5039         * docs/manual/gnome.xml:
5040         * docs/manual/helloworld2.xml:
5041         * docs/manual/init-api.xml:
5042         * docs/manual/queues.xml:
5043         * docs/manual/threads.xml:
5044         * docs/manual/xml.xml:
5045         * examples/manual/extract.pl:
5046           Make it possible to extract example code from separate blocks.
5047           Should make Ronald happy.
5048
5049 2004-12-15  Wim Taymans  <wim@fluendo.com>
5050
5051         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5052         (remove_from_group), (group_elements_set_visited),
5053         (normalize_group), (gst_opt_scheduler_iterate):
5054         Fix bug where a flag was not updated on a decoupled entry point 
5055         because we were just checking the group element list and decoupled
5056         elements are not in that list..
5057
5058 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5059
5060         * docs/manual/advanced-autoplugging.xml:
5061         * docs/manual/advanced-clocks.xml:
5062         * docs/manual/advanced-dparams.xml:
5063         * docs/manual/advanced-interfaces.xml:
5064         * docs/manual/advanced-metadata.xml:
5065         * docs/manual/advanced-position.xml:
5066         * docs/manual/advanced-schedulers.xml:
5067         * docs/manual/advanced-threads.xml:
5068         * docs/manual/appendix-debugging.xml:
5069         * docs/manual/appendix-gnome.xml:
5070         * docs/manual/appendix-programs.xml:
5071         * docs/manual/appendix-quotes.xml:
5072         * docs/manual/appendix-win32.xml:
5073         * docs/manual/autoplugging.xml:
5074         * docs/manual/basics-bins.xml:
5075         * docs/manual/basics-data.xml:
5076         * docs/manual/basics-elements.xml:
5077         * docs/manual/basics-helloworld.xml:
5078         * docs/manual/basics-init.xml:
5079         * docs/manual/basics-pads.xml:
5080         * docs/manual/basics-plugins.xml:
5081         * docs/manual/bins-api.xml:
5082         * docs/manual/bins.xml:
5083         * docs/manual/buffers-api.xml:
5084         * docs/manual/buffers.xml:
5085         * docs/manual/clocks.xml:
5086         * docs/manual/components.xml:
5087         * docs/manual/cothreads.xml:
5088         * docs/manual/debugging.xml:
5089         * docs/manual/dparams-app.xml:
5090         * docs/manual/dynamic.xml:
5091         * docs/manual/elements-api.xml:
5092         * docs/manual/elements.xml:
5093         * docs/manual/factories.xml:
5094         * docs/manual/gnome.xml:
5095         * docs/manual/goals.xml:
5096         * docs/manual/helloworld.xml:
5097         * docs/manual/helloworld2.xml:
5098         * docs/manual/highlevel-components.xml:
5099         * docs/manual/highlevel-xml.xml:
5100         * docs/manual/init-api.xml:
5101         * docs/manual/intro-motivation.xml:
5102         * docs/manual/intro-preface.xml:
5103         * docs/manual/intro.xml:
5104         * docs/manual/links-api.xml:
5105         * docs/manual/links.xml:
5106         * docs/manual/manual.xml:
5107         * docs/manual/motivation.xml:
5108         * docs/manual/pads-api.xml:
5109         * docs/manual/pads.xml:
5110         * docs/manual/plugins-api.xml:
5111         * docs/manual/plugins.xml:
5112         * docs/manual/programs.xml:
5113         * docs/manual/queues.xml:
5114         * docs/manual/quotes.xml:
5115         * docs/manual/schedulers.xml:
5116         * docs/manual/states-api.xml:
5117         * docs/manual/states.xml:
5118         * docs/manual/threads.xml:
5119         * docs/manual/typedetection.xml:
5120         * docs/manual/win32.xml:
5121         * docs/manual/xml.xml:
5122           First try at rewriting the ADM. Needs lotsamore work, but some
5123           parts might already be somewhat useful.
5124         * docs/pwg/advanced-interfaces.xml:
5125           Remove properties interface, it never actually existed (except for
5126           on my HD...).
5127
5128 2004-12-13  David Schleef  <ds@schleef.org>
5129
5130         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5131         be NULL (bug #160220).
5132
5133 2004-12-13  David Schleef  <ds@schleef.org>
5134
5135         * configure.ac: remove all mmx stuff, because it's not used.
5136         * docs/random/ds/0.9-suggested-changes: additional notes
5137         * include/Makefile.am: we don't use these anymore
5138         * include/mmx.h: remove
5139         * include/sse.h: remove
5140
5141 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5142
5143         * docs/random/mimetypes:
5144           Add FOURCC code for h264 codec (VSSH)
5145           Add alternate FOURCC codes for h263 related codecs
5146
5147 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5148
5149         * docs/manual/programs.xml:
5150           Added more gst-launch examples.
5151
5152 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5153
5154         * gst/gstqueue.c: (gst_queue_handle_src_query):
5155           Check for availability again.
5156
5157 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5158
5159         * gst/gstcaps.c: (gst_caps_compare_structures):
5160           Simple caps go first. This has the nice side-effect of fixing an
5161           obscure warning.
5162
5163 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5164
5165         * gst/gstversion.h.in:
5166           Protect header.
5167
5168 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5169
5170         * gst/schedulers/gstoptimalscheduler.c:
5171         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5172         (gst_opt_scheduler_get_wrapper):
5173           When we're recursing into a chain run, only run the directly
5174           related group, not all queued ones. This will fix a possible
5175           deadlock in chains with more than two groups.
5176
5177 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5178
5179         * autogen.sh:
5180           remove patch if autopoint fails
5181
5182 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5183
5184         * docs/gst/gstreamer-sections.txt:
5185           Document Thomas' addition, fix build, make Luis the sheriff happy.
5186
5187 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5188
5189         * gst/gstplugin.c:
5190         * gst/gstplugin.h:
5191           add accessor for version field
5192
5193 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5194
5195         submitted by: Luca Ferretti <elle.uca@infinito.it>
5196
5197         * po/LINGUAS:
5198         * po/it.po:
5199           New tranlation added: Italian
5200
5201 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5202
5203         * gst/gstpad.c: (gst_pad_is_negotiated),
5204         (gst_pad_get_negotiated_caps):
5205           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5206           it doesn't actually check the contents), so be sure to hand it
5207           a RealPad else we'll crash.
5208
5209 2004-12-03  Wim Taymans  <wim@fluendo.com>
5210
5211         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5212         (gst_queue_link), (gst_queue_handle_src_query):
5213         Reverted to 1.110 until this makes the testsuite and various
5214         apps work.
5215
5216 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5217
5218         * docs/upload.mak: fix included CVS conflict strings
5219
5220 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5221
5222         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5223
5224         * gst/gstelement.c: (gst_element_error_full):
5225           Use g_error_new_literal because error text may have
5226           percentage signs in it. Fixes #160019.
5227
5228 2004-12-01  Benjamin Otte  <otte@gnome.org>
5229
5230         * gst/elements/gstbufferstore.c:
5231         (gst_buffer_store_add_buffer_func):
5232           don't try to make subbuffers bigger than they can be. (fixes
5233           #159970)
5234
5235 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5236
5237         * docs/gst/gstreamer-sections.txt:
5238         * docs/gst/tmpl/gstvalue.sgml:
5239           Add new function to docs to fix build.
5240
5241 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5242
5243         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5244         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5245         (_gst_pad_default_fixate_foreach):
5246         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5247         * gst/gstvalue.h:
5248           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5249           in some cases (arrays), the fixedness depends on the content.
5250         * gst/gstqueue.c: (gst_queue_handle_src_query):
5251           Check for availability before doing something.
5252
5253 2004-11-29  Wim Taymans  <wim@fluendo.com>
5254
5255         * testsuite/threads/Makefile.am:
5256         * testsuite/threads/signals.c: (gst_test_get_type),
5257         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5258         (gst_test_set_property), (gst_test_get_property),
5259         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5260         (gst_test_do_prop), (run_thread), (main):
5261         Added a bunch of testcases that show threadsafety bugs in glib.
5262
5263 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5264
5265         * docs/manual/programs.xml:
5266           Added a first batch of gst-launch examples, as provided by Ronald
5267           and others from the devel-mlist
5268
5269 2004-11-28  Benjamin Otte  <otte@gnome.org>
5270
5271         * gst/gstelement.c: (gst_element_negotiate_pads):
5272           simplify
5273         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5274         (gst_value_serialize_string), (gst_value_deserialize_string):
5275           add unwrapping of previously wrapped strings. Fix bug in wrapping
5276           while at it.
5277         * testsuite/caps/value_serialize.c: (test1),
5278         (test_string_serialization), (test_string_deserialization), (main):
5279           add tests for string (de)serialization
5280
5281 2004-11-26  Wim Taymans  <wim@fluendo.com>
5282
5283         * testsuite/threads/159566.c: (object_deep_notify), (main):
5284         * testsuite/threads/Makefile.am:
5285         Added testsuite to show bug #159566
5286
5287 2004-11-25  Wim Taymans  <wim@fluendo.com>
5288
5289         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5290         (gst_thread_child_state_change), (gst_thread_main_loop):
5291         Ref the thread object in the GThread mainloop. Break out of the
5292         thread mainloop if it holds the last ref. This properly exits
5293         the threads when disposing the thread from its own context. It
5294         also avoids possible deadlocks in the dispose function.
5295
5296 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5297
5298         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5299         it is necessary to wait.
5300
5301 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5302
5303         * docs/pwg/building-boiler.xml:
5304           Make description somewhat clearer.
5305
5306 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5307
5308         * docs/upload.mak:
5309           Apparently docs changed location on FDO's server.
5310
5311 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5312
5313         * docs/pwg/appendix-checklist.xml:
5314           Add some random notes on things to check when writing an element.
5315           This list can be extended as people see fit.
5316
5317 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5318
5319         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5320         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5321         pad. The queue will now wait until it is empty and forward the new
5322         caps to the source.
5323         * gst/gstbin.c (gst_bin_set_element_sched)
5324         (gst_bin_unset_element_sched): Make sure that all elements and
5325         links are registered and unregistered with the scheduler exactly
5326         once. This elaborates on a fix by Benjamin Otte, but
5327         guarantees that decoupled elements are also registered.
5328
5329 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5330
5331         * docs/manual/quotes.xml:
5332           add a quote
5333         * configure.ac:
5334         * gst/gst.c:
5335         * gst/gstinfo.c:
5336           add LIBDIR and move init message higher up so it's at the start
5337
5338 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5339
5340         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5341         * gstreamer.spec.in: add fair
5342
5343 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5344
5345         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5346         * gst/elements/gstidentity.c: (gst_identity_class_init):
5347           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5348           <teuf@gnome.org> (#157263).
5349         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5350         (gst_type_find_handle_src_query):
5351           Subtract size of internally stored data from position queries.
5352
5353 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5354
5355         * gst/schedulers/fairscheduler.c:
5356         * gst/schedulers/faircothreads.c:
5357         * gst/schedulers/faircothreads.h:
5358         New cothread based scheduler: Fair scheduler.
5359         * gst/schedulers/gthread-cothreads.h: 
5360         Add the standard #if around the whole file.
5361         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5362         compilation of the functions defined in this file. This is
5363         necessary to be able to use this file as a normal header.
5364         * gst/schedulers/Makefile.am: Add compiling support for fair
5365         scheduler.
5366         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5367         scheduler cothreads layer from documentation generation.
5368
5369 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5370
5371         * gst/autoplug/gstspideridentity.c:
5372         (gst_spider_identity_sink_loop_type_finding):
5373           Don't crash if that function is not implemented.
5374
5375 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5376
5377         * docs/pwg/advanced-types.xml:
5378           Another typo.
5379
5380 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5381
5382         * docs/pwg/intro-preface.xml:
5383           Hm, ok, so the brackets weren't really useful...
5384         * docs/pwg/other-ntoone.xml:
5385           Fix embarassing typo.
5386
5387 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5388
5389         * docs/pwg/intro-preface.xml:
5390           Rewrite preface.
5391
5392 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5393
5394         * docs/pwg/advanced-scheduling.xml:
5395         * docs/pwg/advanced-tagging.xml:
5396         * docs/pwg/advanced-types.xml:
5397         * docs/pwg/building-boiler.xml:
5398         * docs/pwg/building-chainfn.xml:
5399         * docs/pwg/building-signals.xml:
5400         * docs/pwg/building-state.xml:
5401         * docs/pwg/building-testapp.xml:
5402         * docs/pwg/intro-basics.xml:
5403         * docs/pwg/other-manager.xml:
5404         * docs/pwg/other-source.xml:
5405           Typo fixes.
5406         * docs/pwg/other-manager.xml:
5407           Add some first content. No example code yet.
5408         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5409           Remove double newlines.
5410
5411 2004-11-04  Wim Taymans  <wim@fluendo.com>
5412
5413         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5414         (remove_from_group), (normalize_group), (group_migrate_connected),
5415         (gst_opt_scheduler_iterate):
5416         * testsuite/schedulers/.cvsignore:
5417         * testsuite/schedulers/Makefile.am:
5418         * testsuite/schedulers/queue_link.c: (main):
5419         Added testcase for scheduler segfault.
5420         Fix scheduler segfault when removing a decoupled
5421         entry point as the last element from a group.
5422
5423 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5424
5425         * gst/gstmarshal.list: add missing marshaller, fixes build
5426
5427 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5428
5429         * docs/random/signal: added notes about using BOXED for GstBuffer
5430         signal marshallers, not POINTER
5431
5432 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5433
5434         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5435         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5436         POINTER=>BOXED changes to marshal GstBuffers
5437
5438 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5439
5440         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5441         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5442
5443 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5444
5445         * docs/gst/gstreamer-sections.txt:
5446         * docs/gst/tmpl/gstcaps.sgml:
5447         * docs/gst/tmpl/gsterror.sgml:
5448         * docs/gst/tmpl/gstinfo.sgml:
5449         * docs/gst/tmpl/gstmacros.sgml:
5450         * docs/gst/tmpl/gstutils.sgml:
5451         * docs/random/ensonic/interfaces.txt:
5452         * gst/gstinfo.h:
5453           added some more docs, removed two obsolete defines
5454
5455 2004-11-02  Kjartan Maraas <as at gnome.org>
5456
5457         reviewed by: Wim Taymans, Ronald Bultje.
5458
5459         * gst/cothreads.c: (cothread_create):
5460         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5461         (gst_bin_child_state_change_func):
5462         * gst/gstbuffer.c: (gst_buffer_span):
5463         * gst/gstelement.c: (gst_element_get_index),
5464         (gst_element_get_event_masks), (gst_element_get_query_types),
5465         (gst_element_get_formats):
5466         * gst/gsterror.c: (_gst_core_errors_init),
5467         (_gst_library_errors_init), (_gst_resource_errors_init),
5468         (_gst_stream_errors_init):
5469         * gst/gstobject.c: (gst_object_default_deep_notify):
5470         * gst/gstpad.c: (gst_pad_get_event_masks),
5471         (gst_pad_get_internal_links_default):
5472         * gst/gstplugin.c: (gst_plugin_register_func),
5473         (gst_plugin_get_module):
5474         * gst/gststructure.c: (gst_structure_get_string),
5475         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5476         (gst_structure_to_abbr):
5477         * gst/gstutils.c: (gst_print_element_args):
5478         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5479         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5480         Aplied part of patch #157127: Cleanup of issues reported by 
5481         sparse.
5482         Also do not try to use cothreads when there is no cothread
5483         context yet.
5484
5485 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5486
5487         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5488         (gst_opt_scheduler_iterate):
5489         Applied patch #154061. Running a pipeline in which an element 
5490         calls GST_ELEMENT_ERROR in the chain function, the opt 
5491         scheduler doesn't unref the chain so it never gets freed.
5492
5493 2004-11-02  Wim Taymans  <wim@fluendo.com>
5494
5495         * gst/gststructure.c: (gst_structure_get_abbrs),
5496         (gst_structure_from_abbr), (gst_structure_to_abbr):
5497         Remove that ugly if-then thing in the code that converts
5498         between strings and types.
5499
5500 2004-11-02  Wim Taymans  <wim@fluendo.com>
5501
5502         * gst/gstscheduler.c: (gst_scheduler_add_element),
5503         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5504         Aplied clock distribution patch, this should fix bug
5505         #148787.
5506
5507 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5508
5509         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5510
5511         * po/LINGUAS:
5512         * po/nb.po:
5513           Added Norwegian Bokmaal translation
5514
5515 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5516
5517         * tools/gst-inspect.c: (print_signal_info):
5518           print signal arguments as pointers if they are
5519
5520 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5521
5522         * docs/pwg/building-boiler.xml:
5523           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5524
5525 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5526
5527         * gst/parse/parse.l:
5528         * testsuite/parse/parse1.c: (main):
5529         Since parse can do 'element name=a:b' make 'a:b.' work as
5530         well. 
5531         Added testcase to verify fix.
5532
5533 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5534
5535         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
5536         Use the realpad when printing the direction.
5537         Add extra \n when printing extensions of typefind factories.
5538
5539 2004-10-13  David Schleef  <ds@schleef.org>
5540
5541         * examples/manual/Makefile.am: $< isn't portable in Makefile
5542         rules.
5543
5544 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
5545
5546         * docs/gst/tmpl/gstobject.sgml:
5547         * docs/gst/tmpl/gstplugin.sgml:
5548         * docs/gst/tmpl/gstpluginfeature.sgml:
5549         * docs/gst/tmpl/gstregistry.sgml:
5550         * docs/gst/tmpl/gstversion.sgml:
5551         * gst/gstbin.c:
5552           more api documentation
5553         * gst/gstplugin.c: (gst_plugin_register_func),
5554         (gst_plugin_check_file), (gst_plugin_load_file):
5555           better error signaling and logging
5556
5557 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5558
5559         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
5560           Subtract current queue contents from position queries.
5561
5562 2004-10-11  Johan Dahlin  <johan@gnome.org>
5563
5564         * gst/gsturi.c (gst_uri_get_location): unescape string
5565         (gst_uri_construct): escape string.
5566
5567 2004-10-11  Benjamin Otte  <otte@gnome.org>
5568
5569         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
5570         (gst_pad_try_set_caps_nonfixed):
5571           allow renegotiation of unconnected pads (as inside spider). Simply
5572           return OK if unconnected - mimic try_set_caps there.
5573
5574 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5575
5576         * gst/gstbin.c: (gst_bin_sync_children_state):
5577           Add missing break.
5578
5579 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5580
5581         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
5582         Set element to EOS before sending EOS event
5583
5584 2004-10-08  Wim Taymans  <wim at fluendo dot com>
5585
5586         * gst/elements/gsttypefindelement.c:
5587         (gst_type_find_element_handle_event):
5588         Handle EOS events when doing the transition from
5589         typefind to data passing. This should fix the
5590         infinite loops in short files.
5591
5592 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5593
5594         * gst/gstthread.c: (gst_thread_change_state),
5595         (gst_thread_child_state_change):
5596         Make sure no iteration happens while performing
5597         the state change as it could mess up the internal
5598         consistency of the thread state.
5599
5600 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5601
5602         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
5603         (gst_thread_change_state), (gst_thread_child_state_change):
5604         Do not try to grab the iterate lock in the state change method
5605         when we are in the same thread as the iterate or else we
5606         could deadlock. Some other cleanups.
5607
5608 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5609
5610         * configure.ac:
5611           bump nano to cvs
5612
5613 === release 0.8.7 ===
5614
5615 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5616
5617         * configure.ac:
5618         * NEWS:
5619         * RELEASE:
5620         * configure.ac:
5621           releasing 0.8.7, "A Cruise"
5622
5623 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5624
5625         * docs/random/mimetypes:
5626         Add an entry for Sony ATRAC3 audio format with mime-type
5627         used by rmdemux et riff-read
5628
5629 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5630
5631         * gst/elements/gsttypefindelement.c: (stop_typefinding):
5632         Push the buffer store instead of clearing it in case that
5633         the stream is not seekable.
5634
5635 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5636
5637         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
5638         (gst_thread_main_loop):
5639         Lock the iteration and the state change so that automatic
5640         negotiation and fixation does not happen at the same time
5641         as the in stream negotiation.
5642
5643 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5644
5645         * configure.ac:
5646           bump nano to cvs
5647
5648 === release 0.8.6 ===
5649
5650 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5651
5652         * configure.ac:
5653         * NEWS:
5654         * RELEASE:
5655         * configure.ac:
5656           releasing 0.8.6, "Narc"
5657
5658 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5659
5660         * configure.ac:
5661           prerel bump
5662
5663 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5664
5665         patch by: Steve Lhomme
5666
5667         * gst/elements/gstfakesrc.c:
5668         * gst/elements/gstidentity.c:
5669         * gst/gstthread.c:
5670           Fix for #153881
5671
5672 2004-10-01  Wim Taymans  <wim at fluendo dot com>
5673
5674         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
5675         Fix threadsafety of the crc checking function.
5676
5677 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5678
5679         patch by: Ronald Bultje
5680
5681         * gst/elements/gsttypefindelement.c: (stop_typefinding),
5682         (gst_type_find_element_handle_event),
5683         (gst_type_find_element_chain):
5684         * gst/elements/gsttypefindelement.h:
5685          #153657.
5686          Filter out discont event from seekable sources when typefind
5687          asks them to seek.  Fixes typefind with demuxers for
5688          avi, asf and matroska.
5689
5690 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5691
5692         * docs/gst/gstreamer-sections.txt:
5693         * gst/gstcaps.c:
5694         * gst/gstcaps.h:
5695         * gst/gstpad.c:
5696           Revert preferred caps: (#147789)
5697
5698 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
5699
5700         * win32/dirent.c:
5701           fix a memory leak
5702
5703 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5704
5705         * configure.ac:
5706           bump for prerelease
5707
5708 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5709
5710         * docs/Makefile.am:
5711         * docs/manual/elements-api.xml:
5712           restructure so that common stuff is shown first
5713         * docs/manual/init-api.xml:
5714           convert to examples
5715         * docs/manual/manual.xml:
5716         * docs/manuals.mak:
5717         * docs/url.entities:
5718           link to API on the website, possibly override later in build
5719         * examples/manual/.cvsignore:
5720           ignore more
5721         * examples/manual/Makefile.am:
5722           add more examples
5723         * examples/manual/extract.pl:
5724           error out on failure
5725
5726 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5727
5728         * docs/gst/tmpl/gstthread.sgml:
5729         * docs/manual/init-api.xml:
5730         * examples/manual/Makefile.am:
5731           convert two code bits to examples
5732
5733 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5734
5735         * gst/gstelement.c: (gst_element_change_state):
5736           Well, actually, I was about to remove this insane assert when
5737           I noticed Wim already did that. A warning is nice so we can
5738           fix actual ugs (using --g-fatal-warnings and backtraces), so
5739           I added that instead.
5740
5741 2004-09-06  Wim Taymans  <wim@fluendo.com>
5742
5743         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
5744         (gst_element_threadsafe_properties_post_run),
5745         (gst_element_set_state), (gst_element_change_state):
5746         Added extra refcounting around various places. 
5747
5748 2004-09-06  Wim Taymans  <wim@fluendo.com>
5749
5750         * gst/gstpad.c: (gst_pad_link_call_link_functions):
5751         Fix debug info.
5752
5753 2004-09-06  Wim Taymans  <wim@fluendo.com>
5754
5755         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5756         (remove_from_group):
5757         Some more debug info.
5758
5759 2004-09-03  Wim Taymans  <wim@fluendo.com>
5760
5761         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5762         (gst_fakesrc_init), (gst_fakesrc_set_clock),
5763         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5764         (gst_fakesrc_get), (gst_fakesrc_change_state):
5765         * gst/elements/gstfakesrc.h:
5766         * gst/elements/gstidentity.c: (gst_identity_class_init),
5767         (gst_identity_init), (gst_identity_chain),
5768         (gst_identity_set_property), (gst_identity_get_property),
5769         (gst_identity_change_state):
5770         * gst/elements/gstidentity.h:
5771         Added datarate properties to limit the datarate.
5772
5773 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5774
5775         * gst/autoplug/gstspider.c: (plugin_init):
5776           don't set a rank. We don't want to autoplug by inserting spiders.
5777
5778 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5779
5780         * gst/autoplug/gstspider.c: (gst_spider_class_init),
5781         (gst_spider_identity_plug):
5782           add a template for spider's sink
5783         * gst/gst.c: (gst_register_core_elements):
5784           queue's rank should be NULL, we don't want spider to add it.
5785
5786 2004-08-18  David Schleef  <ds@schleef.org>
5787
5788         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
5789         * docs/libs/Makefile.am: same
5790         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
5791         * docs/random/ds/0.9-planning: random additions
5792         * docs/random/ds/0.9-suggested-changes: same
5793         * gst/gstxml.h: remove vestigal GstXMLNs definition
5794
5795         Preferred caps: (#147789)
5796         * docs/gst/gstreamer-sections.txt: Add symbols
5797         * docs/gst/tmpl/gstcaps.sgml: Add symbols
5798         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
5799         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
5800         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
5801         (gst_caps_get_preferred), (gst_caps_set_preferred),
5802         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
5803         (gst_caps_use_preferred): Handle caps preferences
5804         * gst/gstcaps.h: Add caps preferences
5805         * gst/gstpad.c: (gst_pad_link_get_preferred),
5806         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
5807         (gst_pad_renegotiate), (gst_pad_guess_preferred),
5808         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
5809         negotiation.
5810
5811 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5812
5813         * gst/autoplug/gstspideridentity.c:
5814         (gst_spider_identity_request_new_pad):
5815         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
5816         (gst_aggregator_init):
5817         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
5818         (gst_fakesink_init):
5819         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
5820         (gst_fakesrc_init):
5821         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
5822         (gst_fdsink_init):
5823         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
5824         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
5825         (gst_filesink_init):
5826         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
5827         (gst_filesrc_init):
5828         * gst/elements/gstidentity.c: (gst_identity_base_init),
5829         (gst_identity_init):
5830         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
5831         (gst_multifilesrc_init):
5832         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
5833         (gst_pipefilter_init):
5834         * gst/elements/gststatistics.c: (gst_statistics_base_init),
5835         (gst_statistics_init):
5836         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
5837         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
5838           s/gst_pad_new/&_from_template/
5839           register pad templates in the base_init function
5840           add static pad template definitions
5841
5842 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5843
5844         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
5845         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
5846         * testsuite/refcounting/pad.c: (main):
5847         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
5848           s/gst_pad_new/&_from_template/
5849           prepare deprecation of gst_pad_new
5850
5851 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
5852
5853         patch by: Luca Ognibene <skaboy81@virgilio.it>
5854
5855         * gst/gstcaps.c:
5856         * gst/gstelement.c:
5857         * gst/gstpad.c:
5858         * gst/gstxml.c:
5859           fix memleaks.  Fixes #150001
5860
5861 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5862
5863         * docs/random/ds/0.9-suggested-changes:
5864           add notes - mostly about pad templates
5865
5866 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
5867
5868         * win32/GStreamer.vcproj:
5869           temporary locale files are .gmo not .mo
5870
5871 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5872
5873         * configure.ac: bump nano to cvs
5874
5875 === release 0.8.5 ===
5876
5877 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5878
5879         * configure.ac:
5880           releasing 0.8.5, "Stuttgart"
5881         * NEWS:
5882         * RELEASE:
5883         * configure.ac:
5884         * docs/random/release:
5885           updates for release
5886
5887 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5888
5889         patch by: Wim Taymans (wim@fluendo.com)
5890
5891         * gst/gstbuffer.c:
5892         * gst/gstindex.h:
5893         * libs/gst/dataprotocol/dataprotocol.c:
5894           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
5895
5896 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5897
5898         * Makefile.am:
5899         * win32/MANIFEST:
5900           add win32 dir to the build.  Fixes #149981.
5901
5902 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5903
5904         * configure.ac:
5905           bump libtool versioning
5906         * gst/gststructure.c:
5907           mark function as static
5908         * po/af.po:
5909         * po/az.po:
5910         * po/ca.po:
5911         * po/cs.po:
5912         * po/en_GB.po:
5913         * po/fr.po:
5914         * po/nl.po:
5915         * po/sq.po:
5916         * po/sr.po:
5917         * po/sv.po:
5918         * po/tr.po:
5919         * po/uk.po:
5920           translations update
5921         * win32/README.txt:
5922           trademark protection
5923
5924 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5925
5926         * configure.ac:
5927           fix GST_ORIGIN
5928           set GST_PACKAGE to source, and distinguish between release and other
5929         * tools/gst-inspect.c:
5930           print out plugin an element factory is part of so we see this info
5931
5932 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5933
5934         * docs/gst/gstreamer-sections.txt:
5935         * docs/gst/tmpl/gstbuffer.sgml:
5936         * docs/gst/tmpl/gstschedulerfactory.sgml:
5937           reorder docs a little, make GstBuffer's more sensible.
5938         * gst/gstbuffer.h:
5939           API: added GST_BUFFER_FLAG_DELTA_UNIT
5940         * gst/gstscheduler.c:
5941           comment API addition
5942
5943 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5944
5945         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
5946           work with non-regular files that can be mmapped (like /dev/zero)
5947         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
5948           get rid of typefinds that require a seek when we can't seek instead
5949           of trying them over and over again
5950         * tools/gst-launch.c: (idle_func), (error_cb), (main):
5951           return non-zero failure value when the pipeline was interrupted or
5952           an error occurred
5953
5954 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5955
5956         * win32/config.h:
5957         * win32/GStreamer.vcproj:
5958           compile and install the locales
5959
5960 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5961
5962         * gst/gstvalue.c:
5963           fix a possible memory leak under Windows
5964
5965 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5966
5967         * win32/GStreamer.vcproj:
5968           fix a memory leak that occured under Windows
5969         * win32/gstreamer.def:
5970           add gst_scheduler_register
5971
5972 2004-08-11  Benjamin Otte  <otte@gnome.org>
5973
5974         * docs/gst/gstreamer-sections.txt:
5975         * gst/gstscheduler.c: (gst_scheduler_register):
5976         * gst/gstscheduler.h:
5977           API:
5978           add gst_scheduler_register shortcut similar to gst_element_register
5979         * gst/schedulers/entryscheduler.c: (plugin_init):
5980         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
5981         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
5982           use it
5983
5984 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
5985
5986         * gst/gstvalue.h:
5987           fix a memory leak that occured under Windows
5988
5989 2004-08-10  Colin Walters  <walters@redhat.com>
5990
5991         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
5992         Don't use O_EXCL to open temporary registry.  It will prevent
5993         registry creation if a temporary one already exists, which
5994         is unnecessary.
5995
5996 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5997
5998         * docs/gst/gstreamer-sections.txt:
5999         * docs/gst/tmpl/gstvalue.sgml:
6000           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6001
6002 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6003
6004         * win32/gstbytestream.vcproj:
6005         * win32/gstelements.vcproj:
6006         * win32/gstgetbits.vcproj:
6007         * win32/gst-inspect.vcproj:
6008         * win32/gst-launch.vcproj:
6009         * win32/gstoptimalscheduler.vcproj:
6010         * win32/GStreamer.vcproj:
6011         * win32/gst-register.vcproj:
6012         * win32/gstspider.vcproj:
6013           update the include and lib dirs to fit standard libraries as
6014           described in the Win32 manual
6015
6016 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6017
6018         * win32/config.h:
6019         * win32/gstversion.h:
6020           enable NLS again, push the version number for the coming 0.8.5 release
6021
6022 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6023
6024         * gst/gstvalue.h:
6025           export gst_type_XXX for windows DLLs
6026
6027 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6028
6029         * docs/faq/gst-uninstalled:
6030           fix PKG_CONFIG_PATH and PYTHONPATH
6031         * gst/schedulers/Makefile.am:
6032           cleanup
6033         * libs/gst/bytestream/bytestream.c:
6034           remove newline
6035         * po/LINGUAS:
6036         * po/sq.po:
6037           adding Albanian translation (Laurent Dhima)
6038         * po/cs.po:
6039           updated
6040
6041 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6042
6043         * po/ca.po:
6044         * po/sv.po:
6045           updated translations
6046
6047 2004-08-04  Benjamin Otte  <otte@gnome.org>
6048
6049         * tests/mass_elements.c: (main):
6050           allow specifying src and sink element explicitly, so I can test
6051           videotestsrc instead of fakesrc
6052
6053 2004-08-04  Benjamin Otte  <otte@gnome.org>
6054
6055         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6056         (gst_structure_id_empty_new), (gst_structure_empty_new),
6057         (gst_structure_copy):
6058           add gst_structure_id_empty_new_with_size to allow preallocating
6059           value array sizes. Use this in gst_structure_copy to get rid of
6060           reallocs.
6061           don't do quark=>string=>quark when copying structures
6062
6063 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6064
6065         * docs/manual/win32.xml:
6066         * win32/README.txt:
6067           update documentation with the clean version of dependencies
6068
6069 2004-08-03  Benjamin Otte  <otte@gnome.org>
6070
6071         * gst/schedulers/entryscheduler.c:
6072         (gst_entry_scheduler_remove_element):
6073           fix for GST_DISABLE_DEBUG
6074         * tools/gst-launch.c: (print_tag):
6075           fixes for G_DISABLE_ASSERT
6076
6077 2004-08-03  Benjamin Otte  <otte@gnome.org>
6078
6079         * gst/gst.c: (gst_register_core_elements):
6080           fix for G_DISABLE_ASSERT
6081         * gst/gstinfo.c: (__gst_in_valgrind):
6082           add for GST_DISABLE_DEBUG
6083
6084 2004-08-03  Benjamin Otte  <otte@gnome.org>
6085
6086         * gst/parse/parse.l:
6087           fix for G_DISABLE_ASSERT
6088
6089 2004-08-03  Wim Taymans  <wim@fluendo.com>
6090
6091         * gst/gstbin.c: (gst_bin_get_type),
6092         (gst_bin_child_state_change_func):
6093         * gst/gstthread.c: (gst_thread_change_state):
6094         Backported some debug logging from a reverted patch
6095         Don't try to destroy the thread twice. Added some more
6096         debugging in GstThread. Unlock and signal even if we
6097         are in the thread context.
6098
6099 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6100
6101         * po/uk.po:
6102           updated translation
6103
6104 2004-07-30  David Schleef  <ds@schleef.org>
6105
6106         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6107
6108 2004-07-29  David Schleef  <ds@schleef.org>
6109
6110         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6111         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6112
6113 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6114
6115         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6116         (gst_bin_add_func), (gst_bin_remove_func),
6117         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6118         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6119         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6120         (gst_bin_sync_children_state):
6121         * gst/gstbin.h:
6122         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6123         (gst_thread_change_state):
6124         * testsuite/states/Makefile.am:
6125           revert state change patches as agreed so we can rework them
6126           gradually
6127
6128 2004-07-29  Benjamin Otte  <otte@gnome.org>
6129
6130         * libs/gst/control/Makefile.am:
6131           link to libgstreamer (fixes Debian bug 262019, see
6132           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6133
6134 2004-07-29  Wim Taymans  <wim@fluendo.com>
6135
6136         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6137         (check_from_fraction_convert), (transform_test), (main):
6138         Make the test less pedantic about float roundoff errors.
6139
6140 2004-07-29  Benjamin Otte  <otte@gnome.org>
6141
6142         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6143         (gst_filesrc_srcpad_event):
6144           make seek events to before start/after end of file not fail, but
6145           seek to start/end instead
6146         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6147           add more output
6148
6149 2004-07-29  Benjamin Otte  <otte@gnome.org>
6150
6151         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6152           check that caps are fixed
6153         * gst/gstpad.c: (gst_pad_template_new):
6154           don't try to simplify caps, costs too much time on gst_init
6155         * gst/gstplugin.c: (gst_plugin_add_feature):
6156           G_ERROR if features are added twice
6157         * gst/gsttypefind.c: (gst_type_find_register):
6158         * gst/gstelementfactory.c: (gst_element_register):
6159           don't add features twice
6160         * docs/random/ds/0.9-suggested-changes:
6161           add note about possible gst_init optimization
6162
6163 2004-07-28  David Schleef  <ds@schleef.org>
6164
6165         * testsuite/elements/Makefile.am:
6166         * testsuite/elements/struct_i386.h:
6167         * testsuite/elements/struct_size.c: (main):  A little test
6168         to keep distcheck from working if someone changes a structure
6169         size accidentally.
6170
6171 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6172
6173         * docs/libs/Makefile.am:
6174         * docs/libs/gstreamer-libs-docs.sgml:
6175         * docs/libs/gstreamer-libs-sections.txt:
6176         * docs/libs/tmpl/gstbytestream.sgml:
6177         * docs/libs/tmpl/gstcontrol.sgml:
6178         * docs/libs/tmpl/gstdataprotocol.sgml:
6179         * docs/libs/tmpl/gstgetbits.sgml:
6180         * libs/gst/bytestream/Makefile.am:
6181         * libs/gst/bytestream/bytestream.c:
6182         * libs/gst/bytestream/bytestream.h:
6183         * libs/gst/control/Makefile.am:
6184         * libs/gst/dataprotocol/Makefile.am:
6185         * libs/gst/getbits/Makefile.am:
6186         * libs/gst/getbits/getbits.h:
6187           various doc and style fixes, adding bytestream to libs docs.
6188
6189 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6190
6191         * docs/gst/gstreamer-docs.sgml:
6192         * docs/libs/Makefile.am:
6193         * docs/libs/gstreamer-libs-docs.sgml:
6194         * docs/libs/gstreamer-libs-sections.txt:
6195         * libs/gst/control/dparam.c:
6196           more doc fixes.  gst-libs docs now build the same way as gst.
6197
6198 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6199
6200         * configure.ac:
6201         * testsuite/Makefile.am:
6202         * testsuite/bins/Makefile.am:
6203         * testsuite/caps/Makefile.am:
6204         * testsuite/cleanup/Makefile.am:
6205         * testsuite/clock/Makefile.am:
6206         * testsuite/debug/Makefile.am:
6207         * testsuite/dlopen/Makefile.am:
6208         * testsuite/dynparams/Makefile.am:
6209         * testsuite/elements/.cvsignore:
6210         * testsuite/elements/Makefile.am:
6211         * testsuite/enumcaps/Makefile.am:
6212         * testsuite/enumcaps/enumcaps.c:
6213         * testsuite/ghostpads/Makefile.am:
6214         * testsuite/indexers/Makefile.am:
6215         * testsuite/negotiation/Makefile.am:
6216         * testsuite/parse/Makefile.am:
6217         * testsuite/plugin/Makefile.am:
6218         * testsuite/refcounting/Makefile.am:
6219         * testsuite/schedulers/.cvsignore:
6220         * testsuite/states/Makefile.am:
6221         * testsuite/tags/Makefile.am:
6222         * testsuite/threads/Makefile.am:
6223           fold enumcaps into caps dir
6224           clean up Makefile.am's for testsuite
6225
6226 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6227
6228         * docs/gst/Makefile.am:
6229         * docs/libs/Makefile.am:
6230           clean up docs build.  Fixes needless rebuilding of template files.
6231
6232 2004-07-28  Wim Taymans  <wim@fluendo.com>
6233
6234         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6235         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6236         Make sure that a bin state change tries to keep the children
6237         in sync. 
6238         Added debug logging to the thread.
6239
6240 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6241
6242         * win32/GStreamer.vcproj:
6243         * win32/gstreamer.def:
6244           more exports for the plugins
6245
6246 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6247
6248         * win32/gstgetbits.vcproj:
6249         * win32/gstgetbits.def:
6250         * win32/msvc71.sln:
6251           add support for the getbits plugin
6252
6253 2004-07-27  Wim Taymans  <wim@fluendo.com>
6254
6255         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6256         (gst_value_transform_fraction_double), (_gst_value_initialize):
6257         * testsuite/caps/Makefile.am:
6258         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6259         (check_from_fraction_convert), (transform_test), (main):
6260         Added transform functions between double and fraction.
6261         Added testcase to verify transforms
6262
6263 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6264
6265         * win32/GStreamer.vcproj:
6266           rename GStreamer-0.8.lib to libgstreamer.lib
6267
6268 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6269
6270         * win32/gstelements.vcproj:
6271         * win32/gstoptimalscheduler.vcproj:
6272           fixes for the Release build
6273
6274 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6275
6276         * win32/config.h:
6277           update the version number
6278
6279 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6280
6281         * win32/GStreamer.vcproj:
6282           add gstinterface to the build
6283
6284 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6285
6286         * win32/gstreamer.def:
6287           add many definitions needed by plugins,
6288           GST_CAT_DEFAULT only available in the Debug build ?
6289
6290 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6291
6292         * gst/gstelement.c: (gst_element_set_eos_recursive):
6293           various whitespace fixes.
6294           doc fix, fixes #148497
6295
6296 2004-07-25  Benjamin Otte  <otte@gnome.org>
6297
6298         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6299           don't delay links on the sink elements, it causes unnegotiated
6300           links.
6301         * gst/elements/gsttypefindelement.c:
6302         (gst_type_find_element_base_init):
6303           add our padtemplates, we indeed do have some.
6304         * gst/elements/gsttypefindelement.c:
6305         (gst_type_find_element_handle_event),
6306         (gst_type_find_element_chain):
6307           don't push data when typefinding failed.
6308         * gst/gstpad.c: (gst_pad_link_fixate):
6309           check that no fixate function returns empty caps.
6310         * gst/gstpad.c: (gst_pad_push):
6311           check that the link is negotiated before data gets pushed.
6312         * tools/gst-register.c: (main):
6313           don't assert (fixes #148283)
6314
6315 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6316
6317         * docs/gst/gstreamer-sections.txt:
6318         * docs/gst/tmpl/gstconfig.sgml:
6319           add GST_PLUGIN_EXPORT definition
6320
6321 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6322
6323         * gst/gstplugin.h:
6324         * gst/gstconfig.h.in:
6325         * win32/gstconfig.h:
6326         * win32/gstelements.def:
6327         * win32/gstelements.vcproj:
6328         * win32/gstoptimalscheduler.def:
6329         * win32/gstoptimalscheduler.vcproj:
6330         * win32/gstspider.def:
6331         * win32/gstspider.vcproj:
6332           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6333
6334 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6335
6336         * docs/gst/gstreamer-sections.txt:
6337           remove GST_CAT_DEFAULT because the type has changed
6338
6339 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6340
6341         * win32/gstbytestream.vcproj:
6342         * win32/gstelements.vcproj:
6343         * win32/gst-inspect.vcproj:
6344         * win32/gst-launch.vcproj:
6345         * win32/gstoptimalscheduler.vcproj:
6346         * win32/GStreamer.vcproj:
6347         * win32/gst-register.vcproj:
6348         * win32/gstspider.vcproj:
6349         * win32/msvc71.sln:
6350           Copy the files where needed after building, The testsuite will be
6351           built separately
6352
6353 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6354
6355         * win32/config.h:
6356         * win32/README.txt:
6357         * docs/manual/win32.xml:
6358         Fixed the plugin and GStreamer location
6359
6360 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6361
6362         * win32/gstreamer.def:
6363         More exports for the plugins
6364
6365 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6366
6367         * gst/gstinfo.h:
6368         Marc was right, we need to export literally GST_CAT_DEFAULT
6369
6370 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6371
6372         * win32/config.h:
6373         NLS crashes in gettext, disabled until this is solved
6374
6375 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6376
6377         * win32/gst-inspect.vcproj:
6378         * win32/gst-launch.vcproj:
6379         Should use NLS when available
6380
6381 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6382
6383         * gst/registries/gstxmlregistry.c:
6384         removing the file doesn't seem to be a good idea on Linux
6385
6386 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6387
6388         * gst/registries/gstxmlregistry.c:
6389         Remove the registry before renaming the tempfile (needed for Windows)
6390
6391 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6392
6393         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6394         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6395         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6396         * gst/elements/gstmultifilesrc.h:
6397         Added newmedia property so it generates newmedia events between each
6398         file when property is set, as well as fixed eos handling
6399
6400 2004-07-22  David Schleef  <ds@schleef.org>
6401
6402         * gst/gststructure.c: (gst_structure_id_empty_new),
6403         (gst_structure_empty_new):  Set type field correctly.
6404         * gst/gststructure.h: Check type field correctly.
6405         * testsuite/caps/Makefile.am:
6406         * testsuite/caps/structure.c: (test1), (main): Add a very small
6407         test for structures.
6408
6409 2004-07-22  David Schleef  <ds@schleef.org>
6410
6411         * docs/random/ds/0.9-suggested-changes: more comments
6412         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6413
6414 2004-07-22  Benjamin Otte  <otte@gnome.org>
6415
6416         * gst/gstelementfactory.c: (gst_element_register):
6417           set the factory in the class struct, so gst_element_get_factory
6418           actually works
6419         * gst/parse/grammar.y:
6420           set element to playing when it gets unlocked as we can't rely on the
6421           bin state - all elements in the bin state might still be locked in
6422           NULL)
6423
6424 2004-07-22  Benjamin Otte  <otte@gnome.org>
6425
6426         * gst/gstelement.c: (gst_element_set_state_func):
6427           make this a static function
6428
6429 2004-07-22  Wim Taymans  <wim@fluendo.com>
6430
6431         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6432         (gst_opt_scheduler_pad_link):
6433         fix 147894-2 and the group_link problem.
6434
6435 2004-07-22  Wim Taymans  <wim@fluendo.com>
6436
6437         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6438         (handoff_identity), (main):
6439         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6440         (handoff_identity), (main):
6441         * testsuite/schedulers/Makefile.am:
6442         * testsuite/schedulers/group_link.c: (main):
6443         Show bug in scheduler when linking chain and loop based element 
6444         where the chain based element was not yet in a group.
6445
6446 2004-07-21  Benjamin Otte  <otte@gnome.org>
6447
6448         * gst/.cvsignore:
6449         * gst/autoplug/.cvsignore:
6450         * gst/elements/.cvsignore:
6451         * gst/indexers/.cvsignore:
6452         * libs/gst/bytestream/.cvsignore:
6453         * libs/gst/control/.cvsignore:
6454         * libs/gst/getbits/.cvsignore:
6455         * testsuite/states/.cvsignore:
6456         * testsuite/threads/.cvsignore:
6457           keep this up to date, since I seem to be the only one who cares
6458           about not missing files on commits (editor's note: no you don't,
6459           but feel free to change them at the time you add stuff instead
6460           of later on)
6461
6462 2004-07-21  Benjamin Otte  <otte@gnome.org>
6463
6464         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6465         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6466         (gst_bin_child_state_change_func), (set_kid_state_func),
6467         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6468           make state changes work correctly and reentrant (so removing
6469           elements from bins during state changes of bins doesn't cause
6470           segfaults or even wrong states)
6471           add debugging category and debugging output to print children states
6472         * gst/gstbin.c: (gst_bin_dispose): 
6473           add some assertion checks
6474         * gst/gstbin.h:
6475         * gst/gstbin.c: (gst_bin_sync_children_state):
6476           deprecate this function - it just does gst_bin_set_state (bin,
6477           GST_STATE (bin)) 
6478         * testsuite/threads/queue.c: (main):
6479           don't use gst_bin_sync_children_state anymore
6480         * testsuite/states/Makefile.am:
6481         * testsuite/states/bin.c:
6482           test that the state changes of bins work as expected
6483         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6484           some adjustments to change states correctly, too
6485         * gst/gstthread.c: (gst_thread_change_state):
6486           don't enable/disable "threadsafe" properties, they're unused and
6487           cause random segfaults
6488         * testsuite/threads/Makefile.am:
6489           the queue check randomly passes now, ignore it
6490
6491 2004-07-21  Benjamin Otte  <otte@gnome.org>
6492
6493         * gst/gstpad.c:
6494           check if data is NULL before outputting debug info. (fixes #145100)
6495
6496 2004-07-21  Benjamin Otte  <otte@gnome.org>
6497
6498         * gst/schedulers/entryscheduler.c:
6499         (gst_entry_scheduler_loop_wrapper),
6500         (gst_entry_scheduler_chain_wrapper),
6501         (gst_entry_scheduler_get_wrapper):
6502           reset the state when the cothread starts, so we don't get assertion
6503           failures on restarting of cothreads
6504
6505 2004-07-20  Benjamin Otte  <otte@gnome.org>
6506
6507         * gst/gstelement.c: (gst_element_link_pads_filtered):
6508           use correct sinkpad, if only sinkpad is specified, but not srcpad
6509           (fixes #147889)
6510         * gst/gstelement.c: (gst_element_set_state_func),
6511         (gst_element_change_state): ref/unref the element, signal handlers
6512         could get rid of the element otherwise
6513
6514 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6515
6516         * docs/random/ds/0.9-suggested-changes:
6517           Make note about renaming fixed-list to array.
6518         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6519         (_gst_value_initialize):
6520           Add array intersections.
6521         * testsuite/caps/intersect2.c: (main):
6522           Add test for array intersections.
6523
6524 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6525
6526         * configure.ac: back to cvs
6527
6528 === release 0.8.4 ===
6529
6530 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6531
6532         * configure.ac:
6533           releasing 0.8.4, "Paella"
6534           bump libtool versioning
6535
6536 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6537
6538         * po/LINGUAS:
6539         * po/ca.po:
6540           adding Catalan translation (Jordi Mallach)
6541
6542 2004-07-20  Wim Taymans  <wim@fluendo.com>
6543
6544         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6545         (handoff_identity), (main):
6546         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6547         (handoff_identity), (main):
6548         * testsuite/schedulers/Makefile.am:
6549         Added failing testcase for variant of #147894
6550
6551 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6552
6553         patch by: David Moore
6554
6555         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6556         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
6557         (group_migrate_connected):
6558         * testsuite/schedulers/Makefile.am:
6559           fix for #142813 (Deadlock in optimal scheduler)
6560
6561 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6562
6563         patch by: Wim Taymans
6564
6565         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6566         (gst_opt_scheduler_schedule_run_queue),
6567         (gst_opt_scheduler_get_wrapper), (get_group),
6568         (group_migrate_connected):
6569         * testsuite/schedulers/Makefile.am:
6570           fix for #147819 (Add some checks in the opt scheduler)
6571
6572 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6573
6574         patch by: Benjamin Otte
6575
6576         * gst/gstelementfactory.c: (__gst_element_details_set):
6577           fix for #147929: running gst-register in non-utf8 locale can cause
6578           invalid registry
6579
6580 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6581
6582         patch by: Wim Taymans
6583
6584         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
6585         (group_has_element), (element_get_reachables_func),
6586         (group_migrate_connected):
6587           fix for #147894 (opt scheduler decoupled elements mismanagement)
6588         * testsuite/schedulers/Makefile.am:
6589           testsuite app now passes
6590
6591 2004-07-19  Wim Taymans  <wim@fluendo.com>
6592
6593         * testsuite/schedulers/147819.c: (handoff_identity1),
6594         (handoff_identity2), (main):
6595         * testsuite/schedulers/Makefile.am:
6596         Added testcase for bug 147819
6597
6598 2004-07-19  Wim Taymans  <wim@fluendo.com>
6599
6600         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6601         (handoff_identity), (main):
6602         * testsuite/schedulers/Makefile.am:
6603         Added testcase for bug 147894
6604
6605 2004-07-16  Wim Taymans  <wim@fluendo.com>
6606
6607         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
6608         * testsuite/schedulers/142183.c: (handoff_identity), (main):
6609         * testsuite/schedulers/Makefile.am:
6610         Added testsuite for bug 142183 in its two incarnations. Refcount
6611         is not increased for scheduled elements and threadsafe properties
6612         mutexes are not properly unlocked.
6613
6614 2004-07-16  Wim Taymans  <wim@fluendo.com>
6615
6616         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
6617         (create_chain), (destroy_chain), (create_group), (destroy_group),
6618         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
6619         (group_dec_link), (gst_opt_scheduler_pad_link),
6620         (group_inc_links_for_element), (group_migrate_connected):
6621         Call group_inc_link with the proper src->sink ordering -- 
6622         break this, and we break sort_chain. patch from wingo for bug
6623         147713.
6624         Partially revert patch 1.89. When adding a loop based element to 
6625         the scheduler, the links to other groups are automatically followed
6626         and incremented. This should not happen because the bin will call
6627         pad_link explicitly for those connection, resulting in them counted 
6628         twice. Results in assertion failure on pipeline cleanup.
6629
6630 2004-07-16  Wim Taymans  <wim@fluendo.com>
6631
6632         * testsuite/schedulers/143777-2.c: (main):
6633         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
6634         (main):
6635         * testsuite/schedulers/Makefile.am:
6636         Added cleanup code to testcase 143777-2.
6637         Added testcase to show bug 147713, does not really show the
6638         deadlock as I can't figure out how to trigger it, but it does
6639         demonstrate bad ordering in the scheduler.
6640
6641 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6642
6643         * gst/gstvalue.c: (gst_value_deserialize_fraction):
6644           change strndup to g_strndup.  Fixes #147707
6645
6646 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6647
6648         * po/af.po:
6649         * po/az.po:
6650         * po/cs.po:
6651         * po/en_GB.po:
6652         * po/fr.po:
6653         * po/nl.po:
6654         * po/sr.po:
6655         * po/sv.po:
6656         * po/tr.po:
6657         * po/uk.po:
6658           updated translations
6659
6660 2004-07-16  Benjamin Otte  <otte@gnome.org>
6661
6662         * gst/gstvalue.c: (gst_greatest_common_divisor):
6663           use ints and return ints, fractions only use ints, too, so this
6664           avoids accidently casting multiplications to unsigned
6665         (gst_value_lcopy_fraction): it's ints, not uint32
6666         (gst_value_set_fraction): disallow minint, multiplying and negation
6667           are broken with it
6668         (gst_value_fraction_multiply): fix to make large numbers work and get
6669         rid of the assumption that the multiplication of two ints fits an
6670         int64 - dunno if that's true for all systems
6671         * testsuite/caps/Makefile.am:
6672         * testsuite/caps/fraction-multiply-and-zero.c:
6673         (check_multiplication), (check_equal), (zero_test), (main):
6674           add tests for all the stuff above
6675         * testsuite/caps/value_compare.c: (test1):
6676           fix comment
6677         * tests/.cvsignore:
6678         * testsuite/caps/.cvsignore:
6679         * testsuite/debug/.cvsignore:
6680         * testsuite/dlopen/.cvsignore:
6681         * testsuite/states/.cvsignore:
6682           get up to date
6683
6684 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6685
6686         * docs/manual/bins-api.xml:
6687         * docs/manual/factories.xml:
6688         * docs/manual/helloworld.xml:
6689         * docs/manual/links-api.xml: 
6690           fixes for out of date info, incorrect info and grammar
6691
6692 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6693
6694         * docs/manual/pads.xml:
6695         * docs/manual/pads-api.xml: grammar fix
6696
6697 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6698
6699         * docs/manual/pads-api.xml: typo + grammar fix
6700
6701 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6702
6703         * docs/gst/gstreamer-sections.txt:
6704           add new symbols
6705         * docs/gst/tmpl/gstelement.sgml:
6706         * docs/gst/tmpl/gstpad.sgml:
6707         * docs/gst/tmpl/gsttypes.sgml:
6708         * docs/gst/tmpl/gstvalue.sgml:
6709           update docs
6710         * gst/gststructure.c: (gst_structure_set_valist),
6711         (gst_structure_from_abbr), (gst_structure_to_abbr):
6712         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
6713         (gst_greatest_common_divisor), (gst_value_init_fraction),
6714         (gst_value_copy_fraction), (gst_value_collect_fraction),
6715         (gst_value_lcopy_fraction), (gst_value_set_fraction),
6716         (gst_value_get_fraction_numerator),
6717         (gst_value_get_fraction_denominator),
6718         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
6719         (gst_value_deserialize_fraction),
6720         (gst_value_transform_fraction_string),
6721         (gst_value_transform_string_fraction),
6722         (gst_value_compare_fraction), (_gst_value_initialize):
6723         * gst/gstvalue.h:
6724           adding GstFraction GValue type, get/set, and multiply
6725         * testsuite/caps/Makefile.am:
6726         * testsuite/caps/fraction.c: (test), (main):
6727         * testsuite/caps/string-conversions.c: (main):
6728         * testsuite/caps/value_compare.c: (test1), (main):
6729           add regression tests for GstFraction
6730
6731 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6732         
6733         * docs/manual/init-api.xml: Grammar fix
6734
6735 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6736
6737         * docs/manual/states.xml: Fix inconsistent information
6738
6739 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6740
6741         * gst/gstelement.c: (gst_element_set_state):
6742         * gst/gstpad.c: (gst_pad_try_set_caps):
6743         * gst/gststructure.c:
6744         * gst/gstthread.c: (gst_thread_child_state_change):
6745         * gst/gstvalue.c: (gst_value_compare_double):
6746         * gst/gstvalue.h:
6747         * testsuite/parse/parse1.c: (main):
6748           debugging additions and style cleanups
6749
6750 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6751
6752         * docs/manual/states.xml: Grammar fix
6753
6754 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6755
6756         * docs/manual/pads.xml: Grammar fix
6757
6758 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6759
6760         * docs/manual/elements.xml: Fixed image reference
6761
6762 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6763
6764         * docs/manual/goals.xml: Grammar fix
6765
6766 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6767
6768         * docs/manual/motivation.xml:
6769         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
6770
6771 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6772
6773         * docs/manual/motivation.xml: Fix spelling
6774
6775 2004-07-15  Benjamin Otte  <otte@gnome.org>
6776
6777         * gst/gstelement.h: 
6778           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
6779           strings.
6780         * gst/gstelement.c (gst_element_class_init):
6781           GError's are boxed, not objects
6782         * gst/gstmarshal.list:
6783           update list for the fixed error signal
6784
6785 2004-07-14  Andy Wingo  <wingo@pobox.com>
6786
6787         * gst/gsttag.c: Add a tag merge func for pointers. The header was
6788         there all along, but the function wasn't. (guile-gstreamer's build
6789         system uses the address of the function -- I wasn't actually
6790         trying to use this.)
6791
6792 2004-07-14  Andy Wingo  <wingo@pobox.com>
6793
6794         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
6795         as gst_pad_proxy_pad_link) just link to every other pad when they
6796         are called. In the case where the graph has cycles, this will mean
6797         that a call to try_set_caps will recurse. Allow this recursion
6798         and return OK, while we wait for the first try_set_caps to give a
6799         proper return value.
6800         (gst_pad_link_call_link_functions): Since this function is the
6801         only one to set the NEGOTIATING flag on a pad, if the flag is set
6802         it means that the link functions have indirectly recursed. If this
6803         happens, error out to avoid infinite recursion and an eventual
6804         SEGV.
6805         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
6806         (gst_pad_proxy_getcaps): Intersect the result with the template
6807         caps to ensure that the return value is valid.
6808
6809 2004-07-14  Andy Wingo  <wingo@pobox.com>
6810
6811         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
6812         one refcount, the calling function is the owner of the buffer.
6813
6814 2004-07-14  Wim Taymans  <wim@fluendo.com>
6815
6816         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
6817         (gst_opt_scheduler_pad_link), (group_migrate_connected):
6818         Fix stupid warning when an element is to be migrated but
6819         is already migrated.
6820
6821 2004-07-14  Wim Taymans  <wim@fluendo.com>
6822
6823         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
6824         (gst_opt_scheduler_pad_link), (group_migrate_connected):
6825         Make sure that a single non-loop-based element does not 
6826         end up in a group. This fixes the testsuite again.
6827
6828 2004-07-14  Wim Taymans  <wim@fluendo.com>
6829
6830         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6831         (add_to_group), (merge_groups), (schedule_group),
6832         (gst_opt_scheduler_get_wrapper), (group_elements),
6833         (group_dec_link), (gst_opt_scheduler_pad_link),
6834         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
6835         (gst_opt_scheduler_iterate):
6836         move isolated groups to a new chain.
6837         Emit a warning instead of segfaulting in some error cases.
6838         Fix a bug where the link count between groups was not calculated 
6839         correctly. Fixes #144510.
6840
6841 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
6842         * gst/elements/gstfilesrc.c:
6843           Binary files support under Windows now OK
6844       
6845 2004-07-13  Benjamin Otte  <otte@gnome.org>
6846
6847           compatibility fixes for Solaris 8/gcc 2.95
6848         * configure.ac:
6849           include libintl libs in LDFLAGS
6850         * gstvalue.c (gst_value_deserialize_buffer):
6851           cast isxdigit stuff to int to silence compiler warning
6852
6853 2004-07-12  Benjamin Otte  <otte@gnome.org>
6854
6855         * gst/gsttypes.h:
6856           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
6857           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
6858           just causes support madness
6859         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
6860           make it work without this
6861         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
6862         (gst_file_index_commit):
6863           glib IO channels don't want binary mode
6864         * testsuite/bytestream/filepadsink.c: (main):
6865         * testsuite/bytestream/test1.c: (read_param_file):
6866           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
6867
6868 2004-07-12  Benjamin Otte  <otte@gnome.org>
6869
6870         * gst/gstelement.c: (gst_element_class_init),
6871         (gst_element_set_state), (gst_element_set_state_func):
6872           virutalize gst_element_set_state, use set_state member in class
6873           struct that was already added in 0.7 for this.
6874         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
6875         (gst_bin_change_state):
6876           make gst_bin_foreach works similar to other foreach functions, plug
6877           memleaks in it. Make functions using it work with the new approach.
6878           Document gst_bin_foreach, so it can be exported if we want to
6879         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
6880           use virtualized set_state to make set_state on bins set the state of
6881           all its children.
6882
6883 2004-07-12  Benjamin Otte  <otte@gnome.org>
6884
6885         * configure.ac:
6886           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
6887           http://bugs.gentoo.org/show_bug.cgi?id=53967)
6888         * gst/gstpad.c: (gst_pad_alloc_buffer):
6889           allow buffer_alloc functions to return NULL and allocate a normal
6890           buffer in that case
6891
6892 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6893         * gst/elements/gstfilesink.c:
6894         * gst/elements/gstfilesrc.c:
6895         * gst/indexers/gstfileindex.c:
6896         * gst/gsttypes.h:
6897         * testsuite/bytestream/filepadsink.c:
6898         * testsuite/bytestream/test1.c:
6899           Handle binary files under Windows
6900
6901 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6902         * docs/manual/win32.xml:
6903         * win32/config.h:
6904         * win32/gst-register.vcproj:
6905         * win32/gstreamer.def:
6906           Update to another gettext public build
6907
6908 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6909         * gst/gstplugin.c:
6910           Fix an impossible C syntax
6911         * win32/config.h:
6912           Disable i18n under Windows for the moment
6913         * win32/gst-register.vcproj:
6914           Use this configuration
6915
6916 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
6917         * docs/manual/quotes.xml:
6918           Keep the quotes file alive
6919         * docs/random/ds/0.9-suggested-changes:
6920           Add the suggestion of including a 'rowstride' as part of video
6921           format caps
6922
6923 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6924
6925         * gst/gstelement.c: (gst_element_set_state),
6926         (gst_element_change_state):
6927           d'oh.  Set PENDING state correctly before forcing bin to change.
6928         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6929         (gst_structure_parse_fixed_list):
6930         * gst/schedulers/gstoptimalscheduler.c:
6931         (gst_opt_scheduler_state_transition):
6932         * testsuite/states/parent.c: (main):
6933           remove comment now that it's fixed.
6934
6935 2004-07-11  Benjamin Otte  <otte@gnome.org>
6936
6937         * gst/gstclock.h:
6938           GST_SECOND shouldn't cause a conversion to unsigned.
6939         * testsuite/clock/.cvsignore:
6940         * testsuite/clock/Makefile.am:
6941         * testsuite/clock/signedness.c: (main):
6942           make sure it never will again
6943
6944 2004-07-11  Andy Wingo  <wingo@pobox.com>
6945
6946         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
6947         whose state is higher than the bin state, raise the bin state to
6948         ensure that bin state := highest child state.
6949         
6950 2004-07-11  Andy Wingo  <wingo@pobox.com>
6951
6952         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
6953         procedure on the children of a bin. Assumes that the procedure can
6954         change the set of children.
6955         (set_kid_state_func): New static function.
6956         (gst_bin_change_state): Use gst_bin_foreach to call
6957         set_kid_state_func. Fixes a bug: if a child had a state-change
6958         handler that removes it from the bin, there would be a segfault.
6959         Hopefully it should also work in the case where the state-change
6960         handler on one child adds or removes other children. In any case,
6961         fixes should go to gst_bin_foreach.
6962
6963 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6964
6965         * gst/gstelement.c: (gst_element_set_state):
6966           compatibility fix for latest plugins release.  Change loop back
6967           to while {}
6968
6969 2004-07-09  Wim Taymans  <wim@fluendo.com>
6970
6971         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
6972         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
6973         (gst_thread_main_loop):
6974         Since remove is virtual in GstBin we must not assume the 
6975         elements GList to have anothing useful.
6976         Add some more logging to GstThread and be a bit more paranoid
6977         when resetting the scheduler.
6978         Set the state of the bin to NULL before removing the children.
6979
6980 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6981
6982         * testsuite/threads/Makefile.am:
6983         * testsuite/threads/threadg.c:
6984           added test to check if problem when removing all elements from a
6985           GstThread before setting GstThread state to NULL
6986
6987 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6988
6989         * docs/gst/tmpl/gstelement.sgml:
6990         * docs/gst/tmpl/gsttypes.sgml:
6991         * gst/gstbin.c: (gst_bin_change_state):
6992         * gst/gstelement.c: (gst_element_set_state),
6993         (gst_element_change_state):
6994           rework so that for bins we try to set the state on all children
6995           as well even if the bin is in the correct state already.
6996           change while to do so at least one iteration is done.
6997           For regular elements, we fall back to the previous behaviour for
6998           now since we first need a new plugins release.
6999         * testsuite/states/parent.c: (main):
7000           test for this case
7001           Fixes #123774
7002
7003 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7004
7005         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7006         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7007         (gst_queue_release_locks), (gst_queue_change_state),
7008         (gst_queue_set_property):
7009           add proper lock debugging.  Change dispose to finalize, since
7010           we're freeing mutexes and other stuff which should happen only once.
7011
7012 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7013
7014         * docs/gst/tmpl/gstelement.sgml:
7015         * docs/gst/tmpl/gstplugin.sgml:
7016         * docs/gst/tmpl/gsttypes.sgml:
7017         * docs/pwg/building-state.xml:
7018         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7019         * gst/gstelement.c: (gst_element_change_state):
7020         * gst/gstthread.c: (gst_thread_change_state):
7021           catch wrong state changes in element base class.
7022
7023 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7024
7025         * gst/gstinfo.h:
7026           clean up layout a little.
7027
7028 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7029
7030         * configure.ac:
7031         * testsuite/Makefile.am:
7032         * testsuite/states/Makefile.am:
7033         * testsuite/states/parent.c: (main):
7034           re-enable states testsuite dir.  Add test for state changes and
7035           parent behaviour
7036
7037 2004-07-09  Wim Taymans  <wim@fluendo.com>
7038
7039         * gst/schedulers/gstoptimalscheduler.c:
7040         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7041         (element_get_reachables_func), (element_get_reachables),
7042         (debug_element), (rechain_group), (group_migrate_connected),
7043         (gst_opt_scheduler_pad_unlink):
7044         Do not try to migrate decoupled elements to a new group since
7045         they are not added to groups.
7046
7047 2004-07-08  Benjamin Otte  <otte@gnome.org>
7048
7049         * gst/gstelement.c: (gst_element_error_func):
7050           make reentrant (= allow removing elements in error handler)
7051
7052 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7053
7054         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7055         (gst_pad_send_event), (gst_pad_call_chain_function):
7056           events sent to elements below PAUSED cannot be handled, so
7057           don't try to
7058
7059 2004-07-08  Wim Taymans  <wim@fluendo.com>
7060
7061         * gst/schedulers/gstoptimalscheduler.c:
7062         (chain_recursively_migrate_group), (create_group),
7063         (schedule_group), (gst_opt_scheduler_pad_link),
7064         (group_elements_set_visited), (element_get_reachables_func),
7065         (element_get_reachables), (group_can_reach_group), (debug_element),
7066         (rechain_group), (group_migrate_connected),
7067         (gst_opt_scheduler_pad_unlink):
7068         * testsuite/schedulers/Makefile.am:
7069         Implemented group splitting and rechaining.
7070         Fixes 143777 and 143777-2 in the testsuite.
7071
7072 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7073
7074         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7075           extra debugging
7076         * gst/gstevent.h:
7077         * gst/gstinfo.c: (gst_debug_log_default):
7078           print time nicely.  add thread pointer until someone figures out
7079           a completely portable way of getting at thread id's.
7080         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7081         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7082         (gst_pad_call_chain_function):
7083           extra debugging
7084         * gst/schedulers/gstoptimalscheduler.c:
7085         (get_group_schedule_function), (loop_group_schedule_function),
7086         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7087         (pad_clear_queued), (gst_opt_scheduler_iterate):
7088           rename BUFPEN and friends to DATAPEN since that's what they are.
7089
7090 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7091
7092         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7093         * gst/gstbuffer.h:
7094         * gst/gstpad.c:
7095           cleanups and debugging
7096
7097 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7098
7099         * configure.ac:
7100         * gst/gstvalue.c: (gst_value_compare_enum),
7101         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7102         (gst_value_can_compare), (gst_value_compare):
7103         * testsuite/Makefile.am:
7104         * testsuite/enumcaps/Makefile.am:
7105         * testsuite/enumcaps/enumcaps.c:
7106           Fix enum serialization, deserialization, comparison in caps, add
7107           a test to ensure that this continues working in the future.
7108
7109 2004-07-06  David Schleef  <ds@schleef.org>
7110
7111         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7112         Fix memleak.
7113
7114 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7115
7116         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7117         * gst/gstplugin.h:
7118         * gst/registries/gstxmlregistry.c:
7119         (plugin_times_older_than_recurse), (plugin_times_older_than),
7120         (gst_xml_registry_parse_padtemplate):
7121           only rebuild registry when actual plugins have a newer time than
7122           the registry.  Fixes #145520
7123
7124 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7125
7126         * docs/manual/manual.xml:
7127         * docs/manual/win32.xml:
7128           add chapter on win32 building.  fixes #142422
7129
7130 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7131
7132         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7133
7134         * gst/autoplug/gstspider.c: (gst_spider_init),
7135         (gst_spider_dispose):
7136           fix spider memleaks.  fixes #137863
7137
7138 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7139
7140         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7141
7142         * gst/schedulers/gstoptimalscheduler.c:
7143         (gst_opt_scheduler_pad_unlink):
7144           fix SIGBUS error, fixes #145338
7145
7146 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7147
7148         * gst/gstobject.c: (gst_object_replace):
7149         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7150         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7151           clean up clock lifecycle.  Fixes #109831
7152
7153 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7154
7155         * po/LINGUAS:
7156         * po/cs.po:
7157           added Czech translation (Miloslav Trmac)
7158
7159 2004-07-04  David Schleef  <ds@schleef.org>
7160
7161         * tools/Makefile.am:
7162         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7163
7164 2004-07-04  David Schleef  <ds@schleef.org>
7165
7166         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7167
7168 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7169
7170         * gst/gstbin.c: (gst_bin_restore_thyself):
7171           chain to parent restore so the bins get restored correctly
7172           in the editor
7173
7174 2004-07-03  David Schleef  <ds@schleef.org>
7175
7176         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7177         Actually do something in these functions, like before the big
7178         caps change.  (bug #145137)
7179
7180 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7181
7182         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7183         (gst_element_get_compatible_pad_filtered):
7184         * gst/gstthread.c: (gst_thread_main_loop):
7185           more debugging
7186
7187 2004-07-02  David Schleef  <ds@schleef.org>
7188
7189         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7190         * gst/gstobject.h:
7191         * gst/gstparse.h:
7192         * gst/gsttrace.h:
7193         * gst/gstxml.h:
7194
7195 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7196
7197         * gst/gstpad.c: (gst_pad_check_schedulers),
7198         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7199         (gst_pad_link_prepare):
7200           revert until testsuite is fixed
7201
7202 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7203
7204         * testsuite/Makefile.am:
7205         * testsuite/caps/filtercaps.c: (main):
7206         * testsuite/clock/clock1.c: (main):
7207         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7208           fix some more tests
7209
7210 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7211
7212         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7213         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7214         * testsuite/cleanup/cleanup4.c: (main):
7215           fix testsuite
7216
7217 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7218
7219         * libs/gst/control/control.c:
7220         * libs/gst/control/dparam.c:
7221         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7222         * libs/gst/control/dparammanager.c:
7223         * libs/gst/control/dparammanager.h:
7224         * testsuite/dynparams/Makefile.am:
7225         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7226         (gst_dptest_change_state), (gst_dptest_chain), (main):
7227           fix testcase for dparams
7228           add debugging category
7229
7230 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7231
7232         * testsuite/Rules:
7233           change path
7234
7235 2004-07-02  Benjamin Otte  <otte@gnome.org>
7236
7237         * tests/.cvsignore:
7238         * tests/Makefile.am:
7239         * tests/mass_elements.c: (gst_get_current_time), (main):
7240           add simple benchmark to test various speeds of fakesrc ! identity !
7241           identity ! ... ! fakesink.
7242           Usage: mass_elements [num_identities] [num_buffers]
7243           If not specified they default to 1000.
7244
7245 2004-07-02  Benjamin Otte  <otte@gnome.org>
7246
7247         * gst/gstpad.c: (gst_pad_check_schedulers),
7248         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7249         (gst_pad_link_prepare):
7250           check that pads that get linked belong to the same manager. The old
7251           code allowed linking elements before putting them into bins, so it
7252           worked to link them and then put them in different threads, which
7253           lead to weird behaviour.
7254           Since this effectively disallows linking elements before putting
7255           them in a bin, some applications might not work after this and error
7256           out. If these applications are too critical, we might need to revert
7257           that patch. Please test this before the next release...
7258
7259 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7260
7261         * gst/gstpad.c: (gst_pad_get_caps):
7262           throw an error if the getcaps function does not return a subset of
7263           the template caps.
7264         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7265           make disconts without position info an error in debugging
7266         * tests/spidey_bench.c: (handoff), (main):
7267           don't count first try when averaging
7268
7269 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7270
7271         * gst/gstplugin.c: (gst_plugin_load_file):
7272           figure out problem with dynamic test
7273
7274 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7275
7276         * docs/gst/Makefile.am:
7277           fix docs build
7278
7279 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7280
7281         * po/POTFILES.in:
7282         * po/af.po:
7283         * po/az.po:
7284         * po/en_GB.po:
7285         * po/fr.po:
7286         * po/nl.po:
7287         * po/sr.po:
7288         * po/sv.po:
7289         * po/tr.po:
7290         * po/uk.po:
7291         * tools/gst-register.c: (plugin_added_func), (main):
7292           i18n-ize -register, fix plural
7293
7294 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7295
7296         * gst/elements/gstidentity.c: (gst_identity_class_init),
7297         (gst_identity_init), (gst_identity_chain),
7298         (gst_identity_set_property), (gst_identity_get_property):
7299         * gst/elements/gstidentity.h:
7300           check for perfect stream
7301
7302 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7303
7304         * gst/elements/gstidentity.c: (gst_identity_chain):
7305           print offset_end
7306
7307 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7308
7309         * docs/gst/Makefile.am:
7310         * docs/gst/gstreamer-docs.sgml:
7311           doc fixes
7312
7313 2004-06-24  David Schleef  <ds@schleef.org>
7314
7315         * autogen.sh:  Remove call to env, since the buildbot isn't
7316         broken anymore.
7317
7318 2004-06-24  Wim Taymans  <wim@fluendo.com>
7319
7320         * gst/elements/Makefile.am:
7321         * gst/elements/gstelements.c:
7322         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7323         (gst_multifdsink_class_init), (gst_multifdsink_init),
7324         (gst_multifdsink_add), (gst_multifdsink_remove),
7325         (gst_multifdsink_clear), (gst_multifdsink_chain),
7326         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7327         * gst/elements/gstmultifdsink.h:
7328         Added an element that writes to multiple filedescriptors at once.
7329
7330 2004-06-24  Benjamin Otte  <otte@gnome.org>
7331
7332         * gst/parse/grammar.y:
7333           don't try to link elements before they have been added to bins
7334
7335 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7336
7337         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7338         (gst_file_pad_get_length):
7339         * libs/gst/bytestream/filepad.h:
7340           add 2 new functions
7341
7342 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7343
7344         * docs/gst/gstreamer-sections.txt:
7345         remove from docs, the define that Benjamin removed from gstelement.h
7346
7347 2004-06-22  Benjamin Otte  <otte@gnome.org>
7348
7349         * gst/gstelement.h:
7350           remove define that referenced a nonexisting GstElement struct member
7351
7352 2004-06-20  Benjamin Otte  <otte@gnome.org>
7353
7354         * gst/gstdata.c: (gst_data_is_writable):
7355           whoops, return values were wrong, so writable data was marked as
7356           non-writable and vice versa. (fixes #143953, spotted by Francis
7357           Labonte)
7358           Shows how rarely we need to copy data ;)
7359
7360 2004-06-20  Benjamin Otte  <otte@gnome.org>
7361
7362         * testsuite/schedulers/.cvsignore:
7363         * testsuite/schedulers/Makefile.am:
7364         * testsuite/schedulers/143777-2.c: (main):
7365           add test for opt breakage in bug #143777
7366
7367 2004-06-20  Benjamin Otte  <otte@gnome.org>
7368
7369         * gst/gstpad.c: (gst_pad_call_chain_function):
7370           check for if we were unlinked while inside the chainfunction (fixes
7371           entrygthread having issues with #143777)
7372         * testsuite/schedulers/143777.c: (main):
7373         * testsuite/schedulers/Makefile.am:
7374           add a test for that fix
7375
7376 2004-06-20  Benjamin Otte  <otte@gnome.org>
7377
7378         * gst/gstvalue.c: (gst_value_set_int_range):
7379           test that start is smaller then end
7380         * libs/gst/bytestream/Makefile.am:
7381         * libs/gst/bytestream/filepad.c: 
7382         * libs/gst/bytestream/filepad.h:
7383           add GstFilePad - a pad that behaves like a FILE*
7384         * testsuite/bytestream/.cvsignore:
7385         * testsuite/bytestream/Makefile.am:
7386         * testsuite/bytestream/filepadsink.c: 
7387           test for the GstFilePad
7388
7389 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7390
7391         * gst/elements/gstidentity.c: (gst_identity_class_init),
7392         (gst_identity_init), (gst_identity_set_clock),
7393         (gst_identity_chain), (gst_identity_set_property),
7394         (gst_identity_get_property):
7395         * gst/elements/gstidentity.h:
7396         * gst/gstclock.c: (gst_clock_id_wait):
7397           add a "sync" property to sync to the clock
7398
7399 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7400
7401         * gst/gstelementfactory.c: (gst_element_factory_create):
7402           make the freakin "elementfactory bla has no type" message more
7403           useful. So we actually can do something when someone shows up
7404           complaining about it.
7405
7406 2004-06-15  Johan Dahlin  <johan@gnome.org>
7407
7408         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7409         found. This matches the old behavior better. Thanks to Thomas for
7410         pointing out.
7411
7412 2004-06-14  David Schleef  <ds@schleef.org>
7413
7414         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7415         -fomit-frame-pointer.  Appears to generate correct code in
7416         other cases as well.
7417
7418 2004-06-14  Johan Dahlin  <johan@gnome.org>
7419
7420         * tools/gst-inspect.c (main): Add two new command line options: -a
7421         to print all elements and -n to print the name on each line. Also
7422         fix some error reporting.
7423         (main): Simplify, remove -n and always print names if -a is specified
7424
7425 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7426
7427         * win32/gstconfig.h:
7428         * win32/GSTreamer.vcproj:
7429         * win32/Makefile:
7430         * gst/gstconfig.h.in:
7431         * gst/gst.h:
7432         * gst/gstbin.h:
7433         * gst/gstelement.h:
7434         * gst/gstevent.h:
7435         * gst/gstobject.h:
7436         * gst/gstpad.h:
7437         * docs/gst/gstreamer-sections.txt:
7438         * docs/gst/tmpl/gstconfig.sgml:
7439           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7440
7441 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7442         * docs/gst/gstreamer-sections.txt:
7443         * docs/gst/tmpl/gstconfig.sgml:
7444         Add the GSTREAMER_EXPORT macro to the docs
7445
7446 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7447
7448         * tools/gst-compprep.c: (handle_xmlerror), (main):
7449         Add a check for the version that introduced SetStructuredError to fix
7450         the build on FC1
7451
7452 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7453
7454         * win32/msvc71.sln:
7455         * win32/testsuite/:
7456           prepare to compile the testsuite with MSVC
7457
7458 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7459
7460         * docs/manual/win32.xml:
7461           attempt to transform the Win32 README into an XML doc
7462
7463 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7464
7465         * gst/gst.c:
7466         * gst/gstbin.*:
7467         * gst/config.h.in:
7468         * gst/gstelement.*:
7469         * gst/gstevent.h:
7470         * gst/gstobject.*:
7471         * gst/gstpad.h:
7472         * tools/gst-register.c:
7473         * win32/gstreamer.def:
7474           extern symbols are now exported for the Windows DLL
7475
7476 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7477
7478         * gst/gstinfo.h:
7479           fix a problem to enable/disable DEBUG under MSVC
7480
7481 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7482
7483         * win32/:
7484           enable more debug code in DEBUG build
7485
7486 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7487
7488         * win32/config.h:
7489         * gst/gst-i18n-app.h:
7490           enable NLS under Windows
7491
7492 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7493         * tools/gst-compprep.c: (handle_xmlerror), (main):
7494           Make an error that baffled me a bit clearer
7495
7496 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7497
7498         * gst/gstqueue.c:
7499           don't use g_queue_get_length () because it's 2.4, use ->length
7500
7501 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7502
7503         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7504
7505         * tools/gst-inspect.c: (print_signal_info):
7506           don't free random data twice. (fixes #144185)
7507
7508 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7509
7510         * gst/gstqueue.c:
7511         * gst/gstqueue.h:
7512           fix removing from the wrong queue on event timeout
7513           fix disposing of the event queue by casting correctly
7514           add mutexes for handling the event queue
7515           someone was sleeping when fixing queue last time around :)
7516
7517 2004-06-10  Johan Dahlin  <johan@gnome.org>
7518
7519         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7520         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7521
7522 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7523
7524         * docs/random/gdp:
7525         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7526         * libs/gst/dataprotocol/dataprotocol.c:
7527         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7528         (gst_dp_buffer_from_header):
7529         * libs/gst/dataprotocol/dataprotocol.h:
7530         * libs/gst/dataprotocol/dp-private.h:
7531           rev version to 0.1, add buffer flags and copy them
7532
7533 2004-06-09  Johan Dahlin  <johan@gnome.org>
7534
7535         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
7536         the flags from the buffer we're copying.
7537
7538 2004-06-09  Wim Taymans  <wim@fluendo.com>
7539
7540         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
7541         * gst/elements/gstidentity.c: (gst_identity_init),
7542         (gst_identity_chain):
7543         Print more buffer info in fakesink.
7544         Make identity output similar to fakesink.
7545
7546 2004-06-07  Daniel Gazard  <dany42@free.fr>
7547
7548         reviewed by Benjamin Otte  <otte@gnome.org>
7549
7550         * configure.ac:
7551           fix cross compiling not working. (fixes #143741)
7552
7553 2004-06-07  Benjamin Otte  <otte@gnome.org>
7554
7555         * gst/gstelement.c: (gst_element_set_time_delay):
7556           add failure check
7557         * gst/gstinfo.h:
7558           put brackets around macro arguments of GST_TIME_ARGS, add note to
7559           move it to correct header in 0.9
7560
7561 2004-06-07  Benjamin Otte  <otte@gnome.org>
7562
7563         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
7564         (gst_file_index_load), (_file_index_id_save_entries),
7565         (gst_file_index_commit), (gst_file_index_add_association),
7566         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
7567         (gst_file_index_plugin_init):
7568           make debugging use a default category
7569
7570 2004-06-06  David Moore  <dcm@acm.org>
7571
7572         reviewed by Benjamin Otte  <otte@gnome.org>
7573
7574         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
7575         (gst_fdsrc_change_state):
7576           reset offset counter when going READY => PAUSED. (fixes #142903)
7577
7578 2004-06-06  ed@catmur.co.uk
7579
7580         reviewed by Benjamin Otte  <otte@gnome.org>
7581
7582         * gst/registries/gstxmlregistry.c:
7583         (gst_xml_registry_rebuild_recurse):
7584           don't rely on g_dir_open to figure out if a file is a directory, use
7585           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
7586           directories. (fixes #142850)
7587
7588 2004-06-06  Benjamin Otte  <otte@gnome.org>
7589
7590         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
7591           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
7592         * libs/gst/bytestream/adapter.c:
7593         * libs/gst/bytestream/adapter.h:
7594           fix copyright in header and typo in debugging category name
7595
7596 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7597
7598         * configure.ac:
7599           bump nano to cvs
7600
7601 === release 0.8.3 ===
7602
7603 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7604
7605         * configure.ac:
7606           update libtool versioning
7607           do a new release
7608         * docs/gst/tmpl/gstelement.sgml:
7609         * docs/gst/tmpl/gsttypes.sgml:
7610         * gst/gstinfo.c: (_gst_debug_init):
7611           put back GST_CAT_DATAFLOW to fix API breakage
7612
7613 2004-06-04  David Schleef  <ds@schleef.org>
7614
7615         * autogen.sh: Add a temporary 'env' to test buildbot problems.
7616
7617 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7618
7619         * configure.ac:
7620           bump nano to cvs
7621
7622 === release 0.8.2 ===
7623
7624 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7625
7626         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
7627           check GST_DEBUG environment variable which is parsed the same way
7628           as --gst-debug=
7629
7630 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7631
7632         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
7633                             gstmd5sink.c gstshaper.c gsttee.c
7634                             gsttypefindelement.c
7635         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
7636
7637           - removing trailing commas at end of enums
7638             it is correct C99 code but C90 compilers would complain
7639             (AIX, Forte, ...)
7640             ('should' fix #143290, at least partially)
7641
7642 2004-05-27  Wim Taymans  <wim@fluendo.com>
7643
7644         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
7645         (chain_group_set_enabled), (create_group), (add_to_group),
7646         (merge_groups), (setup_group_scheduler), (group_elements),
7647         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
7648         Don't try to follow the pad connections with other groups
7649         when a loop based element is added to the scheduler because
7650         the bin will inform the scheduler about the pad links a little
7651         later.
7652
7653 2004-05-27  Wim Taymans  <wim@fluendo.com>
7654
7655         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7656         (remove_from_chain), (chain_group_set_enabled),
7657         (setup_group_scheduler), (group_element_set_enabled),
7658         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
7659         (gst_opt_scheduler_show):
7660         Elements without a group can do a state change as well, just wait
7661         with the setup of the scheduling function when it is added to a
7662         chain.
7663
7664 2004-05-27  Wim Taymans  <wim@fluendo.com>
7665
7666         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7667         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
7668         (merge_groups), (setup_group_scheduler),
7669         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
7670         (gst_opt_scheduler_show):
7671         Fixes to maintain internal consistency of the scheduler data
7672         structures. 
7673          - adding an enabled group to a chain should increment the
7674            number of enabled elements in that chain.
7675          - removing an enabled group from a chain could disable the
7676            chain.
7677          - removing a disabled group from a chain could enable the
7678            chain.
7679          - add g_assert when internal inconsistency is detected.
7680          - adding an element to a group could increase the number of
7681            links this group has with other groups.
7682          - merging two groups also merges the chains.
7683          - also show group links in the _show method.
7684            
7685
7686 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7687
7688         * gst/gstcaps.c: (gst_caps_structure_simplify):
7689           don't print error messages when there is no error
7690         * gst/gstvalue.c: (gst_value_compare_int_range):
7691           compare the second value, too
7692         * testsuite/caps/Makefile.am:
7693         * testsuite/caps/random.c: (assert_on_error), (main):
7694           add tests to make sure the two things above are checked for
7695
7696 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
7697
7698         * configure.ac:
7699         * libs/gst/dataprotocol/Makefile.am:
7700         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
7701         * libs/gst/dataprotocol/dataprotocol.h:
7702           wrap header in GST_ENABLE_NEW.  make code use it
7703
7704 2004-05-23  Johan Dahlin  <johan@gnome.org>
7705
7706         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
7707         so verbose and print GstElement signal names all the time.
7708
7709 2004-05-22  David Schleef  <ds@schleef.org>
7710
7711         * gst/registries/gstxmlregistry.c:
7712         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
7713         (bug #142957)
7714
7715 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
7716
7717         * configure.ac:
7718           scrub cflags for glib2 so gcc doesn't complain when glib is in
7719           /usr/local
7720
7721 2004-05-21  Johan Dahlin  <johan@gnome.org>
7722
7723         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
7724         __GNUC__, patch from Brian Cameron, fixes bug #142804
7725
7726 2004-05-20  David Schleef  <ds@schleef.org>
7727
7728         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
7729         comparison code.  (bug #142819)
7730
7731 2004-05-20  Wim Taymans  <wim@fluendo.com>
7732
7733         * gst/gstbuffer.c: (gst_buffer_default_copy):
7734         * gst/gstbuffer.h:
7735         Added Comment to a flag.
7736         copy relevant flags in _buffer_copy.
7737
7738 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7739
7740         reviewed by: Wim Taymans <wim at fluendo dot com>
7741
7742         * gst/gstbuffer.h:
7743           add GST_BUFFER_IN_CAPS buffer flag
7744         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7745         (gst_structure_parse_any_list), (gst_structure_parse_list),
7746         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
7747         * gst/gstvalue.c: (gst_value_serialize_any_list),
7748         (gst_value_transform_any_list_string),
7749         (gst_value_list_prepend_value), (gst_value_list_append_value),
7750         (gst_value_list_get_size), (gst_value_list_get_value),
7751         (gst_value_transform_list_string),
7752         (gst_value_transform_fixed_list_string),
7753         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
7754         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
7755         (_gst_value_initialize):
7756         * gst/gstvalue.h:
7757           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
7758           < , > as a format.
7759         * testsuite/caps/string-conversions.c: (main):
7760           add regression tests for < >
7761
7762 2004-05-20  Johan Dahlin  <johan@gnome.org>
7763
7764         * docs/gst/Makefile.am (all-local): Re-add
7765
7766 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7767
7768         * docs/gst/Makefile.am:
7769         * docs/gst/gstreamer-docs.sgml:
7770         * docs/libs/Makefile.am:
7771         * docs/libs/gstreamer-libs-docs.sgml:
7772           fix distcheck issues
7773
7774 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7775
7776         * libs/gst/dataprotocol/Makefile.am:
7777           add to autotest
7778
7779 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7780
7781         * libs/gst/dataprotocol/Makefile.am:
7782         * libs/gst/dataprotocol/dataprotocol.c:
7783         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7784         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
7785         * libs/gst/dataprotocol/dp-private.h:
7786           use GST macros to read/write fixed length ints
7787           add some more asserts
7788
7789 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7790
7791         * docs/libs/gstreamer-libs-docs.sgml:
7792         * docs/libs/gstreamer-libs-sections.txt:
7793           remove idct and putbits
7794         * configure.ac:
7795         * docs/libs/tmpl/gstdataprotocol.sgml:
7796         * libs/gst/Makefile.am:
7797         * libs/gst/dataprotocol/Makefile.am:
7798         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
7799         (buffer_test), (caps_test), (event_test), (main):
7800         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
7801         (gst_dp_dump_byte_array), (gst_dp_init),
7802         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
7803         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7804         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
7805         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
7806         (gst_dp_validate_header), (gst_dp_validate_payload),
7807         (gst_dp_validate_packet), (plugin_init):
7808         * libs/gst/dataprotocol/dataprotocol.h:
7809         * libs/gst/dataprotocol/dp-private.h:
7810           add dataprotocol
7811
7812 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7813
7814         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
7815           fix int variable deserialization and add a helper so we can actually
7816           debug this.
7817
7818 2004-05-18  David Schleef  <ds@schleef.org>
7819
7820         * testsuite/debug/commandline.c: (main): Call ./commandline, not
7821           argv[0].  Calling yourself is probably not the best way to
7822           construct a test like this, btw.
7823
7824 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7825
7826         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
7827           don't claim to be more intelligent than a scheduler when the
7828           scheduler claims the pipeline is stopped
7829         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
7830         (safe_cothread_destroy),
7831         (gst_entry_scheduler_remove_all_cothreads),
7832         (gst_entry_scheduler_reset), (_remove_cothread),
7833         (gst_entry_scheduler_state_transition):
7834           hold off cothread destruction if we're not in main cothread
7835         * configure.ac:
7836         * testsuite/Makefile.am:
7837           add new test dir
7838         * testsuite/schedulers/.cvsignore:
7839         * testsuite/schedulers/Makefile.am:
7840           add tests
7841         * testsuite/schedulers/relink.c: (cb_handoff), (main):
7842           check relinking and adding/removing elements from a running pipeline
7843         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
7844           check unlinking in a running pipeline
7845         * testsuite/schedulers/unref.c: (cb_handoff), (main):
7846           check unreffing a running pipeline
7847         * testsuite/schedulers/useless_iteration.c: (main):
7848           check iterating a pipeline that contains running threads works
7849
7850 2004-05-18  David Schleef  <ds@schleef.org>
7851
7852         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
7853           is false.
7854
7855 2004-05-18  Wim Taymans  <wim@fluendo.com>
7856
7857         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7858         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
7859         Fixed an error introduced with patch for 1.63. When setting
7860         a get based element as the entry point in a group, make sure
7861         to mark the group as GET based.
7862
7863 2004-05-18  Wim Taymans  <wim@fluendo.com>
7864
7865         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7866         (setup_group_scheduler), (loop_group_schedule_function),
7867         (gst_opt_scheduler_pad_link):
7868         Added some more debug info and fixed a bug where the group
7869         type was set to LOOP but it was in fact unknown.
7870
7871 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7872
7873         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
7874           make resetting scheduler work twice in a row
7875
7876 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7877
7878         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
7879         (CREATE_USERIALIZATION), (_gst_value_initialize),
7880         (gst_value_compare_float), (gst_value_serialize_float),
7881         (gst_value_deserialize_float), (gst_value_compare_enum),
7882         (gst_value_serialize_enum), (gst_value_deserialize_enum):
7883           add serialization and comparison functions for long, int64, enum and
7884           float values
7885         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
7886           use best serialization function in type hierarchy instead of only a
7887           matching one. This is required for enums to work.
7888         * gst/parse/grammar.y:
7889           use gst_caps_deserialize
7890         * testsuite/parse/Makefile.am:
7891           parse1 now works
7892         * testsuite/parse/parse1.c: (main):
7893           remove aggregator check, aggregator is broken, this test works now
7894           but fails because of bug #138012
7895         * testsuite/parse/parse2.c: (main):
7896           s/xvideosink/xvimagesink - this test looks a lot like we should
7897           disable it
7898
7899 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7900
7901         * gst/gstelement.c: (gst_element_class_init):
7902           whoops, store the signal id correctly
7903         * gst/schedulers/gstbasicscheduler.c:
7904         (gst_basic_scheduler_chain_wrapper):
7905           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
7906           chain function isn't linked
7907
7908 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
7909         * configure.ac:
7910         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
7911         support until we decide where the flags should be used
7912         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
7913         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
7914         * gst/gstpad.c: (gst_pad_link_call_link_functions):
7915         Output refused caps in the debug info
7916
7917 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7918
7919         * gst/elements/gstidentity.c: (gst_identity_chain):
7920           add duration debug
7921         * gst/gstinfo.c: (gst_debug_log_default):
7922           add timestamp
7923
7924 2004-05-13  Benjamin Otte  <otte@gnome.org>
7925
7926         * gst/gstpipeline.c: (gst_pipeline_dispose),
7927         (gst_pipeline_change_state):
7928           call gst_scheduler_reset on dispose (fixes #141416)
7929
7930 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7931
7932         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7933           compute mapsize correctly
7934         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7935           use correct datatypes when calling a varargs function
7936         * gst/elements/gsttypefindelement.c: (stop_typefinding):
7937           push a DISCONT event as first thing
7938         * gst/gst_private.h:
7939         * gst/gstinfo.c: (_gst_debug_init):
7940           remove GST_DATAFLOW debugging category
7941         * gst/gstbin.c: (gst_bin_iterate):
7942           use GST_SCHEDULING category
7943         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
7944         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
7945         (gst_pad_call_get_function):
7946           add GST_DATAFLOW to easily track flow of buffers or events.
7947         * gst/gstqueue.c: (gst_queue_get_type),
7948         (gst_queue_handle_pending_events), (gst_queue_chain),
7949         (gst_queue_get), (gst_queue_handle_src_event):
7950           use own static debugging category GST_DATAFLOW for dataflow,
7951           use DEBUG category for showing which path events go, use LOG
7952           category for buffers.
7953
7954 2004-05-10  David Schleef  <ds@schleef.org>
7955
7956         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
7957
7958 2004-05-10  David Schleef  <ds@schleef.org>
7959
7960         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
7961         symbols, because otherwise we don't know what they are.  Thanks,
7962         the GStreamer team.
7963         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
7964
7965 2004-05-10  David Schleef  <ds@schleef.org>
7966
7967         (from Steve Lhomme)
7968         * win32/Makefile: When using make clean the MS Visual Studio makefiles
7969         are deleted.  Fix.
7970         * win32/Makefile.inspect:
7971         * win32/Makefile.launch:
7972         * win32/Makefile.register:
7973
7974 2004-05-10  David Schleef  <ds@schleef.org>
7975
7976         * gst/gstinfo.h: Add missing inline function.
7977         * gst/gsttrace.c: add include
7978         * gst/parse/grammar.y: remove unused code
7979         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
7980         more portable.
7981         * tools/gst-register.c: wrap unistd.h
7982         
7983         More additions/fixes from Steve for the MSVC build.
7984         * win32/GStreamer.vcproj:
7985         * win32/Makefile:
7986         * win32/Makefile.inspect:
7987         * win32/Makefile.launch:
7988         * win32/Makefile.register:
7989         * win32/README.txt:
7990         * win32/gst-inspect.vcproj:
7991         * win32/gst-launch.vcproj:
7992         * win32/gst-register.vcproj:
7993         * win32/gstbytestream.def:
7994         * win32/gstbytestream.vcproj:
7995         * win32/gstconfig.h:
7996         * win32/gstelements.def:
7997         * win32/gstelements.vcproj:
7998         * win32/gstenumtypes.c:
7999         * win32/gstenumtypes.h:
8000         * win32/gstoptimalscheduler.def:
8001         * win32/gstoptimalscheduler.vcproj:
8002         * win32/gstreamer.def:
8003         * win32/gstspider.def:
8004         * win32/gstspider.vcproj:
8005         * win32/gstversion.h:
8006         * win32/msvc71.sln:
8007
8008 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8009
8010         * gst/gstelement.c: (gst_element_class_init),
8011         (gst_element_no_more_pads):
8012         * gst/gstelement.h:
8013           add gst_element_no_more_pads and the "no-more-pads" signal
8014
8015 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8016
8017         * gst/gstregistry.c: (gst_registry_add_plugin):
8018           refuse to add plugins when a plugin with same name is already
8019           registered. Fixes a bunch of "How to remove plugins?" issues.
8020           May lead to other problems though, let's test
8021
8022 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8023
8024         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8025         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8026         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8027
8028 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8029
8030         * tests/Makefile.am: fix am16 issue
8031
8032 2004-05-09  Benjamin Otte  <otte@gnome.org>
8033
8034         * libs/gst/bytestream/Makefile.am:
8035           we should indeed add .c files to makefiles or they won't be built
8036           (d'oh)
8037
8038 2004-05-08  Benjamin Otte  <otte@gnome.org>
8039
8040         * gst/gstpad.c: (gst_pad_proxy_fixate):
8041           really reduce the set of caps
8042
8043 2004-05-08  Benjamin Otte  <otte@gnome.org>
8044
8045         * tests/Makefile.am:
8046         * tests/spidey_bench.c: (handoff), (main):
8047           add benchmark to test how long spider needs to create a pipeline
8048
8049 2004-05-08  Benjamin Otte  <otte@gnome.org>
8050
8051         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8052           mark links as unengaged when unnegotiating instead of deactivating.
8053           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8054
8055 2004-05-08  Benjamin Otte  <otte@gnome.org>
8056
8057         * docs/manual/helloworld.xml:
8058           s/audiosink/osssink (patch by Patrick Guimond)
8059
8060 2004-05-07  David Schleef  <ds@schleef.org>
8061
8062         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8063         since it contains important stuff.
8064
8065 2004-05-07  David Schleef  <ds@schleef.org>
8066
8067         * testsuite/caps/caps.c: (test3), (main): A check for appending
8068         ANY caps.
8069
8070 2004-05-07  David Schleef  <ds@schleef.org>
8071
8072         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8073         which may contain commas.  Fixes detection of -Wa,-mregnames
8074
8075 2004-05-06  David Schleef  <ds@schleef.org>
8076
8077         Changes to handle compilers that don't have variadic macro
8078         support.  In particular, glib headers define some inlines
8079         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8080         builds.
8081         * gst/Makefile.am:
8082         * gst/cothreads.c:
8083         * gst/elements/gstfdsink.c:
8084         * gst/elements/gstfdsrc.c:
8085         * gst/elements/gstfilesink.c:
8086         * gst/elements/gstfilesrc.c:
8087         * gst/gst_private.h:
8088         * gst/gstatomic.c:
8089         * gst/gstcaps.c: (gst_caps_append):
8090         * gst/gstcpu.c: (gst_cpuid_i386):
8091         * gst/gstelement.c:
8092         * gst/gsterror.c:
8093         * gst/gstfilter.c:
8094         * gst/gstinfo.h:
8095         * gst/gstprobe.c:
8096         * gst/gstquery.c:
8097         * gst/gstregistry.c:
8098         * gst/gststructure.c:
8099         * gst/gsttaginterface.c:
8100         * gst/gsttrace.c: (gst_trace_new):
8101         * gst/gsttrashstack.c:
8102         * gst/gsturi.c:
8103         * gst/gstvalue.c:
8104         * gst/parse/grammar.y:
8105         * gst/parse/parse.l:
8106         * tools/gst-inspect.c: (main):
8107         * tools/gst-launch.c: (main):
8108         * tools/gst-xmlinspect.c: (PUT_STRING):
8109
8110 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8111
8112         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8113         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8114         * gst/elements/gstfilesrc.h:
8115           send NEW_MEDIA events correctly
8116         * gst/elements/gsttypefindelement.c: (start_typefinding),
8117         (gst_type_find_element_handle_event):
8118           restart typefinding when we get a NEW_MEDIA event
8119         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8120         (gst_bin_dispose):
8121           don't die when someone removes elements in callbacks
8122         * gst/gstelement.c: (gst_element_change_state):
8123           improve debugging
8124         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8125           we need a NEW_MEDIA event to engage a link
8126         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8127           don't g_print debugging stuff
8128         * testsuite/caps/simplify.c: (check_caps):
8129
8130 2004-05-04  Benjamin Otte  <otte@gnome.org>
8131
8132         * gst/parse/grammar.y:
8133           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8134
8135 2004-05-04  Benjamin Otte  <otte@gnome.org>
8136
8137         * testsuite/caps/renegotiate.c: (main):
8138           improve output in error case
8139
8140 2004-05-04  Benjamin Otte  <otte@gnome.org>
8141
8142         * gst/parse/grammar.y:
8143           fix assert to not trigger when there's no error argument
8144         * gst/parse/parse.l:
8145           fix definition of caps to allow more than two structures
8146         * testsuite/caps/Makefile.am:
8147         * testsuite/caps/renegotiate.c: (main):
8148           it's sinesrc and works in that case
8149
8150 2004-05-04  Wim Taymans  <wim@fluendo.com>
8151
8152         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8153         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8154         when removing an element from a group, we always need to
8155         decrement the link count that this group had with other 
8156         groups through the element.
8157         added an extra assert to catch inconsistencies when decrementing
8158         the link count.
8159
8160 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8161
8162         * configure.ac:
8163         * docs/gst/Makefile.am:
8164         * docs/gst/gstreamer-sections.txt:
8165         * docs/gst/tmpl/gstcompat.sgml:
8166         * examples/appreader/Makefile.am:
8167         * examples/cutter/Makefile.am:
8168         * examples/events/Makefile.am:
8169         * examples/helloworld/Makefile.am:
8170         * examples/helloworld2/Makefile.am:
8171         * examples/launch/Makefile.am:
8172         * examples/manual/Makefile.am:
8173         * examples/mixer/Makefile.am:
8174         * examples/pingpong/Makefile.am:
8175         * examples/plugins/Makefile.am:
8176         * examples/queue/Makefile.am:
8177         * examples/queue2/Makefile.am:
8178         * examples/queue3/Makefile.am:
8179         * examples/queue4/Makefile.am:
8180         * examples/retag/Makefile.am:
8181         * examples/thread/Makefile.am:
8182         * examples/typefind/Makefile.am:
8183         * examples/xml/Makefile.am:
8184         * gst/Makefile.am:
8185         * gst/autoplug/Makefile.am:
8186         * gst/elements/Makefile.am:
8187         * gst/gstcompat.h:
8188         * gst/indexers/Makefile.am:
8189         * gst/parse/Makefile.am:
8190         * gst/registries/Makefile.am:
8191         * gst/schedulers/Makefile.am:
8192         * libs/gst/bytestream/Makefile.am:
8193         * libs/gst/control/Makefile.am:
8194         * libs/gst/getbits/Makefile.am:
8195         * po/af.po:
8196         * po/az.po:
8197         * po/en_GB.po:
8198         * po/fr.po:
8199         * po/nl.po:
8200         * po/sr.po:
8201         * po/sv.po:
8202         * po/tr.po:
8203         * po/uk.po:
8204         * tests/Makefile.am:
8205         * tests/bufspeed/Makefile.am:
8206         * tests/instantiate/Makefile.am:
8207         * tests/memchunk/Makefile.am:
8208         * tests/muxing/Makefile.am:
8209         * tests/negotiation/Makefile.am:
8210         * tests/probes/Makefile.am:
8211         * tests/sched/Makefile.am:
8212         * tests/seeking/Makefile.am:
8213         * tests/threadstate/Makefile.am:
8214         * testsuite/caps/Makefile.am:
8215         * testsuite/cleanup/Makefile.am:
8216         * testsuite/dlopen/Makefile.am:
8217         * testsuite/dynparams/Makefile.am:
8218         * testsuite/plugin/Makefile.am:
8219         * testsuite/states/Makefile.am:
8220         * tools/Makefile.am:
8221           reorganize compile/link flags to be consistent
8222           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8223
8224 2004-05-04  David Schleef  <ds@schleef.org>
8225
8226         The "once more, with feeling" check-in.
8227         * testsuite/caps/Makefile.am: dist caps_strings
8228         * testsuite/caps/renegotiate.c: (main): This test triggers a
8229           segfault in the core.  Marking as failing.
8230
8231 2004-05-03  David Schleef  <ds@schleef.org>
8232
8233         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8234           by the build bots.
8235         * testsuite/caps/renegotiate.c: (main): Same.
8236
8237 2004-05-03  David Schleef  <ds@schleef.org>
8238
8239         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8240
8241 2004-05-03  David Schleef  <ds@schleef.org>
8242
8243         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8244           variable to find our source file.
8245
8246 2004-05-03  David Schleef  <ds@schleef.org>
8247
8248         * configure.ac:  Link plugins with libgstreamer and dependent
8249           libraries
8250         * testsuite/caps/Makefile.am:
8251         * testsuite/caps/caps_strings:
8252         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8253           through a file of caps strings and test each one
8254
8255 2004-05-04  Benjamin Otte  <otte@gnome.org>
8256
8257         * libs/gst/bytestream/Makefile.am:
8258         * libs/gst/bytestream/adapter.c: 
8259         * libs/gst/bytestream/adapter.h:
8260           add GstAdapter, similar to bytestream, but doesn't require ugly event
8261           handling or uglier loopbased elements
8262
8263 2004-05-03  David Schleef  <ds@schleef.org>
8264
8265         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8266         * testsuite/caps/erathostenes.c:
8267         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8268
8269 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8270
8271         * docs/pwg/pwg.xml:
8272           remove hardcoded stylesheet path (duh)
8273         * docs/random/release:
8274         * docs/gst/gstreamer-sections.txt:
8275         * gst/Makefile.am:
8276         * gst/gst.h:
8277         * gst/gst_private.h:
8278         * gst/gstcaps.c:
8279         * gst/gstevent.c:
8280         * gst/gstformat.c:
8281         * gst/gstinfo.c:
8282         * gst/gstinfo.h:
8283         * gst/gstinterface.c:
8284         * gst/gstmemchunk.c:
8285         * gst/gstprobe.c:
8286         * gst/gstquery.c:
8287         * gst/gstregistry.c:
8288         * gst/gstregistrypool.c:
8289         * gst/gststructure.c:
8290         * gst/gsttaginterface.c:
8291         * gst/gstthread.c:
8292         * gst/gsttrace.c:
8293         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8294         * gst/gsturi.c:
8295         * gst/gstvalue.c:
8296           deprecate gst_info; remove gstlog.h
8297    
8298
8299 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8300
8301         * Makefile.am:
8302         * po/en_GB.po:
8303         * po/sv.po:
8304         * po/uk.po:
8305           updated translations
8306
8307 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8308
8309         * gst/gstbin.c: (gst_bin_dispose):
8310           better debugging
8311
8312 2004-05-03  Johan Dahlin  <johan@gnome.org>
8313
8314         * gst/schedulers/gstoptimalscheduler.c
8315         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8316         really is a GstElement. Avoids critical when running gst-launch -v
8317         and a oggdemux/decoding pipeline.
8318
8319 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8320
8321         * docs/gst/tmpl/gstpipeline.sgml :
8322         * docs/manual/elements-api.xml :
8323                 doc fix by Patrick Guimond (Protector) from devel ML
8324                 reviewed by ronald
8325
8326 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8327
8328         * docs/gst/Makefile.am :
8329         * docs/libs/Makefile.am :
8330                 apply a patch from Arwed v. Merkatz so that gtk-doc
8331                 generated docs install (same for .devhelp file)
8332                 (fixes part 1 of #138836)
8333
8334 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8335
8336         * docs/faq/dependencies.xml: typo
8337         * docs/faq/getting.xml :
8338             - fix download URL for new gstreamer site
8339             - hide sf.net download page as latest version aren't there
8340             - fix apt URLs
8341             - fill "get via CVS" paragraph (link to dev page on the site)
8342         * docs/faq/general.xml:
8343             hide status tables as they no more exists
8344             change case on plugins license file to reflect reality
8345         * docs/faq/troubleshooting.xml:
8346             remove the wiki question/answer as there is no more wiki
8347
8348 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8349
8350         * gst/gsterror.h:
8351           include the headers needed for declarations used in this header
8352
8353 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8354
8355         * docs/random/uraeus/gstreamer_and_midi.txt :
8356           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8357           (fixes #132288)
8358
8359 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8360
8361         reviewed by Benjamin Otte  <otte@gnome.org>
8362
8363         * gst/schedulers/gthread-cothreads.h:
8364           free allocated data for main cothread, too when destroying context
8365           (fixes #141417)
8366
8367 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8368
8369         * docs/manual/goals.xml : remove duplicated paragraph at end 
8370         of doc page (fixes #141448)
8371
8372 2004-04-29  David Schleef  <ds@schleef.org>
8373
8374         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8375         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8376
8377 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8378
8379         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8380           fix property
8381         * gst/gstcaps.c:
8382           fix doc string
8383         * po/POTFILES.in:
8384           rename typefind source file
8385
8386 2004-04-28  David Schleef  <ds@schleef.org>
8387
8388         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8389         * win32/GStreamer.vcproj:
8390         * win32/Makefile:
8391         * win32/config.h:
8392         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8393         (_trewinddir), (_ttelldir), (_tseekdir):
8394         * win32/dirent.h:
8395         * win32/gst-inspect.vcproj:
8396         * win32/gst-launch.vcproj:
8397         * win32/gst-register.vcproj:
8398         * win32/gstbytestream.vcproj:
8399         * win32/gstelements.vcproj:
8400         * win32/gstoptimalscheduler.vcproj:
8401         * win32/gstspider.vcproj:
8402         * win32/gtchar.h:
8403         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8404         * win32/mman.h:
8405         * win32/mman.inl:
8406         * win32/msvc71.sln:
8407
8408 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8409
8410         * gst/gst.c: (init_post):
8411         * gst/gstinfo.c:
8412           remove useless _gst_progname stuff
8413         * tools/gst-inspect.c: (print_field), (print_caps):
8414           improve caps output
8415
8416 2004-04-28  David Schleef  <ds@schleef.org>
8417
8418         Disable parsing of a lot of files that aren't part of the
8419         exported API.  Move corresponding template files to old/,
8420         waiting for removal when they don't contain anything
8421         interesting.
8422         * docs/gst/Makefile.am:
8423         * docs/gst/gstreamer-sections.txt:
8424         * docs/gst/tmpl/cothreads.sgml:
8425         * docs/gst/tmpl/cothreads_compat.sgml:
8426         * docs/gst/tmpl/gettext.sgml:
8427         * docs/gst/tmpl/gobject2gtk.sgml:
8428         * docs/gst/tmpl/grammar.tab.sgml:
8429         * docs/gst/tmpl/gst-i18n-app.sgml:
8430         * docs/gst/tmpl/gst-i18n-lib.sgml:
8431         * docs/gst/tmpl/gst_private.sgml:
8432         * docs/gst/tmpl/gstaggregator.sgml:
8433         * docs/gst/tmpl/gstarch.sgml:
8434         * docs/gst/tmpl/gstatomic_impl.sgml:
8435         * docs/gst/tmpl/gstbufferstore.sgml:
8436         * docs/gst/tmpl/gstdata_private.sgml:
8437         * docs/gst/tmpl/gstdisksink.sgml:
8438         * docs/gst/tmpl/gstdisksrc.sgml:
8439         * docs/gst/tmpl/gstelementfactory.sgml:
8440         * docs/gst/tmpl/gstextratypes.sgml:
8441         * docs/gst/tmpl/gstfakesink.sgml:
8442         * docs/gst/tmpl/gstfakesrc.sgml:
8443         * docs/gst/tmpl/gstfdsink.sgml:
8444         * docs/gst/tmpl/gstfdsrc.sgml:
8445         * docs/gst/tmpl/gstfilesink.sgml:
8446         * docs/gst/tmpl/gstfilesrc.sgml:
8447         * docs/gst/tmpl/gsthttpsrc.sgml:
8448         * docs/gst/tmpl/gstidentity.sgml:
8449         * docs/gst/tmpl/gstindexfactory.sgml:
8450         * docs/gst/tmpl/gstmarshal.sgml:
8451         * docs/gst/tmpl/gstmd5sink.sgml:
8452         * docs/gst/tmpl/gstmultidisksrc.sgml:
8453         * docs/gst/tmpl/gstmultifilesrc.sgml:
8454         * docs/gst/tmpl/gstpadtemplate.sgml:
8455         * docs/gst/tmpl/gstpipefilter.sgml:
8456         * docs/gst/tmpl/gstschedulerfactory.sgml:
8457         * docs/gst/tmpl/gstsearchfuncs.sgml:
8458         * docs/gst/tmpl/gstshaper.sgml:
8459         * docs/gst/tmpl/gstspider.sgml:
8460         * docs/gst/tmpl/gstspideridentity.sgml:
8461         * docs/gst/tmpl/gststatistics.sgml:
8462         * docs/gst/tmpl/gsttee.sgml:
8463         * docs/gst/tmpl/gsttimecache.sgml:
8464         * docs/gst/tmpl/gsttypefind.sgml:
8465         * docs/gst/tmpl/gsttypefindfactory.sgml:
8466         * docs/gst/tmpl/gstxmlregistry.sgml:
8467         * docs/gst/tmpl/gthread-cothreads.sgml:
8468         * docs/gst/tmpl/old/cothreads.sgml:
8469         * docs/gst/tmpl/old/cothreads_compat.sgml:
8470         * docs/gst/tmpl/old/gettext.sgml:
8471         * docs/gst/tmpl/old/gobject2gtk.sgml:
8472         * docs/gst/tmpl/old/grammar.tab.sgml:
8473         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8474         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8475         * docs/gst/tmpl/old/gst_private.sgml:
8476         * docs/gst/tmpl/old/gstaggregator.sgml:
8477         * docs/gst/tmpl/old/gstarch.sgml:
8478         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8479         * docs/gst/tmpl/old/gstbufferstore.sgml:
8480         * docs/gst/tmpl/old/gstdata_private.sgml:
8481         * docs/gst/tmpl/old/gstdisksink.sgml:
8482         * docs/gst/tmpl/old/gstdisksrc.sgml:
8483         * docs/gst/tmpl/old/gstelementfactory.sgml:
8484         * docs/gst/tmpl/old/gstextratypes.sgml:
8485         * docs/gst/tmpl/old/gstfakesink.sgml:
8486         * docs/gst/tmpl/old/gstfakesrc.sgml:
8487         * docs/gst/tmpl/old/gstfdsink.sgml:
8488         * docs/gst/tmpl/old/gstfdsrc.sgml:
8489         * docs/gst/tmpl/old/gstfilesink.sgml:
8490         * docs/gst/tmpl/old/gstfilesrc.sgml:
8491         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8492         * docs/gst/tmpl/old/gstidentity.sgml:
8493         * docs/gst/tmpl/old/gstindexfactory.sgml:
8494         * docs/gst/tmpl/old/gstmarshal.sgml:
8495         * docs/gst/tmpl/old/gstmd5sink.sgml:
8496         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8497         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8498         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8499         * docs/gst/tmpl/old/gstpipefilter.sgml:
8500         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8501         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8502         * docs/gst/tmpl/old/gstshaper.sgml:
8503         * docs/gst/tmpl/old/gstspider.sgml:
8504         * docs/gst/tmpl/old/gstspideridentity.sgml:
8505         * docs/gst/tmpl/old/gststatistics.sgml:
8506         * docs/gst/tmpl/old/gsttee.sgml:
8507         * docs/gst/tmpl/old/gsttimecache.sgml:
8508         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8509         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8510         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8511         * docs/gst/tmpl/old/types.sgml:
8512         * docs/gst/tmpl/types.sgml:
8513
8514         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8515         gtkdoc-scan doesn't like files with the same name in different
8516         directories.
8517         * gst/elements/Makefile.am:
8518         * gst/elements/gstelements.c:
8519         * gst/elements/gsttypefind.c: 
8520         * gst/elements/gsttypefind.h:
8521         * gst/elements/gsttypefindelement.c:
8522         * gst/elements/gsttypefindelement.h:
8523
8524 2004-04-28  David Schleef  <ds@schleef.org>
8525
8526         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8527         patch (bug #141317):
8528         * gst/gst-i18n-lib.h: Allow disabling gettext.
8529         * gst/gstatomic_impl.h: disable warning when it's dumb.
8530         * gst/gstclock.c: fix include
8531         * gst/gstcompat.h: fix variadic macro
8532         * gst/gstinfo.c: fix include
8533         * gst/gstmacros.h: add defines for inlines on MSVC
8534         * gst/gstplugin.c: fix includes
8535         * gst/gstregistry.c: fix includes
8536         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
8537         * gst/gstsystemclock.c: fix include
8538         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
8539         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
8540         * gst/registries/gstxmlregistry.c:
8541         (gst_xml_registry_parse_element_factory): fix use of non-portable
8542         functions
8543         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
8544         * libs/gst/control/dparammanager.h: same
8545
8546 2004-04-28  David Schleef  <ds@schleef.org>
8547
8548         Move a bunch of unused files to old/ with names that are
8549         not case-insensitive-unique.  These files still contain some
8550         useful information that needs to be merged into gstbin.sgml,
8551         etc., so they shouldn't be deleted yet.
8552         * docs/gst/tmpl/GstBin.sgml:
8553         * docs/gst/tmpl/GstBuffer.sgml:
8554         * docs/gst/tmpl/GstCaps.sgml:
8555         * docs/gst/tmpl/GstClock.sgml:
8556         * docs/gst/tmpl/GstCompat.sgml:
8557         * docs/gst/tmpl/GstData.sgml:
8558         * docs/gst/tmpl/GstElement.sgml:
8559         * docs/gst/tmpl/GstEvent.sgml:
8560         * docs/gst/tmpl/GstIndex.sgml:
8561         * docs/gst/tmpl/GstStructure.sgml:
8562         * docs/gst/tmpl/GstTag.sgml:
8563         * docs/gst/tmpl/old/GstBin.sgml:
8564         * docs/gst/tmpl/old/GstBuffer.sgml:
8565         * docs/gst/tmpl/old/GstCaps.sgml:
8566         * docs/gst/tmpl/old/GstClock.sgml:
8567         * docs/gst/tmpl/old/GstCompat.sgml:
8568         * docs/gst/tmpl/old/GstData.sgml:
8569         * docs/gst/tmpl/old/GstElement.sgml:
8570         * docs/gst/tmpl/old/GstEvent.sgml:
8571         * docs/gst/tmpl/old/GstIndex.sgml:
8572         * docs/gst/tmpl/old/GstStructure.sgml:
8573         * docs/gst/tmpl/old/GstTag.sgml:
8574
8575 2004-04-28  David Schleef  <ds@schleef.org>
8576
8577         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
8578         (gst_caps_append), (gst_caps_append_structure),
8579         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
8580         (gst_caps_set_simple), (gst_caps_set_simple_valist),
8581         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
8582         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
8583         (gst_caps_intersect), (gst_caps_normalize),
8584         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
8585         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
8586         * gst/gstcaps.h: use GST_IS_CAPS().
8587
8588 2004-04-26  David Schleef  <ds@schleef.org>
8589
8590         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
8591         assembly.  gcc doesn't handle it correctly. (bug #141083)
8592         * gst/gsttrashstack.h: same
8593
8594 2004-04-25  Benjamin Otte  <otte@gnome.org>
8595
8596         * gst/gstelement.c: (gst_element_change_state):
8597           fix assertion to do an int comparison
8598
8599 2004-04-25  Benjamin Otte  <otte@gnome.org>
8600
8601         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8602           better debugging output on error
8603
8604 2004-04-25  Benjamin Otte  <otte@gnome.org>
8605
8606         * gst/gstcaps.c: (gst_caps_subtract):
8607           fix memleak
8608
8609 2004-04-23  Benjamin Otte  <otte@gnome.org>
8610
8611         * gst/gstvalue.c: (gst_value_compare_buffer),
8612         (_gst_value_initialize):
8613           add comparison function for buffers
8614
8615 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8616
8617         * docs/pwg/pwg.xml:
8618           Just found out that this so-called "ima-wav" format is really
8619           just "dvi adpcm" (according to the MS WAV documentation). So
8620           renaming it. We didn't use it yet anyway.
8621
8622 2004-04-23  Benjamin Otte  <otte@gnome.org>
8623
8624         * gst/gstcaps.c: (gst_caps_is_always_compatible):
8625           call gst_caps_is_subset
8626
8627 2004-04-23  Benjamin Otte  <otte@gnome.org>
8628
8629         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
8630         (gst_caps_is_subset):
8631           add documentation
8632
8633 2004-04-23  Benjamin Otte  <otte@gnome.org>
8634           
8635         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
8636         (gst_caps_structure_subtract), (gst_caps_subtract),
8637         (gst_caps_structure_figure_out_union),
8638         (gst_caps_structure_simplify), (gst_caps_do_simplify):
8639           fix simplifying and subtracting not working correctly with optional
8640           properties
8641           solve assorted problems that make it now simplify ebven more
8642         * docs/gst/tmpl/gstcaps.sgml:
8643         * gst/gstcaps.h:
8644           make gst_caps_do_simplify return a bool to indicate if it simplified
8645         * testsuite/caps/simplify.c: (main):
8646           add more checks. The tests is quite a bit useless right now because
8647           the core is heavily simplifying itself.
8648         * testsuite/caps/caps.h:
8649           fix caps to contain all optional properties
8650
8651 2004-04-22  Benjamin Otte  <otte@gnome.org>
8652
8653         * docs/gst/tmpl/gstcaps.sgml:
8654         * docs/gst/tmpl/gstfilesrc.sgml:
8655         * docs/gst/tmpl/gststructure.sgml:
8656         * docs/gst/tmpl/gstvalue.sgml:
8657           update for recent API changes
8658         * gst/gstcaps.c: (gst_caps_do_simplify):
8659           fix to stop trying with a freed structure
8660         * gst/gstpad.c: (gst_pad_link_fixate):
8661           simplify caps
8662         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
8663           remove C++ comment
8664         * gst/gstpad.h:
8665           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
8666         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8667         (gst_structure_to_string):
8668           keep the correct type when using lists of ranges
8669         * gst/gstvalue.c: (gst_value_list_prepend_value),
8670         (gst_value_list_append_value):
8671           copy the value before adding to the list (d'oh)
8672         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
8673         (gst_value_subtract_int_range_int_range):
8674           handle overflows correctly
8675         * gst/gstvalue.c: (gst_value_subtract_from_list):
8676           fix memleak
8677         * testsuite/caps/caps.h:
8678           add a caps that caused segfaults
8679
8680 2004-04-22  Benjamin Otte  <otte@gnome.org>
8681
8682         * testsuite/refcounting/pad.c: (main):
8683           fix test
8684
8685 2004-04-22  Benjamin Otte  <otte@gnome.org>
8686
8687         * gst/gstcaps.c: (gst_caps_subtract):
8688           allow subtracting ANY and EMPTY from ANY caps
8689
8690 2004-04-22  Benjamin Otte  <otte@gnome.org>
8691
8692         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
8693         (gst_caps_union):
8694           only simplify in functions that create new caps. Simplifying in
8695           gst_caps_append breaks tests.
8696
8697 2004-04-22  Benjamin Otte  <otte@gnome.org>
8698
8699         * gst/gstcaps.c: (gst_caps_structure_simplify):
8700           unset GValue after use
8701         * gst/gstcaps.c: (gst_caps_append), 
8702         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
8703           use gst_caps_simplify (reduces registry size by 30%)
8704         * gst/gstpad.c: (gst_pad_template_new):
8705           don't allow NULL caps
8706
8707 2004-04-22  Benjamin Otte  <otte@gnome.org>
8708
8709         * docs/gst/gstreamer-sections.txt:
8710           add gst_caps_do_simplify
8711         * gst/gstcaps.c:
8712           add documentation for gst_caps_do_simplify
8713         * gst/gstvalue.h:
8714           fix typo in gst_value_register_subtract_func declaration for gst-doc
8715
8716 2004-04-22  Benjamin Otte  <otte@gnome.org>
8717
8718         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8719           fix bug when converting from empty string.
8720         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
8721         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
8722           use gst_caps_new_empty to allocate a new caps. Only that function
8723           allocates memory for caps now.
8724         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
8725         (gst_caps_remove_structure):
8726           add ability to remove one structure (but not to header yet)
8727         * gst/gstcaps.c: (gst_caps_compare_structures),
8728         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
8729         (gst_caps_structure_simplify), (gst_caps_do_simplify),
8730         * gst/gstcaps.h:
8731           add gst_caps_do_simplify that tries to simplify a caps in place.
8732           Deprecate old gst_caps_simplify function.
8733         * testsuite/caps/caps.h:
8734           add caps.h containing a common set of caps to test against.
8735         * testsuite/caps/sets.c: (check_caps), (main):
8736           use it.
8737         * testsuite/caps/.cvsignore:
8738         * testsuite/caps/Makefile.am:
8739         * testsuite/caps/simplify.c: (check_caps), (main):
8740           add test to check correctness and efficency of caps simplification.
8741
8742 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
8743
8744         reviewed by Benjamin Otte  <otte@gnome.org>
8745
8746         * gst/gstparse.c: (_gst_parse_escape):
8747           Free the GString used in _gst_parse_escape()
8748
8749 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8750
8751         * gst/gstpad.c: (gst_pad_link_negotiate):
8752           refuse to link if the link is not possible
8753         * configure.ac:
8754         * testsuite/Makefile.am:
8755         * testsuite/negotiation/.cvsignore:
8756         * testsuite/negotiation/Makefile.am:
8757         * testsuite/negotiation/pad_link.c: (main):
8758           add test that checks the above behaviour
8759
8760 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8761
8762         * docs/gst/gstreamer-sections.txt:
8763           add newly added API
8764
8765 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8766
8767         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8768         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
8769         (gst_filesrc_open_file), (gst_filesrc_close_file),
8770         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
8771         * gst/elements/gstfilesrc.h:
8772           add support for non-regular files (#140734)
8773
8774 2004-04-21  Benjamin Otte  <otte@gnome.org>
8775
8776         * gst/gstpad.c: (gst_pad_link_fixate):
8777           add sophisticated error checking code to see if fixation functions
8778           did their fixation right
8779
8780 2004-04-21  Benjamin Otte  <otte@gnome.org>
8781
8782         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
8783           check for ANY caps before appending/unioning
8784         * gst/gstcaps.c: (gst_caps_is_subset),
8785         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
8786         (gst_caps_structure_subtract), (gst_caps_subtract):
8787         * gst/gstcaps.h:
8788           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
8789           the API. deprecate gst_caps_is_equal_fixed
8790         * gst/gstpad.c: (gst_pad_try_set_caps):
8791         * gst/gstqueue.c: (gst_queue_link):
8792           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
8793         * gst/gststructure.c: (gst_structure_get_name_id):
8794         * gst/gststructure.h:
8795           add function gst_structure_get_name_id
8796         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
8797         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
8798         (gst_value_subtract_int_range_int_range),
8799         (gst_value_subtract_double_double_range),
8800         (gst_value_subtract_double_range_double),
8801         (gst_value_subtract_double_range_double_range),
8802         (gst_value_subtract_from_list), (gst_value_subtract_list),
8803         (gst_value_can_intersect), (gst_value_subtract),
8804         (gst_value_can_subtract), (gst_value_register_subtract_func),
8805         (_gst_value_initialize):
8806         * gst/gstvalue.h:
8807           add support for subtracting values from each other. Note that
8808           subtracting means subtracting as in set theory. Required for caps
8809           stuff above.
8810         * testsuite/caps/.cvsignore:
8811         * testsuite/caps/Makefile.am:
8812         * testsuite/caps/erathostenes.c: (erathostenes), (main):
8813         * testsuite/caps/sets.c: (check_caps), (main):
8814         * testsuite/caps/subtract.c: (check_caps), (main):
8815           add tests for subtraction and equality code.
8816
8817 2004-04-20  David Schleef  <ds@schleef.org>
8818
8819         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
8820         * gst/indexers/Makefile.am:
8821         * gst/schedulers/Makefile.am:
8822         * libs/gst/bytestream/Makefile.am:
8823         * libs/gst/control/Makefile.am:
8824         * libs/gst/getbits/Makefile.am:
8825
8826 2004-04-20  David Schleef  <ds@schleef.org>
8827
8828         * common/as-libtool.mak: Fine-tune DLL building.
8829         * configure.ac: Link plugins against libgstreamer.  Define plugindir
8830         (like gst-plugins)
8831         * examples/plugins/Makefile.am: remove plugindir
8832         * gst/autoplug/Makefile.am: DLL building fixes
8833         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
8834         Windows.
8835         * gst/elements/gstelements.c: Conditionally disable pipefilter.
8836         * gst/indexers/Makefile.am: DLL building fixes
8837         * gst/schedulers/Makefile.am: DLL building fixes.
8838         * libs/gst/bytestream/Makefile.am: DLL building fixes.
8839         * libs/gst/control/Makefile.am: same
8840         * libs/gst/getbits/Makefile.am: same
8841         * testsuite/Makefile.am: New dlopen directory
8842         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
8843         when dlopened.
8844         * testsuite/dlopen/dlopen_gst.c: (main): same
8845         * testsuite/dlopen/loadgst.c: (do_test): same
8846
8847 2004-04-20  David Schleef  <ds@schleef.org>
8848
8849         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
8850         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
8851
8852 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8853
8854         * gst/gstelement.c: (gst_element_wait),
8855         (gst_element_set_time_delay), (gst_element_change_state):
8856           Use GST_TIME_*
8857
8858 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8859
8860         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
8861         (gst_spider_identity_plug):
8862           improve debugging messages
8863         * gst/gstbin.c: (gst_bin_remove_func):
8864           make sure the state_change function is only called with simple state
8865           transitions
8866
8867 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8868
8869         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
8870         (gst_fakesink_set_property), (gst_fakesink_chain):
8871         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
8872         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
8873         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
8874         * gst/elements/gstidentity.c: (gst_identity_chain),
8875         (gst_identity_set_property):
8876         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
8877         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
8878           add warnings to _set_property for unknown arguments
8879           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
8880
8881 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8882
8883         * Makefile.am:
8884         * docs/manuals.mak:
8885           add .po file download snippet
8886           fix a bug in the doc makefile
8887
8888 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8889
8890         * Makefile.am:
8891         * po/LINGUAS:
8892         * po/en_GB.po:
8893           Added en_GB translation (Gareth Owen)
8894
8895 2004-04-20  Johan Dahlin  <johan@gnome.org>
8896
8897         * gst/gstpad.c (_invent_event): Clean up
8898
8899 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8900
8901         * testsuite/caps/filtercaps.c: (main):
8902           fix test to test things correctly (caps are complicated)
8903
8904 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8905
8906         * testsuite/caps/Makefile.am:
8907         * testsuite/caps/filtercaps.c: (main):
8908           add test (that doesn't work right now, but should)
8909
8910 2004-04-19  David Schleef  <ds@schleef.org>
8911
8912         * configure.ac: Add test for allowing unaligned access.  Add define
8913         to put in gstconfig.h.
8914         * docs/gst/gstreamer-sections.txt: New symbols
8915         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
8916         * docs/gst/tmpl/gstfilesrc.sgml:
8917         * docs/gst/tmpl/gstparse.sgml:
8918         * docs/gst/tmpl/gsttypes.sgml:
8919         * docs/gst/tmpl/gstutils.sgml:
8920         * docs/gst/tmpl/gstvalue.sgml:
8921         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
8922         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
8923         on most !i386/!powerpc architectures.  From Daniel Gazard
8924         <daniel.gazard@free.fr>.  (bug #140156)
8925         * po/af.po: Check in changes made by gettext.
8926         * po/az.po:
8927         * po/fr.po:
8928         * po/nl.po:
8929         * po/sr.po:
8930         * po/sv.po:
8931
8932 2004-04-20  Benjamin Otte  <otte@gnome.org>
8933
8934         * gst/schedulers/entryscheduler.c: 
8935         (gst_entry_scheduler_yield):
8936           refuse to yield when decoupled elements insist on doing that.
8937           At least it's better than crashing
8938
8939 2004-04-19  David Schleef  <ds@schleef.org>
8940
8941         * docs/libs/Makefile.am: Change sinclude to include
8942         * docs/gst/Makefile.am: same
8943         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
8944
8945 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8946
8947         * po/LINGUAS:
8948         * po/uk.po:
8949           Added Ukrainian translation (Maxim V. Dziumanenko)
8950
8951 2004-04-19  Johan Dahlin  <johan@gnome.org>
8952
8953         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
8954         checking here, do it before calling the function.
8955         Clean up, use for loops instead of while loops while iterating
8956         over lists.
8957
8958         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
8959         in debug message.
8960         (gst_spider_create_and_plug): Improve debug message.
8961         General: Replace while loops which iterates over GLists with for
8962         loops. Which are much cleaner, improves readability, especially
8963         for gst_spider_identity_plug
8964
8965         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
8966         fixes bug 140477
8967
8968 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8969
8970         * po/LINGUAS:
8971         * po/tr.po:
8972           Added Turkish translation (Baris Cicek)
8973
8974 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8975
8976         * docs/faq/troubleshooting.xml:
8977           Mention gst-register in the FAQ (fixes 139045).
8978
8979 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8980
8981         * docs/gst/gstreamer-sections.txt:
8982
8983 2004-04-17  Benjamin Otte  <otte@gnome.org>
8984
8985         * gst/gstelement.c: (gst_element_dispose):
8986           simplify
8987         * gst/gstpad.c: (gst_pad_call_chain_function):
8988           don't create loads of events due to bad macro usage
8989
8990 2004-04-16  David Schleef  <ds@schleef.org>
8991
8992         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
8993         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
8994         * gst/gstvalue.c: (gst_value_serialize_buffer),
8995         (gst_value_deserialize_buffer), (gst_type_is_fixed),
8996         (_gst_value_initialize): Create a new function gst_type_is_fixed()
8997         to indicate types that are fixed wrt caps or not.  Switching to
8998         this function fixes (bug #140298).
8999         * gst/gstvalue.h:
9000
9001 2004-04-16  David Schleef  <ds@schleef.org>
9002
9003         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9004         for GST_UNALIGNED_ACESS, since we essentially know which archs
9005         are ok.
9006
9007 2004-04-17  Benjamin Otte  <otte@gnome.org>
9008
9009         * docs/gst/Makefile.am:
9010           ignore gst/parse directory when building docs (fixes #140205)
9011
9012 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9013
9014         * testsuite/refcounting/mem.c: (vmsize):
9015           do error checking
9016
9017 2004-04-16  Johan Dahlin  <johan@gnome.org>
9018
9019         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9020         and gst_pad_call_get_function.
9021
9022 2004-04-15  David Schleef  <ds@schleef.org>
9023
9024         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9025         checks if we can access unaligned memory.
9026         * configure.ac: Use it.
9027
9028 2004-04-16  Benjamin Otte  <otte@gnome.org>
9029
9030         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9031         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9032         * gst/elements/gstfilesrc.h:
9033           s/seek_happened/need_discont/ and require discont before sending any
9034           data
9035
9036 2004-04-15  David Schleef  <ds@schleef.org>
9037
9038         * gst/gstvalue.c: (gst_value_serialize_buffer),
9039         (gst_value_deserialize_buffer), (_gst_value_initialize):
9040         Register these types as fundamental types. (bug #140015)
9041
9042 2004-04-16  Benjamin Otte  <otte@gnome.org>
9043
9044         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9045         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9046         (gst_pad_pull):
9047           implement enforcing discont events before buffers are passed. This
9048           allows state changes of only some elements and later correctly going
9049           on where they left off (or in short: you can now set audio sinks to
9050           NULL to release the device when the pipeline is paused)
9051         * gst/gstpad.c: (gst_pad_call_chain_function),
9052         (gst_pad_call_get_function):
9053         * gst/gstpad.h:
9054           add gst_pad_call_chain_function and gst_pad_call_get_function for
9055           scheduler interaction. They are required because of the changes
9056           above.
9057         * gst/schedulers/entryscheduler.c: (get_buffer),
9058         (gst_entry_scheduler_chain_wrapper),
9059         (gst_entry_scheduler_get_wrapper),
9060         (gst_entry_scheduler_state_transition),
9061         (gst_entry_scheduler_pad_link):
9062         * gst/schedulers/gstbasicscheduler.c:
9063         (gst_basic_scheduler_chain_wrapper),
9064         (gst_basic_scheduler_src_wrapper),
9065         (gst_basic_scheduler_chainhandler_proxy),
9066         (gst_basic_scheduler_gethandler_proxy),
9067         (gst_basic_scheduler_cothreaded_chain),
9068         (gst_basic_scheduler_chain_elements):
9069         * gst/schedulers/gstoptimalscheduler.c:
9070         (get_group_schedule_function), (pad_clear_queued),
9071         (gst_opt_scheduler_pad_link):
9072           use the new functions instead of calling get/chain-functions
9073           directly.
9074
9075 2004-04-15  David Schleef  <ds@schleef.org>
9076
9077         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9078         * docs/gst/tmpl/gstinfo.sgml: same
9079         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9080         gtk-doc put here.
9081         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9082         * examples/queue/queue.c: (main):  We iterate pipelines, not
9083         bins.  (bug #139996)
9084
9085 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9086
9087         * docs/pwg/advanced-types.xml:
9088           Add MS RLE support. Also document Qt RLE although I have no sample
9089           files for that yet. And document an extra property for ADPCM.
9090
9091 2004-04-15  David Schleef  <ds@schleef.org>
9092
9093         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9094         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9095         Windows.
9096
9097 2004-04-15  David Schleef  <ds@schleef.org>
9098
9099         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9100         symbol names to not conflict with new gstinfo.h symbols.
9101         * gst/gstinfo.h: Add inline functions for all those crazy
9102         compilers that don't know how to handle variadic macros (MSVC).
9103
9104 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9105
9106         * configure.ac: bump nano to 1
9107
9108 === release 0.8.1 ===
9109
9110 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9111
9112         * NEWS:
9113         * RELEASE:
9114         * configure.ac:
9115           releasing 0.8.1, "Snow Brigade"
9116
9117 2004-04-14  David Schleef  <ds@schleef.org>
9118
9119         * testsuite/Makefile.am: define tests_ignore
9120         * testsuite/Rules: Added new tests_ignore, which get compiled,
9121         but not run (generally because they're inconsistent or have
9122         heisenbugs).  Now we can ensure all the .c files compile in
9123         testsuite/.
9124         * testsuite/bins/Makefile.am: define tests_ignore
9125         * testsuite/bytestream/Makefile.am:
9126         * testsuite/caps/Makefile.am:
9127         * testsuite/clock/Makefile.am:
9128         * testsuite/debug/Makefile.am:
9129         * testsuite/debug/global.c: (gst_debug_log_one),
9130         (gst_debug_log_two): Fix compilation problem.
9131         * testsuite/dynparams/Makefile.am:
9132         * testsuite/elements/Makefile.am:
9133         * testsuite/ghostpads/Makefile.am:
9134         * testsuite/indexers/Makefile.am:
9135         * testsuite/parse/Makefile.am:
9136         * testsuite/plugin/Makefile.am:
9137         * testsuite/refcounting/Makefile.am:
9138         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9139         results, because it's not calculated correctly.
9140         * testsuite/refcounting/pad.c: (main): same
9141         * testsuite/states/Makefile.am:
9142         * testsuite/tags/Makefile.am:
9143         * testsuite/threads/Makefile.am:
9144
9145 2004-04-14  David Schleef  <ds@schleef.org>
9146
9147         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9148         generating bad code around the cpu detection asm code.
9149
9150 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9151
9152         * tools/gst-inspect.c: (print_element_info):
9153           print numeric version of rank as well, since we added some - 1
9154           rank values to elements
9155
9156 2004-04-13  David Schleef  <ds@schleef.org>
9157
9158         * configure.ac:  Disable various code when compiling for MinGW.
9159         * gst/elements/Makefile.am:
9160         * gst/elements/gstelements.c:
9161         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9162         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9163         * gst/registries/gstxmlregistry.c: (make_dir):
9164
9165 2004-04-13  David Schleef  <ds@schleef.org>
9166
9167         * gst/Makefile.am:
9168         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9169         assembly.
9170         * gst/gstcpuid_i386.s: remove
9171
9172 2004-04-13  David Schleef  <ds@schleef.org>
9173
9174         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9175         seems to think it needs to be done.
9176         * docs/gst/tmpl/gstfakesink.sgml:
9177         * docs/gst/tmpl/gstfakesrc.sgml:
9178         * docs/gst/tmpl/gstfdsink.sgml:
9179         * docs/gst/tmpl/gstfdsrc.sgml:
9180         * docs/gst/tmpl/gstfilesink.sgml:
9181         * docs/gst/tmpl/gstfilesrc.sgml:
9182         * docs/gst/tmpl/gstidentity.sgml:
9183         * docs/gst/tmpl/gstmd5sink.sgml:
9184         * docs/gst/tmpl/gstmultifilesrc.sgml:
9185         * docs/gst/tmpl/gstpipefilter.sgml:
9186         * docs/gst/tmpl/gstshaper.sgml:
9187         * docs/gst/tmpl/gstspider.sgml:
9188         * docs/gst/tmpl/gstspideridentity.sgml:
9189         * docs/gst/tmpl/gststatistics.sgml:
9190         * docs/gst/tmpl/gsttee.sgml:
9191         * docs/gst/tmpl/gsttypefind.sgml:
9192         * docs/gst/tmpl/gstutils.sgml:
9193
9194 2004-04-13  David Schleef  <ds@schleef.org>
9195
9196         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9197         and to build DLLs on Windows.
9198         * gst/Makefile.am:
9199         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9200         (gst_filesrc_open_file):
9201         * gst/schedulers/Makefile.am:
9202
9203 2004-04-13  David Schleef  <ds@schleef.org>
9204
9205         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9206         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9207         fixating lists.
9208
9209 2004-04-12  David Schleef  <ds@schleef.org>
9210
9211         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9212         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9213         to using it.
9214         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9215         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9216         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9217         * gst/gststructure.c: (gst_structure_set_valist),
9218         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9219         support for buffers.
9220         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9221         intended to be const.
9222         * gst/gsttag.h: same
9223         * gst/gstvalue.c: (gst_value_serialize_buffer),
9224         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9225         to (de)serialize buffers.
9226         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9227         * testsuite/caps/string-conversions.c: (main):
9228         * testsuite/caps/value_serialize.c: add new test
9229
9230 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9231
9232         * docs/pwg/advanced-types.xml:
9233           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9234
9235 2004-04-11  Benjamin Otte  <otte@gnome.org>
9236
9237         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9238           rename categories to basic_*
9239         * gst/schedulers/gstbasicscheduler.c: 
9240         (gst_basic_scheduler_chain_wrapper),
9241         (gst_basic_scheduler_chainhandler_proxy),
9242         (gst_basic_scheduler_gethandler_proxy),
9243         (gst_basic_scheduler_eventhandler_proxy):
9244           debugging category fixes - put common stuff in log category
9245         * gst/schedulers/gstbasicscheduler.c: 
9246         (gst_basic_scheduler_chain_elements):
9247           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9248           active and linking two active chains
9249
9250 2004-04-10  Benjamin Otte  <otte@gnome.org>
9251
9252         * docs/pwg/intro-preface.xml:
9253           fix dead links and remove reference to Wiki
9254
9255 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9256
9257         * gst/schedulers/gstbasicscheduler.c:
9258           make sure we can switch back to the main function if we're still in
9259           the main function (supposed to fix #139617)
9260         * gst/schedulers/gthread-cothreads.h:
9261           don't throw an error when switching to the same cothread
9262
9263 2004-04-09  Benjamin Otte  <otte@gnome.org>
9264
9265         * gst/gstbin.c: (gst_bin_get_type):
9266         * gst/gstclock.c: (gst_clock_get_type):
9267         * gst/gstindex.c: (gst_index_get_type):
9268         * gst/gstobject.c: (gst_object_get_type),
9269         (gst_signal_object_get_type):
9270         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9271         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9272         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9273         * gst/gstqueue.c: (gst_queue_get_type):
9274         * gst/gstregistry.c: (gst_registry_get_type):
9275         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9276         * gst/gstthread.c: (gst_thread_get_type):
9277           don't use memchunks for these objects, use malloc instead
9278
9279 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9280
9281         * docs/gst/.cvsignore:
9282         * docs/gst/Makefile.am:
9283         * docs/gst/gstreamer-sections.txt:
9284         * docs/gst/tmpl/gstaggregator.sgml:
9285         * docs/gst/tmpl/gstbuffer.sgml:
9286         * docs/gst/tmpl/gstclock.sgml:
9287         * docs/gst/tmpl/gstelement.sgml:
9288         * docs/gst/tmpl/gstfakesink.sgml:
9289         * docs/gst/tmpl/gstfakesrc.sgml:
9290         * docs/gst/tmpl/gstfdsink.sgml:
9291         * docs/gst/tmpl/gstfdsrc.sgml:
9292         * docs/gst/tmpl/gstfilesink.sgml:
9293         * docs/gst/tmpl/gstfilesrc.sgml:
9294         * docs/gst/tmpl/gstidentity.sgml:
9295         * docs/gst/tmpl/gstindex.sgml:
9296         * docs/gst/tmpl/gstinfo.sgml:
9297         * docs/gst/tmpl/gstmd5sink.sgml:
9298         * docs/gst/tmpl/gstmultifilesrc.sgml:
9299         * docs/gst/tmpl/gstpad.sgml:
9300         * docs/gst/tmpl/gstpipefilter.sgml:
9301         * docs/gst/tmpl/gstpipeline.sgml:
9302         * docs/gst/tmpl/gstpluginfeature.sgml:
9303         * docs/gst/tmpl/gstqueue.sgml:
9304         * docs/gst/tmpl/gstregistry.sgml:
9305         * docs/gst/tmpl/gstscheduler.sgml:
9306         * docs/gst/tmpl/gstshaper.sgml:
9307         * docs/gst/tmpl/gstspider.sgml:
9308         * docs/gst/tmpl/gstspideridentity.sgml:
9309         * docs/gst/tmpl/gststatistics.sgml:
9310         * docs/gst/tmpl/gstsystemclock.sgml:
9311         * docs/gst/tmpl/gsttee.sgml:
9312         * docs/gst/tmpl/gstthread.sgml:
9313         * docs/gst/tmpl/gsttypefind.sgml:
9314         * docs/gst/tmpl/gstutils.sgml:
9315           further doc build fixes
9316
9317 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9318
9319         * docs/gst/Makefile.am:
9320           make docs exit on scanning problems
9321           fix nonsrcdir build issues
9322         * docs/gst/gstreamer-sections.txt:
9323           adding stuff from -unused
9324         * gst/gstqueue.h:
9325           create GstQueueSize
9326         * gst/schedulers/cothreads_compat.h:
9327           fix cothread warnings
9328
9329 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9330
9331         * docs/gst/gstreamer-sections.txt:
9332           remove defines deprecated by Benjamin
9333
9334 2004-04-07  Benjamin Otte  <otte@gnome.org>
9335
9336         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9337           when the buffer is complete, don't check if other buffers are needed
9338         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9339           check that the offset is >0 so we don't try to read before the
9340           beginning of the file
9341         * gst/gstpad.c: (gst_pad_set_pad_template):
9342           sink the template, so we don't end up with 130k pad templates
9343
9344 2004-04-06  Benjamin Otte  <otte@gnome.org>
9345
9346         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9347           don't ref the element, adding already reffed it. And we didn't unref
9348           it later anyway... (huge memleak when you used many spider elements)
9349         * gst/gstelement.c: (gst_element_base_class_finalize):
9350         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9351         (gst_element_register):
9352         * gst/gsturi.c: (gst_element_make_from_uri):
9353           use gst_object_(un)ref instead of g_object(un)ref
9354
9355 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9356
9357         * gst/gstbuffer.h:
9358           remove macro that wouldn't work anymore because struct member has
9359           been removed.
9360         * gst/schedulers/entryscheduler.c: (schedule_forward):
9361           fix segfault for unconnected pads
9362         
9363 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9364
9365         reviewed by David Schleef <ds@schleef.org>
9366
9367         * gst/gstinfo.h:
9368           *_FORMAT modifiers should require putting a % in front of them for
9369           consistency reasons.
9370
9371 2004-04-05  Colin Walters  <walters@redhat.com>
9372
9373         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9374         space.
9375
9376 2004-04-05  Benjamin Otte  <otte@gnome.org>
9377
9378         * configure.ac:
9379         * gst/Makefile.am:
9380         * gst/gst_private.h:
9381         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9382           add support for detecting if GStreamer runs inside valgrind.
9383           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9384           print a big message in valgrind that GStreamer has detected it's
9385           running inside and might now use different code.
9386         * gst/gstmemchunk.c: (populate), (free_area),
9387         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9388         (gst_mem_chunk_free):
9389           flag memchunks for valgrind, so it can detect leaking of chunks.
9390           This allows detecting leaks of GstBuffer and GstEvent correctly
9391           inside valgrind.
9392
9393 2004-04-05  David Schleef  <ds@schleef.org>
9394
9395         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9396           jensgr@gmx.net (Jens Granseuer)
9397
9398 2004-04-05  David Schleef  <ds@schleef.org>
9399
9400         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9401         (gst_buffer_default_free), (gst_buffer_default_copy),
9402         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9403         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9404         structures in one place.
9405
9406 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9407
9408         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9409           (GST_TIME_FORMAT, GST_TIME_ARGS)
9410
9411 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9412
9413         * testsuite/elements/Makefile.am:
9414           disable test until it stops breaking make distcheck
9415
9416 2004-04-05  Johan Dahlin  <johan@gnome.org>
9417
9418         * po/sv.po: Updated translation
9419
9420 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9421
9422         * gst/gstplugin.c: (gst_plugin_load_file):
9423           fix segfault for when original plugin was loaded statically
9424
9425 2004-04-05  Benjamin Otte  <otte@gnome.org>
9426
9427         * testsuite/debug/category.c: (main):
9428         * testsuite/debug/commandline.c: (main):
9429         * testsuite/debug/output.c: (main):
9430           fix tests to work again with debugging enabled
9431
9432 2004-04-05  Benjamin Otte  <otte@gnome.org>
9433
9434         * gst/schedulers/gstbasicscheduler.c:
9435         (gst_basic_scheduler_pad_link):
9436           fix to work with recent scheduling changes
9437
9438 2004-04-05  Benjamin Otte  <otte@gnome.org>
9439
9440         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9441         prepareChangeLog doesn't work when cvs indents):
9442           don't throw an error when no element can be scheduled, there's too
9443           many weird reasons why it doesn't work. Return STOPPED instead.
9444           decoupled elemts' schedulability doesn't depend on bufpens.
9445
9446 2004-04-04  Benjamin Otte  <otte@gnome.org>
9447
9448         * gst/schedulers/gstbasicscheduler.c:
9449         (gst_basic_scheduler_pad_select):
9450           fix uninitialized variable warnings
9451
9452 2004-04-04  Benjamin Otte  <otte@gnome.org>
9453
9454         * gst/gstpad.c: (gst_pad_collect_valist):
9455           fix uninitialized variable warning
9456         * gst/schedulers/entryscheduler.c: (schedule_forward):
9457           fix shadowed variable
9458
9459 2004-04-04  Benjamin Otte  <otte@gnome.org>
9460
9461         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9462         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9463         (gst_pad_select):
9464         * gst/gstpad.h:
9465         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9466         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9467         * gst/gstscheduler.h:
9468           implement gst_pad_collect as replacement for gst_pad_select.
9469           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9470           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9471           new pad_select, lock and unlock calls.
9472         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9473         * gst/cothreads.h:
9474         * gst/schedulers/cothreads_compat.h:
9475         * gst/schedulers/gthread-cothreads.h:
9476           remove unused cothread_lock and cothread_unlock calls
9477         * gst/schedulers/entryscheduler.c:
9478         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9479         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9480         (gst_entry_scheduler_pad_select):
9481           update to new API
9482         * gst/schedulers/gstbasicscheduler.c:
9483         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9484         (gst_basic_scheduler_pad_select):
9485           remove useless lock and unlock calls, update pad_select to new API
9486           (untested)
9487         * gst/schedulers/gstoptimalscheduler.c:
9488         (gst_opt_scheduler_class_init):
9489           remove useless select, lock and unlock function calls
9490         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9491           use gst_pad_collect instead of gst_pad_select
9492
9493 2004-04-04  Benjamin Otte  <otte@gnome.org>
9494
9495         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9496         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9497         (schedule_next_element), (print_entry):
9498           add can_schedule_pad to handle element states.
9499           add schedule_forward to select the correct entry to schedule next
9500
9501 2004-04-03  Benjamin Otte  <otte@gnome.org>
9502
9503         * gst/schedulers/entryscheduler.c: 
9504           remove unused variable, fix error inside Rb, fix compile warning in
9505           unreachable code
9506
9507 2004-04-03  Benjamin Otte  <otte@gnome.org>
9508
9509         * gst/schedulers/entryscheduler.c:
9510           completely revamp the inner workings, so it's a lot easier to
9511           understand and extend
9512
9513 2004-04-03  Andy Wingo  <wingo@pobox.com>
9514
9515         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9516         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9517         This allows better introspection of pipeline topology.
9518         (add_to_chain): Don't do trickery to put loop elements first;
9519         rather, queue a chain sort by marking the chain as dirty.
9520         (remove_from_chain): Mark the chain dirty.
9521         (sort_chain): New function. Sorts the group list so that terminal
9522         sinks are first. This means elements on the sink side will be
9523         preferentially sscheduled before elements on the src side of the
9524         pipeline.
9525         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9526         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9527         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9528         (group_inc_link): Change argument and variable names to match the
9529         new link structure member names (src and sink).
9530         (group_dec_link): Add some description
9531
9532 2004-04-03  Benjamin Otte  <otte@gnome.org>
9533
9534         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9535         * gst/gstinfo.h:
9536         * testsuite/debug/category.c: (main):
9537         * testsuite/debug/commandline.c: (main):
9538         * testsuite/debug/output.c: (main):
9539         * testsuite/debug/printf_extension.c: (main):
9540           fix to successfully build and test with --disable-gst-debug
9541           configure switch (fixes #138705)
9542
9543 2004-04-03  Benjamin Otte  <otte@gnome.org>
9544
9545         * docs/pwg/building-boiler.xml:
9546           add cvs login line and s/anonymous/anoncvs/
9547
9548 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
9549
9550         reviewed by Benjamin Otte  <otte@gnome.org>
9551
9552         * gst/gststructure.c: (gst_structure_free):
9553           memleak fix: free fields array (partial fix for #134839)
9554
9555 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9556
9557         * docs/random/ds/0.9-suggested-changes:
9558           Add a note to change handoff use in fakesrc to be usable in
9559           a more generic way (fakesrc should be renamed to appsrc or so).
9560         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9561           Change signal type to scope, so we can fill the buffer in the
9562           handoff handler (that's the whole use of this signal...).
9563
9564 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9565
9566         * docs/pwg/other-ntoone.xml:
9567           Document muxers and n-to-1 elements.
9568
9569 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
9570
9571         * gst/registries/gstxmlregistry.c
9572         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
9573         determine if a file is a G_MODULE. The old one discards paths
9574         containing "so" somewhere in the middle. My home directory is
9575         called "soto". Go figure...
9576
9577 2004-03-31  David Schleef  <ds@schleef.org>
9578
9579         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
9580         to eventually deprecate gst_buffer_merge().  (bug: #136408)
9581         * gst/gstbuffer.h:
9582
9583 2004-03-31  David Schleef  <ds@schleef.org>
9584
9585         * gst/gstvalue.c: (gst_value_union_int_int_range),
9586         (gst_value_union_int_range_int_range), (gst_value_can_union),
9587         (gst_value_union), (_gst_value_initialize):  Add some union
9588         implementations.  We didn't have any previously.
9589         * testsuite/caps/Makefile.am:
9590         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
9591         (gst_audioscale_getcaps), (test_caps), (main): A little test
9592         that is the same as the caps manipulation in audioscale.
9593
9594 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9595
9596         * docs/faq/general.xml:
9597           add entry about "does gst support format X?"
9598
9599 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9600
9601         * gst/gstthread.c:
9602           fix docs
9603         * gst/gstutils.h:
9604           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
9605
9606 2004-03-30  Benjamin Otte  <otte@gnome.org>
9607
9608         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9609           set the offset of the buffer to the requested offset
9610         * gst/elements/gsttypefind.c: (stop_typefinding):
9611           revert patch 1.18 (which I unfortunately don't know the reason for).
9612           This is needed to allow downstream elements to seek. Otherwise
9613           typefind might overwrite a previous seek by downstream elements.
9614           This lead to errors with id3tag and typefind on some mp3s.
9615         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9616         (gst_entry_scheduler_iterate):
9617           be more verbose when debugging
9618
9619 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9620
9621         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9622           make sure we don't get NULL strings
9623
9624 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9625
9626         * gst/gstcaps.c:
9627         * gst/gstelement.c:
9628         * gst/gstelementfactory.c: (gst_element_factory_get_type):
9629         * gst/gstindex.c: (gst_index_resolver_get_type),
9630         (gst_index_get_type), (gst_index_factory_get_type):
9631         * gst/gstinfo.c:
9632         * gst/gstpad.c:
9633         * gst/gstplugin.c:
9634         * gst/gsturi.c: (gst_uri_handler_get_type):
9635         * gst/gstvalue.c:
9636           first batch of documentation fixes
9637
9638 2004-03-29  David Schleef  <ds@schleef.org>
9639
9640         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
9641         * docs/gst/gstreamer-docs.sgml:  More hacking
9642         * docs/gst/gstreamer-sections.txt:
9643         * docs/gst/tmpl/cothreads_compat.sgml:
9644         * docs/gst/tmpl/gstcaps.sgml:
9645         * docs/gst/tmpl/gstclock.sgml:
9646         * docs/gst/tmpl/gstelement.sgml:
9647         * docs/gst/tmpl/gstevent.sgml:
9648         * docs/gst/tmpl/gstpad.sgml:
9649         * docs/gst/tmpl/gstutils.sgml:
9650         * docs/gst/tmpl/gstxml.sgml:
9651         * docs/gst/tmpl/gthread-cothreads.sgml:
9652         * docs/random/ds/0.9-suggested-changes:
9653         * gst/elements/gstfakesink.h: doc fixes
9654         * gst/elements/gstfakesrc.h: doc fixes
9655         * gst/gstcaps.c: doc fixes
9656         * gst/gstcaps.h: doc fixes
9657         * gst/gstelement.c: doc fixes
9658         * gst/gstelement.h: doc fixes
9659         * gst/gstindex.c: doc fixes
9660         * gst/gstinfo.c: doc fixes
9661         * gst/gstpad.c: doc fixes
9662         * gst/gstpad.h: doc fixes
9663         * gst/gstplugin.c: doc fixes
9664         * gst/gsttypefind.h: doc fixes
9665         * gst/gsturi.c: doc fixes
9666         * gst/gstvalue.c: doc fixes
9667
9668 2004-03-29  Colin Walters  <walters@redhat.com>
9669
9670         * gst/registries/gstxmlregistry.c (get_time)
9671         (plugin_times_older_than_recurse):
9672         Use the result of stat to determine whether a path is a file,
9673         so we don't attempt to opendir() files.
9674
9675 2004-03-29  Benjamin Otte  <otte@gnome.org>
9676
9677         * gst/gstpad.c: (gst_pad_set_explicit_caps):
9678           print caps in debugging output when setting caps failed
9679         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9680         (schedule_next_element), (get_buffer), (run_chainhandler),
9681         (element_may_start), (gst_entry_scheduler_chain_handler),
9682         (gst_entry_scheduler_get_handler),
9683         (gst_entry_scheduler_state_transition),
9684         (gst_entry_scheduler_pad_link):
9685           make this scheduler a testcase for mandatory
9686           discont-before-first-buffer which is needed if we want to allow apps
9687           to release the sound device.
9688           add SCHED_ASSERT macro to print scheduler state before an assertion
9689           triggers.
9690
9691 2004-03-29  Benjamin Otte  <otte@gnome.org>
9692
9693         * COPYING:
9694           replace by LGPL (former COPYING.LIB). The core is completely
9695           licensed LGPL.
9696         * COPYING.LIB:
9697           remove
9698
9699 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9700
9701         * po/af.po:
9702         * po/sv.po:
9703           updated Afrikaans and Swedish
9704
9705 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9706
9707         * po/LINGUAS:
9708         * po/az.po:
9709           adding Azerbaijani (Mətin Əmirov)
9710
9711 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
9712
9713         * gst/gstelement.h: 
9714         * gst/gstelement.c (gst_element_set_time_delay): New function for
9715         setting element time taking into account a hardware buffering
9716         delay.
9717         (gst_element_set_time): Now just an invocation of
9718         gst_element_set_time_delay.
9719         * gst/gstclock.h: 
9720         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
9721         allowing to set event times in the future.
9722         (gst_clock_get_event_time): Now just an invocation of
9723         gst_clock_get_event_time_delay.
9724
9725 2004-03-28  Benjamin Otte  <otte@gnome.org>
9726
9727         * gst/gstbin.c: (gst_bin_set_element_sched),
9728         (gst_bin_unset_element_sched):
9729           don't add decoupled elements to schedulers - otherwise it's
9730           impossible to control if a link to a decoupled element was already
9731           removed from a scheduler or not.
9732         * gst/schedulers/cothreads_compat.h:
9733         * gst/schedulers/gthread-cothreads.h:
9734           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
9735           is no "unused" warning.
9736         * gst/schedulers/Makefile.am:
9737         * gst/schedulers/entryscheduler.c:
9738           add new scheduler, based on ideas from talking to David and Martin.
9739           It's supposed to be small and correct. Currently it's also slow (but
9740           it's not noticable)
9741         * examples/retag/retag.c: (main):
9742         * testsuite/bytestream/test1.c: (main):
9743           fix missing NULLs at end of variadic functions
9744         * testsuite/elements/.cvsignore:
9745           update
9746
9747 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
9748
9749         * gst/gstevent.h:
9750         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
9751
9752 2004-03-25  David Schleef  <ds@schleef.org>
9753
9754         * docs/gst/gstreamer-sections.txt:  More doc hacking.
9755         * docs/gst/tmpl/gstaggregator.sgml:
9756         * docs/gst/tmpl/gstautoplugfactory.sgml:
9757         * docs/gst/tmpl/gstbin.sgml:
9758         * docs/gst/tmpl/gstbuffer.sgml:
9759         * docs/gst/tmpl/gstbufferstore.sgml:
9760         * docs/gst/tmpl/gstfakesink.sgml:
9761         * docs/gst/tmpl/gstfakesrc.sgml:
9762         * docs/gst/tmpl/gstmd5sink.sgml:
9763         * docs/gst/tmpl/gstreamer-unused.sgml:
9764         * docs/gst/tmpl/gstsearchfuncs.sgml:
9765         * docs/gst/tmpl/gstshaper.sgml:
9766         * docs/gst/tmpl/gstspider.sgml:
9767         * docs/gst/tmpl/gsttee.sgml:
9768         * docs/gst/tmpl/gstutils.sgml:
9769         * docs/gst/tmpl/gstvalue.sgml:
9770         * docs/gst/tmpl/gstxml.sgml:
9771         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
9772         and we don't support it.
9773         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
9774         (gst_use_threads), (gst_has_threads): same
9775         * gst/gstthreaddummy.c: same
9776         * gst/autoplug/gstspider.c: Make gst_spider_details static.
9777         * gst/autoplug/gstspider.h: same
9778         * gst/elements/gstaggregator.h: Remove bogus function from header
9779         * gst/elements/gstfakesink.h: same
9780         * gst/elements/gstfakesrc.h: same
9781         * gst/elements/gstmd5sink.h: same
9782         * gst/elements/gstshaper.h: same
9783         * gst/elements/gsttee.h: same
9784         * gst/gstbin.c: doc fixes
9785         * gst/gstbin.h: Remove unused definition.
9786         * gst/gstbuffer.c: doc fixes
9787         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
9788         * gst/gstfilter.c: doc fixes
9789         * gst/gsttag.c: doc fixes
9790         * gst/gstvalue.c: doc fixes
9791
9792 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9793
9794         * docs/pwg/advanced-types.xml:
9795           Document typefinding.
9796         * docs/pwg/other-oneton.xml:
9797           Document one-to-n elements, demuxers and parsers.
9798
9799 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
9800
9801         reviewed by: David Schleef  <ds@schleef.org>
9802
9803         * configure.ac: Check bison version (bug #127838)
9804
9805 2004-03-25  David Schleef  <ds@schleef.org>
9806
9807         * docs/gst/gstreamer-docs.sgml: More fine tuning.
9808         * docs/gst/gstreamer-sections.txt:
9809         * docs/gst/tmpl/gstautoplug.sgml:
9810         * docs/gst/tmpl/gststaticautoplug.sgml:
9811         * docs/gst/tmpl/gststaticautoplugrender.sgml:
9812         * docs/gst/tmpl/gstutils.sgml:
9813         * docs/gst/tmpl/gstxml.sgml:
9814
9815 2004-03-24  David Schleef  <ds@schleef.org>
9816
9817         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
9818         manual being such complete crap, that I decided to do major
9819         hacking of it.  This checkin replaces any fine tuning that
9820         may have been done previously, with the benefit of actually
9821         being complete for much of the API that was changed since
9822         0.6.  Further fine tuning will occur shortly.  (bug #134721)
9823         * docs/gst/gstreamer-sections.txt:
9824         * docs/gst/tmpl/GstBin.sgml:
9825         * docs/gst/tmpl/GstBuffer.sgml:
9826         * docs/gst/tmpl/GstCaps.sgml:
9827         * docs/gst/tmpl/GstClock.sgml:
9828         * docs/gst/tmpl/GstCompat.sgml:
9829         * docs/gst/tmpl/GstData.sgml:
9830         * docs/gst/tmpl/GstElement.sgml:
9831         * docs/gst/tmpl/GstEvent.sgml:
9832         * docs/gst/tmpl/GstIndex.sgml:
9833         * docs/gst/tmpl/GstStructure.sgml:
9834         * docs/gst/tmpl/GstTag.sgml:
9835         * docs/gst/tmpl/cothreads.sgml:
9836         * docs/gst/tmpl/cothreads_compat.sgml:
9837         * docs/gst/tmpl/gettext.sgml:
9838         * docs/gst/tmpl/grammar.tab.sgml:
9839         * docs/gst/tmpl/gst-i18n-app.sgml:
9840         * docs/gst/tmpl/gst-i18n-lib.sgml:
9841         * docs/gst/tmpl/gst.sgml:
9842         * docs/gst/tmpl/gst_private.sgml:
9843         * docs/gst/tmpl/gstaggregator.sgml:
9844         * docs/gst/tmpl/gstarch.sgml:
9845         * docs/gst/tmpl/gstatomic.sgml:
9846         * docs/gst/tmpl/gstatomic_impl.sgml:
9847         * docs/gst/tmpl/gstbin.sgml:
9848         * docs/gst/tmpl/gstbuffer.sgml:
9849         * docs/gst/tmpl/gstbufferstore.sgml:
9850         * docs/gst/tmpl/gstcaps.sgml:
9851         * docs/gst/tmpl/gstclock.sgml:
9852         * docs/gst/tmpl/gstcompat.sgml:
9853         * docs/gst/tmpl/gstconfig.sgml:
9854         * docs/gst/tmpl/gstcpu.sgml:
9855         * docs/gst/tmpl/gstdata.sgml:
9856         * docs/gst/tmpl/gstdata_private.sgml:
9857         * docs/gst/tmpl/gstelement.sgml:
9858         * docs/gst/tmpl/gstenumtypes.sgml:
9859         * docs/gst/tmpl/gsterror.sgml:
9860         * docs/gst/tmpl/gstevent.sgml:
9861         * docs/gst/tmpl/gstfakesink.sgml:
9862         * docs/gst/tmpl/gstfakesrc.sgml:
9863         * docs/gst/tmpl/gstfilesink.sgml:
9864         * docs/gst/tmpl/gstfilter.sgml:
9865         * docs/gst/tmpl/gstindex.sgml:
9866         * docs/gst/tmpl/gstinfo.sgml:
9867         * docs/gst/tmpl/gstinterface.sgml:
9868         * docs/gst/tmpl/gstlog.sgml:
9869         * docs/gst/tmpl/gstmacros.sgml:
9870         * docs/gst/tmpl/gstmarshal.sgml:
9871         * docs/gst/tmpl/gstmd5sink.sgml:
9872         * docs/gst/tmpl/gstmultifilesrc.sgml:
9873         * docs/gst/tmpl/gstobject.sgml:
9874         * docs/gst/tmpl/gstpad.sgml:
9875         * docs/gst/tmpl/gstparse.sgml:
9876         * docs/gst/tmpl/gstpipeline.sgml:
9877         * docs/gst/tmpl/gstplugin.sgml:
9878         * docs/gst/tmpl/gstpluginfeature.sgml:
9879         * docs/gst/tmpl/gstqueue.sgml:
9880         * docs/gst/tmpl/gstreamer-unused.sgml:
9881         * docs/gst/tmpl/gstregistry.sgml:
9882         * docs/gst/tmpl/gstregistrypool.sgml:
9883         * docs/gst/tmpl/gstscheduler.sgml:
9884         * docs/gst/tmpl/gstsearchfuncs.sgml:
9885         * docs/gst/tmpl/gstshaper.sgml:
9886         * docs/gst/tmpl/gstspider.sgml:
9887         * docs/gst/tmpl/gstspideridentity.sgml:
9888         * docs/gst/tmpl/gststructure.sgml:
9889         * docs/gst/tmpl/gstsystemclock.sgml:
9890         * docs/gst/tmpl/gsttag.sgml:
9891         * docs/gst/tmpl/gsttaginterface.sgml:
9892         * docs/gst/tmpl/gsttee.sgml:
9893         * docs/gst/tmpl/gstthread.sgml:
9894         * docs/gst/tmpl/gsttrace.sgml:
9895         * docs/gst/tmpl/gsttrashstack.sgml:
9896         * docs/gst/tmpl/gsttypefind.sgml:
9897         * docs/gst/tmpl/gsttypes.sgml:
9898         * docs/gst/tmpl/gsturi.sgml:
9899         * docs/gst/tmpl/gsturitype.sgml:
9900         * docs/gst/tmpl/gstutils.sgml:
9901         * docs/gst/tmpl/gstvalue.sgml:
9902         * docs/gst/tmpl/gstversion.sgml:
9903         * docs/gst/tmpl/gstxml.sgml:
9904         * docs/gst/tmpl/gstxmlregistry.sgml:
9905         * docs/gst/tmpl/gthread-cothreads.sgml:
9906         * docs/gst/tmpl/types.sgml:
9907
9908 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9909
9910         * docs/pwg/other-sink.xml:
9911         * docs/pwg/other-source.xml:
9912           Documentation on how to write source and sink elements. Other
9913           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
9914           manager, autoplugger) are all still pending.
9915
9916 2004-03-25  Benjamin Otte  <otte@gnome.org>
9917
9918         * testsuite/elements/Makefile.am:
9919         * testsuite/elements/gst-compprep-check:
9920           add check to make sure gst-compprep works
9921         * testsuite/elements/gst-inspect-check.in:
9922           improve initialization output
9923         * testsuite/Makefile.am:
9924         * testsuite/gst-inspect-check:
9925           remove old file
9926
9927 2004-03-24  David Schleef  <ds@schleef.org>
9928
9929         * testsuite/elements/Makefile.am:
9930         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
9931         to the testsuite.
9932
9933 2004-03-24  Benjamin Otte  <otte@gnome.org>
9934
9935         * libs/gst/control/dparam.c: (gst_dparam_attach),
9936         (gst_dparam_detach):
9937         * libs/gst/control/dparammanager.c: (gst_dpman_init):
9938           fix lvalue casts for real
9939
9940 2004-03-24  Benjamin Otte  <otte@gnome.org>
9941
9942         * gst/schedulers/gstbasicscheduler.c:
9943         (gst_basic_scheduler_src_wrapper):
9944         * gst/schedulers/gstoptimalscheduler.c:
9945         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
9946         (pad_clear_queued), (gst_opt_scheduler_add_element),
9947         (gst_opt_scheduler_remove_element):
9948           fix GStreamer to not have issues with lvalue casts anymore (fixes
9949           #136841)
9950
9951 2004-03-24  Benjamin Otte  <otte@gnome.org>
9952
9953         * gst/gstelement.c:
9954           add documentation about a gobject quirk where the object hasn't the
9955           correct class pointer set on initialization
9956         * gst/schedulers/gstbasicscheduler.c:
9957         (gst_basic_scheduler_src_wrapper):
9958           make sure to not run into an infinite loop
9959
9960 2004-03-22  Benjamin Otte  <otte@gnome.org>
9961
9962         * gst/gstutils.c: (gst_util_dump_mem):
9963         * gst/gstutils.h:
9964           first argument of gst_util_dump_mem should be const
9965
9966 2004-03-22  Johan Dahlin  <johan@gnome.org>
9967
9968         * gst/gstvalue.h: Clean up a little bit.
9969
9970 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
9971
9972         reviewed by Benjamin Otte  <otte@gnome.org>
9973
9974         * gst/autoplug/gstspider.c: (gst_spider_dispose):
9975         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
9976         (gst_aggregator_class_init), (gst_aggregator_init):
9977         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9978         (gst_filesrc_dispose), (gst_filesrc_set_location):
9979         * gst/elements/gstidentity.c: (gst_identity_finalize),
9980         (gst_identity_class_init), (gst_identity_chain):
9981         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9982         * gst/elements/gststatistics.c: (gst_statistics_finalize),
9983         (gst_statistics_class_init):
9984         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
9985         (gst_tee_get_property):
9986           clean up used memory in this elements correctly on teardown (closes
9987           #137279)
9988
9989 2004-03-20  Colin Walters  <walters@redhat.com>
9990
9991         * gst/registries/gstxmlregistry.c:
9992         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
9993         registry saving atomic.
9994
9995 2004-03-20  Colin Walters  <walters@redhat.com>
9996
9997         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
9998         Just use
9999         access() instead of actually creating and deleting files.
10000
10001 2004-03-18  David Schleef  <ds@schleef.org>
10002
10003         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10004         (bug #137625)
10005
10006 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10007
10008         * po/sv.po: updated translation (Christian Rose)
10009
10010 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10011
10012         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10013         (gst_filesink_get_query_types), (_do_init),
10014         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10015           return FALSE silently
10016         * po/af.po: updated translation (Petri Jooste)
10017
10018 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10019
10020         * Makefile.am:
10021         * configure.ac:
10022           dist common properly
10023         * po/af.po:
10024         * po/fr.po:
10025         * po/nl.po:
10026         * po/sr.po:
10027         * po/sv.po:
10028           refreshing translations
10029
10030 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10031
10032         * po/LINGUAS:
10033         * po/sv.po:
10034         * po/af.po:
10035           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10036
10037 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10038
10039         * Makefile.am: use common/release.mak
10040
10041 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10042
10043         * docs/faq/gst-uninstalled:
10044           adding gst-monkeysaudio to the list of possible plugin dirs
10045
10046 2004-03-16  David Schleef  <ds@schleef.org>
10047
10048         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10049         (gst_init_check_with_popt_table):  Fix some gettext strings to
10050         make them easier to translate.  Required making the strings
10051         non-const.
10052
10053 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10054
10055         * configure.ac: bump nano to 1
10056
10057 === release 0.8.0 ===
10058
10059 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10060
10061         * configure.ac: release 0.8.0, "Executive Slacks"
10062
10063 2004-03-16  Johan Dahlin  <johan@gnome.org>
10064
10065         * gst/schedulers/gstoptimalscheduler.c
10066         (gst_opt_scheduler_pad_unlink): Remove double ;,
10067         spotted by Scott Wheeler
10068
10069 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10070
10071         * configure.ac: bump libtool version
10072
10073 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10074
10075         * gst/gstcaps.h:
10076         * gst/gststructure.h:
10077           add reserved padding
10078
10079 2004-03-15  Benjamin Otte  <otte@gnome.org>
10080
10081         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10082           set the first parameter for select call correctly.
10083           (fixes #137230)
10084
10085 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10086
10087         * *.c,*.h: don't mix tabs and spaces
10088
10089 2004-03-15  Johan Dahlin  <johan@gnome.org>
10090
10091         * gst/schedulers/gstoptimalscheduler.c
10092         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10093         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10094
10095         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10096         
10097 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10098
10099         * testsuite/Rules:
10100           fix gst-register rules
10101
10102 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10103
10104         * testsuite/Rules:
10105           use versioned gst-register
10106
10107 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10108
10109         * docs/libs/gstreamer-libs-sections.txt:
10110           remove </SUBSECTION>
10111         * gst/gstplugin.c:
10112         * gst/gstregistry.c: (gst_registry_add_plugin):
10113         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10114         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10115           add debugging and fix some comment blocks
10116
10117 2004-03-15  Johan Dahlin  <johan@gnome.org>
10118
10119         * *.h: Revert indent changes.
10120         
10121 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10122
10123         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10124           g_error_free the g_error
10125         * tools/gst-feedback-m.m:
10126           check for other versions of gstreamer
10127         * tools/gst-indent:
10128           use sh, not bash
10129
10130 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10131
10132         * tools/gst-register.c: do not spill paths when registries are not
10133           writable, until we fix the "user running gst-register" case.
10134
10135 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10136
10137         * *.c, *.h: commit of gst-indent run on core
10138
10139 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10140
10141         * tools/gst-indent:
10142         * tools/Makefile.am:
10143           add our indentation style as a script
10144
10145 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10146
10147         * po/sr.po:
10148         * po/LINGUAS:
10149           added Serbian translation
10150
10151 2004-03-13  Benjamin Otte  <otte@gnome.org>
10152
10153         * gst/gstelement.c:
10154           add documentation note about gst_element_found_tags_for_pad not
10155           being usable in getfunctions. (see #137042)
10156
10157 2004-03-12  David Schleef  <ds@schleef.org>
10158
10159         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10160         change API right now!  Readd gst_caps_is_simple() macro.
10161         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10162         uninitialized variable.  I'd bet this caused crashes.
10163         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10164
10165 2004-03-12  Johan Dahlin  <johan@gnome.org>
10166
10167         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10168         * gst/gstcaps.h: Clean up
10169
10170         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10171         _gst_caps_initalize()
10172
10173         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10174         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10175
10176         * gst/gststructure.c (gst_structure_get_type): Ditto
10177
10178         * gst/gststructure.h: Ditto
10179         
10180 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10181
10182         * gst/gstqueue.c: (gst_queue_init):
10183           Reset default max. values in queues. Reason is simply to avoid
10184           braindead use. If you want wider values, use the properties. The
10185           default is supposed to always work. Wider values would make this
10186           beast a memory hog by default (250 full-PAL RGB32 video frames?
10187           That's 440 MB! No thank you).
10188
10189 2004-03-10  David Schleef  <ds@schleef.org>
10190
10191         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10192         were found.  (bug #136793)
10193
10194 2004-03-10  Johan Dahlin  <johan@gnome.org>
10195
10196         * gst/schedulers/gstoptimalscheduler.c
10197         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10198         links to elements within the same group, so we can finally remove
10199         that annoying warning. Refactor the code a little bit
10200         (group_dec_links_for_element): Split out
10201
10202 2004-03-09  David Schleef  <ds@schleef.org>
10203
10204         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10205         (bug #134863)
10206
10207 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10208
10209         * configure.ac: first bug fix due to major/minor bump
10210
10211 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10212
10213         * configure.ac: bump nano to 1
10214
10215 === release 0.7.6 ===
10216
10217 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10218
10219         * NEWS:
10220         * RELEASE:
10221         * configure.ac:
10222           releasing 0.7.6, "Almost"
10223         * po/fr.po:
10224         * po/nl.po:
10225         * tools/Makefile.am:
10226         * tools/gst-feedback-m.m:
10227           unversioned source
10228
10229 2004-03-09  Johan Dahlin  <johan@gnome.org>
10230
10231         Reviewed by: Thomas Vander Stichele
10232
10233         * gst/gstelement.c (gst_element_class_init): register second
10234         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10235         language bindings can (de)marshall correctly.
10236
10237         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10238
10239         * gst/gsterror.c (gst_g_error_get_type): New function
10240
10241         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10242         with VOID:OBJECT,OBJECT,STRING 
10243
10244 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10245
10246         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10247         Free a leaked g_timer on early returns.
10248
10249 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10250
10251         * docs/pwg/advanced-types.xml:
10252           Add cinepak description.
10253
10254 2004-03-07  David Schleef  <ds@schleef.org>
10255
10256         * docs/random/mimetypes:  Added cinepak description
10257
10258 2004-03-07  Andy Wingo  <wingo@pobox.com>
10259
10260         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10261
10262         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10263         there are no links to other groups when a group is destroyed.
10264         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10265         removed from a group, make sure the link count to elements linked
10266         to other pads is appropriately decremented. This really fixes
10267         #135672.
10268
10269         The 1.60->1.61 patch has been reapplied in light of this fix.
10270
10271         * gst/gstelement.c (gst_element_dispose): Really protect against
10272         multiple invocations this time.
10273
10274 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10275
10276         * docs/gst/gstreamer-sections.txt:
10277         * docs/gst/tmpl/gsttag.sgml:
10278           remove some deprecated functions, document some existing ones
10279         * gst/gsttag.c: (gst_tag_get_flag):
10280         * gst/gsttag.h:
10281           add accessor function
10282
10283 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10284
10285         * docs/gst/gstreamer-sections.txt:
10286         * docs/gst/tmpl/gsttag.sgml:
10287         * docs/gst/tmpl/gstxml.sgml:
10288         * gst/gsttag.c: (gst_tag_get_flag):
10289         * gst/gsttag.h:
10290
10291 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10292
10293         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10294         leak
10295
10296 2004-03-05  David Schleef  <ds@schleef.org>
10297
10298         * REQUIREMENTS: Add bison and flex.
10299         * configure.ac: Fix comment about bison.
10300         * docs/random/ds/0.9-suggested-changes: yer ma
10301         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10302
10303 2004-03-05  Benjamin Otte  <otte@gnome.org>
10304
10305         * gst/gstelement.c: (gst_element_error_full):
10306           revert recent recursive state changing commit - messing with other
10307           elements' states is evil and should be done by apps only.
10308
10309 2004-03-05  Benjamin Otte  <otte@gnome.org>
10310
10311         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10312           check for empty intersection instead of NULL caps
10313         (gst_element_get_compatible_pad_filtered):
10314           remove old workaround that is only a bug nowadays
10315
10316 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10317
10318         * gst/gstelement.c: (gst_element_error_full):
10319           make elements try to recursively change state to PAUSED on all
10320           parents after an error to suppress ensuing warnings
10321         * gst/parse/grammar.y:
10322           make it check if it was able to sync the state, and throw an error
10323           if not, so stuff like
10324           oggdemux ! vorbisdec ! osssink gets caught
10325
10326 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10327
10328         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10329           it contains lib64; use AS_AC_EXPAND to handle it properly
10330
10331 2004-03-05  David Schleef  <ds@schleef.org>
10332
10333         * gst/gstcpuid_i386.s:  Remove unused code
10334         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10335         (gst_getbits_newbuf): Remove MMX code
10336         * libs/gst/getbits/getbits.h: Remove MMX code
10337
10338 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10339
10340         * debian/.cvsignore:
10341         * debian/README.Debian:
10342         * debian/changelog:
10343         * debian/control:
10344         * debian/control.in:
10345         * debian/copyright:
10346         * debian/gstreamer-core-libs-dev.files:
10347         * debian/gstreamer-core-libs.files:
10348         * debian/gstreamer-core.files:
10349         * debian/gstreamer-core.postinst:
10350         * debian/gstreamer-core.postrm:
10351         * debian/gstreamer-doc.files:
10352         * debian/gstreamer-doc.links:
10353         * debian/gstreamer-doc.lintian:
10354         * debian/gstreamer-runtime.files:
10355         * debian/gstreamer-runtime.manpages:
10356         * debian/gstreamer-runtime.postinst:
10357         * debian/gstreamer-runtime.postrm:
10358         * debian/gstreamer-tools.files:
10359         * debian/gstreamer-tools.manpages:
10360         * debian/libgstreamer-dev.files:
10361         * debian/libgstreamer0.4.1.files:
10362         * debian/libgstreamerVERSION.files:
10363         * debian/rules:
10364         Debian package info not maintained here.
10365
10366 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10367
10368         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10369         * gst/gstbin.c: (gst_bin_class_init):
10370         * gst/gstelement.c: (gst_element_class_init):
10371         * gst/gstindex.c: (gst_index_class_init):
10372         * gst/gstobject.c: (gst_object_class_init),
10373         (gst_signal_object_class_init):
10374         * gst/gstpad.c: (gst_pad_template_class_init):
10375         * gst/gstregistry.c: (gst_registry_class_init):
10376         * gst/gsturi.c: (gst_uri_handler_base_init):
10377         * gst/gstxml.c: (gst_xml_class_init):
10378         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10379         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10380           make all signal names use dashes instead of underscore
10381
10382 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10383
10384         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10385
10386 2004-03-03  Benjamin Otte  <otte@gnome.org>
10387
10388         * gst/schedulers/gstoptimalscheduler.c:
10389           revert last commit by Andy Wingo. It causes segfaults on unreffing
10390           in Rhythmbox. (see bug #135672)
10391
10392 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10393
10394         * po/fr.po: fix typo
10395
10396 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10397
10398         * tools/gst-inspect.c: (main): 
10399         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10400
10401 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10402
10403         * configure.ac:
10404           get GLIB_ONLY and POPT flags for the nonversioned binaries
10405         * tools/Makefile.am:
10406           use them
10407
10408 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10409
10410         * gst/gst.c: (init_post):
10411           change so that GST_REGISTRY now is where the global registry gets
10412           saved, since that is where plugins now get attached to first, and
10413           spilled over to the user registry.  Note that in the case of using
10414           GST_REGISTRY env var, we don't want to affect any real registries
10415           beyond the one given by this var, and thus we don't set a user
10416           registry to spill to.  So make sure GST_REGISTRY is writable.
10417
10418 2004-03-01  David Schleef  <ds@schleef.org>
10419
10420         * AUTHORS:  Added some names.  Add yourself if you're missing.
10421
10422 2004-03-01  David Schleef  <ds@schleef.org>
10423
10424         * MAINTAINERS: Add
10425
10426 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10427
10428         * configure.ac:
10429           remove whitespace
10430         * docs/gst/tmpl/gstbuffer.sgml:
10431         * docs/gst/tmpl/gstdata.sgml:
10432         * docs/gst/tmpl/gstreamer-unused.sgml:
10433         * docs/gst/tmpl/gstxml.sgml:
10434           doc update
10435         * docs/manuals.mak:
10436           add a FIXME
10437         * docs/pwg/intro-preface.xml:
10438         * docs/pwg/pwg.xml:
10439           remove GNOME
10440         * gst/gst.c: (init_post):
10441           try GST_PLUGIN_PATH paths for the _global_registry first
10442         * gst/gstelement.h:
10443           add the error message as well, otherwise (null) debug info doesn't
10444           make much sense
10445         * tools/gst-register.c: (main):
10446           spill paths to next registry if this registry is not writable
10447         * po/fr.po:
10448         * po/nl.po:
10449           translation updates
10450
10451 2004-03-01  Johan Dahlin  <johan@gnome.org>
10452
10453         * gst/gstbuffer.c (_gst_buffer_initialize): 
10454         * gst/gstdata.c (gst_data_get_type): 
10455         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10456         instead of ref, since some applications that uses GBoxed
10457         routines depends on a function that actually returns a copy.
10458
10459 2004-02-27  Benjamin Otte  <otte@gnome.org>
10460
10461         * gst/gstbuffer.h:
10462           remove gst_buffer_free, use gst_data_unref
10463         * gst/gstdata.c: (gst_data_get_type):
10464           use refcounting in GstData GBoxed registration
10465         * gst/gstdata.h:
10466           remove gst_data_free, use gst_data_unref
10467
10468 2004-02-27  Johan Dahlin  <johan@gnome.org>
10469
10470         * gst/gstdata.c (gst_data_get_type): New function, register
10471         GstData as a GBoxed type.
10472
10473         * gst/gstdata.h (GST_TYPE_DATA): New macro
10474
10475 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10476
10477         * Makefile.am:
10478         * gstreamer.spec.in:
10479           put back RELEASE
10480         * gst/Makefile.am:
10481           clean up non-disting of built files
10482         * testsuite/debug/commandline.c:
10483           test fix for option rename
10484
10485 2004-02-26  David Schleef  <ds@schleef.org>
10486
10487         * configure.ac:  We don't really need glib-2.3.  Also remove
10488         some unneeded checks for library functions.
10489         * gst/Makefile.am:  Instead, we need to not dist files created
10490         by glib-genmarshal.
10491
10492 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10493
10494         * configure.ac:
10495           bump glib required version to 2.3.0 for g_value_takes_boxed
10496
10497  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10498
10499         * common/m4/gst-docs.m4
10500         change flavour text from enable to disable as enable is our default
10501         closes bug Bug 135304
10502
10503 === release 0.7.5 ===
10504  
10505  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10506  
10507         * NEWS:
10508           instate NEWS file
10509         * Makefile.am:
10510         * gstreamer.spec.in:
10511         * RELEASE:
10512           put back release
10513         * configure.ac:
10514         * docs/random/release:
10515           more updates
10516
10517 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10518
10519         * gst/gsttag.c: (_gst_tag_initialize):
10520         * po/fr.po:
10521         * po/nl.po:
10522           remove hyphen from codec tags
10523
10524 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10525
10526         * gst/parse/Makefile.am:
10527           fix dependency so that a make from a clean build works the first
10528           time
10529
10530 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10531
10532         * docs/random/release:
10533           update release strategy
10534         * po/fr.po:
10535           auto-update po file
10536         * po/nl.po:
10537           update dutch translation
10538
10539 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10540
10541         * docs/manual/debugging.xml:
10542         fix manual for new debugging system
10543
10544 2004-02-25  Andy Wingo  <wingo@pobox.com>
10545
10546         * gst/gstpad.c (gst_pad_link_prepare): Re-add
10547         gst_pad_link_prepare. Please email the list with specific reasons
10548         for reverting.
10549
10550 2004-02-24  Andy Wingo  <wingo@pobox.com>
10551
10552         * gst/gstelement.c (gst_element_dispose): Protect against multiple
10553         invocations.
10554
10555         * gst/schedulers/gstoptimalscheduler.c:
10556         I added a mess of prototypes at the top of the file by way of
10557         documentation. Some of the operations on chains and groups were
10558         re-organized.
10559
10560         (create_group): Added a type argument so if the group is enabled,
10561         the setup_group_scheduler knows what to do.
10562         (group_elements): Added a type argument here, too, to be passed on
10563         to create_group.
10564         (group_element_set_enabled): If an unlinked PLAYING element is
10565         added to a bin, we have to create a new group to hold the element,
10566         and this function will be called before the group is added to the
10567         chain. Thus we have a valid case for group->chain==NULL. Instead
10568         of calling chain_group_set_enabled, just set the flag on the group
10569         (the chain's status will be set when the group is added to it).
10570         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
10571         Setup the group scheduler when the group is enabled, not
10572         specifically when an element goes PAUSED->PLAYING. This means
10573         PLAYING elements can be added, linked, and scheduled into a
10574         PLAYING pipeline, as was intended.
10575         (add_to_group): Don't ref the group twice. I don't know when this
10576         double-ref got in here. Removing it has the potential to cause
10577         segfaults if other parts of the scheduler are buggy. If you find
10578         that the scheduler is segfaulting for you, put in an extra ref
10579         here and see if that hacks over the underlying issue. Of course,
10580         then find out what code is unreffing a group it doesn't own...
10581         (create_group): Make the extra refcount floating, and remove it
10582         after adding the element. This means that...
10583         (unref_group): Destroy when the refcount reaches 0, not 1, like
10584         every other refcounted object in the known universe.
10585         (remove_from_group): When a group becomes empty, set it to be not
10586         active, and remove it from its chain. Don't unref it again,
10587         there's no floating reference any more.
10588         (destroy_group): We have to remove the group from the chain in
10589         remove_from_group (rather than here) to break refcounting cycles
10590         (the chain always has a ref on the group). So assert that
10591         group->chain==NULL.
10592         (ref_group_by_count): Removed, it was commented out anyway.
10593         (merge_chains): Use the remove_from_chain and add_to_chain
10594         primitives to do the reparenting, instead of rolling our own
10595         implementation.
10596         (add_to_chain): The first non-disabled group in the chain's group
10597         list will be the entry point for the chain. Because buffers can
10598         accumulate in loop elements' peer bufpens, we preferentially
10599         schedule loop groups before get groups to avoid unnecessary
10600         execution of get-based groups when the bufpens are already full.
10601         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
10602         (get_group_schedule_function): Ditto.
10603         (loop_group_schedule_function): Ditto.
10604         (gst_opt_scheduler_loop_wrapper): Ditto.
10605         (gst_opt_scheduler_iterate): Ditto.
10606
10607         I understand the opt scheduler now, yippee!
10608
10609         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
10610         (gst_pad_get_name, gst_pad_set_chain_function) 
10611         (gst_pad_set_get_function, gst_pad_set_event_function) 
10612         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
10613         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
10614         (gst_pad_set_query_function, gst_pad_get_query_types) 
10615         (gst_pad_get_query_types_default) 
10616         (gst_pad_set_internal_link_function) 
10617         (gst_pad_set_formats_function, gst_pad_set_link_function) 
10618         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
10619         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
10620         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
10621         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
10622         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
10623         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
10624         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
10625         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
10626         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
10627         (gst_pad_event_default_dispatch, gst_pad_event_default) 
10628         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
10629         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
10630         (gst_pad_get_formats_default, gst_pad_get_formats): Better
10631         argument checks, and some doc fixes.
10632
10633         (gst_pad_custom_new_from_template): Um, does anyone
10634         use these functions? Actually make a custom pad instead of a
10635         normal one.
10636         (gst_pad_try_set_caps): Transpose some checks.
10637         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
10638         the pad is in negotiation.
10639         (gst_pad_try_relink_filtered): Use pad_link_prepare.
10640         
10641         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
10642
10643         * gst/gstelement.h: 
10644         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
10645         on the list.
10646
10647 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10648
10649         * gst/gstbin.c: (gst_bin_add):
10650           add error for not being able to add elements
10651
10652 2004-02-22  Julien MOUTTE <julien@moutte.net>
10653
10654         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
10655         audio-codec and video-codec.
10656
10657 2004-02-22  Benjamin Otte  <otte@gnome.org>
10658
10659         reported by: Padraig O'Briain <padraig.obriain@sun.com>
10660
10661         * autogen.sh:
10662           replace test -e with test -x for mkinstalldirs to be more portable.
10663           (fixes #134816)
10664
10665 2004-02-22  Benjamin Otte  <otte@gnome.org>
10666
10667         * gst/gstpad.c:
10668           revert last patch from Andy, it makes gst_pad_can_link_filtered much
10669           too noisy
10670         * gst/gsttag.c: (_gst_tag_initialize):
10671         * gst/gsttag.h:
10672           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
10673         * libs/gst/control/dparam.c: (gst_dparam_attach):
10674         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
10675           check that types for attached dparams match
10676
10677 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10678
10679         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10680         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10681         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10682           fix errors
10683
10684 2004-02-20  Andy Wingo  <wingo@pobox.com>
10685
10686         * gst/gstbin.c:
10687         * gst/gstbuffer.c:
10688         * gst/gstplugin.c:
10689         * gst/registries/gstxmlregistry.c: 
10690         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
10691
10692         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
10693         (gst_element_add_pad): DEBUG->INFO, some fixes.
10694         (gst_element_get_compatible_pad_template): Just see if the
10695         templates' caps intersect, not if one is a strict subset of the
10696         other. This conforms more to what gst_pad_link_intersect() does.
10697         (gst_element_class_add_pad_template): Don't memcpy the pad
10698         template, just ref it.
10699         (gst_element_get_compatible_pad_filtered): Clean up debug messages
10700
10701         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
10702         (gst_pad_link_filtered): Debug changes.
10703         (gst_pad_link_prepare): New function, consolidated from
10704         can_link_filtered and link_filtered.
10705
10706         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
10707         look more like that of the functions in gstelement.c
10708
10709         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
10710         object, and return the empty string if object is NULL.
10711
10712         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
10713         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
10714         LOG, not DEBUG. We still get flex info on debug.
10715
10716         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
10717         debug string more verbose.
10718         (plugin_times_older_than): DEBUG->LOG.
10719
10720 2004-02-20  Julien MOUTTE <julien@moutte.net>
10721
10722         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
10723         will emit found_tag for each stream they demux with the codec.
10724
10725 2004-02-20  Benjamin Otte  <otte@gnome.org>
10726
10727         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
10728           copy navigation event correctly. Check freeing tag lists. 
10729         * gst/gstthread.c: (gst_thread_change_state):
10730           don't abort() on state changing mess - it might happen because of
10731           bugs.
10732         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
10733           use boxed functions
10734         * gst/gstvalue.h:
10735           fix GST_VALUE_HOLDS_CAPS
10736
10737 2004-02-19  David Schleef  <ds@schleef.org>
10738
10739         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
10740         and use it for GST_FUNCTION.  (bug #134750)
10741
10742 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10743
10744         * po/fr.po:
10745         * po/nl.po:
10746           updating translations
10747
10748 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10749
10750         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
10751
10752 2004-02-18  kost@imn.htwk-leipzig.de
10753
10754         reviewed by: David Schleef  <ds@schleef.org>
10755
10756         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
10757         for libgstcontrol.
10758
10759 2004-02-18  David Schleef  <ds@schleef.org>
10760
10761         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10762         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10763         (gst_dpsmooth_new): Additional fixes to get double dparams working.
10764         * tools/gst-inspect.c: (print_element_info): Support dumping of
10765         double dparam information.
10766
10767 2004-02-17  David Schleef  <ds@schleef.org>
10768
10769         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10770         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
10771         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
10772         Use GST_TYPE_CAPS in signal prototype.
10773         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
10774         Convert GST_TYPE_CAPS to boxed.
10775         * gst/gstelement.c: (gst_element_class_init):
10776         Use GST_TYPE_TAG_LIST in signal prototype.
10777         * gst/gstindex.c: (gst_index_class_init):
10778         * gst/gstindex.h:
10779         Add GST_TYPE_INDEX_ENTRY type.
10780         * gst/gstmarshal.list:
10781         Add necessary marshal types.
10782         * gst/gstpad.c: (gst_real_pad_class_init),
10783         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
10784         (gst_pad_recover_caps_error):
10785         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
10786         * gst/gststructure.c: (_gst_structure_initialize),
10787         (gst_structure_copy), (_gst_structure_copy_conditional):
10788         * gst/gststructure.h:
10789         Convert GST_TYPE_STRUCTURE to boxed.
10790         * gst/gsttag.c: (gst_tag_list_get_type):
10791         * gst/gsttag.h:
10792         Add GST_TYPE_TAG_LIST type.
10793
10794 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10795
10796         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
10797         to what we agreed with david.
10798         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
10799
10800 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10801
10802         * po/nl.po: update translation
10803
10804 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10805
10806         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10807           throw an error if spider is trying to play a mime type there is
10808           no decoder for
10809         * po/POTFILES.in:
10810           add gst/autoplug/gstspider.c for translation
10811
10812 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10813
10814         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
10815         silently when the pad is negotiating.
10816
10817 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10818
10819         * docs/faq/Makefile.am:
10820           add script to run gstreamer uninstalled 
10821         * docs/faq/faq.xml:
10822         * docs/faq/developing.xml:
10823         * docs/faq/gst-uninstalled:
10824           extract script to run gstreamer uninstalled
10825         * docs/manuals.mak:
10826           add EXTRA_SOURCES variable for Makefile.am's to set to
10827           use additional SOURCE files for the doc build
10828
10829 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10830
10831         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
10832
10833 2004-02-15  Julien MOUTTE  <julien@moutte.net>
10834
10835         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
10836         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
10837         an error was thrown by osssink. Basically a state change failure for
10838         an element in a different scheduling group was considered as
10839         successful, which means that caps nego was going on and weird stuff
10840         happened. Like I wrote in the comment there, if someone wants to
10841         revert that please drop me a mail explaining why because I really see
10842         no point in keeping that broken behaviour there.
10843         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
10844         be empty, we then return NULL which will trigger a nice error when 
10845         pulling from the pad.
10846
10847 2004-02-13  David Schleef  <ds@schleef.org>
10848
10849         * libs/gst/control/dparam.c: (gst_dparam_class_init),
10850         (gst_dparam_get_property), (gst_dparam_set_property),
10851         (gst_dparam_do_update_default):
10852         * libs/gst/control/dparam.h:
10853         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10854         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
10855         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
10856         (gst_dpsmooth_do_update_double):
10857         * libs/gst/control/dparam_smooth.h:
10858         * libs/gst/control/dparammanager.c:
10859         (gst_dpman_inline_direct_update):
10860         Add support for double dparams.
10861
10862 2004-02-13  David Schleef  <ds@schleef.org>
10863
10864         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
10865         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
10866
10867 2004-02-13  Mattias Wadman  <mattias@sudac.org>
10868
10869         reviewed by: David Schleef  <ds@schleef.org>
10870
10871         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
10872         (gst_fdsrc_init), (gst_fdsrc_set_property),
10873         (gst_fdsrc_get_property), (gst_fdsrc_get):
10874         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
10875         and sends an EOS event if file descriptor reading times out.
10876
10877 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10878
10879         * configure.ac:
10880           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
10881
10882 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10883
10884         * configure.ac: pass required libxml version as argument
10885         (bug reported by Christophe Fergeau)
10886
10887 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10888   
10889         * docs/gst/gstreamer-docs.sgml:
10890         * docs/gst/tmpl/gstxml.sgml:
10891         * docs/libs/gstreamer-libs-docs.sgml:
10892           version API docs
10893
10894 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10895
10896         * gst/gstinfo.c:
10897         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
10898         (gst_registry_pool_feature_filter):
10899         * gst/gstthread.c: (gst_thread_class_init):
10900         * gst/gstvalue.c:
10901           add includes exposed by building without libxml
10902         * gst/indexers/Makefile.am:
10903           do not build fileindex when LOADSAVE disabled; we should have
10904           a better libxml check later since fileindex depends on xml, not
10905           LOADSAVE or REGISTRY
10906         * libs/gst/control/Makefile.am:
10907           link with m
10908         * tools/Makefile.am:
10909           fix wrong source code for gst-xmlinspect
10910
10911 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10912
10913         * configure.ac:
10914           fix gcov help output
10915           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
10916         * docs/random/release:
10917           some updated releasing notes
10918         * gstreamer.spec.in:
10919           more updates
10920
10921 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10922
10923         * docs/faq/faq.xml:
10924         * docs/manual/manual.xml:
10925         * docs/pwg/pwg.xml:
10926         * docs/pwg/titlepage.xml:
10927           put version in documentation
10928
10929 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10930
10931         * tools/Makefile.am: fix man page installation
10932
10933 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10934
10935         * configure.ac:
10936           don't check for libxml when load/save and registry disabled (#105844)
10937         * gstreamer.spec.in:
10938           sync with fedora candidate spec
10939
10940 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10941
10942         * po/fr.po:
10943         * po/nl.po:
10944           replace multidisksrc with multifilesrc
10945
10946 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10947
10948         * po/POTFILES.in:
10949           update to multidisksrc => multifilesrc file renaming (#134145)
10950
10951 2004-02-11  David Schleef  <ds@schleef.org>
10952
10953         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
10954         * docs/gst/tmpl/gstpadtemplate.sgml: same
10955         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
10956         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
10957         fixing dance.
10958         * gst/gstutils.c: Remove disabled code that uses GstProps.
10959         * gst/registries/gstxmlregistry.h: same
10960         * docs/random/ds/0.9-suggested-changes: random notes
10961
10962 2004-02-11  kost@imn.htwk-leipzig.de
10963
10964         reviewed by: David Schleef  <ds@schleef.org>
10965
10966         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
10967         initialisation of clock (bug #134128)
10968
10969 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10970
10971         * configure.ac:
10972         * gst/elements/Makefile.am:
10973         * gst/elements/gstelements.c:
10974         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
10975         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
10976         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
10977         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
10978         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
10979         * gst/elements/gstmultifilesrc.h:
10980           rename multidisksrc to multifilesrc (part of #122200)
10981
10982 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10983
10984         * docs/manuals.mak:
10985           fix automake complaints
10986         * gst-element-check.m4:
10987           fix unquotedness
10988
10989 2004-02-11  David Schleef  <ds@schleef.org>
10990
10991         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
10992         * gst/gstatomic_impl.h: Disable sparc implementation.
10993
10994 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10995
10996         * gst-element-check.m4:
10997           fix underquoted macros as reported by automake 1.8.x (#133800)
10998         * configure.ac:
10999           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11000           by autopoint (fixes #132996)
11001
11002 2004-02-10  Andy Wingo  <wingo@pobox.com>
11003
11004         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11005         way to do inheritance.
11006         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11007         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11008         Routine docs.
11009         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11010         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11011         doc.
11012         (gst_pad_unlink, gst_pad_is_linked): Docs.
11013         (gst_pad_renegotiate): A brief description of capsnego.
11014         (gst_pad_try_set_caps): Document.
11015         (gst_pad_try_set_caps_nonfixed): Document.
11016         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11017         (gst_pad_set_parent): Deprecated (although not out of the API).
11018         (gst_pad_get_parent): Deprecated, although many plugins use this.
11019         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11020         are private and will go away in 0.9.
11021         (gst_pad_perform_negotiate): Doc.
11022         (gst_pad_link_unnegotiate): I think this is meant to be static.
11023         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11024         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11025         (gst_pad_get_peer): Doc updates.
11026         (gst_pad_caps_change_notify): Doc.
11027         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11028         (gst_ghost_pad_new): Doc fixes.
11029
11030         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11031         (gst_object_check_uniqueness): 
11032
11033         * gst/gstelement.c (gst_element_add_pad) 
11034         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11035         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11036         (gst_element_get_static_pad, gst_element_get_pad_list) 
11037         (gst_element_class_get_pad_template_list) 
11038         (gst_element_class_get_pad_template): Work on the docs.
11039         (gst_element_get_pad_template_list): Uses the class method.
11040         (gst_element_get_compatible_pad_template): Docs, and consolidate
11041         some test conditions. 
11042         (gst_element_get_pad_from_template): New static function.
11043         (gst_element_request_compatible_pad): Docs, and work with
11044         non-request compatible templates. 
11045         (gst_element_get_compatible_pad_filtered): Docs and remove
11046         redundant checks.
11047         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11048         (gst_element_link_filtered, gst_element_link_many) 
11049         (gst_element_link, gst_element_link_pads) 
11050         (gst_element_unlink_many): Docs.
11051
11052 2004-02-05  Andy Wingo  <wingo@pobox.com>
11053
11054         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11055         s/pointer/boxed/.
11056
11057         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11058
11059         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11060         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11061         with the type=GST_TYPE_CAPS. This allows language bindings to know
11062         what kind of data they're dealing with.
11063
11064         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11065         to NULL when g_value_init is called. GstCaps, which rolls its own
11066         type implementation, now does the same instead of allocating empty
11067         caps.
11068         (_gst_caps_initialize, _gst_caps_collect_value,
11069         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11070         table methods. This allows G_VALUE_COLLECT to work.
11071
11072 2004-02-05  Andy Wingo  <wingo@pobox.com>
11073
11074         * configure.ac:
11075         * testsuite/Makefile.am (SUBDIRS): 
11076         * testsuite/ghostpads/Makefile.am: 
11077         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11078
11079         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11080         These two routines are the only ones that set
11081         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11082         pad template. They should be made static, depending on ABI needs.
11083         (gst_real_pad_dispose): Handle the case of ghost pads without a
11084         parent. Assert after dealing with ghost pads that the ghost pad
11085         list is empty.
11086         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11087         set after creation.
11088         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11089         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11090         functions. set_property will call add_ghost_pad/remove_ghost_pad
11091         as appropriate.
11092         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11093
11094         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11095         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11096         (gst_element_remove_pad): Handle ghost pads as well.
11097         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11098         depending on API-stability needs).
11099
11100 2004-02-05  Andy Wingo  <wingo@pobox.com>
11101
11102         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11103         of course they're const
11104
11105 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11106
11107         * tools/Makefile.am:
11108         * tools/gst-feedback:
11109         * tools/gst-feedback-0.7:
11110           make gst-feedback versioned too for consistency
11111
11112 2004-02-11  David Schleef  <ds@schleef.org>
11113
11114         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11115         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11116
11117 2004-02-10  Julien MOUTTE <julien@moutte.net>
11118
11119         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11120         the structure does not contain a valid tag list. Adding a safety check
11121         to remove a noisy warning in that case.
11122
11123 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11124
11125         * gst/gst.c: fix name to be in line with others
11126
11127 2004-02-09  Julien MOUTTE <julien@moutte.net>
11128
11129         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11130         not shout that loud when len is 0. Just return 0 silently.
11131
11132 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11133
11134         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11135         because data_unref has one and I prefer the debug to be symetric.
11136         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11137         were refed when added to the queue and unrefed only once when the queue
11138         was flushed. Now the flush handler unref the buffers two times : first
11139         unref for the ref added when pushing in the queue's tail and second
11140         unref to destroy the flushed buffer.
11141
11142 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11143
11144         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11145
11146 2004-02-06  David Schleef  <ds@schleef.org>
11147
11148         * docs/random/ds/0.9-suggested-changes: Random ramblings
11149         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11150         to int before printing.
11151         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11152         * gst/parse/parse.l: same.  See bug #129600
11153
11154 2004-02-06  David Schleef  <ds@schleef.org>
11155
11156         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11157         (gst_index_add_entry), (gst_index_add_associationv),
11158         (gst_index_add_association): Add gst_index_add_associationv()
11159         and clean up gst_index_add_association(). #127133
11160
11161 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11162
11163         * autogen.sh: check out common with right tag if CVS/Tag exists
11164
11165 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11166
11167         * testsuite/ghostpads/ghostpads.c: (main):
11168           fix testsuite from segfaulting
11169
11170 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11171
11172         * Makefile.am: add release target
11173         * configure.ac: bump nano to 1
11174         * docs/random/release:
11175
11176 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11177
11178         * gst/gstcaps.h:
11179         * gst/gstelement.c: (gst_element_base_class_init),
11180         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11181         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11182         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11183         (gst_real_pad_dispose):
11184         * gst/gststructure.c: (gst_structure_free),
11185         (gst_structure_from_string):
11186           put reverted patch back in
11187         * gst/gstelement.c: (gst_element_remove_pad):
11188           free explicit caps if they're set
11189         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11190           copy the structure when fixating
11191
11192 2004-02-05  David Schleef  <ds@schleef.org>
11193
11194         * gst/gstmarshal.list:
11195         * gst/gstpad.c: (gst_real_pad_class_init),
11196         (_gst_real_pad_fixate_accumulator):
11197         Revert POINTER->BOXED change in signal marshaller.
11198
11199 === release 0.7.4 ===
11200                                                                                 
11201 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11202                                                                                 
11203         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11204         * configure.ac: changed for release
11205
11206 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11207
11208         * gstreamer.spec.in:
11209           bump required version of gtk-doc
11210
11211 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11212
11213         * gst/gstcaps.h:
11214         * gst/gstelement.c: (gst_element_base_class_init),
11215         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11216         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11217         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11218         (gst_real_pad_dispose):
11219         * gst/gststructure.c: (gst_structure_free),
11220         (gst_structure_from_string):
11221           revert patch that breaks applications, reapply after release
11222           to get this fixed properly
11223
11224 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11225
11226         * gst/gsttag.c: (_gst_tag_initialize):
11227         * gst/gsttag.h:
11228           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11229
11230 2004-02-04  David Schleef  <ds@schleef.org>
11231
11232         Fix some memleaks:
11233         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11234         (gst_spider_plug_from_srcpad):
11235         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11236
11237 2004-02-04  David Schleef  <ds@schleef.org>
11238
11239         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11240         a GstRealPad before accessing its structure members.
11241
11242 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11243
11244         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11245         (gst_clock_get_speed):
11246         * gst/gstclock.h:
11247           reset padding, remove unused fields
11248
11249 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11250
11251         * gst/autoplug/gstspideridentity.c:
11252         (gst_spider_identity_sink_loop_type_finding):
11253           use get_allowed_caps, not get_caps (fixes #132519)
11254         * gst/elements/gsttypefind.c: (stop_typefinding):
11255           use correct order when sending buffers and seeking
11256
11257 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11258
11259         * configure.ac:
11260         * gst/gstelement.h:
11261         * gst/gstpad.h:
11262         * gst/gstqueue.h:
11263           upgrade libtool CURRENT, reset padding
11264
11265 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11266
11267         * configure.ac:
11268           bump to prerelease
11269           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11270
11271 2004-02-04  David Schleef  <ds@schleef.org>
11272
11273         * docs/random/ds/0.9-suggested-changes: random notes
11274         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11275         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11276         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11277         expansion.
11278         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11279         (gst_filesink_get_query_types): same
11280         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11281         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11282         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11283         to use new GST_PTR_FORMAT.
11284         * gst/gstelement.h: deprecate function factory macros
11285         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11286         These are our last variadic macros that can't be replaced with
11287         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11288         attempting to deprecate gst_element_clock_wait().
11289         * gst/gstevent.h: same
11290         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11291         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11292         * gst/gstpad.h: deprecate function factory macros similar to above.
11293
11294 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11295
11296         * configure.ac:
11297         * tools/Makefile.am:
11298         * tools/gst-run.c: (popt_callback), (hash_print_key),
11299         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11300         (get_candidates), (main):
11301           add new source file to generate non-versioned wrapper binaries
11302           for our tools.
11303
11304 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11305
11306         * gst/gstevent.c: (_gst_event_free):
11307           actually break; inside the switch statement
11308         * gst/parse/grammar.y:
11309           fix memleak where GValues weren't unset
11310
11311 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11312
11313         * gst/gststructure.c: (gst_structure_from_string):
11314           fix huge memleak
11315         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11316         (new_entry), (gst_type_find_element_chain):
11317         * gst/gstelement.c: (gst_element_base_class_init),
11318         (gst_element_class_set_details):
11319         * gst/gstpad.c: (gst_pad_can_link_filtered):
11320           fix smaller memleaks
11321         * gst/gstpad.c: (gst_real_pad_dispose):
11322           check that explicit caps are gone
11323         * gst/gststructure.c: (gst_structure_free):
11324           actually free the structure
11325         * gst/gstelement.c: (gst_element_clear_pad_caps):
11326           unset explicit caps
11327
11328 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11329
11330         * tools/Makefile.am:
11331           use AM_CFLAGS since all the CFLAGS are the same
11332           use AM_LDFAGS
11333
11334 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11335
11336         * docs/manual/gnome.xml:
11337           expand example a little
11338         * gst/gst.c: (gst_init_with_popt_table),
11339         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11340           make sure popt option displays are done with right textdomain
11341           use GstPoptOption type
11342         * gst/gst.h:
11343           create GstPoptOption type
11344
11345 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11346
11347         * gst/gsterror.c: (_gst_stream_errors_init):
11348         * gst/gsterror.h:
11349           adding error type for no codec
11350         * po/POTFILES.in:
11351           add gst-inspect
11352         * po/nl.po:
11353           update dutch translation
11354         * tools/gst-inspect.c: (print_element_list), (main):
11355           do proper internationalization
11356         * tools/gst-launch.c: (idle_func):
11357           remove commented out function call
11358
11359 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11360
11361         * docs/README:
11362           add some error fixing notes
11363         * docs/gst/gstreamer-sections.txt:
11364           remove double entries
11365         * docs/gst/tmpl/gstbin.sgml:
11366         * docs/gst/tmpl/gstclock.sgml:
11367           remove override
11368         * docs/gst/tmpl/gstelement.sgml:
11369         * docs/gst/tmpl/gstindex.sgml:
11370         * docs/gst/tmpl/gstobject.sgml:
11371         * docs/gst/tmpl/gstpadtemplate.sgml:
11372         * docs/gst/tmpl/gstreamer-unused.sgml:
11373         * docs/gst/tmpl/gsttag.sgml:
11374         * docs/gst/tmpl/gstthread.sgml:
11375         * docs/gst/tmpl/gstxml.sgml:
11376         * gst/gsttag.h:
11377           sync header prototypes with c decls
11378         * gst/gsttaginterface.c:
11379           fix doc headers
11380
11381 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11382
11383         * gst/parse/Makefile.am:
11384         * gst/gstobject.h:
11385           get rid of gstmarshal.h dependency. It's not needed.
11386         * gst/gst.h:
11387         * gst/elements/gstfakesink.c:
11388         * gst/elements/gstfakesrc.c:
11389         * gst/elements/gstidentity.c:
11390         * gst/gstbin.c:
11391         * gst/gstelement.c:
11392         * gst/gstindex.c:
11393         * gst/gstobject.c:
11394         * gst/gstpad.c:
11395         * gst/gstthread.c:
11396         * gst/gstxml.c:
11397         * libs/gst/control/dparam.c:
11398         * libs/gst/control/dparammanager.c:
11399           include gstmarshal.h.
11400         Fixes #132045
11401
11402 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11403
11404         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11405         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11406         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11407         * gst/elements/gstfilesrc.h:
11408           don't ref the filesrc when creating mmaped buffers. Don't keep a
11409           list of not-yet-destroyed buffers.
11410         * gst/gstbuffer.h:
11411           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11412
11413 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11414
11415         * gst/gst.c: (init_pre):
11416           remove textdomain
11417
11418 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11419
11420         * docs/pwg/advanced-events.xml:
11421         * docs/pwg/advanced-scheduling.xml:
11422         * docs/pwg/intro-basics.xml:
11423         * docs/pwg/other-manager.xml:
11424         * docs/pwg/other-nton.xml:
11425         * docs/pwg/other-ntoone.xml:
11426         * docs/pwg/other-oneton.xml:
11427         * docs/pwg/pwg.xml:
11428           All sort of documentation... Forgot what. Point is that I want this
11429           in before I leave. The 'other-*' will be the last section and will
11430           explain issues specific to these type of elements.
11431
11432 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11433
11434         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11435         (gst_filesrc_get_read):
11436           set all the values on buffers that we can
11437
11438 2004-02-02  David Schleef  <ds@schleef.org>
11439
11440         Change usage of isblah() to g_ascii_isblah() to be more locale
11441         independent.  (#133076)
11442         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11443         * gst/gstutils.c:
11444         * gst/parse/parse.l:
11445
11446 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11447
11448         reviewed by: David Schleef  <ds@schleef.org>
11449
11450         Fix memory leaks:
11451         * gst/gstcaps.c: (gst_caps_to_string):
11452         * gst/registries/gstxmlregistry.c:
11453         (gst_xml_registry_add_path_list_func),
11454         (gst_xml_registry_parse_padtemplate):
11455
11456 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11457
11458         * gst/gstelement.c: (gst_element_default_error):
11459           suffix error messages with period
11460
11461 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11462
11463         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11464         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11465         * gst/gsterror.c: (gst_error_get_message):
11466           Suffix with dots
11467         * po/fr.po:
11468         * po/nl.po:
11469           Update translation files
11470
11471 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11472
11473         * gst/autoplug/gstspideridentity.c:
11474         (gst_spider_identity_sink_loop_type_finding):
11475         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11476         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11477         (gst_filesink_close_file), (gst_filesink_handle_event),
11478         (gst_filesink_chain):
11479         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11480         (gst_filesrc_get_read), (gst_filesrc_open_file):
11481         * gst/elements/gstidentity.c: (gst_identity_chain):
11482         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11483         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11484         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11485         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11486         * gst/gsterror.c: (_gst_core_errors_init),
11487         (_gst_library_errors_init), (_gst_resource_errors_init),
11488         (_gst_stream_errors_init), (gst_error_get_message):
11489         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11490         (gst_pad_recover_caps_error), (gst_pad_pull):
11491         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11492         * gst/schedulers/gstbasicscheduler.c:
11493         (gst_basic_scheduler_chainhandler_proxy),
11494         (gst_basic_scheduler_gethandler_proxy),
11495         (gst_basic_scheduler_cothreaded_chain):
11496           Suffix error messages with period.
11497           Use (NULL) instead of NULL
11498
11499 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11500
11501         * docs/gst/tmpl/gstelement.sgml:
11502         * docs/gst/tmpl/gstxml.sgml:
11503         * gst/gstelement.c: (gst_element_error_full):
11504           add element path to error
11505
11506 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11507
11508         * docs/random/mimetypes:
11509           update raw int/float info
11510         * gst/gsttag.c: (_gst_tag_initialize):
11511         * gst/gsttag.h:
11512           add GST_TAG_ENCODER
11513
11514 2004-01-30  David Schleef  <ds@schleef.org>
11515
11516         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11517           missing (#132991)
11518
11519 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11520
11521         reviewed by Benjamin Otte 
11522           parts of the patch submitted in bug #113913
11523
11524         * configure.ac:
11525           use AC_C_INLINE. Use = instead of == with test
11526         * examples/plugins/example.c:
11527         * gst/autoplug/gstspideridentity.c:
11528         * gst/elements/gstfdsrc.c:
11529         * gst/elements/gstfilesrc.c:
11530         * gst/elements/gstidentity.c:
11531         * gst/elements/gstmultidisksrc.c:
11532         * gst/elements/gststatistics.c:
11533         * gst/gstelement.c:
11534         * gst/gstobject.c:
11535         * gst/gstpad.c:
11536         * gst/gstpipeline.c:
11537         * gst/gstthread.c:
11538           don't end enums with a comma
11539         * gst/gstindex.c: (gst_index_compare_func):
11540           do explicit casting to gint
11541         * gst/gsttrace.c: (gst_trace_text_flush):
11542           #define strsize as a macro
11543
11544 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11545
11546         * docs/README:
11547         * docs/gst/gstreamer-docs.sgml:
11548         * docs/gst/gstreamer-sections.txt:
11549         * docs/gst/tmpl/gstelement.sgml:
11550         * docs/gst/tmpl/gsterror.sgml:
11551         * docs/gst/tmpl/gstinterface.sgml:
11552         * docs/gst/tmpl/gstreamer-unused.sgml:
11553         * docs/gst/tmpl/gststructure.sgml:
11554         * docs/gst/tmpl/gsttag.sgml:
11555         * docs/gst/tmpl/gsttaginterface.sgml:
11556         * docs/gst/tmpl/gstvalue.sgml:
11557         make sure all API ends up in the built docs
11558         * gst/gstinterface.c:
11559         * gst/gststructure.c: (gst_structure_id_set_value),
11560         (gst_structure_set_value), (gst_structure_id_get_value):
11561         * gst/gststructure.h:
11562         * gst/gstvalue.h:
11563         sync .h with .c declarations
11564
11565 2004-01-30  Julien Moutte  <julien@moutte.net>
11566
11567         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
11568         Ronald will fix riffread.
11569
11570 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11571
11572         * docs/pwg/advanced-interfaces.xml:
11573           Added tuner interface docs.
11574
11575 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11576
11577         * docs/random/mimetypes:
11578           correct Theora information
11579         * gst/gstelement.h:
11580           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
11581
11582 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11583
11584         * gst/gstelement.c: (gst_element_error_full):
11585         * gst/gstelement.h:
11586           GST_ELEMENT_ERROR in enum -> _IN_ERROR
11587
11588 2004-01-29  Julien MOUTTE  <julien@moutte.net>
11589
11590         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11591         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
11592         again and even before DISCONT.
11593         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
11594         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
11595         bytestream so that it's not stopping to fill the bytestream if events
11596         different than EOS or DISCONT are received. Instead it process them so
11597         that they go downstream.
11598
11599 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11600
11601         * docs/gst/tmpl/gstelement.sgml:
11602         * docs/gst/tmpl/gstreamer-unused.sgml:
11603         * docs/gst/tmpl/gstxml.sgml:
11604         * gst/autoplug/gstspideridentity.c:
11605         (gst_spider_identity_sink_loop_type_finding):
11606         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11607         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11608         (gst_filesink_close_file), (gst_filesink_handle_event),
11609         (gst_filesink_chain):
11610         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11611         (gst_filesrc_get_read), (gst_filesrc_open_file):
11612         * gst/elements/gstidentity.c: (gst_identity_chain):
11613         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11614         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11615         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11616         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11617         * gst/gstelement.h:
11618         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11619         (gst_pad_recover_caps_error), (gst_pad_pull):
11620         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11621         * gst/schedulers/gstbasicscheduler.c:
11622         (gst_basic_scheduler_chainhandler_proxy),
11623         (gst_basic_scheduler_gethandler_proxy),
11624         (gst_basic_scheduler_cothreaded_chain):
11625           gst_element_error -> GST_ELEMENT_ERROR
11626
11627 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11628
11629         * docs/Makefile.am:
11630         * docs/gst/tmpl/gstelement.sgml:
11631         * docs/gst/tmpl/gstxml.sgml:
11632         * docs/manuals.mak:
11633         * docs/pwg/advanced-request.xml:
11634         * docs/pwg/advanced-scheduling.xml:
11635         * docs/pwg/advanced-tagging.xml:
11636           fix non-validating docbook using CDATA
11637           make sure make check-local gets run first to check if it validates
11638
11639 2004-01-29  Julien MOUTTE <julien@moutte.net>
11640
11641         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
11642         handling (up and downstream).
11643         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
11644         my_filter thing.
11645
11646 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11647
11648         * docs/pwg/advanced-tagging.xml:
11649           Add docs about tag writing.
11650
11651 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11652
11653         * docs/pwg/advanced-tagging.xml:
11654           Add a part about tag reading and application signalling... Tag
11655           writing still needs to be documented.
11656         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11657           We can set file locations in READY, too.
11658
11659 2004-01-29  Julien MOUTTE <julien@moutte.net>
11660
11661         * docs/random/ds/element-checklist: Adding some notes about src
11662         events.
11663
11664 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11665
11666         * docs/random/mimetypes:
11667           Update docs to point to correct elements for various mimetypes, and
11668           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
11669           <stephane.loeuillet@tiscali.fr>.
11670
11671 2004-01-28  David Schleef  <ds@schleef.org>
11672
11673         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
11674
11675 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11676
11677         * docs/random/mimetypes:
11678           update docs for audio/x-raw-float. Add "buffer-frames=0 means
11679           undefined"
11680         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11681           make it only work in NULL.
11682         * gst/gstcaps.c:
11683           don't posion NULL caps
11684         * gst/gstelement.c: (gst_element_set_time):
11685           add debugging statement
11686         * gst/gstelement.c: (gst_element_emit_found_tag),
11687         (gst_element_found_tag_func), (gst_element_found_tags):
11688         * gst/gstelement.h:
11689           These functions take const taglists
11690         * gst/gstpad.c: (gst_pad_proxy_getcaps):
11691           fix memleak
11692         * gst/gstpad.c: (gst_pad_event_default):
11693           make more effort on handling discont and clocks, g_warn if everything
11694           fails
11695         * gst/gststructure.c: (gst_structure_remove_fields),
11696         (gst_structure_remove_fields_valist):
11697         * gst/gststructure.h:
11698           add gst_structure_remove_fields(_valist)
11699         * gst/gsttag.c:
11700           fix doc glitch
11701
11702 2004-01-28  David Schleef  <ds@schleef.org>
11703
11704         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
11705         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
11706         Fix memory leakage of gst_caps_to_string().
11707
11708         Use GST_PTR_FORMAT instead of gst_caps_to_string():
11709         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
11710         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
11711         (gst_spider_identity_sink_loop_type_finding):
11712         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11713         (find_suggest):
11714         * gst/gstpad.c: (gst_pad_try_relink_filtered),
11715         (gst_pad_set_explicit_caps):
11716         * gst/parse/grammar.y:
11717
11718 2004-01-28  David Schleef  <ds@schleef.org>
11719
11720         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
11721         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
11722         * docs/random/ds/0.9-suggested-changes: Notes from Company.
11723         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
11724         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
11725         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
11726         (gst_debug_log_default), (_gst_info_printf_extension),
11727         (_gst_info_printf_extension_arginfo):  Add printf extension.
11728         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
11729         * gst/gststructure.c: (gst_structure_to_string),
11730         (_gst_structure_parse_value): Use gst_value_deserialize() and
11731         remove old code.
11732         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
11733         (gst_value_deserialize_boolean), (gst_strtoi),
11734         (gst_value_deserialize_int), (gst_value_deserialize_double),
11735         (gst_value_deserialize_string), (gst_value_deserialize): Implement
11736         a bunch of deserialize functions and gst_value_deserialize.
11737         * gst/gstvalue.h: er, _de_serialize, not unserialize
11738         * testsuite/caps/string-conversions.c: (main): We don't currently
11739         handle (float) in caps, so convert these to (double).
11740         * testsuite/debug/Makefile.am: Add new test for the printf extension
11741         * testsuite/debug/printf_extension.c: (main): same
11742
11743 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11744
11745         * docs/random/company/time:
11746           Add some docs about clocking and time
11747
11748 2004-01-28  Julien MOUTTE <julien@moutte.net>
11749
11750         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
11751
11752 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11753
11754         * docs/pwg/advanced-clock.xml:
11755         * docs/pwg/advanced-dparams.xml:
11756         * docs/pwg/advanced-events.xml:
11757         * docs/pwg/advanced-interfaces.xml:
11758         * docs/pwg/advanced-midi.xml:
11759         * docs/pwg/advanced-request.xml:
11760         * docs/pwg/advanced-scheduling.xml:
11761         * docs/pwg/advanced-tagging.xml:
11762         * docs/pwg/advanced-types.xml:
11763         * docs/pwg/appendix-checklist.xml:
11764         * docs/pwg/building-boiler.xml:
11765         * docs/pwg/building-chainfn.xml:
11766         * docs/pwg/building-filterfactory.xml:
11767         * docs/pwg/building-pads.xml:
11768         * docs/pwg/building-props.xml:
11769         * docs/pwg/building-signals.xml:
11770         * docs/pwg/building-state.xml:
11771         * docs/pwg/building-testapp.xml:
11772         * docs/pwg/intro-basics.xml:
11773         * docs/pwg/intro-preface.xml:
11774         * docs/pwg/other-autoplugger.xml:
11775         * docs/pwg/other-sink.xml:
11776         * docs/pwg/other-source.xml:
11777         * docs/pwg/titlepage.xml:
11778           fix up id's
11779
11780 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11781
11782         * docs/95NonPath:
11783         * docs/HACKING:
11784         * docs/README:
11785         * docs/building-the-docs-on-debian:
11786           collect relevant bits of doc info
11787
11788 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11789
11790         * docs/pwg/advanced_tagging.xml:
11791           Half-assed commit so Thomas can re-arrange document IDs here to be
11792           consistent, too.
11793
11794 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11795
11796         * docs/manual/autoplugging.xml:
11797         * docs/manual/bins-api.xml:
11798         * docs/manual/bins.xml:
11799         * docs/manual/buffers-api.xml:
11800         * docs/manual/buffers.xml:
11801         * docs/manual/clocks.xml:
11802         * docs/manual/components.xml:
11803         * docs/manual/cothreads.xml:
11804         * docs/manual/debugging.xml:
11805         * docs/manual/dparams-app.xml:
11806         * docs/manual/dynamic.xml:
11807         * docs/manual/elements-api.xml:
11808         * docs/manual/elements.xml:
11809         * docs/manual/factories.xml:
11810         * docs/manual/gnome.xml:
11811         * docs/manual/goals.xml:
11812         * docs/manual/helloworld.xml:
11813         * docs/manual/helloworld2.xml:
11814         * docs/manual/init-api.xml:
11815         * docs/manual/intro.xml:
11816         * docs/manual/links-api.xml:
11817         * docs/manual/links.xml:
11818         * docs/manual/manual.xml:
11819         * docs/manual/motivation.xml:
11820         * docs/manual/pads-api.xml:
11821         * docs/manual/pads.xml:
11822         * docs/manual/plugins-api.xml:
11823         * docs/manual/plugins.xml:
11824         * docs/manual/programs.xml:
11825         * docs/manual/queues.xml:
11826         * docs/manual/quotes.xml:
11827         * docs/manual/schedulers.xml:
11828         * docs/manual/states-api.xml:
11829         * docs/manual/states.xml:
11830         * docs/manual/threads.xml:
11831         * docs/manual/typedetection.xml:
11832         * docs/manual/xml.xml:
11833           use chapter, part, section or misc as id starts for all bits
11834
11835 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11836
11837         * docs/gst/gstreamer-sections.txt:
11838           Fix up TITLE of the sections
11839
11840 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11841
11842         * docs/pwg/advanced_interfaces.xml:
11843           Add documentation on propertyprobing.
11844         * docs/pwg/advanced_events.xml:
11845         * docs/pwg/advanced_tagging.xml:
11846         * docs/pwg/building_boiler.xml:
11847         * docs/pwg/building_filterfactory.xml:
11848         * docs/pwg/pwg.xml:
11849           Move filterfactory and tagging into their own chapter, add a chapter
11850           on events. all these are empty placeholders that will be filled in
11851           some day.
11852
11853 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11854
11855         * docs/pwg/advanced_interfaces.xml:
11856           Docs for mixer interface. Also a check for website uploading.
11857
11858 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11859
11860         * docs/HACKING:
11861         * docs/Makefile.am:
11862         * docs/faq/Makefile.am:
11863         * docs/gst/Makefile.am:
11864         * docs/gst/tmpl/gstelement.sgml:
11865         * docs/gst/tmpl/gstplugin.sgml:
11866         * docs/gst/tmpl/gstreamer-unused.sgml:
11867         * docs/libs/Makefile.am:
11868         * docs/manual/Makefile.am:
11869         * docs/manuals.mak:
11870         * docs/pwg/Makefile.am:
11871         * docs/upload.mak:
11872           Separate out upload target and make it similar for
11873           both docbook and gtk-doc docs
11874
11875 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11876
11877         * docs/manuals.mak:
11878           Fix upload target to work with freedesktop
11879
11880 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11881
11882         * docs/pwg/advanced_types.xml:
11883           Add notes on creating your own types.
11884         * docs/pwg/building_boiler.xml:
11885         * docs/pwg/building_pads.xml:
11886         * docs/pwg/building_state.xml:
11887           Add some stuff about how to retrieve values from structures, how
11888           that relates to types and change layout slightly again to be almost
11889           perfect.
11890
11891 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11892
11893         * docs/pwg/advanced_dparams.xml:
11894         * docs/pwg/advanced_scheduling.xml:
11895           Change index layout slightly.
11896
11897 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11898
11899         * docs/pwg/advanced_clock.xml:
11900         * docs/pwg/advanced_interfaces.xml:
11901         * docs/pwg/advanced_midi.xml:
11902           General placeholders for now.
11903         * docs/pwg/advanced_request.xml:
11904           Explanation about sometimes and request pads.
11905         * docs/pwg/advanced_scheduling.xml:
11906           Concept of bytestream, loopfunctions and schedulers.
11907         * docs/pwg/building_boiler.xml:
11908           Add something about plugin-init.
11909
11910 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11911
11912         * docs/pwg/building_pads.xml:
11913           Fix broken docbook
11914
11915 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11916
11917         * docs/pwg/advanced_interfaces.xml:
11918         * docs/pwg/pwg.xml:
11919           Add as a placeholder for future filling-in.
11920         * docs/pwg/basics_autoplugging.xml:
11921         * docs/pwg/basics_buffers.xml:
11922         * docs/pwg/basics_elements.xml:
11923         * docs/pwg/basics_events.xml:
11924         * docs/pwg/basics_plugins.xml:
11925         * docs/pwg/basics_types.xml:
11926           Remove, because unused (this is all in intro_basics.xml).
11927         * docs/pwg/building_signals.xml:
11928           Short intro to signals + reference to GObject docs - we really
11929           shouldn't go into these sort of things to deply because we don't
11930           use them that extensively anyway.
11931         * docs/pwg/building_state.xml:
11932           Explanation of states. Benjamin, please check.
11933         * docs/pwg/building_testapp.xml:
11934           Put everything in one page - putting only a few lines of content
11935           per page doesn't really make sense.
11936
11937           Time to get into the advanced topics. ;).
11938
11939 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11940
11941         * docs/pwg/advanced_types.xml:
11942           Finish documenting the current state of mimetypes.
11943         * docs/pwg/building_boiler.xml:
11944         * docs/pwg/building_chainfn.xml:
11945         * docs/pwg/building_pads.xml:
11946         * docs/pwg/building_props.xml:
11947         * docs/pwg/building_testapp.xml:
11948           Start documenting the "how to build a simple audio filter" part
11949           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
11950           states and (maybe?) a short introduction to capsnego in the chapter
11951           on pads (building_pads.xml). Capsnego should probably be explained
11952           fully in advanced_capsnego.xml or so.
11953
11954 2004-01-26  David Schleef  <ds@schleef.org>
11955
11956         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
11957         * gst/gstpad.h: Add new function to allow element to (somewhat)
11958         specify non-fixed caps on a pad.
11959         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
11960         that I added a few weeks ago.
11961
11962 2004-01-26  David Schleef  <ds@schleef.org>
11963
11964         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
11965           making try_set_caps() work with non-fixed caps.
11966
11967 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11968
11969         * docs/pwg/advanced_types.xml:
11970         * docs/pwg/intro_basics.xml:
11971         * docs/pwg/intro_preface.xml:
11972         * docs/pwg/pwg.xml:
11973         * docs/pwg/titlepage.xml:
11974           First try to resurrect the PWG. I'm halfway integrating the mimetypes
11975           in here (docs/random/mimetypes), and will from there on work on both
11976           updating outdated parts and adding missing parts.
11977           That doesn't mean I'll fix it completely, but I'll try at least. ;).
11978
11979 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11980
11981         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
11982           policy is set
11983
11984 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11985
11986         * gst/gstelement.h:
11987           remove gst_element_factory_get_version. It doesn't exist anymore.
11988         * gst/gstplugin.c:
11989         * gst/gstplugin.h:
11990           remove gst_plugin_set_name and change gst_plugin_get_longname to
11991           gst_plugin_get_description to match code.
11992         * gst/gsterror.h:
11993           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
11994         * gst/gstpad.c: (gst_pad_try_set_caps):
11995           make it work with nonfixed caps.
11996           Note that even in the nonfixed case the link function of the pad
11997           that tries to set caps isn't called.
11998
11999 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12000
12001         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12002           fix bug where buffer was not assembled correctly
12003         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12004           silence by default
12005         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12006           only seek if there's no more buffers that could work without seeking
12007
12008 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12009
12010         * gst/gsttag.c: (_gst_tag_initialize):
12011         * gst/gsttag.h:
12012           Add application tag (for encoding/muxing app).
12013
12014 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12015
12016         * autogen.sh:
12017           make autopoint force, and libtoolize not copy
12018         * common/m4/as-docbook.m4:
12019           added docbook xml catalog setup check
12020         * common/m4/gst-doc.m4:
12021           use docbook check
12022
12023 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12024
12025         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12026         * gst/gsttag.h:
12027           add GstTagFlag
12028
12029 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12030
12031         * docs/gst/gstreamer-sections.txt:
12032         * docs/gst/tmpl/gst.sgml:
12033         * docs/gst/tmpl/gstbuffer.sgml:
12034         * docs/gst/tmpl/gstclock.sgml:
12035         * docs/gst/tmpl/gstelement.sgml:
12036         * docs/gst/tmpl/gstreamer-unused.sgml:
12037         * docs/gst/tmpl/gstxml.sgml:
12038           sync latest API changes to docs
12039
12040 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12041
12042         * gst/gstpluginfeature.c:
12043           fix doc snippet
12044         * tools/gst-inspect.c: (print_element_list):
12045           fix output of typefind
12046           add GPL header
12047         * tools/gst-launch.c:
12048           add GPL header
12049
12050 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12051
12052         * gst/elements/Makefile.am:
12053         * gst/elements/gstelements.c:
12054         * gst/elements/gsttypefindelement.c:
12055         * gst/elements/gsttypefindelement.h:
12056         * po/POTFILES.in:
12057         * po/fr.po:
12058         * po/nl.po:
12059           renamed gsttypefindelement to gsttypefind, conserving CVS history
12060
12061 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12062
12063         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12064         * gst/gsttag.h:
12065           add some tags used in ogg as well
12066           fix _ in replaygain tags
12067
12068 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12069
12070         * gst/gsterror.h:
12071           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12072
12073 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12074
12075         * gst/gstelement.c: (gst_element_error_full):
12076         * gst/gstelement.h:
12077           change _extended to _full
12078
12079 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12080
12081         reviewed by: <delete if not using a buddy>
12082
12083         * docs/gst/tmpl/gst.sgml:
12084         * docs/gst/tmpl/gstbuffer.sgml:
12085         * docs/gst/tmpl/gstclock.sgml:
12086         * docs/gst/tmpl/gstelement.sgml:
12087         * docs/gst/tmpl/gstreamer-unused.sgml:
12088         * docs/gst/tmpl/gstxml.sgml:
12089         * gst/gstelement.c: (gst_element_error_full):
12090         * gst/gstelement.h:
12091
12092 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12093
12094         * gst/gstelement.h: fix _gst_element_error_printf prototype
12095
12096 2004-01-20  David Schleef  <ds@schleef.org>
12097
12098         * gst/gststructure.c: (gst_structure_to_string):
12099         Convert function to use gst_value_serialize().
12100         * gst/gstvalue.c: (gst_value_serialize_list),
12101         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12102         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12103         (gst_value_serialize_int), (gst_value_serialize_double),
12104         (gst_string_wrap), (gst_value_serialize_string),
12105         (gst_value_serialize), (gst_value_deserialize):
12106         * gst/gstvalue.h:
12107         Add implementations for serialize.
12108
12109 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12110
12111         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12112         we want to keep that one in the future or change xvidenc.c to use 
12113         another error.
12114
12115 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12116
12117         * gst/gstelement.c: (_gst_element_error_printf):
12118         * gst/gstelement.h:
12119           privatise function
12120
12121 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12122
12123         * docs/random/error:
12124           doc explaining error system
12125         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12126           cleanup
12127
12128 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12129
12130         * gst/gst-i18n-app.h:
12131         * gst/gst-i18n-lib.h:
12132           remove inclusion of config.h
12133         * po/POTFILES.in:
12134         * po/nl.po:
12135           add gst/gstelement.c
12136
12137 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12138
12139         * po/nl.po: updated Dutch translation
12140
12141 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12142
12143         * gst/gsterror.c: (_gst_core_errors_init),
12144         (_gst_library_errors_init), (_gst_resource_errors_init),
12145         (_gst_stream_errors_init):
12146         remove ending punctuation dots
12147
12148 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12149
12150         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12151         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12152         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12153         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12154         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12155         use GST_ERROR_SYSTEM
12156
12157 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12158
12159         * gst/gstelement.c: (gst_element_error_printf),
12160         (gst_element_error_extended):
12161         * gst/gstelement.h:
12162           add a helper printf function so we can have NULL values passed.
12163
12164 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12165
12166         * gst/gstelement.h:
12167           add G_STMT macros to gst_element_error, which isn't strictly
12168           necessary but people tell me to anyway.
12169
12170 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12171
12172         * gst/Makefile.am:
12173         * gst/autoplug/gstspideridentity.c:
12174         (gst_spider_identity_sink_loop_type_finding):
12175         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12176         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12177         (gst_filesink_close_file), (gst_filesink_handle_event),
12178         (gst_filesink_chain):
12179         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12180         (gst_filesrc_map_region), (gst_filesrc_get_read),
12181         (gst_filesrc_open_file):
12182         * gst/elements/gstidentity.c: (gst_identity_chain):
12183         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12184         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12185         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12186         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12187         * gst/gst.h:
12188         * gst/gst_private.h:
12189         * gst/gstelement.c: (gst_element_class_init),
12190         (gst_element_default_error), (gst_element_error_func),
12191         (gst_element_error_extended):
12192         * gst/gstelement.h:
12193         * gst/gsterror.c: (_gst_core_errors_init),
12194         (_gst_library_errors_init), (_gst_resource_errors_init),
12195         (_gst_stream_errors_init), (gst_error_get_message):
12196         * gst/gsterror.h:
12197         * gst/gstinfo.c: (_gst_debug_init):
12198         * gst/gstmarshal.list:
12199         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12200         (gst_pad_recover_caps_error), (gst_pad_pull):
12201         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12202         * gst/schedulers/gstbasicscheduler.c:
12203         (gst_basic_scheduler_chainhandler_proxy),
12204         (gst_basic_scheduler_gethandler_proxy),
12205         (gst_basic_scheduler_cothreaded_chain):
12206         * po/POTFILES.in:
12207         * po/fr.po:
12208         * po/nl.po:
12209           change error signal
12210           add error categories
12211
12212 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12213
12214         * gst/gsttag.c: (_gst_tag_initialize):
12215         * gst/gsttag.h:
12216         Add replaygain tag
12217
12218 2004-01-18  Colin Walters  <walters@verbum.org>
12219
12220         * examples/retag/retag.c: Call gst_init before processing
12221         program args.  Add g_assert to _link_many call.
12222
12223 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12224
12225         * gst/gstpad.c: (gst_pad_alloc_buffer):
12226           Return a newly allocated buffer when the pad has no peer.
12227
12228 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12229
12230         * gst/gstclock.c: (gst_clock_get_time):
12231           make it compile with gcc 2.95 again.
12232           Patch by Scott Wheeler
12233
12234 2004-01-15  David Schleef  <ds@schleef.org>
12235
12236         * gst/gstcaps.h:
12237         Added gst_caps_is_simple() macro.
12238         * testsuite/caps/caps.c: (test1):
12239         * testsuite/caps/intersect2.c: (main):
12240         * testsuite/caps/intersection.c: (main):
12241         Fixes to make 'make check' work again after removing
12242         gst_caps_is_chained().
12243
12244 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12245
12246         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12247         and additions to the MIDI document.
12248
12249 2004-01-15  David Schleef  <ds@schleef.org>
12250
12251         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12252         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12253         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12254
12255 2004-01-15  David Schleef  <ds@schleef.org>
12256
12257         * gst/gstqueue.c:
12258         * gst/gstqueue.h:
12259         Fix the spelling of "treshold" and make min_threshold actually
12260         affect the queue.
12261
12262 2004-01-15  David Schleef  <ds@schleef.org>
12263
12264         * gst/gstcaps.c:
12265         Add lots of documentation.
12266         * gst/gstcaps.h:
12267         Deprecate a few functions.
12268         * gst/gstpad.c:
12269         Removed use of deprecated functions.
12270
12271 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12272
12273         * gst/gstpad.c: (gst_pad_is_linked):
12274         * gst/gstpad.h:
12275           implement gst_pad_is_linked
12276         * gst/gstelement.h:
12277           reserve space for initiate_state_change
12278
12279 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12280
12281         * gst/autoplug/gstspideridentity.c:
12282         (gst_spider_identity_sink_loop_type_finding):
12283           break infinite loop by just returning instead of looping
12284         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12285           set event time difference correctly. Set it to 1 second instead
12286           of 100ms to be more tolerant
12287         * gst/gstelement.c: (gst_element_set_time):
12288           add debugging output
12289
12290 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12291
12292         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12293           query if buffers are inside the pool, ignore events
12294
12295 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12296
12297         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12298         (gst_clock_set_speed), (gst_clock_set_active),
12299         (gst_clock_is_active), (gst_clock_reset),
12300         (gst_clock_handle_discont):
12301         * gst/gstclock.h:
12302           deprecate old interface and disable functions that aren't in use
12303           anymore.
12304         * gst/gstelement.h:
12305         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12306         (gst_element_set_time), (gst_element_adjust_time):
12307           add concept of "element time" and functions to get/set this time.
12308         * gst/gstelement.c: (gst_element_change_state):
12309           update element time correctly.
12310         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12311           This is a debug message, not a g_critical.
12312         * gst/gstpad.c: (gst_pad_event_default):
12313           handle discontinuous events right with element time.
12314         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12315           update to clocking fixes.
12316           set clocks on elements in READY=>PAUSED. The old behaviour caused
12317           a wrong element time on the first element that started playing.
12318         * gst/schedulers/gstbasicscheduler.c:
12319         (gst_basic_scheduler_class_init):
12320         * gst/schedulers/gstoptimalscheduler.c:
12321         (gst_opt_scheduler_class_init):
12322           remove code that just implements the default behaviour.
12323         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12324           update to use new clocking functions
12325         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12326         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12327           update to test new element time.
12328         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12329           use _get_allowed_caps instead of _get_caps. This catches filtered
12330           caps correctly.
12331         * testsuite/debug/commandline.c:
12332           update for new GST_DEBUG syntax.
12333         * testsuite/threads/Makefile.am:
12334           disable a test that only works sometimes.
12335
12336 2004-01-13  Julien MOUTTE <julien@moutte.net>
12337
12338         * po/LINGUAS: Adding fr.
12339         * po/fr.po: Adding french translation.
12340
12341 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12342
12343         * gst/parse/grammar.y:
12344         * po/POTFILES.in:
12345         * po/nl.po:
12346         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12347           translate parsing error messages
12348
12349 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12350
12351         * po/POTFILES.in: adding gst-launch
12352         * po/nl.po: updated translation, all 99 strings translated
12353         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12354         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12355           fix strings for translation
12356
12357 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12358
12359         * gst/gst.c:
12360           - capitalize beginnings of popt options
12361           - fix strings for translation
12362           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12363
12364 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12365
12366         * po/README: add some notes on how to update translations
12367
12368 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12369
12370         * ABOUT-NLS: removed, is autogenerated from autopoint
12371         * autogen.sh: add autopoint stuff
12372         * configure.ac: fix up gettext stuff
12373         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12374         * gst/elements/gsttypefindelement.c: add header include
12375         * gst/gettext.h: add header, copy from system-installed header
12376         * gst/gst-i18n-app.h: to be included by each app having translations
12377         * gst/gst-i18n-lib.h: to be included by each lib having translations
12378         * gst/gst.c: (init_pre): fix up gettext calls
12379         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12380         * po/LINGUAS: the new way to specify translations present
12381         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12382         * po/Makevars: the variables filled in for GStreamer
12383         * po/POTFILES.in: added new files with translations
12384         * po/de.po: has new strings
12385         * po/nl.po: readded, has new strings
12386
12387 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12388
12389         * gst/gsttag.c: fix some strings marked for translation
12390
12391 2004-01-13  Iain <iain@prettypeople.org>
12392
12393         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12394         group when we add an element to it, cos we unref it when we remove one
12395
12396 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12397
12398         * testsuite/debug/commandline.c: (debug_not_reached):
12399         * testsuite/debug/output.c: (check_message):
12400           fix testsuite
12401
12402 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12403
12404         * examples/cutter/.cvsignore:
12405         * examples/helloworld/.cvsignore:
12406         * examples/launch/.cvsignore:
12407         * examples/manual/.cvsignore:
12408         * examples/mixer/.cvsignore:
12409         * examples/pingpong/.cvsignore:
12410         * examples/plugins/.cvsignore:
12411         * examples/queue/.cvsignore:
12412         * examples/queue2/.cvsignore:
12413         * examples/queue3/.cvsignore:
12414         * examples/queue4/.cvsignore:
12415         * examples/retag/.cvsignore:
12416         * examples/thread/.cvsignore:
12417         * examples/typefind/.cvsignore:
12418         * examples/xml/.cvsignore:
12419         * gst/.cvsignore:
12420         * gst/autoplug/.cvsignore:
12421         * gst/elements/.cvsignore:
12422         * gst/indexers/.cvsignore:
12423         * gst/parse/.cvsignore:
12424         * gst/registries/.cvsignore:
12425         * gst/schedulers/.cvsignore:
12426         * libs/gst/bytestream/.cvsignore:
12427         * libs/gst/control/.cvsignore:
12428         * libs/gst/getbits/.cvsignore:
12429         * tests/.cvsignore:
12430         * tests/bufspeed/.cvsignore:
12431         * tests/instantiate/.cvsignore:
12432         * tests/memchunk/.cvsignore:
12433         * tests/muxing/.cvsignore:
12434         * tests/sched/.cvsignore:
12435         * tests/seeking/.cvsignore:
12436         * tests/threadstate/.cvsignore:
12437         * testsuite/.cvsignore:
12438         * testsuite/caps/.cvsignore:
12439         * testsuite/cleanup/.cvsignore:
12440         * testsuite/dynparams/.cvsignore:
12441         * testsuite/plugin/.cvsignore:
12442         * tools/.cvsignore:
12443           update - this is huge, because it includes *.bb, *.bbg and *.da files
12444           which are generated for gcov.
12445
12446 2004-01-11  David Schleef  <ds@schleef.org>
12447
12448         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12449         a function to parse integers in ways that strto[u]l() does not.
12450
12451 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12452
12453         * tools/gst-inspect.c: (print_caps):
12454           improve output of caps a bit
12455
12456 2004-01-11  David Schleef  <ds@schleef.org>
12457
12458         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12459         inherit correct flags (READONLY and DONTKEEP).
12460
12461 2004-01-11  David Schleef  <ds@schleef.org>
12462
12463         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12464         (gst_filesrc_map_region):
12465         * gst/gstbuffer.c: (_gst_buffer_initialize),
12466         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12467         (gst_buffer_new), (gst_buffer_create_sub),
12468         (gst_buffer_is_span_fast), (gst_buffer_span):
12469         * gst/gstbuffer.h:
12470         Change GstBuffer private structure element names. (all files)
12471         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12472         (gst_queue_link):
12473         * gst/gstqueue.h:
12474         Implement getcaps/pad_link functions that handle the case where
12475         there are data in the queue.
12476
12477 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12478
12479         * gst/elements/gstbufferstore.c:
12480           initialize debugging structure correctly
12481         * gst/elements/gsttee.c: (gst_tee_set_property):
12482           g_object_notify when property was changed
12483         * gst/elements/gsttypefindelement.c:
12484         (gst_type_find_element_change_state):
12485           clear caps correctly
12486
12487 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12488
12489         * gst/gstqueue.c: (gst_queue_init):
12490           Use better defaults for when a queue should block. This
12491           gets rid of jerky playback for quite a few files.
12492           It takes more memory.
12493
12494 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12495
12496         (gst_xml_registry_parse_padtemplate):
12497           make critical message slightly more useful
12498
12499 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12500
12501         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12502         (gst_debug_message_get), (gst_debug_log_default):
12503         * gst/gstinfo.h:
12504           Change gst_debug_log(_valist) to take a const format string.
12505           Change prototype of log function and functions using those to 
12506           take a GstDebugMessage instead of a string that requires using
12507           gst_debug_message_get.
12508
12509 2004-01-08  David Schleef  <ds@schleef.org>
12510
12511         * Makefile.am:
12512         * configure.ac:
12513         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12514         and -ftest-coverage, which allows gcov to show information about
12515         testsuite coverage.
12516
12517 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12518
12519         * gst/gstutils.h:
12520           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12521           GST_PARENT_CALL_WITH_DEFAULT
12522         * gst/elements/gstaggregator.c: 
12523         * gst/elements/gstbufferstore.c: 
12524         * gst/elements/gstfakesink.c: 
12525         * gst/elements/gstfakesrc.c: 
12526         * gst/elements/gstfdsink.c: 
12527         * gst/elements/gstfdsrc.c: 
12528         * gst/elements/gstfilesink.c: 
12529         * gst/elements/gstfilesrc.c: 
12530         * gst/elements/gstidentity.c: 
12531         * gst/elements/gstmd5sink.c: 
12532         * gst/elements/gstmultidisksrc.c:
12533         * gst/elements/gstpipefilter.c: 
12534         * gst/elements/gstshaper.c:
12535         * gst/elements/gststatistics.c:
12536         * gst/elements/gsttee.c:
12537         * gst/elements/gsttypefindelement.c:
12538           use them.
12539
12540 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
12541
12542         * docs/gst/gstreamer-docs.sgml: remove props
12543         * docs/gst/gstreamer-sections.txt: remove props
12544         * docs/gst/tmpl/gst.sgml:
12545         * docs/gst/tmpl/gstbin.sgml:
12546         * docs/gst/tmpl/gstbuffer.sgml:
12547         * docs/gst/tmpl/gstcaps.sgml:
12548         * docs/gst/tmpl/gstclock.sgml:
12549         * docs/gst/tmpl/gstelement.sgml:
12550         * docs/gst/tmpl/gstindex.sgml:
12551         * docs/gst/tmpl/gstobject.sgml:
12552         * docs/gst/tmpl/gstpad.sgml:
12553         * docs/gst/tmpl/gstpadtemplate.sgml:
12554         * docs/gst/tmpl/gstreamer-unused.sgml:
12555         * docs/gst/tmpl/gstthread.sgml:
12556         * docs/gst/tmpl/gstxml.sgml:
12557           sync with code reorganization
12558
12559 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
12560
12561         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12562         Make the 'Could not find compatible pad' message more informative.
12563
12564 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12565                                                                                 
12566         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
12567           Fix for if we pass NULL as property to location.
12568         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
12569         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
12570           Fix for instantiate-test (see below).
12571         * gst/gststructure.c: (_gst_structure_parse_value):
12572           Fix compile error on gcc-2.96.
12573         * configure.ac:
12574         * tests/Makefile.am:
12575         * tests/instantiate/Makefile.am:
12576         * tests/instantiate/create.c: (create_all_elements), (main):
12577           Add a test that instantiates all elements. This makes it easy to
12578           track dead code for old API/design (like setting event functions
12579           on sink pads and so on).
12580
12581 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
12582
12583         * gst/gstcaps.c: (gst_caps_append_structure):
12584           Move the poisoning to allow a NULL structure
12585         * gst/gstevent.c: (_gst_event_free):
12586           When freeing a navigation event, free the structure
12587           also
12588
12589 2004-01-04  David Schleef  <ds@schleef.org>
12590
12591         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12592         Remove usage of gst_pad_proxy_fixate.
12593         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
12594         (gst_caps_split_one), (gst_caps_replace):
12595         Add poisoning code.
12596         * gst/gstmarshal.list:
12597         Add pointer__pointer for fixate signal
12598         * gst/gstpad.c: (gst_real_pad_class_init),
12599         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12600         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
12601         (gst_pad_set_explicit_caps), (gst_pad_template_new):
12602         Add poisoning code. Add fixate signal on RealPad. Change
12603         set_explicit_caps() to take const GstCaps, like try_set_caps().
12604         * gst/gstpad.h:
12605         * testsuite/caps/Makefile.am:
12606         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
12607
12608 2004-01-03  David Schleef  <ds@schleef.org>
12609
12610         * gst/elements/gsttypefindelement.c:
12611         (gst_type_find_element_have_type), (gst_type_find_element_init):
12612         Use gst_pad_use_explicit_caps for src pad.
12613         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
12614         before using it.
12615
12616 2004-01-03  David Schleef  <ds@schleef.org>
12617
12618         * gst/gstelement.c: (gst_element_link_pads_filtered),
12619         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
12620         that linking was successful.
12621         * gst/gstpad.c: (gst_pad_link_free),
12622         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
12623         (gst_pad_link_try), (gst_pad_link_unnegotiate),
12624         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
12625         GstPadLinkReturn correctly between functions, and don't fail
12626         when DELAYED is used (DELAYED is very important).  Better
12627         cleanup on unlinking and unnegotiation.  Should fix some spider
12628         bugs.
12629
12630 2004-01-02  David Schleef  <ds@schleef.org>
12631
12632         * gst/gstelement.c: (gst_element_class_init),
12633         (gst_element_base_class_init): ->padtemplates should be cleared
12634         in base_init, since we need to have a fresh list for every
12635         class.  (Alternately, we chould copy the list and share the
12636         actual pad templates (not the list), but that would require
12637         changing every plugin to move pad template registration from
12638         base_init to class_init.)
12639
12640 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12641
12642         * gst/gstelement.c: (gst_element_class_add_pad_template):
12643           Refuse registering a pad template if another pad template
12644           with the same name already exists (#114715).
12645
12646 2004-01-02  David Schleef  <ds@schleef.org>
12647
12648         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
12649         (gst_caps_is_equal_fixed): Add new function.
12650         * gst/gstcaps.h: ditto.
12651         * gst/gstpad.c: (gst_real_pad_class_init),
12652         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
12653         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
12654         check new caps against existing caps -- if they're the same, return
12655         OK without renegotiating.  caps-nego-failed signal fixed so that
12656         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
12657         to save an extra caps copy.  Don't complete negotiation if a pad
12658         link function returns DELAYED.
12659
12660 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12661
12662         * gst/gstpad.c: (gst_pad_try_relink_filtered):
12663           Fix wrong g_return_if_fail
12664
12665 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
12666
12667         * gst/gstbin.c: (gst_bin_class_init):
12668         Change the marshalling of element_added/element_removed
12669         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
12670         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
12671
12672 2004-01-01  David Schleef  <ds@schleef.org>
12673
12674         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12675         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
12676         (gst_pad_use_explicit_caps):
12677         * gst/gstpad.h:
12678         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
12679         to use an internal getcaps and link fuction so that negotiation
12680         always results in the explicitly set caps.
12681         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
12682         are particularly useful for decoders.
12683
12684 2003-12-31  David Schleef  <ds@schleef.org>
12685
12686         * gst/elements/gstidentity.c: (gst_identity_class_init),
12687         (gst_identity_init), (gst_identity_chain),
12688         (gst_identity_set_property), (gst_identity_get_property):
12689         * gst/elements/gstidentity.h:
12690         * gst/gstqueue.c: (gst_queue_init):
12691           Negotiation fixes.
12692
12693 2003-12-31  David Schleef  <ds@schleef.org>
12694
12695         * gst/gstcaps.c: (gst_caps_intersect),
12696         (_gst_caps_normalize_foreach), (gst_caps_normalize):
12697           Implement gst_caps_normalize().
12698         * testsuite/caps/normalisation.c: (main):
12699           Add an additional test
12700
12701 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12702
12703         * gst/gstqueue.c: (gst_queue_init):
12704           use gst_pad_proxy_getcaps()
12705
12706 2003-12-31  David Schleef  <ds@schleef.org>
12707
12708         * gst/elements/gstshaper.c: (gst_shaper_link):
12709         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12710         * gst/gstqueue.c: (gst_queue_link):
12711           Negotiation fixes.
12712
12713 2003-12-31  David Schleef  <ds@schleef.org>
12714
12715         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
12716         * gst/gstpad.h: Add functions that are useful as default pad
12717         link and fixate functions for elements.
12718
12719 2003-12-30  David Schleef  <ds@schleef.org>
12720
12721         * gst/gstpad.c: (gst_pad_link_try):
12722           Fix segfault when attempting to return to old caps
12723
12724 2003-12-29  David Schleef  <ds@schleef.org>
12725
12726         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
12727         (gst_caps_structure_simplify), (gst_caps_simplify):
12728         * gst/gstcaps.h:
12729           Add simplify function
12730         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
12731         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
12732         * gst/gstpad.h:
12733           Copy over srcnotify, sinknotify when calling old pad_link
12734           functions.  Add new is_negotiated() function.
12735         * gst/gststructure.c: (gst_structure_copy):
12736           Fix an incredibly stupid bug that should have been noticed
12737           weeks ago.  _copy() returned the argument, not the new copy.
12738
12739 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12740
12741         * gst/gstcaps.c: (gst_caps_append):
12742           add sanity checks
12743         * gst/gstcaps.h: (gst_caps_debug):
12744           remove, it doesn't exist anymore.
12745         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
12746         (gst_element_threadsafe_properties_post_run):
12747           make debugging messages not clutter up THREAD debug category
12748         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
12749         (gst_element_change_state):
12750           update to new caps API
12751         * gst/gstinterface.c: (gst_implements_interface_cast):
12752           don't put vital code in g_return_if_fail
12753         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
12754         (gst_pad_link_filtered):
12755           add pst_pad_try_link and use it.
12756         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
12757           implement correctly, deprecate first one.
12758         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
12759           add and implement.
12760         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
12761           implement.
12762         (gst_pad_get_negotiated_caps):
12763           add and implement. Make GST_PAD_CAPS call this function.
12764         (gst_pad_get_caps):
12765           remove unneeded check..
12766         (gst_pad_recover_caps_error):
12767           disable, always return FALSE.
12768         (gst_real_pad_dispose):
12769           don't free caps and appfilter anymore, they're unused.
12770         * gst/gstpad.h:
12771           Reflect changes mentioned above.
12772         * gst/gstsystemclock.c: (gst_system_clock_wait):
12773           Make 'clock is way behind' a debugging message.
12774         * gst/gstthread.c: (gst_thread_change_state):
12775           Fix debugging message
12776
12777 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12778
12779         * gst/gstinfo.h:
12780           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
12781         * docs/gst/tmpl/gstreamer-unused.sgml:
12782           removed all traces of cvs conflicts
12783
12784 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12785
12786         * configure.ac:
12787         * gst/schedulers/cothreads_compat.h:
12788         * libs/Makefile.am:
12789           remove last instances of wingo cothread usage
12790
12791 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12792
12793         * gst/gstplugin.c:
12794         * gst/gstversion.h.in:
12795         * gst/parse/grammar.y:
12796           change comment block from /** to /* when not gtk-doc comments
12797
12798 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12799
12800         * gst/gst.c: whitespace and doc style fixes
12801
12802 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12803
12804         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
12805
12806 2003-12-24  Colin Walters  <walters@verbum.org>
12807
12808         * gst/elements/gsttypefindelement.c:
12809           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
12810           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
12811           Don't double-free caps.
12812
12813 2003-12-23  David Schleef  <ds@schleef.org>
12814
12815         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
12816           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
12817           Many little fixes and additions of debug statements to
12818           get rhythmbox working.
12819
12820 2003-12-23  Colin Walters  <walters@verbum.org>
12821
12822         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
12823         Use GST_PAD_LINK_SUCCESSFUL.
12824
12825 2003-12-23  David Schleef  <ds@schleef.org>
12826
12827         * gst/elements/gstaggregator.c:
12828         * gst/elements/gsttee.c:
12829           Use gst_pad_proxy_getcaps().
12830         * gst/gstpad.c:
12831         * gst/gstpad.h:
12832           Add gst_pad_proxy_getcaps(), which filter elements can use
12833           as a generic getcaps implementation.
12834           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
12835           was advertised.
12836
12837 2003-12-23  David Schleef  <ds@schleef.org>
12838
12839         * gst/gstpad.c:
12840           Rearrange/rewrite much of the pad negotiation code, since it
12841           resembled pasta.  This actually changes the way some
12842           negotiation works, since the previous code was inconsistent
12843           depending on how it was invoked.  Add (internal) structure
12844           GstPadLink, which is used to hold some information (more in
12845           the future) about the link between two pads.  Fixes a number
12846           of bugs, including random lossage of filter caps when the
12847           initial negotiation is delayed.  A few functions are still
12848           unimplemented.
12849         * gst/gstpad.h:
12850           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
12851           these when testing GstPadLinkReturn values instead of comparing
12852           directly.
12853
12854 2003-12-23  David Schleef  <ds@schleef.org>
12855
12856         * gst/gstvalue.c: 
12857         * gst/gstvalue.h:
12858           Rearrange lots of code.  Change registration of compare function
12859           into registration of compare/serialize/deserialize functions.
12860           Doesn't include implementation of gst_value_[de]serialize(),
12861           but that should be easy.
12862
12863 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12864
12865         * docs/gst/gstreamer-sections.txt:
12866         * docs/gst/tmpl/gstprops.sgml: removed
12867         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
12868           David removed props and caps code, so let's remove their docs as well.
12869           Removed all no longer existing symbols from gstreamer-sections.txt
12870           
12871 2003-12-22  Colin Walters  <walters@verbum.org>
12872
12873         * gst/gsttaginterface.c, gst/gsttaginterface.h,
12874           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
12875           of tags directly.
12876
12877 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12878
12879         * gst/elements/gstelements.c:
12880           Set ranks of elements to NONE, so the autoplugger doesn't use them.
12881         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
12882           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
12883           gst_caps (peer).
12884
12885 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12886
12887         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
12888         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
12889         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
12890         (gst_spider_identity_sink_loop_type_finding):
12891         * gst/autoplug/gstspideridentity.h:
12892           Fix autoplugging in spider element, so it works with new caps.
12893           This was mainly caused by identifying empty caps incorrectly.
12894
12895 2003-12-22  David Schleef  <ds@schleef.org>
12896
12897         * gststructure.c, gstvalue.c, gstvalue.h: Add
12898           gst_value_init_and_copy() and use it, to avoid silly mistakes in
12899           using g_value_copy()
12900
12901 2003-12-21  David Schleef  <ds@schleef.org>
12902
12903         * many, many files: Merge CAPS branch.  This includes:
12904           - implemention of GstValue and several GstValue types
12905           - implemention of GstStructure
12906           - entire rewrite of GstCaps
12907           - removal of GstProps
12908           - many changes to GstPad to compensate for new caps paradigm
12909           - removal of GstBufferpool
12910         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
12911         gstvalue.h, gst/gstcaps[2]*.[ch]:
12912           - rename gstcaps2.[ch] to gstcaps.[ch]
12913
12914 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12915
12916         * gst/gstqueue.c: (gst_queue_handle_pending_events),
12917         (gst_queue_chain), (gst_queue_handle_src_event):
12918           implement timeout for sending events. Workaround for if the
12919           pipeline on this queue is not passing any data.
12920
12921 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
12922                                                                                 
12923         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
12924         * moved CVS to freedesktop.org
12925