gst/base/gstbasesink.*: Store and use discont values when syncing buffers as describe...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-16  Wim Taymans  <wim@fluendo.com>
2
3         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4         (gst_base_sink_event), (gst_base_sink_get_times),
5         (gst_base_sink_do_sync), (gst_base_sink_change_state):
6         * gst/base/gstbasesink.h:
7         Store and use discont values when syncing buffers as described
8         in design docs.
9         
10         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
11         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
12         (gst_base_src_activate_push):
13         Push discont event when starting.
14
15         * gst/elements/gstidentity.c: (gst_identity_transform):
16         Small cleanups.
17
18         * gst/gstbin.c: (gst_bin_change_state):
19         Small cleanups in base_time  distribution.
20
21         * gst/gstelement.c: (gst_element_set_base_time),
22         (gst_element_get_base_time), (gst_element_change_state):
23         * gst/gstelement.h:
24         Added methods for the base_time of the element.
25         Some MT fixes.
26
27         * gst/gstpipeline.c: (gst_pipeline_send_event),
28         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
29         (gst_pipeline_get_last_stream_time):
30         * gst/gstpipeline.h:
31         MT fixes.
32         Handle seeking as described in design doc, remove stream_time
33         hack.
34         Cleanups clock and stream_time selection code. Added accessors
35         for the stream_time.
36         
37
38 2005-07-16  Andy Wingo  <wingo@pobox.com>
39
40         * gst/gsterror.c (_gst_core_errors_init): Use the magic word..
41
42 2005-07-16  Wim Taymans  <wim@fluendo.com>
43
44         * check/gst/gstbin.c: (GST_START_TEST):
45         Make elements silent as the deep_notify refs the
46         parent, which might make the test fail.
47
48         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
49         Don't hold the lock for too long.
50
51 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
52
53         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
54           Don't unref the caps we passed to gst_caps_make_writable() after
55           passing them. gst_caps_make_writable() will do that for us.
56
57 2005-07-15  Andy Wingo  <wingo@pobox.com>
58
59         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
60         (#157311).
61
62         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
63         own marshalling function for the handoff signal. Properly type the
64         buffer as a buffer. Fixes some warnings. Should do a more general
65         solution.
66         (gst_identity_class_init): Plug into the right marshaller.
67
68 2005-07-15  Wim Taymans  <wim@fluendo.com>
69
70         * docs/design/part-TODO.txt:
71         * docs/design/part-clocks.txt:
72         * docs/design/part-element-sink.txt:
73         * docs/design/part-events.txt:
74         * docs/design/part-gstpipeline.txt:
75         Updated docs, mostly DISCONT related.
76
77 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
78
79         * docs/pwg/building-pads.xml:
80           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
81
82 2005-07-15  Andy Wingo  <wingo@pobox.com>
83
84         * tools/gst-typefind.c: Update, add copyright block.
85
86         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
87         Normalize and truncate caps before fixation.
88
89         * gst/gstcaps.h:
90         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
91         discards all but the first structure from its argument.
92
93 2005-07-15  Wim Taymans  <wim@fluendo.com>
94
95         * gst/base/gstbasetransform.c: (gst_base_transform_init),
96         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
97         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
98         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
99         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
100         (gst_base_transform_chain), (gst_base_transform_change_state),
101         (gst_base_transform_set_passthrough),
102         (gst_base_transform_is_passthrough):
103         * gst/base/gstbasetransform.h:
104         Make passthrough work using the bufferpools.
105         Changed API a bit, subclasses have to write into a buffer
106         provided by the base class.
107         More debug info in nego functions.
108         
109         * gst/elements/gstidentity.c: (gst_identity_init),
110         (gst_identity_transform):
111         Port to new base class.
112
113 2005-07-15  Wim Taymans  <wim@fluendo.com>
114
115         * gst/gstmessage.c: (gst_message_new_state_changed):
116         * tools/gst-launch.c: (event_loop), (main):
117         Totally dump messages in -launch with the -m option.
118         Fix message name for State messages,
119
120 2005-07-14  Wim Taymans  <wim@fluendo.com>
121
122         * gst/base/gstbasesrc.c: (gst_base_src_loop):
123         Post error messages on errors.
124
125 2005-07-14  Wim Taymans  <wim@fluendo.com>
126
127         * gst/gstcaps.c: (gst_caps_do_simplify):
128         Remove debug info.
129
130         * gst/gsterror.h:
131         Define error for stream stopped.
132
133         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
134         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
135         Do proper return values.
136
137         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
138         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
139         (gst_pad_get_range):
140         Better return values.
141
142         * gst/gstpad.h:
143         Reorganise return values, add macro to check for fatal errors.
144
145         * gst/gstqueue.c: (gst_queue_chain):
146         Return proper GstFlowReturn values,
147
148 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
149
150         * docs/gst/gstreamer-sections.txt:
151         * docs/gst/gstreamer.types:
152         * docs/gst/tmpl/gst.sgml:
153         * docs/gst/tmpl/gstbasesink.sgml:
154         * docs/gst/tmpl/gstbasesrc.sgml:
155         * docs/gst/tmpl/gstbasetransform.sgml:
156         * docs/gst/tmpl/gstbin.sgml:
157         * docs/gst/tmpl/gstbuffer.sgml:
158         * docs/gst/tmpl/gstcaps.sgml:
159         * docs/gst/tmpl/gstclock.sgml:
160         * docs/gst/tmpl/gstcompat.sgml:
161         * docs/gst/tmpl/gstconfig.sgml:
162         * docs/gst/tmpl/gstelement.sgml:
163         * docs/gst/tmpl/gstelementdetails.sgml:
164         * docs/gst/tmpl/gstelementfactory.sgml:
165         * docs/gst/tmpl/gstenumtypes.sgml:
166         * docs/gst/tmpl/gsterror.sgml:
167         * docs/gst/tmpl/gstevent.sgml:
168         * docs/gst/tmpl/gstfakesink.sgml:
169         * docs/gst/tmpl/gstfakesrc.sgml:
170         * docs/gst/tmpl/gstfilesink.sgml:
171         * docs/gst/tmpl/gstfilesrc.sgml:
172         * docs/gst/tmpl/gstfilter.sgml:
173         * docs/gst/tmpl/gstformat.sgml:
174         * docs/gst/tmpl/gstghostpad.sgml:
175         * docs/gst/tmpl/gstimplementsinterface.sgml:
176         * docs/gst/tmpl/gstindex.sgml:
177         * docs/gst/tmpl/gstindexfactory.sgml:
178         * docs/gst/tmpl/gstinfo.sgml:
179         * docs/gst/tmpl/gstiterator.sgml:
180         * docs/gst/tmpl/gstmacros.sgml:
181         * docs/gst/tmpl/gstmemchunk.sgml:
182         * docs/gst/tmpl/gstminiobject.sgml:
183         * docs/gst/tmpl/gstobject.sgml:
184         * docs/gst/tmpl/gstpad.sgml:
185         * docs/gst/tmpl/gstpadtemplate.sgml:
186         * docs/gst/tmpl/gstparse.sgml:
187         * docs/gst/tmpl/gstpipeline.sgml:
188         * docs/gst/tmpl/gstplugin.sgml:
189         * docs/gst/tmpl/gstpluginfeature.sgml:
190         * docs/gst/tmpl/gstquery.sgml:
191         * docs/gst/tmpl/gstqueue.sgml:
192         * docs/gst/tmpl/gstregistry.sgml:
193         * docs/gst/tmpl/gstregistrypool.sgml:
194         * docs/gst/tmpl/gstscheduler.sgml:
195         * docs/gst/tmpl/gstschedulerfactory.sgml:
196         * docs/gst/tmpl/gststructure.sgml:
197         * docs/gst/tmpl/gstsystemclock.sgml:
198         * docs/gst/tmpl/gsttaglist.sgml:
199         * docs/gst/tmpl/gsttagsetter.sgml:
200         * docs/gst/tmpl/gsttrace.sgml:
201         * docs/gst/tmpl/gsttrashstack.sgml:
202         * docs/gst/tmpl/gsttypefind.sgml:
203         * docs/gst/tmpl/gsttypefindfactory.sgml:
204         * docs/gst/tmpl/gsttypes.sgml:
205         * docs/gst/tmpl/gsturihandler.sgml:
206         * docs/gst/tmpl/gsturitype.sgml:
207         * docs/gst/tmpl/gstutils.sgml:
208         * docs/gst/tmpl/gstvalue.sgml:
209         * docs/gst/tmpl/gstversion.sgml:
210         * docs/gst/tmpl/gstxml.sgml:
211         * docs/libs/tmpl/gstcontrol.sgml:
212         * docs/libs/tmpl/gstdataprotocol.sgml:
213         * docs/libs/tmpl/gstdparam.sgml:
214         * docs/libs/tmpl/gstdplinint.sgml:
215         * docs/libs/tmpl/gstdpman.sgml:
216         * docs/libs/tmpl/gstdpsmooth.sgml:
217         * docs/libs/tmpl/gstgetbits.sgml:
218         * docs/libs/tmpl/gstunitconvert.sgml:
219         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
220         (gst_push_src_base_init), (gst_push_src_class_init),
221         (gst_push_src_init), (gst_push_src_create):
222         * gst/base/gstpushsrc.h:
223         * gst/elements/gstelements.c:
224         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
225         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
226         (gst_fake_sink_init), (gst_fake_sink_set_property),
227         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
228         (gst_fake_sink_event), (gst_fake_sink_preroll),
229         (gst_fake_sink_render), (gst_fake_sink_change_state):
230         * gst/elements/gstfakesink.h:
231         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
232         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
233         (gst_fake_src_base_init), (gst_fake_src_class_init),
234         (gst_fake_src_init), (gst_fake_src_event_handler),
235         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
236         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
237         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
238         (gst_fake_src_create_buffer), (gst_fake_src_create),
239         (gst_fake_src_start), (gst_fake_src_stop):
240         * gst/elements/gstfakesrc.h:
241         * gst/elements/gstfilesink.c: (_do_init),
242         (gst_file_sink_base_init), (gst_file_sink_class_init),
243         (gst_file_sink_init), (gst_file_sink_dispose),
244         (gst_file_sink_set_location), (gst_file_sink_set_property),
245         (gst_file_sink_get_property), (gst_file_sink_open_file),
246         (gst_file_sink_close_file), (gst_file_sink_query),
247         (gst_file_sink_event), (gst_file_sink_render),
248         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
249         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
250         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
251         * gst/elements/gstfilesink.h:
252         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
253         (gst_file_src_class_init), (gst_file_src_init),
254         (gst_file_src_finalize), (gst_file_src_set_location),
255         (gst_file_src_set_property), (gst_file_src_get_property),
256         (gst_file_src_map_region), (gst_file_src_map_small_region),
257         (gst_file_src_create_mmap), (gst_file_src_create_read),
258         (gst_file_src_create), (gst_file_src_is_seekable),
259         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
260         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
261         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
262         (gst_file_src_uri_handler_init):
263         * gst/elements/gstfilesrc.h:
264           more autistic cleanliness in functions/names/defines
265
266 2005-07-13  Andy Wingo  <wingo@pobox.com>
267
268         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
269         source couldn't negotiate.
270
271         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
272         connections again.
273
274         * gst/gstutils.h:
275         * gst/gstutils.c (gst_element_link_pads_filtered): New old
276         function. I am channeling Hades. Put your boots on suckers!!!
277
278 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
279
280         * testsuite/caps/Makefile.am:
281         * testsuite/caps/value_compare.c:
282         * testsuite/caps/value_intersect.c:
283         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
284           move two testsuite apps over to the check dir
285
286 2005-07-12  Wim Taymans  <wim@fluendo.com>
287
288         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
289         Added more debug info in the negotiate process.
290
291         * gst/gstmessage.h:
292         Prepare for segment playback.
293
294         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
295         Better debugging.
296
297         * gst/gstutils.c:
298         Some more docs.
299
300         * tools/gst-launch.c: (main):
301         NULL pipeline on errors.
302
303 2005-07-12  Andy Wingo  <wingo@pobox.com>
304
305         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
306         not it comes from a malloc region. Make sure our copy gets freed.
307
308 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
309
310         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
311         * check/gst/gstmessage.c: (GST_START_TEST):
312         * check/gst/gststructure.c: (GST_START_TEST),
313         (gst_structure_suite), (main):
314           more testing
315         * gst/gstelement.c: (gst_element_message_full):
316           clean up GError and debug string now that they get copied
317         * gst/gstmessage.c: (gst_message_new_error),
318         (gst_message_new_warning), (gst_message_parse_error),
319         (gst_message_parse_warning):
320           use GST_TYPE_G_ERROR for structure_new, and take copies of
321           arguments, so that we don't mess up refcounting
322
323 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
324
325         * check/Makefile.am:
326           add per-test valgrind targets
327         * check/gst-libs/gdp.c: (GST_START_TEST),
328         (gst_data_protocol_suite), (main):
329           clean up
330
331 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
332
333         * check/Makefile.am:
334           instate more valgrindable tests
335         * check/elements/gstfakesrc.c: (chain_func), (event_func),
336         (GST_START_TEST), (fakesrc_suite):
337         * check/gst/gstpad.c: (GST_START_TEST):
338         * check/gst/gststructure.c: (GST_START_TEST):
339           fix test leaks
340         * docs/gst/tmpl/gstminiobject.sgml:
341         * gst/gstpad.c: (gst_pad_finalize):
342           fix the static mutex leak
343
344 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
345
346         * check/Makefile.am:
347           add two more tests for valgrinding
348         * check/gst/gstvalue.c: (GST_START_TEST):
349           test refcount of deserialized buffer, found a leak
350         * docs/gst/gstreamer-docs.sgml:
351         * docs/gst/gstreamer-sections.txt:
352         * docs/gst/gstreamer.types:
353         * docs/gst/tmpl/gstminiobject.sgml:
354           add miniobject to docs
355         * gst/gstminiobject.c:
356           add some docs
357         * gst/gstvalue.c: (gst_value_deserialize_buffer),
358         (gst_string_unwrap):
359           fix a hard-to-find invalid write for one of the tests
360           fix a leak for deserialized buffers
361
362 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
363
364         * docs/pwg/advanced-events.xml:
365         * docs/pwg/advanced-request.xml:
366         * docs/pwg/advanced-scheduling.xml:
367         * docs/pwg/appendix-porting.xml:
368         * docs/pwg/building-boiler.xml:
369         * docs/pwg/intro-preface.xml:
370         * docs/pwg/other-ntoone.xml:
371           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
372           of example code and explanation for pad activation, loop() and
373           getrange() functions and a bit more. Remove old comments pointing
374           to loop-functions.
375         * examples/pwg/Makefile.am:
376           Add loop/getrange examples.
377
378 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
379
380         * configure.ac:
381           check for valgrind binary + some fixes
382         * check/gst.supp:
383           valgrind suppressions for the tests
384         * check/Makefile.am:
385           add a valgrind: target that valgrinds the unit tests
386         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
387         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
388         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
389         * check/gst/gstghostpad.c:
390           added some cleanup
391         * check/gst/gstdata.c:
392           removed
393         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
394         (thread_unref), (gst_mini_object_suite), (main):
395           added
396         * gst/gst.c: (gst_deinit):
397         * gst/gst.h:
398           add a method to clean up.
399         * gst/gstsystemclock.c: (gst_system_clock_dispose),
400         (gst_system_clock_obtain):
401           allow for disposing the system clock.
402         * tools/gst-launch.c: (main):
403           deinit
404
405 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
406
407         * docs/gst/tmpl/gstbasesrc.sgml:
408         * docs/gst/tmpl/gstfakesrc.sgml:
409         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
410         (gst_base_src_init), (gst_base_src_set_property),
411         (gst_base_src_get_property), (gst_base_src_get_range),
412         (gst_base_src_start):
413         * gst/base/gstbasesrc.h:
414           add num-buffers property
415         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
416         (gst_fakesrc_init), (gst_fakesrc_set_property),
417         (gst_fakesrc_get_property), (gst_fakesrc_create),
418         (gst_fakesrc_start):
419           remove num-buffers property
420
421 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
422
423         * docs/gst/gstreamer-sections.txt:
424         * docs/gst/tmpl/gstbasesink.sgml:
425         * docs/gst/tmpl/gstbasesrc.sgml:
426         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
427         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
428         (gst_base_sink_finalize), (gst_base_sink_set_clock),
429         (gst_base_sink_set_property), (gst_base_sink_get_property),
430         (gst_base_sink_handle_object), (gst_base_sink_event),
431         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
432         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
433         (gst_base_sink_loop), (gst_base_sink_deactivate),
434         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
435         (gst_base_sink_change_state):
436         * gst/base/gstbasesink.h:
437         * gst/base/gstbasesrc.h:
438         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
439         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
440         (gst_filesink_init):
441           more macro splitting
442
443 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
444
445         * gst/gstelement.c: (gst_element_get_bus):
446           add debug
447         * tools/gst-launch.c: (check_intr), (event_loop):
448           fix bus leaks
449
450 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
451
452         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
453           fix a caps leak
454
455 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
456
457         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
458         (gst_base_src_finalize):
459           add finalize method and clean up properly
460         * gst/gstpipeline.c: (gst_pipeline_dispose):
461           add debug
462
463 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
464
465         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
466         (gst_bin_suite):
467           add more things to check
468         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
469         * gst/gstelement.c:
470           more debug
471
472 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
473
474         * check/elements/gstfakesrc.c: (chain_func), (event_func),
475         (GST_START_TEST), (fakesrc_suite):
476         * check/gst-libs/gdp.c: (GST_START_TEST):
477         * check/gst/gst.c: (GST_START_TEST):
478         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
479         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
480         * check/gst/gstbus.c: (GST_START_TEST):
481         * check/gst/gstcaps.c: (GST_START_TEST):
482         * check/gst/gstdata.c: (GST_START_TEST):
483         * check/gst/gstelement.c: (GST_START_TEST):
484         * check/gst/gstghostpad.c: (GST_START_TEST):
485         * check/gst/gstiterator.c: (GST_START_TEST):
486         * check/gst/gstmessage.c: (GST_START_TEST):
487         * check/gst/gstobject.c: (GST_START_TEST):
488         * check/gst/gstpad.c: (GST_START_TEST):
489         * check/gst/gststructure.c: (GST_START_TEST):
490         * check/gst/gstsystemclock.c: (GST_START_TEST),
491         (gst_systemclock_suite):
492         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
493         * check/gst/gstvalue.c: (GST_START_TEST):
494         * check/pipelines/cleanup.c: (GST_START_TEST):
495         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
496         * check/states/sinks.c: (GST_START_TEST):
497         * check/gstcheck.c: (gst_check_init):
498         * check/gstcheck.h:
499           add debugging category
500           use GST_START_TEST now, so we add a debug line
501
502 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
503
504         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
505           add test for state change message on a bin
506         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
507           add another test
508         * gst/gstbin.c: (gst_bin_init):
509         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
510         * gst/gstelement.c: (gst_element_post_message),
511         (gst_element_set_state):
512         * gst/gstelementfactory.c: (gst_element_factory_create):
513         * gst/gstmessage.c: (gst_message_new):
514         * gst/gstscheduler.c:
515           various debugging additions and cleanups
516
517 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
518
519         * check/Makefile.am:
520         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
521         (main):
522           adding tests for elements
523         * gst/gstelement.c: (gst_element_dispose):
524
525 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
526
527         * gst/registries/gstlibxmlregistry.c: (load_feature):
528           plug more leaks.  A simple gst_init() now is leakfree, yay.
529
530 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
531
532         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
533         (gst_xml_registry_load):
534           plug another memleak
535
536 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
537
538         * configure.ac:
539           use GST_SET_ERROR_CFLAGS
540         * docs/faq/cvs.xml:
541           change to ERROR_CFLAGS
542
543 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
544
545         * configure.ac:
546           make GST_ERROR_CFLAGS overridable and re-enable Werror
547         * docs/faq/cvs.xml:
548           add a note about error CFLAGS
549         * docs/gst/tmpl/gstfakesrc.sgml:
550         * gst/elements/gstfakesrc.c:
551           comment out some unused code
552         * gst/gst.c: (split_and_iterate):
553         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
554         (load_feature):
555           plug some memleaks
556
557 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
558
559         * common/Makefile.am:
560         * common/gtk-doc.mak:
561         * docs/gst/Makefile.am:
562           factor out gtk-doc.mak
563
564 2005-07-07  Wim Taymans  <wim@fluendo.com>
565
566         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
567         (gst_thread_scheduler_dispose):
568         Unlock the STREAM_LOCK completely.
569
570 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
571
572         * check/Makefile.am:
573         * check/elements/.cvsignore:
574         * check/elements/gstfakesrc.c: (chain_func), (event_func),
575         (START_TEST), (fakesrc_suite), (main):
576         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
577         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
578         (gst_fakesrc_create), (gst_fakesrc_start):
579         * gst/elements/gstfakesrc.h:
580           adding a first element test
581
582 2005-07-07  Andy Wingo  <wingo@pobox.com>
583
584         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
585         debug message.
586
587 2005-07-07  Wim Taymans  <wim@fluendo.com>
588
589         * gst/gstquery.c:
590         * gst/gstquery.h:
591         Remove old types
592
593 2005-07-07  Wim Taymans  <wim@fluendo.com>
594
595         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
596         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
597         Allow subclasses to implement their own negotiation.
598
599 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
600
601         * docs/design/part-gstbin.txt:
602         * docs/design/part-gstpipeline.txt:
603           Update design notes to reflect the movement of
604           responsibility for bus handling from GstPipeline to
605           GstBin
606
607 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
608
609         * configure.ac:
610           Remove unnecessary queue2/3/4 examples.
611
612 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
613
614         * examples/Makefile.am:
615         * examples/helloworld/helloworld.c: (event_loop), (main):
616         * examples/queue/queue.c: (event_loop), (main):
617         * examples/queue2/queue2.c: (main):
618           Update a couple of the examples to work again.
619
620         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
621         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
622          Spelling corrections and extra debug.
623         
624         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
625         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
626         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
627         * gst/gstbin.h:
628         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
629         (gst_pipeline_change_state):
630         * gst/gstpipeline.h:
631           Move the bus handler for children to the GstBin, and create a
632           separate bus for receiving messages from children to the one the
633           bus sends 'upwards' on.
634
635 2005-07-06  Wim Taymans  <wim@fluendo.com>
636
637         * gst/base/README:
638         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
639         (gst_base_sink_handle_object), (gst_base_sink_loop),
640         (gst_base_sink_change_state):
641         * gst/base/gstbasesink.h:
642         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
643         (gst_base_src_init), (gst_base_src_setcaps),
644         (gst_base_src_getcaps), (gst_base_src_loop),
645         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
646         (gst_base_src_start), (gst_base_src_change_state):
647         * gst/base/gstbasesrc.h:
648         Make basesrc negotiate.
649         Handle the case where preroll fails in basesink.
650         Update README.
651
652 2005-07-06  Wim Taymans  <wim@fluendo.com>
653
654         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
655         Implement the fixate function.
656         Clean up acceptcaps.
657
658 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
659
660         * docs/pwg/building-filterfactory.xml:
661         * docs/pwg/pwg.xml:
662           Remove never-written filter-factory chapter; I'll add the various
663           base classes to part 4 ("other element types") later on.
664
665 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
666
667         * docs/pwg/advanced-negotiation.xml:
668         * docs/pwg/building-boiler.xml:
669         * docs/pwg/building-pads.xml:
670         * docs/pwg/pwg.xml:
671         * examples/pwg/Makefile.am:
672           Add a chapter on caps negotiation, simplify the original code
673           samples a bit w.r.t. caps negotiation, add link to the advanced
674           section. Add a bunch of examples showing different use cases of
675           different types of caps negotiation. Upstream renegotiation isn't
676           fully documented yet since nobody knows how that works.
677
678 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
679
680         * check/gst/gstpad.c:
681         * check/gstcheck.c:
682         * gst/gstpad.c: (gst_pad_get_internal_links_default):
683           if pad has no parent, return NULL as list of internal links
684
685 2005-07-05  Andy Wingo  <wingo@pobox.com>
686
687         * gst/elements/gstfilesrc.c:
688         * gst/elements/gstfakesrc.c: 
689         * gst/base/gstpushsrc.c:
690         * gst/base/gstbasesrc.h: 
691         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
692         
693 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
694
695         * Makefile.am:
696           better report generation target (lcov needs a patch)
697
698 2005-07-05  Andy Wingo  <wingo@pobox.com>
699
700         * gst/elements, testsuite: Null if we got it...
701
702 2005-07-05  Wim Taymans  <wim@fluendo.com>
703
704         * configure.ac:
705         * libs/gst/dataprotocol/Makefile.am:
706         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
707         * libs/gst/dataprotocol/dataprotocol.h:
708         * pkgconfig/Makefile.am:
709         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
710         * pkgconfig/gstreamer-dataprotocol.pc.in:
711         Ported dataprotol to 0.9. 
712         Added pkgconfig files.
713
714 2005-07-05  Andy Wingo  <wingo@pobox.com>
715
716         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
717         Default to returning TRUE for the case when tranform_caps returns
718         a fixed caps, like for identity or volume.
719
720         * check/gst/gstbus.c (pound_bus_with_messages): 
721         * check/gst/gstmessage.c (START_TEST): 
722         * check/pipelines/simple_launch_lines.c (got_handoff): Application
723         message API change.
724
725         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
726         logic weaks here: always run transform_caps, trying passthrough
727         operation only if the original caps intersects with the transform.
728
729         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
730         source and sink caps.
731
732         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
733         Intersect the peer caps with the pad template before going into
734         transform_caps.
735         (gst_base_transform_transform_caps): More debugging.
736
737         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
738         src argument.
739
740 2005-07-04  Edward Hervey  <edward@fluendo.com>
741
742         * gst/gstutils.c:
743         * gst/gstutils.h:
744         (gst_pad_add_*_probe): now returns the signal id for better wrapping
745         in bindings.
746
747 2005-07-04  Andy Wingo  <wingo@pobox.com>
748
749         * check/gst/gstpad.c: Only set explicit caps on pads.
750
751 2005-07-01  Andy Wingo  <wingo@pobox.com>
752
753         * tests/network-clock.scm: Commentary update.
754
755         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
756         Didn't really make sense, not implementable with basetransform,
757         etc.
758         (gst_identity_transform): Unref inbuf via make_writable. Feeble
759         attempt at implementing the sync property, needs an unlock method.
760
761         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
762         New func, by default returns the same caps (the identity
763         transformation).
764         (gst_base_transform_getcaps): Uses transform_caps to return
765         something sensible.
766         (gst_base_transform_setcaps): Complicated logic to get caps on
767         both pads, even if they are different, and to call set_caps once
768         for every time both pads get their caps set.
769         (gst_base_transform_handle_buffer): Give the ref to the transform
770         function. Allows in-place modification of the buffer.
771
772         * gst/base/gstbasetransform.h (transform_caps): New class method.
773         Given caps on one side, what can I do on the other.
774         (set_caps): Take two caps, one for each side of the element.
775
776         * gst/gstpad.h:
777         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
778         caps in place. This is safe because we can check the mutability of
779         the caps, and a good idea because fixate functions are just called
780         as a matter of last resort. (Not actually implemented.)
781         (gst_pad_set_caps): If the caps we're setting is actually the same
782         as the existing pad caps, just update the pointer without calling
783         setcaps. Assert that caps is either NULL or fixed, as per the
784         docs.
785
786         * gst/gstghostpad.c: Update for fixate changes.
787
788 2005-07-02  Andy Wingo  <wingo@pobox.com>
789
790         * gst/gstcaps.c:
791         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
792         two refcounts makes it immutable, which is enough. Doc more.
793
794 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
795
796         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
797           Put the mini_object into GValue as a mini_object,
798           not a gpointer, since that's how we declared
799           the signal.
800
801 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
802
803         * examples/pwg/Makefile.am:
804           Fix buildbot again.
805
806 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
807
808         * docs/pwg/building-testapp.xml:
809           Add extra check.
810         * examples/pwg/Makefile.am:
811           Fix buildbot.
812
813 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
814
815         * configure.ac:
816         * examples/Makefile.am:
817         * examples/pwg/Makefile.am:
818         * examples/pwg/extract.pl:
819           Enable building the PWG examples.
820         * docs/pwg/advanced-interfaces.xml:
821           Add URI interface stub.
822         * docs/pwg/advanced-types.xml:
823         * docs/pwg/other-autoplugger.xml:
824         * docs/pwg/appendix-porting.xml:
825         * docs/pwg/pwg.xml:
826           Add porting guide (mostly stubs), remove autoplugging (see ADM).
827         * docs/pwg/building-boiler.xml:
828         * docs/pwg/building-chainfn.xml:
829         * docs/pwg/building-pads.xml:
830         * docs/pwg/building-props.xml:
831         * docs/pwg/building-state.xml:
832         * docs/pwg/building-testapp.xml:
833           Update the building-*.xml parts for 0.9 changes. All examples
834           code blocks compile in examples/pwg/*.
835
836 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
837
838         * docs/manual/advanced-autoplugging.xml:
839         * docs/manual/appendix-checklist.xml:
840         * docs/manual/appendix-integration.xml:
841         * docs/manual/highlevel-components.xml:
842           Fix playbin/decodebin examples, update docs a bit, mention bus
843           instead of signals in various places, mention kmplayer and
844           kaffeine since they have a working GStreamer backend in the KDE
845           section.
846
847 2005-06-30  Wim Taymans  <wim@fluendo.com>
848
849         * CHANGES-0.9:
850         * docs/design/draft-ghostpads.txt:
851         * docs/design/draft-push-pull.txt:
852         * docs/design/draft-query.txt:
853         * docs/design/part-TODO.txt:
854         * docs/design/part-query.txt:
855         Added CHANGES-0.9 doc, updated status of other docs.
856         
857         * gst/gstquery.h:
858         Remove "hmm" macro
859
860 2005-06-30  Wim Taymans  <wim@fluendo.com>
861
862         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
863         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
864         (gst_base_sink_change_state):
865         * gst/base/gstbasesink.h:
866         Some tweaks, only EOS and a buffer complete a preroll.
867
868 2005-06-30  Andy Wingo  <wingo@pobox.com>
869
870         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
871         activate_push down to the internal pad as well.
872
873 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
874
875         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
876
877         * gst/gsttaginterface.c:
878           Some documentation fixes (#307394 and #307397).
879
880 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
881
882         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
883
884         * gst/gstvalue.c: (gst_value_intersect_list):
885           Fix memleak (#309125).
886
887 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
888
889         * docs/manual/advanced-dataaccess.xml:
890           Fix fakesrc example to compile; doesn't work, bug somewhere...?
891         * docs/manual/basics-pads.xml:
892           Add reference for filtered caps to above chapter.
893
894 2005-06-30  Wim Taymans  <wim@fluendo.com>
895
896         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
897         (gst_bin_change_state):
898         Probes are gone.
899         Lame attempt at making the state change function a bit
900         more readable.
901
902 2005-06-30  Wim Taymans  <wim@fluendo.com>
903
904         * docs/design/part-clocks.txt:
905         * docs/design/part-element-sink.txt:
906         * docs/design/part-events.txt:
907         * docs/design/part-preroll.txt:
908         * docs/design/part-states.txt:
909         Some more tweeks and additions to the docs.
910
911 2005-06-30  Wim Taymans  <wim@fluendo.com>
912
913         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
914         (default_have_data), (gst_pad_class_init), (gst_pad_init),
915         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
916         (gst_pad_check_pull_range), (gst_pad_get_range),
917         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
918         * gst/gstpad.h:
919         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
920         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
921         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
922         (gst_pad_remove_buffer_probe):
923         Removed atomic operations, use existing LOCK.
924         Move exception handling out of main code path.
925
926 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
927
928         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
929         (silly_return_true_function), (gst_pad_class_init),
930         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
931         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
932         (gst_pad_send_event):
933           Fix accumulator, add default value by using _emitv() instead
934           of _emit() for signal emission.
935
936 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
937
938         * docs/manual/advanced-dataaccess.xml:
939         * examples/manual/Makefile.am:
940           Add probe example.
941         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
942           Make work (??).
943
944 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
945
946         * gst/elements/gstfilesink.c: (gst_filesink_render):
947           Simplify code so that we don't have to handle short
948           writes and return GST_FLOW_ERROR if an error occured.
949
950 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
951
952         * docs/gst/gstreamer-docs.sgml:
953           Remove probes more.
954
955 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
956
957         * docs/gst/gstreamer-sections.txt:
958         * docs/gst/tmpl/gstpad.sgml:
959         * docs/gst/tmpl/gstprobe.sgml:
960         * gst/Makefile.am:
961         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
962         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
963         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
964         (gst_pad_push_event), (gst_pad_send_event):
965         * gst/gstpad.h:
966         * gst/gstutils.c: (gst_pad_add_data_probe),
967         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
968         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
969         (gst_pad_remove_buffer_probe):
970         * gst/gstutils.h:
971           Remove old probes, add new g-signal-based probes and some utility
972           functions.
973
974 2005-06-29  Edward Hervey  <edward@fluendo.com>
975
976         * gst/gstelementfactory.c:
977         * gst/gstutils.h:
978         * gst/gstutils.c:
979         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
980         the definition to the header file.
981
982 2005-06-29  Andy Wingo  <wingo@pobox.com>
983
984         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
985         plugins from the source directory.
986
987 2005-06-29  Wim Taymans  <wim@fluendo.com>
988
989         * docs/gst/tmpl/gstbuffer.sgml:
990         * docs/gst/tmpl/gstclock.sgml:
991         Some fixings for blantently wrong text.
992
993 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
994
995         * check/Makefile.am:
996         * gst/gst.c: (add_path_func), (init_pre):
997         * gst/gstregistry.c: (gst_registry_add_path):
998           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
999           only scan the GST_PLUGIN_PATH locations, and not add
1000           system locations
1001
1002 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1003
1004         * docs/gst/gstreamer-sections.txt:
1005         * docs/gst/tmpl/gstbasesrc.sgml:
1006         * gst/gstelement.c:
1007         * gst/gstelement.h:
1008         * gst/gstevent.c:
1009         * gst/gstutils.c:
1010           doc fixes
1011
1012 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1013
1014         * docs/manual/advanced-autoplugging.xml:
1015           Fix autoplugging example.
1016
1017 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1018
1019         * docs/manual/advanced-autoplugging.xml:
1020         * docs/manual/mime-world.fig:
1021           Try to get autoplugging working, fix type detection. Fix text
1022           in hello-world image.
1023
1024 2005-06-29  Wim Taymans  <wim@fluendo.com>
1025
1026         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1027         (gst_base_sink_change_state):
1028         Small debug line.
1029
1030         * gst/gstclock.h:
1031         map SIGNAL and BROADCAST to the right function.
1032
1033         * gst/gstobject.h:
1034         Remove redundant braces.
1035
1036         * gst/gstpad.c: (gst_pad_set_caps):
1037         Don't call setcaps function when reseting caps to NULL.
1038
1039         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1040         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1041         (gst_system_clock_id_unschedule):
1042         Use BROADCAST as this is what we do.
1043
1044 2005-06-29  Wim Taymans  <wim@fluendo.com>
1045
1046         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1047         We are actually prerolling before commiting the state
1048         change. 
1049
1050 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1051
1052         * docs/manual/advanced-clocks.xml:
1053         * docs/manual/advanced-interfaces.xml:
1054         * docs/manual/advanced-metadata.xml:
1055         * docs/manual/advanced-position.xml:
1056         * docs/manual/advanced-schedulers.xml:
1057         * docs/manual/advanced-threads.xml:
1058         * docs/manual/appendix-porting.xml:
1059         * docs/manual/basics-bins.xml:
1060         * docs/manual/basics-bus.xml:
1061         * docs/manual/basics-elements.xml:
1062         * docs/manual/basics-helloworld.xml:
1063         * docs/manual/basics-pads.xml:
1064         * docs/manual/highlevel-components.xml:
1065         * docs/manual/manual.xml:
1066         * docs/manual/thread.fig:
1067           Update (until threads/scheduling) Application Development Manual;
1068           remove GstThread, add GstBus, add simple porting checklist, add
1069           documentation for tag writing, clocks, make all examples until this
1070           part compile and run.
1071         * examples/manual/Makefile.am:
1072           Update from changes to Application Development Manual; add bus
1073           example, remove thread example.
1074
1075 2005-06-28  Wim Taymans  <wim@fluendo.com>
1076
1077         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1078         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1079         (gst_bus_source_dispatch):
1080         Add debugging messages.
1081         Make internal methods static.
1082         Handle the case where the bus is flushed in the handler.
1083         
1084         * gst/gstelement.c: (gst_element_get_bus):
1085         Fix refcount in _get_bus();
1086
1087         * gst/gstpipeline.c: (gst_pipeline_change_state),
1088         (gst_pipeline_get_clock_func):
1089         Clock refcounting fixes.
1090         Handle the case where preroll timed out more gracefully.
1091         
1092         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1093         Clean up the internal thread in dispose. This is needed
1094         for subclasses that actually get disposed.
1095         
1096         * gst/schedulers/threadscheduler.c:
1097         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1098         (gst_thread_scheduler_dispose):
1099         Free thread pool in dispose.
1100
1101 2005-06-28  Andy Wingo  <wingo@pobox.com>
1102
1103         * tests/network-clock-utils.scm (debug, print-event): New utils.
1104
1105         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1106         (*packet-loss*): Unified loss probability.
1107         (network-time): Report out-of-band events.
1108
1109         * tests/plot-data: Add support for out-of-band events. Hack it
1110         into this script instead of passing it down the pipe; should fix
1111         this later.
1112
1113 2005-06-28  Wim Taymans  <wim@fluendo.com>
1114
1115         * docs/gst/gstreamer.types:
1116         * docs/gst/tmpl/gstbasesrc.sgml:
1117         * docs/gst/tmpl/gstpad.sgml:
1118         Docs fixes.
1119
1120 2005-06-28  Wim Taymans  <wim@fluendo.com>
1121
1122         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1123         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1124         (gst_proxy_pad_do_fixatecaps):
1125         Correctly proxy the check_pull_range function.
1126
1127 2005-06-28  Andy Wingo  <wingo@pobox.com>
1128
1129         * tests/network-clock.scm: Removed need for slib.
1130         
1131 2005-06-28  Wim Taymans  <wim@fluendo.com>
1132
1133         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1134         (gst_basesink_preroll_queue_flush):
1135         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1136         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1137         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1138         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1139         (gst_proxy_pad_set_property):
1140         * gst/gstpad.c:
1141         * gst/gstpad.h:
1142         * gst/gstqueue.c: (gst_queue_init):
1143         The deprecated pad loop function is removed now.
1144
1145 2005-06-28  Andy Wingo  <wingo@pobox.com>
1146
1147         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1148         New parameters, simulate network packet loss.
1149
1150         * tests/network-clock-utils.scm: Initialize the RNG.
1151
1152 2005-06-28  Wim Taymans  <wim@fluendo.com>
1153
1154         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1155         (gst_basesink_event), (gst_basesink_deactivate):
1156         Flushing the preroll queue always needs to unlock the waiters.
1157
1158 2005-06-28  Edward Hervey  <edward@fluendo.com>
1159
1160         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1161         Wheen a seek was successful on a pipeline, set the stream_time to the
1162         seek offset in order to have a synchronized stream_time.
1163
1164 2005-06-28  Wim Taymans  <wim@fluendo.com>
1165
1166         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1167         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1168         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1169         (gst_proxy_pad_do_fixatecaps):
1170         Call wrapper function instead of just calling the function
1171         pointers. This takes care of any locking and whatmore.
1172
1173 2005-06-28  Wim Taymans  <wim@fluendo.com>
1174
1175         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1176         (gst_pad_pull_range):
1177         * gst/gstpad.h:
1178         CONNECTED -> LINKED.
1179
1180 2005-06-28  Andy Wingo  <wingo@pobox.com>
1181
1182         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1183         source-munging commit!!!
1184
1185         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1186         (gst_object_sink): Take gpointer arguments, not GstObject --
1187         avoids casts. Like GLib.
1188
1189         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1190         activate.
1191
1192 2005-06-27  Andy Wingo  <wingo@pobox.com>
1193
1194         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1195         remaining buffer.
1196
1197         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1198         returns a sorted copy of the trace list.
1199         (gst_alloc_trace_print_live): New API, only prints traces with
1200         live objects. Sort the list.
1201         (gst_alloc_trace_print_all): Sort the list.
1202         (gst_alloc_trace_print): Align columns.
1203
1204         * gst/elements/gstttypefindelement.c:
1205         * gst/elements/gsttee.c:
1206         * gst/base/gstbasesrc.c:
1207         * gst/base/gstbasesink.c:
1208         * gst/base/gstbasetransform.c:
1209         * gst/gstqueue.c: Adapt for pad activation changes.
1210
1211         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1212         sched.
1213         (gst_pipeline_dispose): Drop ref on sched.
1214
1215         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1216         (gst_pad_activate_default): Push mode by default.
1217         (pre_activate_switch, post_activate_switch): New stubs, things to
1218         do before and after switching activation modes on pads.
1219         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1220         the pad's activate function to choose which mode to activate.
1221         Shortcut on deactivation and call the right function directly.
1222         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1223         mode.
1224         (gst_pad_activate_push): New API, same for push mode.
1225         (gst_pad_set_activate_function) 
1226         (gst_pad_set_activatepull_function) 
1227         (gst_pad_set_activatepush_function): Setters for new API.
1228
1229         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1230         Trace all miniobjects.
1231         (gst_mini_object_make_writable): Unref the arg if we copy, like
1232         gst_caps_make_writable.
1233
1234         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1235
1236         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1237         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1238         Adapt for new pad API.
1239
1240         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1241
1242         * gst/gstelement.h:
1243         * gst/gstelement.c (gst_element_iterate_src_pads) 
1244         (gst_element_iterate_sink_pads): New API functions.
1245         
1246         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1247         should fold into gstiterator.c in some form.
1248         (gst_element_pads_activate): Simplified via use of fold and
1249         delegation of decisions to gstpad->activate.
1250
1251         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1252         help in debugging.
1253
1254         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1255         class once in init, like gstmessage. Didn't run into this issue
1256         but it seems correct. Don't initialize a trace, gstminiobject does
1257         that.
1258
1259         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1260         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1261         to the bus.
1262         (assert_live_count): New util function, uses alloc traces to check
1263         cleanup.
1264
1265         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1266         To be modified when unlink drops the internal pad.
1267
1268 2005-06-27  Wim Taymans  <wim@fluendo.com>
1269
1270         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1271         (gst_bin_change_state):
1272         Cleanup the get_state() function a little, make sure it
1273         iterates the same set of elements.
1274         Added stub iterate_state_order().
1275
1276 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1277
1278         * docs/gst/gstreamer-docs.sgml:
1279         * docs/gst/gstreamer-sections.txt:
1280         * docs/gst/gstreamer.types:
1281         * docs/gst/tmpl/gstbasesink.sgml:
1282         * docs/gst/tmpl/gstbasesrc.sgml:
1283         * docs/gst/tmpl/gstbasetransform.sgml:
1284         * docs/gst/tmpl/gstelement.sgml:
1285         * docs/gst/tmpl/gstiterator.sgml:
1286         * gst/base/gstbasesrc.c:
1287         * gst/base/gstbasesrc.h:
1288         * gst/base/gstbasetransform.h:
1289         * gst/gstelement.c:
1290         * gst/gstiterator.h:
1291           adding basetransform and iterator docs
1292
1293 2005-06-27  Andy Wingo  <wingo@pobox.com>
1294
1295         * docs/design/part-activation.txt: Notes on how activation should
1296         work -- not quite implemented yet.
1297
1298 2005-06-25  Wim Taymans  <wim@fluendo.com>
1299
1300         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1301         At least get the chain function correct, needs more
1302         fixing.
1303
1304 2005-06-25  Wim Taymans  <wim@fluendo.com>
1305
1306         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1307         (gst_basesink_handle_object), (gst_basesink_event),
1308         (gst_basesink_do_sync), (gst_basesink_handle_event),
1309         (gst_basesink_change_state):
1310         * gst/gsttask.h:
1311         Right, two problems here: ghostpads don't take locks and
1312         glib _rec_mutex_lock_full() with depth==0 still locks.
1313         Catch illegal locking and g_warn them.
1314
1315 2005-06-25  Wim Taymans  <wim@fluendo.com>
1316
1317         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1318         Have to check for completion now...
1319
1320 2005-06-25  Wim Taymans  <wim@fluendo.com>
1321
1322         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1323         (gst_basesink_handle_object), (gst_basesink_event),
1324         (gst_basesink_do_sync), (gst_basesink_handle_event),
1325         (gst_basesink_change_state):
1326         * gst/gstpad.h:
1327         Unlock STREAM_LOCK whatever the recursion was.
1328
1329 2005-06-25  Wim Taymans  <wim@fluendo.com>
1330
1331         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1332         (gst_basesink_preroll_queue_empty),
1333         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1334         (gst_basesink_event), (gst_basesink_do_sync),
1335         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1336         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1337         (gst_basesink_change_state):
1338         Reworked the base sink, handle event and buffer serialisation
1339         correctly and removed possible deadlock.
1340         Handle EOS correctly.
1341
1342 2005-06-25  Wim Taymans  <wim@fluendo.com>
1343
1344         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1345         (gst_pipeline_change_state):
1346         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1347         Allow elements to post EOS in the state change function.
1348         Fix up -launch, make it exit the poll loop when the
1349         pipeline actually changed state.
1350         Fix up warning parsing in -launch.
1351
1352 2005-06-25  Wim Taymans  <wim@fluendo.com>
1353
1354         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1355         (gst_tee_sink_activate):
1356         Core takes STREAM_LOCK for us now.
1357
1358 2005-06-25  Wim Taymans  <wim@fluendo.com>
1359
1360         * gst/gstelement.c: (gst_element_get_state_func),
1361         (gst_element_set_state):
1362         * gst/gstelement.h:
1363         * gst/gstmessage.c: (gst_message_parse_error),
1364         (gst_message_parse_warning):
1365         Keep track of current target state while performing a state
1366         change so that subclasses can do something interesting.
1367         Fix parsing of warning/error messages when GError is NULL.
1368
1369 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1370
1371         * docs/gst/Makefile.am:
1372         * docs/gst/gstreamer-docs.sgml:
1373         * docs/gst/gstreamer-sections.txt:
1374         * docs/gst/gstreamer.types:
1375         * docs/gst/tmpl/gstbasesink.sgml:
1376         * docs/gst/tmpl/gstbasesrc.sgml:
1377         * docs/gst/tmpl/gstbin.sgml:
1378         * docs/gst/tmpl/gstcompat.sgml:
1379         * docs/gst/tmpl/gstfakesink.sgml:
1380         * docs/gst/tmpl/gstfakesrc.sgml:
1381         * docs/gst/tmpl/gstfilesink.sgml:
1382         * docs/gst/tmpl/gstfilesrc.sgml:
1383         * docs/gst/tmpl/gstindex.sgml:
1384         * docs/manual/appendix-quotes.xml:
1385         * gst/base/gstbasesrc.h:
1386         * gst/elements/gstfakesrc.h:
1387         * gst/gstmessage.h:
1388           start pulling in base classes and elements in our docs
1389
1390 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1391
1392         * docs/gst/Makefile.am:
1393         * docs/libs/Makefile.am:
1394           fixed make distcheck with gtk-doc 1.3
1395
1396 2005-06-23  Wim Taymans  <wim@fluendo.com>
1397
1398         * gst/gstelement.c: (gst_element_get_state_func),
1399         (gst_element_set_state), (gst_element_change_state):
1400         When the state did not change, also report NO_PREROLL
1401         when it matters.
1402
1403 2005-06-23  Wim Taymans  <wim@fluendo.com>
1404
1405         * gst/gstpad.c: (gst_pad_event_default):
1406         * gst/gstqueue.c: (gst_queue_loop):
1407         No unsafe task pausing please.
1408
1409 2005-06-23  Wim Taymans  <wim@fluendo.com>
1410
1411         * gst/schedulers/threadscheduler.c:
1412         (gst_thread_scheduler_task_start),
1413         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1414         Ref the task before pushing it on the threadpool. This
1415         makes sure that we have a ref when the threadfunction is
1416         actually called.
1417
1418 2005-06-23  Andy Wingo  <wingo@pobox.com>
1419
1420         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1421         offset is greater than the file's size.
1422
1423         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1424         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1425         * gst/gstobject.c (gst_object_class_init): Make the class lock
1426         recursive. Wim won't let me drop deep_notify. Decodebin works
1427         again, whoopdy doo.
1428
1429         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1430         internal pad, and hacks accordingly. Doesn't do it on the target
1431         pad because we change its caps. Probably catches all cases of
1432         interest tho.
1433         (gst_ghost_pad_set_property): Connect to notify::caps as
1434         appropritate.
1435
1436         * tests/network-clock.scm (plot-simulation): Pipe data to the
1437         elite python skript.
1438
1439         * tests/network-clock-utils.scm (define-parameter): New macro,
1440         defines a parameter that can be set via the command line.
1441         (set-parameter!, parse-parameter-arguments): Command line args
1442         parser.
1443
1444         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1445         stdin.
1446
1447 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1448
1449         * gst/elements/gsttypefindelement.c:
1450         (gst_type_find_element_handle_event):
1451           Don't restart typefinding on a discont.
1452         * gst/gstelement.c: (gst_element_set_state):
1453           Debug spelling fix.
1454         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1455           Allow changing mode of an active pad.
1456           Debug output fixes.
1457         * gst/registries/gstlibxmlregistry.c: (load_feature):
1458           Don't cast a static pad template to a normal pad template.
1459
1460 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1461
1462         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1463         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1464           remove gst_strtoll completely, since it didn't actually do
1465           anything more than what g_ascii_strtoull already does.
1466           check for range errors when deserializing
1467           do a cast for the unsigned cases; but further fixing needs
1468           a decision on what the interpretation of "(int)" and
1469           deserialization should be for values that fall outside the
1470           type's boundaries (ie, refuse, or interpret as casting)
1471
1472 2005-06-23  Wim Taymans  <wim@fluendo.com>
1473
1474         * check/Makefile.am:
1475         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1476         * docs/design/part-live-source.txt:
1477         * docs/design/part-states.txt:
1478         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1479         (gst_basesrc_set_live), (gst_basesrc_is_live),
1480         (gst_basesrc_get_range), (gst_basesrc_activate),
1481         (gst_basesrc_change_state):
1482         * gst/base/gstbasesrc.h:
1483         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1484         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1485         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1486         * gst/gstelement.c: (gst_element_get_state_func),
1487         (gst_element_set_state):
1488         * gst/gstelement.h:
1489         * gst/gsttypes.h:
1490         * tools/gst-launch.c: (event_loop), (main):
1491         Added support for live sources and other elements that
1492         cannot do preroll.
1493         Updated design docs, added live-source design doc.
1494         Implemented live source functionality in basesrc
1495         Fix error condition in _bin_get_state()
1496         Implement live source handling in -launch.
1497         Added check for live sources.
1498         Fixed case in GstBin where elements were changed state
1499         multiple times.
1500
1501
1502 2005-06-23  Andy Wingo  <wingo@pobox.com>
1503
1504         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1505         borken refcounting.
1506
1507         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1508         gst_caps_replace takes care of this for us.
1509
1510         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1511         gst_pad_set_caps on the target, not just its setcaps() function.
1512
1513         * tests/network-clock.scm: 
1514         * tests/network-clock-utils.scm: A network clock simulator.
1515         Something of an algorithmic testbed before doing something in C.
1516
1517 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1518
1519         * check/Makefile.am:
1520         * check/gst/capslist.h:
1521           copy over from 0.8, and add two with bitmasks specified with
1522           (int) 0xFF...
1523         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1524           add test to parse everything from capslist.h
1525         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
1526         (main):
1527           add test for structure deserialization
1528         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1529           add tests for deserialization of strings to int types
1530         * gst/gststructure.c: (gst_structure_nth_field_name):
1531         * gst/gststructure.h:
1532           add a way to get the name of a field referenced by index
1533         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1534           instead of checking if the resulting long long lies between
1535           min and max, we check if the long long would fit into
1536           a number of bytes for the final type.
1537           This fixes cases where a string represents 2^32 - 1, which
1538           when cast to int would be the (valid) -1, but is bigger than
1539           G_MAXINT
1540
1541 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1542
1543         * gst/parse/grammar.y:
1544           add a log line for type deserialization
1545
1546 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1547
1548         * check/gst/gstvalue.c: (START_TEST):
1549         * gst/gstvalue.c: (gst_value_deserialize):
1550           return long long, not int, so gint64 deserialization actually
1551           works.  Is there any flag that makes the compiler check this ?
1552           Fixes #308559
1553
1554 2005-06-22  Wim Taymans  <wim@fluendo.com>
1555
1556         * gst/gstbuffer.h:
1557         Added convenience macros for setting buffers in GValue.
1558
1559 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1560
1561         * check/gst/.cvsignore:
1562         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1563           add a test deserializing int64, and comment part out because
1564           it fails, yay !
1565
1566 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1567
1568         * check/Makefile.am:
1569         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
1570         * testsuite/Makefile.am:
1571         * testsuite/caps/Makefile.am:
1572         * testsuite/caps/value_serialize.c:
1573         * testsuite/test_gst_init.c:
1574           move a value_serialize test over
1575
1576 2005-06-20  Wim Taymans  <wim@fluendo.com>
1577
1578         * gst/gstpad.c:
1579         Small doc updates.
1580         
1581         * gst/gstvalue.c: (gst_value_compare_buffer),
1582         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
1583         (gst_value_compare_flags), (gst_value_serialize_flags),
1584         (gst_value_deserialize_flags), (_gst_value_initialize):
1585         Fix serialisation of buffers, they are not boxed types anymore
1586
1587 2005-06-20  Wim Taymans  <wim@fluendo.com>
1588
1589         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1590         Testcase to show error in buffer-on-caps serialisation.
1591
1592 2005-06-20  Andy Wingo  <wingo@pobox.com>
1593
1594         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
1595         will be adding to later.
1596
1597         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
1598         if its socks fill with rocks.
1599         (gst_system_clock_obtain): Set the name on object construction.
1600         Avoid double-checked locking.
1601
1602 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
1603
1604         * gst/gsturi.c: (gst_element_make_from_uri):
1605           Fix potential endless loop.
1606
1607 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1608
1609         * check/Makefile.am:
1610           add gsttag
1611         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
1612         (main):
1613           move over from testsuite dir and clean up
1614         * configure.ac:
1615         * gst/gsttag.c:
1616         * testsuite/Makefile.am:
1617         * testsuite/tags/.cvsignore:
1618         * testsuite/tags/Makefile.am:
1619         * testsuite/tags/merge.c:
1620           remove testsuite/tags
1621
1622 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1623
1624         * docs/gst/gstreamer-sections.txt:
1625         * docs/gst/tmpl/gstenumtypes.sgml:
1626         * win32/gstenumtypes.c:
1627           clean up documentation build a little
1628
1629 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1630
1631         * check/gstcheck.h:
1632           add macros for checking refcounts on objects and caps
1633         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
1634           add some more unit tests
1635         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1636         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
1637           fix leaked refcounts (I hope :)) so unittest works
1638         * gst/gstpad.h:
1639           whitespace removal
1640
1641 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1642
1643         * configure.ac: back to HEAD
1644
1645 === release 0.9.1 ===
1646
1647 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1648
1649         * NEWS:
1650         * RELEASE:
1651           updated
1652
1653 2005-06-17  Andy Wingo  <wingo@pobox.com>
1654
1655         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
1656         assert; it's always possible that the pad gets deactivated in
1657         between the checks in gstpad.c and the implementation. Rely on
1658         finish_preroll() to return a FLUSHING or similar instead of on the
1659         assert.
1660         
1661         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
1662         clock and post an EOS message if we come out of finish_preroll in
1663         the playing state.
1664
1665 2005-06-16  David Schleef  <ds@schleef.org>
1666
1667         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
1668         (gst_capsfilter_set_property): Allow NULL as possible value
1669         for filter_caps property, indicating GST_CAPS_ANY.
1670
1671 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1672
1673         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
1674           fix debug output
1675         * gst/schedulers/Makefile.am:
1676           use libgst prefix
1677         * gstreamer.spec.in:
1678           fix spec for it
1679
1680 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1681
1682         * gstreamer.spec.in:
1683           clean up
1684
1685 2005-06-08  Andy Wingo  <wingo@pobox.com>
1686
1687         * gst/gstutils.c: RPAD fixes all around.
1688         (gst_element_link_pads): Refcounting fixes.
1689
1690         * tools/gst-inspect.c:
1691         * tools/gst-xmlinspect.c:
1692         * parse/grammar.y:
1693         * gst/base/gsttypefindhelper.c:
1694         * gst/base/gstbasesink.c:
1695         * gst/gstqueue.c: RPAD fixes.
1696
1697         * gst/gstghostpad.h:
1698         * gst/gstghostpad.c: New ghost pad implementation as full proxy
1699         pads. The tricky thing is they provide both source and sink
1700         interfaces, since they proxy the internal pad for the external
1701         pad, and vice versa. Implement with lower-level ProxyPad objects,
1702         with the interior proxy pad as a child of the exterior ghost pad.
1703         Should write a doc on this.
1704         
1705         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
1706         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
1707         gst_object API.
1708         
1709         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
1710         pads are real pads. No ghost pads in this file. Not documenting
1711         the myriad s/RPAD/PAD/ and REALIZE fixes.
1712         (gst_pad_class_init): Add properties for "direction" and
1713         "template". Both are construct-only, so they can't change during
1714         the life of the pad. Fixes properly deriving from GstPad.
1715         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
1716         derived objects, just set properties when creating the objects via
1717         g_object_new.
1718         (gst_pad_get_parent): Implement as a function, return NULL if the
1719         parent is not an element.
1720         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
1721         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
1722         
1723         * gst/gstobject.c (gst_object_class_init): Make name a construct
1724         property. Don't set it in the object init.
1725
1726         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
1727         with UNKNOWN direction.
1728         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
1729         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
1730         (gst_element_remove_pad): Remove ghost-pad special cases.
1731         (gst_element_pads_activate): Remove rpad cruft.
1732
1733         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
1734         catch the pad's-parent-not-an-element case.
1735
1736         * gst/gst.h: Include gstghostpad.h.
1737
1738         * gst/gst.c (init_post): No more real, ghost pads.
1739
1740         * gst/Makefile.am: Add gstghostpad.[ch].
1741
1742         * check/Makefile.am:
1743         * check/gst/gstbin.c:
1744         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
1745         into a bin creates ghost pads, and that the refcounts are right.
1746         Partly moved from gstbin.c.
1747
1748 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1749
1750         * check/gst-libs/.cvsignore:
1751         * check/gst/.cvsignore:
1752         * check/pipelines/.cvsignore:
1753           ignore more
1754         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
1755         (START_TEST), (cleanup_suite), (main):
1756           add some tests related to cleanup after running pipelines
1757
1758 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1759
1760         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
1761           add a testsuite for GstBuffer
1762
1763 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1764
1765         * gst/gstminiobject.h:
1766           add defines for accessing the refcount
1767
1768 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
1769
1770         * Makefile.am: added support for html unit test coverage reports
1771
1772 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
1773
1774         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
1775           Free existing caps if the capsfilter changes. Add a FIXME about
1776           setting those caps on the pads.
1777
1778         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
1779           Before adding a ghost pad to a parent bin, check that there isn't
1780           already one for the element on the bin. Prevents infinite recursion
1781           when using decodebin in parse pipelines. Andy says he'll rewrite the
1782           way this works anyway, so ignore the hack.
1783
1784 2005-06-02  Andy Wingo  <wingo@pobox.com>
1785
1786         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
1787         file size, pass it on to the type find helper.
1788
1789         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
1790         segment_start and segment_end properly according to the seek
1791         method. Segment_end is still a bit flaky because offset can be
1792         negative for CUR and END cases, but it takes -1 as an "unset"
1793         value.
1794
1795 2005-06-02  Wim Taymans  <wim@fluendo.com>
1796
1797         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
1798         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
1799         (gst_basesink_activate):
1800         * gst/base/gstbasesink.h:
1801         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1802         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1803         (gst_pad_query), (gst_pad_start_task):
1804         * gst/gstpad.h:
1805         * gst/gstqueue.c: (gst_queue_bufferalloc),
1806         (gst_queue_handle_sink_event), (gst_queue_chain):
1807         Bufferalloc: return GstFlowReturn to more accuratly report
1808         why allocation failed.
1809
1810 2005-06-02  Wim Taymans  <wim@fluendo.com>
1811
1812         * gst/gstpipeline.c: (gst_pipeline_send_event):
1813         Take snapshot of state without blocking.
1814
1815 2005-06-02  Wim Taymans  <wim@fluendo.com>
1816
1817         * docs/design/part-TODO.txt:
1818         * docs/design/part-caps.txt:
1819         * docs/design/part-clocks.txt:
1820         * docs/design/part-negotiation.txt:
1821         * docs/design/part-preroll.txt:
1822         Small doc updates 
1823
1824 2005-05-30  Wim Taymans  <wim@fluendo.com>
1825
1826         * gst/elements/gstidentity.c: (gst_identity_event),
1827         (gst_identity_transform), (gst_identity_get_property):
1828         Protect last_message property as it is accessed from
1829         multiple threads.
1830
1831 2005-05-30  Wim Taymans  <wim@fluendo.com>
1832
1833         * gst/gstelement.c: (gst_element_init),
1834         (gst_element_pads_activate), (gst_element_change_state):
1835         Slicker pad activation code.
1836
1837 2005-05-30  Wim Taymans  <wim@fluendo.com>
1838
1839         * gst/Makefile.am:
1840         * gst/gstelement.h:
1841         * gst/gstelementfactory.h:
1842         * gst/gsttypes.h:
1843         Move elementfactory methods to separate .h file.
1844
1845 2005-05-30  Wim Taymans  <wim@fluendo.com>
1846
1847         * docs/design/part-overview.txt:
1848         * gst/gstsystemclock.h:
1849         Small typo fixes, doc updates.
1850
1851 2005-05-30  Wim Taymans  <wim@fluendo.com>
1852
1853         * gst/gst.c: (gst_init_get_popt_table), (init_post),
1854         (init_popt_callback):
1855         Remove cpu-opt flag.
1856
1857 2005-05-30  Wim Taymans  <wim@fluendo.com>
1858
1859         * gst/gstbuffer.c: (gst_subbuffer_finalize),
1860         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
1861         * gst/gstbuffer.h:
1862         Avoid typechecking in places where not needed.
1863         Added accessor for malloc_data.
1864
1865 2005-05-30  Wim Taymans  <wim@fluendo.com>
1866
1867         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
1868         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
1869         (gst_pad_configure_sink), (gst_pad_configure_src),
1870         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
1871         (gst_pad_start_task):
1872         Propagate errors from _set_caps() in configure_src/sink
1873         functions instead of returning TRUE.
1874         FLUSH events can travel up and downstream
1875
1876
1877 2005-05-30  Wim Taymans  <wim@fluendo.com>
1878
1879         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1880         (gst_basesink_activate):
1881         Handle EOS in preroll.
1882
1883 2005-05-30  Wim Taymans  <wim@fluendo.com>
1884
1885         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1886         (gst_queue_loop), (gst_queue_handle_src_event):
1887         Remove old pieces of code
1888         Flushing the queue in an upstream event is a very bad idea.
1889
1890 2005-05-26  Andy Wingo  <wingo@pobox.com>
1891
1892         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
1893         gst_value_set_mini_object so as to add a ref on the object (which
1894         will be removed when the value is unset).
1895
1896         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
1897         arg type in ::handoff.
1898
1899         * gst/gstelement.c (gst_element_change_state): Also deactivate
1900         pads in READY->NULL, just in case the element didn't make it to
1901         PAUSED. Wingo tested, Wim approved.
1902
1903 2005-05-26  Wim Taymans  <wim@fluendo.com>
1904
1905         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1906         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1907         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
1908         A flushing pad cannot be used to alloc_buffer from.
1909
1910 2005-05-26  Wim Taymans  <wim@fluendo.com>
1911
1912         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
1913         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
1914         (gst_bus_source_dispatch), (gst_bus_source_finalize),
1915         (gst_bus_create_watch), (gst_bus_add_watch_full):
1916         * gst/gstbus.h:
1917         Implement a real GSource and use g_main_context_wakeup() to
1918         signal new messages instead of the socketpair.
1919
1920 2005-05-25  Wim Taymans  <wim@fluendo.com>
1921
1922         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
1923         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
1924         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1925         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1926         (gst_pad_send_event), (gst_pad_start_task):
1927         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
1928         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
1929         (gst_queue_sink_activate), (gst_queue_src_activate),
1930         (gst_queue_change_state):
1931         * gst/gstqueue.h:
1932         Fix state changes for non sinks. We now change sinks, then elements
1933         with unconnected srcpads, then the rest.
1934         More efficient queue unlocking in flush and state changes.
1935         Set the pad activate mode even if it does not have an activate
1936         function.
1937
1938 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1939
1940         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
1941           Don't go in pull mode for non-seekable sources.
1942         * gst/elements/gsttypefindelement.h:
1943         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1944         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
1945         (free_entry), (stop_typefinding),
1946         (gst_type_find_element_handle_event), (find_peek),
1947         (gst_type_find_element_chain), (do_pull_typefind),
1948         (gst_type_find_element_change_state):
1949           Allow typefinding (w/o seeking) in push-mode, simplified version
1950           of what was in 0.8.
1951         * gst/gstutils.c: (gst_buffer_join):
1952         * gst/gstutils.h:
1953           gst_buffer_join() from 0.8.
1954
1955 2005-05-25  Wim Taymans  <wim@fluendo.com>
1956
1957         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1958         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1959         (gst_pad_send_event), (gst_pad_start_task):
1960         Disable attempt at mode switching until it is figured out.
1961
1962 2005-05-25  Wim Taymans  <wim@fluendo.com>
1963
1964         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
1965         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1966         (gst_basesink_finish_preroll), (gst_basesink_chain),
1967         (gst_basesink_loop), (gst_basesink_activate),
1968         (gst_basesink_change_state):
1969         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
1970         (gst_basesrc_get_range), (gst_basesrc_loop),
1971         (gst_basesrc_activate):
1972         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1973         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
1974         (gst_real_pad_init), (gst_real_pad_set_property),
1975         (gst_real_pad_get_property), (gst_pad_set_active),
1976         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
1977         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
1978         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
1979         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
1980         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1981         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
1982         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
1983         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1984         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
1985         (gst_pad_stop_task):
1986         * gst/gstpad.h:
1987         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1988         (gst_queue_loop), (gst_queue_src_activate):
1989         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
1990         (gst_task_get_state):
1991         * gst/gsttask.h:
1992         * gst/schedulers/threadscheduler.c:
1993         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
1994         Implement gst_pad_pause/start/stop_task(), take STREAM lock
1995         in task function.
1996         Remove ACTIVE pad flag, use FLUSHING everywhere
1997         Added _pad_chain(), _pad_get_range() to call chain/getrange 
1998         functions.
1999         Add locks around IS_FLUSHING when reading.
2000         Take STREAM lock in chain(), get_range() functions so plugins
2001         don't need to take it anymore.
2002         
2003
2004
2005 2005-05-25  Wim Taymans  <wim@fluendo.com>
2006
2007         * tools/gst-launch.c: (event_loop):
2008         Unref message after using its contents instead of
2009         before.
2010
2011 2005-05-24  Wim Taymans  <wim@fluendo.com>
2012
2013         * docs/design/draft-ghostpads.txt:
2014         * docs/design/draft-push-pull.txt:
2015         * docs/design/draft-query.txt:
2016         * docs/design/part-overview.txt:
2017         Docs updates, added general overview doc.
2018
2019 2005-05-21  David Schleef  <ds@schleef.org>
2020
2021         * docs/gst/tmpl/old/GstBin.sgml:
2022         * docs/gst/tmpl/old/GstBuffer.sgml:
2023         * docs/gst/tmpl/old/GstCaps.sgml:
2024         * docs/gst/tmpl/old/GstClock.sgml:
2025         * docs/gst/tmpl/old/GstCompat.sgml:
2026         * docs/gst/tmpl/old/GstData.sgml:
2027         * docs/gst/tmpl/old/GstElement.sgml:
2028         * docs/gst/tmpl/old/GstEvent.sgml:
2029         * docs/gst/tmpl/old/GstIndex.sgml:
2030         * docs/gst/tmpl/old/GstStructure.sgml:
2031         * docs/gst/tmpl/old/GstTag.sgml:
2032         * docs/gst/tmpl/old/cothreads.sgml:
2033         * docs/gst/tmpl/old/cothreads_compat.sgml:
2034         * docs/gst/tmpl/old/gettext.sgml:
2035         * docs/gst/tmpl/old/gobject2gtk.sgml:
2036         * docs/gst/tmpl/old/grammar.tab.sgml:
2037         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2038         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2039         * docs/gst/tmpl/old/gst_private.sgml:
2040         * docs/gst/tmpl/old/gstaggregator.sgml:
2041         * docs/gst/tmpl/old/gstarch.sgml:
2042         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2043         * docs/gst/tmpl/old/gstbufferstore.sgml:
2044         * docs/gst/tmpl/old/gstdata_private.sgml:
2045         * docs/gst/tmpl/old/gstdisksink.sgml:
2046         * docs/gst/tmpl/old/gstdisksrc.sgml:
2047         * docs/gst/tmpl/old/gstelementfactory.sgml:
2048         * docs/gst/tmpl/old/gstextratypes.sgml:
2049         * docs/gst/tmpl/old/gstfakesink.sgml:
2050         * docs/gst/tmpl/old/gstfakesrc.sgml:
2051         * docs/gst/tmpl/old/gstfdsink.sgml:
2052         * docs/gst/tmpl/old/gstfdsrc.sgml:
2053         * docs/gst/tmpl/old/gstfilesink.sgml:
2054         * docs/gst/tmpl/old/gstfilesrc.sgml:
2055         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2056         * docs/gst/tmpl/old/gstidentity.sgml:
2057         * docs/gst/tmpl/old/gstindexfactory.sgml:
2058         * docs/gst/tmpl/old/gstmarshal.sgml:
2059         * docs/gst/tmpl/old/gstmd5sink.sgml:
2060         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2061         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2062         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2063         * docs/gst/tmpl/old/gstpipefilter.sgml:
2064         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2065         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2066         * docs/gst/tmpl/old/gstshaper.sgml:
2067         * docs/gst/tmpl/old/gstspider.sgml:
2068         * docs/gst/tmpl/old/gstspideridentity.sgml:
2069         * docs/gst/tmpl/old/gststatistics.sgml:
2070         * docs/gst/tmpl/old/gsttee.sgml:
2071         * docs/gst/tmpl/old/gsttimecache.sgml:
2072         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2073         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2074         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2075         * docs/gst/tmpl/old/types.sgml:
2076           I didn't intend to add these or check them in.
2077
2078 2005-05-19  David Schleef  <ds@schleef.org>
2079
2080         * configure.ac: Use -no-common everywhere.  In a sane world, it
2081           would be the default in libtool, because without it, you can't
2082           build DLLs on Windows.
2083         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2084         * docs/gst/gstreamer-sections.txt:
2085         * docs/gst/tmpl/gstcpu.sgml:
2086         * docs/gst/tmpl/gstdata.sgml:
2087         * docs/gst/tmpl/gstthread.sgml:
2088
2089 2005-05-19  David Schleef  <ds@schleef.org>
2090
2091         * gst/gstminiobject.c: (gst_value_set_mini_object),
2092         (gst_value_take_mini_object), (gst_value_get_mini_object):
2093         * gst/gstminiobject.h: Add GValue set/get functions.
2094
2095 2005-05-19  Wim Taymans  <wim@fluendo.com>
2096
2097         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2098         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2099         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2100         * gst/gstbuffer.h:
2101         * gst/gstbus.c: (gst_bus_post):
2102         * gst/gstelement.c: (gst_element_get_random_pad):
2103         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2104         Make subbufer unref the parent in finalize.
2105         some more debugging info.
2106
2107
2108 2005-05-19  Wim Taymans  <wim@fluendo.com>
2109
2110         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2111         (gst_basesink_init), (gst_basesink_finalize),
2112         (gst_basesink_activate), (gst_basesink_change_state):
2113         Don't free preroll queue too early.
2114
2115 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2116
2117         * gst/Makefile.am:
2118         * gst/ROADMAP:
2119           Hi, I'm outdated. Please shoot me.
2120
2121 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2122
2123         * gst/gstpipeline.c: (gst_pipeline_send_event):
2124           Do not access variables after they have been deleted.
2125
2126 2005-05-19  Wim Taymans  <wim@fluendo.com>
2127
2128         * tools/gst-inspect.c: (print_plugin_features):
2129         A plugin feature does unfortunatly not use the
2130         object name yet...
2131
2132 2005-05-18  Wim Taymans  <wim@fluendo.com>
2133
2134         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2135         Port _span() functions to new subbuffers.
2136
2137 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2138
2139         * gst/gstbin.c: (gst_bin_add_func):
2140           Fix clock settery in bins when adding kids after the clock has
2141           been selected.
2142
2143 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2144
2145         * gst/elements/gstidentity.c: (gst_identity_class_init):
2146           Workaround until signals support GstMiniObject.
2147
2148 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2149
2150         * gst/gstbuffer.c:
2151         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2152
2153 2005-05-18  Wim Taymans  <wim@fluendo.com>
2154
2155         * gst/base/Makefile.am:
2156         * gst/base/gstadapter.c: (gst_adapter_base_init),
2157         (gst_adapter_class_init), (gst_adapter_init),
2158         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2159         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2160         (gst_adapter_flush), (gst_adapter_available),
2161         (gst_adapter_available_fast):
2162         * gst/base/gstadapter.h:
2163         Ported and added adapter to the base classes.
2164
2165 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2166
2167         * gst/gst.c:
2168         * gst/gstmessage.c:
2169           Make sure the class is reffed/unreffed once before threads can be
2170           used.  Fixes #304551.
2171
2172 2005-05-17  Wim Taymans  <wim@fluendo.com>
2173
2174         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2175         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2176         * gst/gstminiobject.c: (gst_mini_object_get_type),
2177         (gst_mini_object_free):
2178         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2179         (gst_pad_push), (gst_pad_push_event):
2180         * gst/gstqueue.c: (gst_queue_change_state):
2181         Don't queue buffers in basesink when we are flushing.
2182         Unref buffer when flushing in basesink.
2183         Flush queue when going to READY
2184         Unref buffer when _push() returns an error.
2185         Don't free MiniObject instance when refcount is incremented
2186         in _finalize() so that we can recover objects.
2187
2188 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2189
2190         * docs/manual/advanced-schedulers.xml:
2191         * docs/manual/appendix-checklist.xml:
2192         * docs/pwg/advanced-clock.xml:
2193         * docs/pwg/advanced-interfaces.xml:
2194         * docs/pwg/advanced-request.xml:
2195         * docs/pwg/advanced-types.xml:
2196         * docs/pwg/intro-preface.xml:
2197         * examples/plugins/example.c: (gst_example_get_type),
2198         (gst_example_class_init), (gst_example_chain),
2199         (gst_example_set_property), (gst_example_get_property),
2200         (gst_example_change_state), (plugin_init):
2201         * examples/plugins/example.h:
2202           small doc fixes
2203
2204 2005-05-17  Wim Taymans  <wim@fluendo.com>
2205
2206         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2207         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2208         * gst/gstqueue.c: (gst_queue_change_state):
2209         Clear queue when going to READY.
2210         Remove IN_SETCAPS flag too.
2211
2212 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2213
2214         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2215           Remove implicit cast from gboolean to GstElementStateReturn;
2216           make sure we still return failure in paused => ready case if
2217           the parent class fails to change state and our own stop 
2218           vfunc succeeds.
2219
2220 2005-05-17  Wim Taymans  <wim@fluendo.com>
2221
2222         * tools/gst-launch.c: (event_loop):
2223         Message was unreffed too soon.
2224
2225 2005-05-16  Andy Wingo  <wingo@pobox.com>
2226
2227         * gst/gstbin.c (sink_iterator_filter): Err... um...
2228
2229         * check/gst/gstbin.c (test_ghost_pads): New test for the
2230         ghosting-if-elements-not-in-same-bin behavior.
2231
2232 2005-05-16  David Schleef  <ds@schleef.org>
2233
2234         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2235         accessing refcount directly.
2236
2237 2005-05-15  David Schleef  <ds@schleef.org>
2238
2239         * check/Makefile.am: remove GstData checks
2240         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2241         * gst/Makefile.am: add miniobject, remove data
2242         * gst/gst.h: add miniobject, remove data
2243         * gst/gstdata.c: remove
2244         * gst/gstdata.h: remove
2245         * gst/gstdata_private.h: remove
2246         * gst/gsttypes.h: remove GstEvent and GstMessage
2247         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2248         * gst/gstmarshal.list: change BOXED -> OBJECT
2249
2250         Implement GstMiniObject.
2251         * gst/gstminiobject.c:
2252         * gst/gstminiobject.h:
2253
2254         Modify to be subclasses of GstMiniObject.
2255         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2256         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2257         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2258         (gst_subbuffer_get_type), (gst_subbuffer_init),
2259         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2260         (gst_buffer_span):
2261         * gst/gstbuffer.h:
2262         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2263         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2264         (_gst_event_copy), (gst_event_new):
2265         * gst/gstevent.h:
2266         * gst/gstmessage.c: (_gst_message_initialize),
2267         (gst_message_get_type), (gst_message_class_init),
2268         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2269         (gst_message_new), (gst_message_new_error),
2270         (gst_message_new_warning), (gst_message_new_tag),
2271         (gst_message_new_state_changed), (gst_message_new_application):
2272         * gst/gstmessage.h:
2273         * gst/gstprobe.c: (gst_probe_perform),
2274         (gst_probe_dispatcher_dispatch):
2275         * gst/gstprobe.h:
2276         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2277         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2278         (_gst_query_copy), (gst_query_new):
2279
2280         Update elements for GstData -> GstMiniObject changes
2281         * gst/gstquery.h:
2282         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2283         (gst_queue_chain), (gst_queue_loop):
2284         * gst/elements/gstbufferstore.c:
2285         (gst_buffer_store_add_buffer_func),
2286         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2287         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2288         (gst_fakesink_render):
2289         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2290         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2291         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2292         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2293         (gst_filesrc_create_read):
2294         * gst/elements/gstidentity.c: (gst_identity_class_init):
2295         * gst/elements/gsttypefindelement.c:
2296         (gst_type_find_element_src_event), (free_entry_buffers),
2297         (gst_type_find_element_handle_event):
2298         * libs/gst/dataprotocol/dataprotocol.c:
2299         (gst_dp_header_from_buffer):
2300         * libs/gst/dataprotocol/dataprotocol.h:
2301         * libs/gst/dataprotocol/dp-private.h:
2302
2303 2005-05-15  David Schleef  <ds@schleef.org>
2304
2305         * gst/elements/gstelements.c: Don't include headers that were
2306         just removed.
2307
2308 2005-05-15  David Schleef  <ds@schleef.org>
2309
2310         * gst/elements/Makefile.am: Remove some elements that don't
2311         need to be in the core (or even exist at all).
2312         * gst/elements/gstaggregator.c:
2313         * gst/elements/gstaggregator.h:
2314         * gst/elements/gstmd5sink.c:
2315         * gst/elements/gstmd5sink.h:
2316         * gst/elements/gstmultifilesrc.c:
2317         * gst/elements/gstmultifilesrc.h:
2318         * gst/elements/gstpipefilter.c:
2319         * gst/elements/gstpipefilter.h:
2320         * gst/elements/gstshaper.c:
2321         * gst/elements/gstshaper.h:
2322         * gst/elements/gststatistics.c:
2323         * gst/elements/gststatistics.h:
2324         * po/POTFILES.in: Remove above files.
2325
2326 2005-05-14  Andy Wingo  <wingo@pobox.com>
2327
2328         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2329         so as to get the refs right.
2330         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2331         unreffing objects that don't pass the filter.
2332
2333         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2334         gst_element_set_bus.
2335         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2336         normal cases, this will destroy the bus.
2337
2338         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2339         object.
2340
2341         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2342         has no sinks.
2343
2344 2005-05-13  Andy Wingo  <wingo@pobox.com>
2345
2346         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2347         gst_pad_link, call pad_link_maybe_ghosting,
2348         (pad_link_maybe_ghosting): Links pads, making sure that the
2349         elements being linked are in the same bin.
2350         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2351         Helpers for pad_link_maybe_ghosting.
2352
2353 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2354
2355         * configure.ac:
2356           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2357
2358 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2359
2360         * docs/design/part-element-source.txt:
2361           Mention GstPushSrc
2362
2363 2005-05-12  Wim Taymans  <wim@fluendo.com>
2364
2365         * gst/base/gstbasesink.c: (gst_basesink_init),
2366         (gst_basesink_activate):
2367         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2368         (gst_basesrc_is_seekable):
2369         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2370         (bin_element_is_sink), (gst_bin_change_state):
2371         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2372         * gst/gstelement.h:
2373         Identify sinks by their flag to avoid overly complicated
2374         checks (fow now).
2375         Do state changes even for elements not reachable from the
2376         sinks.
2377         BaseSink is a sink now :)
2378         Some more debugging info in the basesrc.
2379
2380
2381 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2382
2383         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2384           Implement _query on a bin, similar to _send_event.
2385
2386 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2387
2388         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2389           Discont event offset format should be GST_FORMAT_BYTES,
2390           not GST_FORMAT_TIME.
2391
2392 2005-05-12  Wim Taymans  <wim@fluendo.com>
2393
2394         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2395         Same fix as Ronald's but without the signal. 
2396
2397 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2398
2399         * gst/gstutils.c: (gst_element_query_position):
2400           No, an element is not a pad.
2401
2402 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2403
2404         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2405         (gst_bin_get_state):
2406           If a child is removed from a bin while we remove the child from
2407           the bin and while we're retrieving its state, signal this to the
2408           get_state function so we abort the wait (instead of waiting for
2409           a timeout) and can immediately re-iterate over all other elements.
2410
2411 2005-05-12  Wim Taymans  <wim@fluendo.com>
2412
2413         * gst/base/Makefile.am:
2414         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2415         (gst_basesrc_start):
2416         * gst/base/gstbasesrc.h:
2417         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2418         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2419         (gst_pushsrc_init), (gst_pushsrc_create):
2420         * gst/base/gstpushsrc.h:
2421         Added is_seekable to BaseSrc
2422         Added simple PushSrc.
2423
2424 2005-05-11  Wim Taymans  <wim@fluendo.com>
2425
2426         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2427         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2428         (gst_element_link_pads), (gst_element_query_position),
2429         (gst_element_query_convert), (intersect_caps_func),
2430         (gst_pad_query_position), (gst_pad_query_convert):
2431         Fix refcounting in utils function.
2432         No point in trying to activate a pad when it's added, it could
2433         be added from the state change function and then we deadlock, the
2434         element has to decide what to do.
2435
2436 2005-05-10  Andy Wingo  <wingo@pobox.com>
2437
2438         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2439         *all* the arguments.
2440
2441         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2442         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2443         lock (according to the docs -- if this is wrong change the docs).
2444
2445         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2446         flush messages in the NULL state.
2447
2448         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2449         message immediately and return.
2450         (gst_bus_set_flushing): New function. If a bus is flushing, it
2451         flushes out any queued messages and immediately unrefs new
2452         messages. This is so when an element goes to NULL, all of the
2453         unhandled messages coming from it can be freed, and their
2454         references to the element dropped. In other words: message source
2455         ref considered harmful :P
2456
2457         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2458         we're finished with it.
2459
2460         * gst/gstmessage.c (gst_message_new_state_changed): 
2461
2462 2005-05-10  Wim Taymans  <wim@fluendo.com>
2463
2464         * gst/gstvalue.c: (gst_value_compare_flags),
2465         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2466         (_gst_value_initialize):
2467         Added flags serialize/deserialize/compare code.
2468
2469 2005-05-09  Andy Wingo  <wingo@pobox.com>
2470
2471         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2472         Intersect the peer's caps with our caps.
2473
2474 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2475
2476         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2477         * gst/elements/gsttypefindelement.c: (find_peek):
2478           Handle negative offsets better. Fixes decodebin.
2479
2480 2005-05-09  Wim Taymans  <wim@fluendo.com>
2481
2482         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2483         (gst_base_transform_event):
2484         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2485         Implement accept_caps.
2486         Fix silly lock/unlock mismatch in base class.
2487
2488 2005-05-09  Wim Taymans  <wim@fluendo.com>
2489
2490         * docs/design/draft-push-pull.txt:
2491         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2492         * gst/elements/gstfilesink.c: (gst_filesink_init),
2493         (gst_filesink_query):
2494         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2495         (gst_type_find_handle_src_query), (find_element_get_length):
2496         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2497         * gst/gstelement.h:
2498         * gst/gstmessage.c:
2499         * gst/gstmessage.h:
2500         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2501         (gst_real_pad_get_caps_unlocked),
2502         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2503         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2504         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2505         (gst_real_pad_dispose), (gst_real_pad_finalize),
2506         (gst_pad_load_and_link), (gst_pad_save_thyself),
2507         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2508         (gst_pad_check_pull_range), (gst_pad_pull_range),
2509         (gst_pad_template_get_type), (gst_pad_template_class_init),
2510         (gst_pad_template_init), (gst_pad_template_dispose),
2511         (name_is_valid), (gst_static_pad_template_get),
2512         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2513         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2514         (gst_pad_get_element_private), (gst_pad_start_task),
2515         (gst_pad_pause_task), (gst_pad_stop_task),
2516         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2517         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2518         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
2519         (gst_ghost_pad_new):
2520         * gst/gstpad.h:
2521         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
2522         (gst_query_new_position), (gst_query_set_position),
2523         (gst_query_parse_position), (gst_query_new_convert),
2524         (gst_query_set_convert), (gst_query_parse_convert):
2525         * gst/gstquery.h:
2526         * gst/gstqueryutils.c:
2527         * gst/gstqueryutils.h:
2528         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2529         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2530         (gst_queue_handle_src_query):
2531         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2532         (gst_element_query_position), (gst_element_query_convert),
2533         (intersect_caps_func), (gst_pad_query_position),
2534         (gst_pad_query_convert):
2535         * gst/gstutils.h:
2536         * tools/gst-inspect.c: (print_pad_info):
2537         * tools/gst-xmlinspect.c: (print_element_info):
2538         Remove old query functions. Ported old code.
2539         Added position/convert helper functions to gstutils.
2540         Reordered gstpad.c code, grouping relevant things.
2541         Remove gst_message_new(), always need to speficy a specific
2542         message.
2543
2544
2545 2005-05-09  Andy Wingo  <wingo@pobox.com>
2546
2547         * gst/gstiterator.h: Add some includes.
2548
2549         * gst/gstqueryutils.h: Include more headers.
2550
2551         * gst/gstpad.h:
2552         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
2553         some uses of gst_pad_query.
2554
2555         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
2556         NULL out parameters.
2557         (gst_query_new_position): New proc, allocates a new position
2558         query.
2559
2560         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
2561         gstqueryutils.c to the build.
2562
2563         * gst/gststructure.c (gst_structure_set_valist): Implement with
2564         the generic G_VALUE_COLLECT.
2565         
2566 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
2567
2568         * gst/Makefile.am: (gst_headers):
2569         Added gstqueryutils.h to the list of headers to install, that was
2570         a 'nachty' move wingo :)
2571
2572 2005-05-06  Andy Wingo  <wingo@pobox.com>
2573
2574         * gst/gstquery.h
2575         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
2576         GstData, init a memchunk.
2577         (standard_definitions): Add a few query types, deprecate a few.
2578         (gst_query_get_type): New proc.
2579         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
2580         implementation.
2581         (gst_query_new_application, gst_query_get_structure): New public
2582         procs.
2583
2584         * docs/design/draft-query.txt: Removed LINKS from the query types,
2585         because all the rest can be dispatched to other pads -- seemed
2586         ugly to have a query that couldn't be dispatched. internal_links
2587         is fine as a pad method.
2588
2589         * gst/gstpad.h: Add query2 as a pad method, add the new functions
2590         in gstpad.c, but maintain binary compatibility for the moment.
2591         Will fix before 0.9 is out.
2592
2593         * gst/gstqueryutils.c: 
2594         * gst/gstqueryutils.h: New files, implement 3 methods for each
2595         query type: parse_query, parse_response, and set. Probably need an
2596         allocator as well.
2597
2598         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
2599
2600         * gst/elements/gstfilesink.c (gst_filesink_query2):
2601         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
2602         query_types, and formats methods.
2603
2604         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
2605         (gst_pad_set_query2_function): New functions.
2606         (gst_real_pad_init): Set query2_default as the default query2
2607         function. Basically just dispatches to internally linked pads.
2608
2609         Needs review!
2610         
2611         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
2612         without using the atomic operations. Only one thread can possibly
2613         be accessing the data at this point. Changed so as to avoid
2614         gst_atomic operations.
2615
2616 2005-05-06  Wim Taymans  <wim@fluendo.com>
2617
2618         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
2619         Also set caps if we use the fallback buffer alloc.
2620
2621 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
2622
2623         * docs/gst/Makefile.am:
2624         * docs/gst/gstreamer-docs.sgml:
2625         * docs/gst/gstreamer-sections.txt:
2626         * docs/gst/tmpl/gstatomic.sgml:
2627         * docs/gst/tmpl/gstmemchunk.sgml:
2628         * testsuite/elements/struct_i386.h:
2629         * win32/GStreamer.vcproj:
2630         * win32/Makefile:
2631           Purge GstAtomic stuff from docs and win32 makefiles as well
2632
2633 2005-05-06  Wim Taymans  <wim@fluendo.com>
2634
2635         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
2636         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
2637         * gst/gstpad.c: (gst_pad_peer_get_caps):
2638         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2639         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2640         (gst_queue_src_activate), (gst_queue_change_state):
2641         * gst/gstqueue.h:
2642         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2643         (intersect_caps_func):
2644         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
2645         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
2646         Some fixes for the peer_get_caps() change.
2647
2648 2005-05-06  Wim Taymans  <wim@fluendo.com>
2649
2650         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2651         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
2652         (gst_basesink_activate):
2653         Actually do something with error codes returned from the push
2654         functions.
2655
2656 2005-05-06  Wim Taymans  <wim@fluendo.com>
2657
2658         * docs/design/part-element-sink.txt:
2659         * docs/design/part-element-source.txt:
2660         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2661         (gst_basesink_event), (gst_basesink_activate):
2662         * gst/base/gstbasesink.h:
2663         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
2664         (gst_basesrc_activate):
2665         * gst/base/gstbasesrc.h:
2666         * gst/gstelement.c: (gst_element_pads_activate):
2667         Some more documentation.
2668         Fixed scheduling decision in _pads_activate().
2669
2670 2005-05-05  Andy Wingo  <wingo@pobox.com>
2671
2672         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
2673         the test suite.
2674
2675 2005-05-05  Wim Taymans  <wim@fluendo.com>
2676
2677         * gst/base/Makefile.am:
2678         * gst/base/gstbasesink.h:
2679         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2680         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
2681         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
2682         (gst_collectpads_class_init), (gst_collectpads_init),
2683         (gst_collectpads_finalize), (gst_collectpads_new),
2684         (gst_collectpads_set_function), (gst_collectpads_add_pad),
2685         (find_pad), (gst_collectpads_remove_pad),
2686         (gst_collectpads_is_active), (gst_collectpads_collect),
2687         (gst_collectpads_collect_range), (gst_collectpads_start),
2688         (gst_collectpads_stop), (gst_collectpads_peek),
2689         (gst_collectpads_pop), (gst_collectpads_available),
2690         (gst_collectpads_read), (gst_collectpads_flush),
2691         (gst_collectpads_chain):
2692         * gst/base/gstcollectpads.h:
2693         * gst/elements/Makefile.am:
2694         * gst/elements/gstelements.c:
2695         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2696         (gst_fakesink_get_times), (gst_fakesink_event),
2697         (gst_fakesink_preroll), (gst_fakesink_render):
2698         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2699         (gst_filesink_init), (gst_filesink_set_location),
2700         (gst_filesink_open_file), (gst_filesink_close_file),
2701         (gst_filesink_pad_query), (gst_filesink_event),
2702         (gst_filesink_render), (gst_filesink_change_state):
2703         * gst/elements/gstfilesink.h:
2704         Added object to help in making collect pad based elements.
2705         Ported filesink.
2706         Make event function in sink baseclass return gboolean.
2707
2708 2005-05-05  Wim Taymans  <wim@fluendo.com>
2709
2710         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
2711         (gst_bin_get_by_name):
2712         * gst/gstbuffer.h:
2713         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
2714         (gst_clock_finalize):
2715         * gst/gstdata.c: (gst_data_replace):
2716         * gst/gstdata.h:
2717         * gst/gstelement.c: (gst_element_request_pad),
2718         (gst_element_pads_activate):
2719         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
2720         (gst_object_unref):
2721         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2722         (gst_pad_set_checkgetrange_function),
2723         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
2724         (gst_pad_check_pull_range), (gst_pad_pull_range),
2725         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2726         (gst_pad_pause_task), (gst_pad_stop_task):
2727         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2728         (gst_element_request_pad), (gst_pad_proxy_getcaps):
2729         Fix name lookup in GstBin.
2730         Added _data_replace() function and _buffer_replace()
2731         Use finalize method to clean up clock.
2732         Fix refcounting on request pads.
2733         Fix pad schedule mode error.
2734         Some more object refcounting debug info,
2735
2736
2737 2005-05-04  Andy Wingo <wingo@pobox.com>
2738
2739         * check/Makefile.am:
2740         * docs/gst/tmpl/gstatomic.sgml:
2741         * docs/gst/tmpl/gstplugin.sgml:
2742         * gst/base/gstbasesink.c: (gst_basesink_activate):
2743         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
2744         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
2745         (gst_basesrc_query), (gst_basesrc_set_property),
2746         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
2747         (gst_basesrc_activate):
2748         * gst/base/gstbasesrc.h:
2749         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
2750         (gst_base_transform_src_activate):
2751         * gst/elements/gstelements.c:
2752         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2753         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2754         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2755         * gst/elements/gsttypefindelement.c: (find_element_get_length),
2756         (gst_type_find_element_checkgetrange),
2757         (gst_type_find_element_activate):
2758         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
2759         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
2760         (gst_caps_load_thyself):
2761         * gst/gstelement.c: (gst_element_pads_activate),
2762         (gst_element_save_thyself), (gst_element_restore_thyself):
2763         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
2764         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
2765         * gst/gstpad.h:
2766         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
2767         (gst_xml_parse_file), (gst_xml_parse_memory),
2768         (gst_xml_get_element), (gst_xml_make_element):
2769         * gst/indexers/gstfileindex.c: (gst_file_index_load),
2770         (_file_index_id_save_xml), (gst_file_index_commit):
2771         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
2772         (read_enum), (load_pad_template), (load_feature), (load_plugin),
2773         (load_paths):
2774         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
2775         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
2776         * tools/gst-complete.c: (main):
2777         * tools/gst-compprep.c: (main):
2778         * tools/gst-inspect.c: (print_element_properties_info):
2779         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
2780         * tools/gst-xmlinspect.c: (print_element_properties):
2781         GCC 4 fixen.
2782         
2783 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
2784
2785         * gst/gstplugin.c: (gst_plugin_check_module),
2786         (gst_plugin_check_file), (gst_plugin_load_file):
2787             apply patch from #172526 to make register work on MacOSX
2788
2789 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2790
2791         * docs/gst/tmpl/gstconfig.sgml:
2792         * gst/gstconfig.h.in:
2793           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
2794         * testsuite/debug/printf_extension.c: (main):
2795           Do not use GST_PTR_FORMAT on pointers to types with
2796           sizeof < sizeof(gpointer).  Fixes test on 64-bit
2797         * testsuite/elements/property.h:
2798           use correct printf format
2799
2800 2005-05-02  Wim Taymans  <wim@fluendo.com>
2801
2802         * docs/design/draft-push-pull.txt:
2803         * docs/design/draft-query.txt:
2804         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
2805         (gst_basesrc_start):
2806         Added draft for new query API.
2807         Added draft for better selecting scheduling methods.
2808         Make basesrc ignore length if the subclass does not support
2809         it.
2810
2811 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2812
2813         * gst/Makefile.am:
2814           possible fixes for automake-1.5 - _LIBADD is reserved
2815
2816 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2817
2818         * docs/faq/Makefile.am:
2819         * docs/manual/Makefile.am:
2820         * docs/manuals.mak:
2821         * docs/pwg/Makefile.am:
2822         * gst/Makefile.am:
2823           possible fixes for automake-1.5
2824
2825 2005-04-28  Wim Taymans  <wim@fluendo.com>
2826
2827         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2828         (gst_basesink_pad_getcaps), (gst_basesink_init),
2829         (gst_basesink_do_sync):
2830         * gst/gstclock.c: (gst_clock_entry_new):
2831         * gst/gstevent.c: (gst_event_discont_get_value):
2832         * gst/gstpipeline.c: (pipeline_bus_handler),
2833         (gst_pipeline_change_state):
2834         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
2835         Better debugging of clocking info.
2836         Allow NULL values when getting discont values.
2837
2838 2005-04-27  Wim Taymans  <wim@fluendo.com>
2839
2840         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2841         * check/gst/gstpad.c: (gst_pad_suite):
2842         Increase timeout for checks.
2843
2844 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2845
2846         * check/Makefile.am:
2847           fix the broken rule for cleanup.  Apparently this rule is
2848           only needed on FC2, so maybe this warrants further autotool
2849           inspection.
2850
2851 2005-04-26  Wim Taymans  <wim@fluendo.com>
2852
2853         * gst/gsttrashstack.h:
2854         Ooohh. a nasty one! After having a failed pop() from the stack,
2855         it's possible that the stack is empty. In that case, don't
2856         follow the NULL pointer.
2857
2858 2005-04-25  Wim Taymans  <wim@fluendo.com>
2859
2860         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2861         (gst_pad_set_checkgetrange_function),
2862         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
2863         (gst_pad_check_pull_range), (gst_pad_pull_range),
2864         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2865         (gst_pad_pause_task), (gst_pad_stop_task):
2866         * gst/gstplugin.c: (gst_plugin_load):
2867         * gst/gstplugin.h:
2868         Remove gst_library_load as it does more harm than good with
2869         the new g_module flags.
2870         Revert bogus caps template check in pad linking, pad caps
2871         are important when linking not the template, which is more
2872         general than the current caps.
2873
2874 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2875
2876         * gst/autoplug/.cvsignore:
2877         * gst/autoplug/Makefile.am:
2878         * gst/autoplug/gstsearchfuncs.c:
2879         * gst/autoplug/gstsearchfuncs.h:
2880         * gst/autoplug/gstspider.c:
2881         * gst/autoplug/gstspider.h:
2882         * gst/autoplug/gstspideridentity.c:
2883         * gst/autoplug/gstspideridentity.h:
2884         * gst/autoplug/spidertest.c:
2885           Die, spider, die.
2886
2887 2005-04-25  Wim Taymans  <wim@fluendo.com>
2888
2889         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2890         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2891         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
2892         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
2893         * gst/gstpad.h:
2894         Added stubs for unimplemented functions. 
2895
2896 2005-04-24  David Schleef  <ds@schleef.org>
2897
2898         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
2899         please fix.
2900
2901 2005-04-24  David Schleef  <ds@schleef.org>
2902
2903         Convert everything from GstAtomicInt to g_atomic_int_*, and
2904         remove gstatomic.
2905         * gst/Makefile.am:
2906         * gst/gstatomic.c:
2907         * gst/gstatomic.h:
2908         * gst/gstatomic_impl.h:
2909         * gst/gstbuffer.c:
2910         * gst/gstcaps.c:
2911         * gst/gstcaps.h:
2912         * gst/gstclock.c:
2913         * gst/gstclock.h:
2914         * gst/gstdata.c:
2915         * gst/gstdata.h:
2916         * gst/gstdata_private.h:
2917         * gst/gstevent.c:
2918         * gst/gstinfo.c:
2919         * gst/gstinfo.h:
2920         * gst/gstmessage.c:
2921         * gst/gstobject.c:
2922         * gst/gstobject.h:
2923         * gst/gststructure.c:
2924         * gst/gststructure.h:
2925         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
2926         * gst/gstutils.h:
2927
2928 2005-04-24  David Schleef  <ds@schleef.org>
2929
2930         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
2931         make the regressions tests work.  Remove some code that is no
2932         longer true.
2933         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
2934         Disable warning for pads without templates.
2935
2936 2005-04-24  David Schleef  <ds@schleef.org>
2937
2938         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
2939         functions that handle filtered links.
2940         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
2941         removed functions.
2942         * gst/gstutils.c: Fix/remove utility functions that handle
2943         filtered caps.
2944         * gst/gstutils.h:
2945         * gst/gstvalue.c: Add serialization/deserialization of caps
2946         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
2947         requires fixing so that the filter caps notation creates
2948         a capsfilter element and sets the filter_caps property.  I
2949         think everyone probably wants to keep the shorthand notation.
2950         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
2951         * docs/gst/tmpl/gstpad.sgml:
2952
2953         * gst/elements/gstelements.c: Register capsfilter element.
2954         * gst/Makefile.am: fix spacing
2955         * docs/random/ds/0.9-suggested-changes: random
2956
2957 2005-04-23  David Schleef  <ds@schleef.org>
2958
2959         * gst/elements/Makefile.am:
2960         * gst/elements/gstcapsfilter.c: New element that acts like an
2961         identity, but filters caps.  Will eventually replace filtered
2962         caps in pad linking.
2963         * gst/gstutils.c: (gst_element_create_all_pads): New function
2964         to create all the ALWAYS pads that are registered with an
2965         element class.  This functionality should eventually be
2966         merged in with GstElement initialization.
2967         * gst/gstutils.h:
2968         * testsuite/trigger/README: part of trigger test code that should
2969         have been checked in a long time ago.
2970
2971 2005-04-23  David Schleef  <ds@schleef.org>
2972
2973         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
2974         needed with new versions of libtool (nobody will confirm this),
2975         and hard to carry around.
2976         * gst/autoplug/Makefile.am:
2977         * gst/base/Makefile.am:
2978         * gst/elements/Makefile.am:
2979         * gst/indexers/Makefile.am:
2980         * gst/schedulers/Makefile.am:
2981         * libs/gst/bytestream/Makefile.am:
2982         * libs/gst/control/Makefile.am:
2983         * libs/gst/dataprotocol/Makefile.am:
2984         * libs/gst/getbits/Makefile.am:
2985
2986 2005-04-21  Wim Taymans  <wim@fluendo.com>
2987
2988         * docs/design/draft-push-pull.txt:
2989         * docs/design/part-MT-refcounting.txt:
2990         * docs/design/part-TODO.txt:
2991         * docs/design/part-caps.txt:
2992         * docs/design/part-events.txt:
2993         * docs/design/part-gstbus.txt:
2994         * docs/design/part-gstpipeline.txt:
2995         * docs/design/part-messages.txt:
2996         * docs/design/part-push-pull.txt:
2997         * docs/design/part-query.txt:
2998         Some more docs.
2999
3000 2005-04-21  Wim Taymans  <wim@fluendo.com>
3001
3002         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3003         (gst_message_new), (gst_message_new_error),
3004         (gst_message_new_warning), (gst_message_new_tag),
3005         (gst_message_new_state_changed), (gst_message_new_application),
3006         (gst_message_get_structure):
3007         * gst/gstmessage.h:
3008         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3009         (gst_structure_copy_conditional):
3010         Use parent refcount in GstMessage to ensure GstStructure
3011         consistency.
3012         Cleaned up headers a bit.
3013         
3014
3015 2005-04-20  Wim Taymans  <wim@fluendo.com>
3016
3017         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3018         (gst_basesink_pad_getcaps), (gst_basesink_init),
3019         (gst_basesink_chain_unlocked):
3020         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3021         (gst_type_find_helper):
3022         * gst/elements/gsttypefindelement.c:
3023         (gst_type_find_element_have_type), (gst_type_find_element_init),
3024         (stop_typefinding), (gst_type_find_element_handle_event),
3025         (find_suggest), (gst_type_find_element_chain),
3026         (gst_type_find_element_checkgetrange),
3027         (gst_type_find_element_getrange), (do_typefind),
3028         (gst_type_find_element_activate):
3029         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3030         (gst_buffer_default_free), (gst_buffer_default_copy),
3031         (gst_buffer_set_caps):
3032         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3033         (gst_caps_replace):
3034         * gst/gstmessage.c: (gst_message_new),
3035         (gst_message_new_state_changed):
3036         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3037         (gst_pad_set_checkgetrange_function),
3038         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3039         (gst_pad_set_caps), (gst_pad_check_pull_range),
3040         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3041         * gst/gstpad.h:
3042         * gst/gsttypefind.c: (gst_type_find_register):
3043         Make gst_caps_replace() work like other _replace() functions.
3044         Use _caps_replace() where possible.
3045         Make sure _message_new() initialises its field.
3046         Add gst_static_pad_template_get_caps()
3047
3048
3049 2005-04-18  Andy Wingo  <wingo@pobox.com>
3050
3051         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3052         on the peer, not the pad. I think that was a typo. Pass an extra
3053         arg to see if random access is possible. Activate the pads as
3054         PULL_RANGE if possible.
3055
3056         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3057
3058         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3059         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3060         to PROP_....
3061
3062 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3063
3064         * docs/faq/using.xml:
3065           Add note on gstreamer-properties (#154996).
3066
3067 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3068
3069         * docs/random/bbb/optional-properties:
3070           Some analysis on optional properties.
3071
3072 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3073
3074         * docs/gst/tmpl/gstelementfactory.sgml:
3075         * gst/gstelement.h:
3076         * gst/gstelementfactory.c: (gst_element_factory_init),
3077         (gst_element_factory_cleanup), (gst_element_register),
3078         (__gst_element_factory_add_static_pad_template),
3079         (gst_element_factory_get_static_pad_templates),
3080         (gst_element_factory_can_src_caps),
3081         (gst_element_factory_can_sink_caps):
3082         * gst/registries/Makefile.am:
3083         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3084         (gst_xml_registry_class_init), (gst_xml_registry_init),
3085         (gst_xml_registry_new), (gst_xml_registry_set_property),
3086         (gst_xml_registry_get_property), (get_time), (make_dir),
3087         (gst_xml_registry_get_perms_func),
3088         (plugin_times_older_than_recurse), (plugin_times_older_than),
3089         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3090         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3091         (add_to_char_array), (read_string), (read_uint), (read_enum),
3092         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3093         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3094         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3095         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3096         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3097         (gst_xml_registry_rebuild):
3098         * gst/registries/gstlibxmlregistry.h:
3099         * tools/gst-compprep.c: (main):
3100         * tools/gst-inspect.c: (print_pad_templates_info):
3101         * tools/gst-xmlinspect.c: (print_element_info):
3102           Use libxml2 for registry parsing, use staticpadtemplates in
3103           elementfactories. Makes gst_init() +/- 10x faster.
3104
3105 2005-04-12  Wim Taymans  <wim@fluendo.com>
3106
3107         * gst/base/Makefile.am:
3108         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3109         (gst_basesink_pad_getcaps), (gst_basesink_init),
3110         (gst_basesink_event), (gst_basesink_change_state):
3111         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3112         (gst_basesrc_init), (gst_basesrc_query),
3113         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3114         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3115         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3116         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3117         (gst_basesrc_stop), (gst_basesrc_activate),
3118         (gst_basesrc_change_state):
3119         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3120         (helper_find_suggest), (gst_type_find_helper):
3121         * gst/base/gsttypefindhelper.h:
3122         * gst/elements/Makefile.am:
3123         * gst/elements/gstelements.c:
3124         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3125         (gst_fakesink_get_times), (gst_fakesink_event),
3126         (gst_fakesink_preroll), (gst_fakesink_render):
3127         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3128         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3129         (gst_fakesrc_get_property), (gst_fakesrc_create),
3130         (gst_fakesrc_start), (gst_fakesrc_stop):
3131         * gst/elements/gstfakesrc.h:
3132         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3133         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3134         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3135         (gst_filesrc_create_read), (gst_filesrc_create),
3136         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3137         (gst_filesrc_start):
3138         * gst/elements/gsttypefindelement.c:
3139         (gst_type_find_element_have_type), (gst_type_find_element_init),
3140         (start_typefinding), (stop_typefinding), (push_buffer_store),
3141         (gst_type_find_element_handle_event),
3142         (gst_type_find_element_chain),
3143         (gst_type_find_element_checkgetrange),
3144         (gst_type_find_element_getrange), (do_typefind),
3145         (gst_type_find_element_activate),
3146         (gst_type_find_element_change_state):
3147         * gst/elements/gsttypefindelement.h:
3148         * gst/gstpipeline.c: (pipeline_bus_handler):
3149         Added typefind helper.
3150         Small preroll fix in the base sink.
3151         Disable typefind code in basesrc.
3152         Crude port of typefindelement.
3153         Fakesrc cleanups.
3154
3155
3156 2005-04-11  Wim Taymans  <wim@fluendo.com>
3157
3158         * check/gst/gstbus.c: (gstbus_suite):
3159         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3160         * check/gstcheck.h:
3161           Fix up the timeout so that the test does not fail.
3162
3163 2005-04-06  Wim Taymans  <wim@fluendo.com>
3164
3165         * gst/base/README:
3166         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3167         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3168         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3169         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3170         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3171         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3172         (gst_basesrc_stop), (gst_basesrc_activate),
3173         (gst_basesrc_change_state), (basesrc_find_peek),
3174         (basesrc_find_suggest), (gst_basesrc_type_find):
3175         * gst/base/gstbasesrc.h:
3176         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3177         (gst_filesrc_class_init), (gst_filesrc_init),
3178         (gst_filesrc_finalize), (gst_filesrc_set_location),
3179         (gst_filesrc_set_property), (gst_filesrc_get_property),
3180         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3181         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3182         (gst_filesrc_create_read), (gst_filesrc_create),
3183         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3184         * gst/elements/gstfilesrc.h:
3185         * gst/gstelement.c: (gst_element_get_state_func),
3186         (gst_element_lost_state), (gst_element_pads_activate):
3187         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3188         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3189         (gst_pad_pull_range):
3190         * gst/gstpad.h:
3191         More work on the generic source base class, implement seeking,
3192         query.
3193         Make filesrc extend the base source class.
3194         Added gst_pad_set_checkgetrange_function to GstPad.
3195
3196 2005-04-06  Andy Wingo  <wingo@pobox.com>
3197
3198         * pkgconfig/gstreamer-base.pc.in:
3199         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3200
3201         * pkgconfig/Makefile.am:
3202         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3203
3204 2005-04-04  Wim Taymans  <wim@fluendo.com>
3205
3206         * gst/base/Makefile.am:
3207         * gst/base/README:
3208         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3209         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3210         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3211         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3212         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3213         (gst_basesrc_base_init), (gst_basesrc_class_init),
3214         (gst_basesrc_init), (gst_basesrc_get_formats),
3215         (gst_basesrc_get_query_types), (gst_basesrc_query),
3216         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3217         (gst_basesrc_set_property), (gst_basesrc_get_property),
3218         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3219         (gst_basesrc_loop), (gst_basesrc_activate),
3220         (gst_basesrc_change_state):
3221         * gst/base/gstbasesrc.h:
3222         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3223         (gst_fakesrc_class_init), (gst_fakesrc_init),
3224         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3225         (gst_fakesrc_get_property), (gst_fakesrc_create):
3226         * gst/elements/gstfakesrc.h:
3227         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3228         (gst_filesrc_open_file), (gst_filesrc_loop),
3229         (gst_filesrc_activate), (filesrc_find_peek),
3230         (gst_filesrc_type_find):
3231         Made base source class, make fakesrc extend it.
3232         Add comments to basesink class.
3233         Some filesrc cleanup.
3234
3235 2005-03-31  David Schleef  <ds@schleef.org>
3236
3237         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3238         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3239         expected to link against libgstreamer.
3240         * gst/base/Makefile.am: link against libgstreamer
3241         * gst/elements/Makefile.am: same
3242
3243 2005-03-31  Andy Wingo  <wingo@pobox.com>
3244
3245         * tests/instantiate/Makefile.am:
3246         * tests/instantiate/caps.c: Add test to test speed of caps copy
3247         and free.
3248
3249         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3250         GMemChunk to be fair.
3251
3252         * gst/gsttrashstack.h: Remove warning about using the fallback
3253         trash stack implementation, it's still faster than malloc.
3254
3255 2005-03-30  Andy Wingo  <wingo@pobox.com>
3256
3257         * tests/complexity.c: Add a copyright.
3258
3259 2005-03-31  Wim Taymans  <wim@fluendo.com>
3260
3261         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3262         (gst_base_transform_class_init), (gst_base_transform_init),
3263         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3264         (gst_base_transform_get_property),
3265         (gst_base_transform_sink_activate),
3266         (gst_base_transform_src_activate),
3267         (gst_base_transform_change_state):
3268         * gst/base/gstbasetransform.h:
3269         * gst/elements/gstidentity.c: (gst_identity_class_init),
3270         (gst_identity_event), (gst_identity_check_perfect),
3271         (gst_identity_transform), (gst_identity_start),
3272         (gst_identity_stop):
3273         Added start/stop methods to transform base class so subclasses 
3274         don't need to deal with state changes even.
3275
3276 2005-03-31  Wim Taymans  <wim@fluendo.com>
3277
3278         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3279         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3280         * gst/gstevent.h:
3281         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3282         (gst_pad_pull_range):
3283         Added rate to the discont event to prepare for variable speed
3284         and reverse playback.
3285
3286 2005-03-29  David Schleef  <ds@schleef.org>
3287
3288         * configure.ac:
3289         * testsuite/trigger/Makefile.am:
3290         * testsuite/trigger/trigger.c: A little example program to show
3291         how trigger-based elements can work.
3292
3293 2005-03-29  Wim Taymans  <wim@fluendo.com>
3294
3295         * gst/base/Makefile.am:
3296         * gst/base/README:
3297         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3298         (gst_basesink_base_init), (gst_basesink_class_init),
3299         (gst_basesink_pad_getcaps), (gst_basesink_init),
3300         (gst_basesink_activate), (gst_basesink_change_state):
3301         * gst/base/gstbasesink.h:
3302         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3303         (gst_base_transform_base_init), (gst_base_transform_finalize),
3304         (gst_base_transform_class_init), (gst_base_transform_init),
3305         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3306         (gst_base_transform_event), (gst_base_transform_getrange),
3307         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3308         (gst_base_transform_set_property),
3309         (gst_base_transform_get_property),
3310         (gst_base_transform_sink_activate),
3311         (gst_base_transform_src_activate),
3312         (gst_base_transform_change_state):
3313         * gst/base/gstbasetransform.h:
3314         * gst/elements/gstidentity.c: (gst_identity_finalize),
3315         (gst_identity_class_init), (gst_identity_init),
3316         (gst_identity_event), (gst_identity_check_perfect),
3317         (gst_identity_transform), (gst_identity_set_property),
3318         (gst_identity_get_property), (gst_identity_change_state):
3319         * gst/elements/gstidentity.h:
3320         * gst/gstelement.c: (gst_element_get_state_func),
3321         (gst_element_lost_state), (gst_element_pads_activate):
3322         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3323         (gst_pad_check_pull_range), (gst_pad_pull_range):
3324         * gst/gstpad.h:
3325         Simplify pad activation.
3326         Added function to check if pull_range can be performed.
3327         Error out when pulling inactive or flushing pads.
3328         Removed const from refcounted types as it does not make sense.
3329         Simplify pad templates in basesink
3330         Added base class for simple 1-to-1 transforms.
3331         Make identity subclass the base transform.
3332
3333 2005-03-29  Andy Wingo  <wingo@pobox.com>
3334
3335         * docs/libs/gstreamer-libs-overrides.txt: 
3336         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3337         really don't understand what's going on, but like whatever. I want
3338         green buildbot!
3339
3340         * docs/gst/Makefile.am:
3341         * docs/libs/Makefile.am: Dist the overrides files.
3342
3343         * check/Makefile.am (clean-local): Remove .libs directories.
3344
3345         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3346         elements to EXTRA_DIST, so po/ files are happy.
3347
3348         * po/POTFILES.in: Er, remove it here.
3349
3350         * po/POTFILES: Remove gstspider.c.
3351
3352         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3353
3354         * docs/libs/gstreamer-libs-docs.sgml: 
3355         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3356         bytestream.
3357
3358         * tests/complexity.c (main): Set the length of the preroll queue
3359         on the sinks to prevent a lockup.
3360
3361         * libs/gst/dataprotocol/Makefile.am: 
3362         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3363         the same as the one in check/gst-libs/gdp.c.
3364
3365         * po/, docs/gst/: Commit automatic changes to docs and po files.
3366
3367         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3368         the versioned libgstbase.
3369
3370         * check/Makefile.am: Depend on an unversioned gst-register, seems
3371         to make autoconf happier.
3372
3373         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3374
3375 2005-03-28  Wim Taymans  <wim@fluendo.com>
3376
3377         * configure.ac:
3378         * docs/design/part-gstelement.txt:
3379         * docs/design/part-negotiation.txt:
3380         * docs/design/part-preroll.txt:
3381         * docs/design/part-scheduling.txt:
3382         * docs/design/part-states.txt:
3383         * gst/Makefile.am:
3384         * gst/base/Makefile.am:
3385         * gst/base/README:
3386         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3387         (gst_basesink_base_init), (gst_basesink_class_init),
3388         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3389         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3390         (gst_basesink_set_pad_functions),
3391         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3392         (gst_basesink_set_property), (gst_basesink_get_property),
3393         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3394         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3395         (gst_basesink_preroll_queue_push),
3396         (gst_basesink_preroll_queue_empty),
3397         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3398         (gst_basesink_event), (gst_basesink_get_times),
3399         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3400         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3401         (gst_basesink_loop), (gst_basesink_activate),
3402         (gst_basesink_change_state):
3403         * gst/base/gstbasesink.h:
3404         * gst/elements/Makefile.am:
3405         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3406         (gst_fakesink_class_init), (gst_fakesink_init),
3407         (gst_fakesink_set_property), (gst_fakesink_get_property),
3408         (gst_fakesink_get_times), (gst_fakesink_event),
3409         (gst_fakesink_preroll), (gst_fakesink_render),
3410         (gst_fakesink_change_state):
3411         * gst/elements/gstfakesink.h:
3412         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3413         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3414         * gst/gstelement.c: (gst_element_add_pad),
3415         (gst_element_get_state_func), (gst_element_abort_state),
3416         (gst_element_commit_state), (gst_element_lost_state),
3417         (gst_element_set_state), (gst_element_pads_activate):
3418         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3419         * gst/gstpipeline.c: (gst_pipeline_send_event),
3420         (gst_pipeline_change_state):
3421         Added state change code.
3422         Added/updated docs.
3423         Added sink base class, make fakesink extend the base class.
3424         Small cleanups in GstPipeline.
3425
3426 2005-03-26  David Schleef  <ds@schleef.org>
3427
3428         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3429         is broken and should be implemented in a different library.
3430         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3431         * gst/gst.h: remove gstcpu.h
3432         * gst/gstcpu.c: remove
3433         * gst/gstcpu.h: remove
3434         * gst/Makefile.am.future: Remove this file.  It's ancient.
3435
3436 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3437
3438         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3439         (gst_bin_send_event):
3440           Add default event/set_manager handlers. The set_manager handler
3441           takes care that the manager is distributed over kids that were
3442           already in the bin before the manager was set. The event handler
3443           is a utility virtual function that sends the event over all sinks,
3444           so that gst_element_send_event (bin, event); has the expected
3445           behaviour.
3446         * gst/gstpad.c: (gst_pad_event_default):
3447           Re-install default event handling for discontinuities, so that
3448           seeking works without requiring hacks in applications or extra
3449           code in sinks.
3450         * gst/gstpipeline.c: (gst_pipeline_class_init),
3451         (gst_pipeline_send_event):
3452           Half hack, half utility: set a pipeline to PAUSED for seek events,
3453           since that is the only way we can guarantee a/v sync. Means that
3454           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3455           and it "just works".
3456
3457 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3458
3459         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3460           Lock/unlock mismatch.
3461
3462 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3463
3464         * docs/faq/gst-uninstalled:
3465           add gst-plugins-base
3466         * docs/gst/Makefile.am:
3467           don't error out until docs are fixed
3468         * docs/gst/gstreamer.types:
3469           remove thread
3470
3471 2005-03-22  Wim Taymans  <wim@fluendo.com>
3472
3473         * check/Makefile.am:
3474         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3475         * gst/gststructure.c: (gst_structure_set_valist),
3476         (gst_structure_copy_conditional):
3477         Activated more tests.
3478         Added message test.
3479         Added G_TYPE_POINTER to GstStructure.
3480         
3481
3482 2005-03-22  Wim Taymans  <wim@fluendo.com>
3483
3484         * docs/design/part-TODO.txt:
3485         * docs/design/part-events.txt:
3486         * docs/design/part-gstbin.txt:
3487         * docs/design/part-gstbus.txt:
3488         * docs/design/part-gstpipeline.txt:
3489         * docs/design/part-messages.txt:
3490         * gst/gstbus.c:
3491         * gst/gstmessage.c:
3492         Docs updates
3493
3494 2005-03-21  Wim Taymans  <wim@fluendo.com>
3495
3496         * gst/gstbus.c: (gst_bus_post):
3497         Fix copy-and-paste error.
3498
3499 2005-03-21  Wim Taymans  <wim@fluendo.com>
3500
3501         * check/Makefile.am:
3502         * gst/Makefile.am:
3503         * gst/elements/Makefile.am:
3504         * gst/elements/gstelements.c:
3505         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3506         (gst_fakesink_event), (gst_fakesink_chain):
3507         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3508         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3509         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3510         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3511         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3512         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3513         (gst_fakesrc_loop), (gst_fakesrc_activate),
3514         (gst_fakesrc_change_state):
3515         * gst/elements/gstfakesrc.h:
3516         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3517         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
3518         (gst_filesrc_open_file), (gst_filesrc_loop),
3519         (gst_filesrc_activate), (gst_filesrc_change_state),
3520         (filesrc_find_peek), (filesrc_find_suggest),
3521         (gst_filesrc_type_find):
3522         * gst/elements/gstidentity.c: (gst_identity_finalize),
3523         (gst_identity_class_init), (gst_identity_init),
3524         (gst_identity_proxy_getcaps), (identity_queue_push),
3525         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
3526         (gst_identity_getrange), (gst_identity_chain),
3527         (gst_identity_sink_loop), (gst_identity_src_loop),
3528         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
3529         (gst_identity_set_property), (gst_identity_get_property),
3530         (gst_identity_change_state):
3531         * gst/elements/gstidentity.h:
3532         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
3533         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
3534         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
3535         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
3536         (gst_tee_sink_activate):
3537         * gst/elements/gsttee.h:
3538         * gst/gst.c: (gst_register_core_elements), (init_post):
3539         * gst/gst.h:
3540         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
3541         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
3542         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
3543         (gst_bin_change_state):
3544         * gst/gstbin.h:
3545         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
3546         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
3547         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
3548         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
3549         (gst_bus_set_sync_handler), (gst_bus_create_watch),
3550         (bus_watch_callback), (bus_watch_destroy),
3551         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
3552         (poll_timeout), (gst_bus_poll):
3553         * gst/gstbus.h:
3554         * gst/gstcaps.h:
3555         * gst/gstdata.h:
3556         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3557         (gst_element_post_message), (gst_element_message_full),
3558         (gst_element_get_state_func), (gst_element_get_state),
3559         (gst_element_abort_state), (gst_element_commit_state),
3560         (gst_element_lost_state), (gst_element_set_state),
3561         (gst_element_pads_activate), (gst_element_change_state),
3562         (gst_element_dispose), (gst_element_set_manager_func),
3563         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
3564         (gst_element_set_manager), (gst_element_get_manager),
3565         (gst_element_set_bus), (gst_element_get_bus),
3566         (gst_element_set_scheduler), (gst_element_get_scheduler):
3567         * gst/gstelement.h:
3568         * gst/gstevent.c: (gst_event_new_segment_seek),
3569         (gst_event_new_flush):
3570         * gst/gstevent.h:
3571         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
3572         (_gst_message_free), (gst_message_get_type), (gst_message_new),
3573         (gst_message_new_eos), (gst_message_new_error),
3574         (gst_message_new_warning), (gst_message_new_tag),
3575         (gst_message_new_state_changed), (gst_message_new_application),
3576         (gst_message_get_structure), (gst_message_parse_tag),
3577         (gst_message_parse_state_changed), (gst_message_parse_error),
3578         (gst_message_parse_warning):
3579         * gst/gstmessage.h:
3580         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
3581         (gst_real_pad_set_property), (gst_pad_set_active),
3582         (gst_pad_is_active), (gst_pad_set_blocked_async),
3583         (gst_pad_set_blocked), (gst_pad_is_blocked),
3584         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
3585         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
3586         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
3587         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
3588         (gst_pad_link_filtered), (gst_pad_relink_filtered),
3589         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
3590         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
3591         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
3592         (gst_pad_set_caps), (gst_pad_configure_sink),
3593         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
3594         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
3595         (gst_real_pad_dispose), (gst_real_pad_finalize),
3596         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
3597         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3598         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
3599         * gst/gstpad.h:
3600         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
3601         (pipeline_bus_handler), (gst_pipeline_change_state),
3602         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
3603         * gst/gstpipeline.h:
3604         * gst/gstprobe.h:
3605         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
3606         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
3607         (gst_queue_link_src), (gst_queue_bufferalloc),
3608         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
3609         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
3610         (gst_queue_loop), (gst_queue_handle_src_event),
3611         (gst_queue_handle_src_query), (gst_queue_src_activate),
3612         (gst_queue_change_state):
3613         * gst/gstqueue.h:
3614         * gst/gstscheduler.c: (gst_scheduler_init),
3615         (gst_scheduler_dispose), (gst_scheduler_create_task),
3616         (gst_scheduler_factory_create):
3617         * gst/gstscheduler.h:
3618         * gst/gststructure.c: (gst_structure_get_type),
3619         (gst_structure_copy_conditional):
3620         * gst/gststructure.h:
3621         * gst/gsttaginterface.h:
3622         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
3623         (gst_task_init), (gst_task_dispose), (gst_task_create),
3624         (gst_task_get_state), (gst_task_start), (gst_task_stop),
3625         (gst_task_pause):
3626         * gst/gsttask.h:
3627         * gst/gstthread.c:
3628         * gst/gstthread.h:
3629         * gst/gsttypes.h:
3630         * gst/schedulers/Makefile.am:
3631         * gst/schedulers/cothreads_compat.h:
3632         * gst/schedulers/entryscheduler.c:
3633         * gst/schedulers/faircothreads.c:
3634         * gst/schedulers/faircothreads.h:
3635         * gst/schedulers/fairscheduler.c:
3636         * gst/schedulers/gstbasicscheduler.c:
3637         * gst/schedulers/gstoptimalscheduler.c:
3638         * gst/schedulers/gthread-cothreads.h:
3639         * gst/schedulers/threadscheduler.c:
3640         (gst_thread_scheduler_task_get_type),
3641         (gst_thread_scheduler_task_class_init),
3642         (gst_thread_scheduler_task_init),
3643         (gst_thread_scheduler_task_start),
3644         (gst_thread_scheduler_task_stop),
3645         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
3646         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
3647         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
3648         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
3649         (plugin_init):
3650         * libs/gst/Makefile.am:
3651         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
3652         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
3653         (gst_file_pad_parent_set):
3654         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3655         (gst_dp_event_from_packet):
3656         * tests/complexity.c: (main):
3657         * tests/mass_elements.c: (main):
3658         * testsuite/states/locked.c: (message_received), (main):
3659         * testsuite/states/parent.c: (main):
3660         * tools/gst-inspect.c: (print_element_flag_info),
3661         (print_implementation_info), (print_pad_info):
3662         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
3663         (main):
3664         * tools/gst-md5sum.c: (event_loop), (main):
3665         * tools/gst-typefind.c: (main):
3666         * tools/gst-xmlinspect.c: (print_element_info):
3667         Next big merge.
3668         Added GstBus for mainloop integration.
3669         Added GstMessage for sending notifications on the bus.
3670         Added GstTask as an abstraction for pipeline entry points.
3671         Removed GstThread.
3672         Removed Schedulers.
3673         Simplified GstQueue for multithreaded core.
3674         Made _link threadsafe, removed old capsnego.
3675         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
3676         Added pad blocking functions.
3677         Reworked scheduling functions in GstPad to prepare for
3678         scheduling updates soon.
3679         Moved events out of data stream.
3680         Simplified GstEvent types.
3681         Added return values to push/pull.
3682         Removed clocking from GstElement.
3683         Added prototypes for state change function for next merge.
3684         Removed iterate from bins and state change management.
3685         Fixed some elements, disabled others for now.
3686         Fixed -inspect and -launch.
3687         Added check for GstBus.
3688
3689 2005-03-10  Wim Taymans  <wim@fluendo.com>
3690
3691         * docs/design/part-MT-refcounting.txt:
3692         * docs/design/part-clocks.txt:
3693         * docs/design/part-gstelement.txt:
3694         * docs/design/part-gstobject.txt:
3695         * docs/design/part-standards.txt:
3696         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3697         (gst_bin_remove_func), (gst_bin_remove):
3698         * gst/gstbin.h:
3699         * gst/gstbuffer.c:
3700         * gst/gstcaps.h:
3701         * testsuite/clock/clock1.c: (main):
3702         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
3703         (main):
3704         * testsuite/dlopen/loadgst.c: (do_test):
3705         * testsuite/refcounting/bin.c: (add_remove_test1),
3706         (add_remove_test2), (main):
3707         * testsuite/refcounting/element.c: (main):
3708         * testsuite/refcounting/element_pad.c: (main):
3709         * testsuite/refcounting/pad.c: (main):
3710         * tools/gst-launch.c: (sigint_handler_sighandler):
3711         * tools/gst-typefind.c: (main):
3712         Doc updates.
3713         Added doc about clock.
3714         removed gst_bin_iterate_recurse_up(), marked methods
3715         for removal.
3716         Fix more testsuites.
3717
3718 2005-03-09  Wim Taymans  <wim@fluendo.com>
3719
3720         * gst/gstpad.c: (gst_pad_get_direction),
3721         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
3722         (gst_pad_collect_valist):
3723         * testsuite/bins/interface.c: (main):
3724         * testsuite/caps/audioscale.c: (test_caps):
3725         * testsuite/caps/caps.c: (test1), (test2), (test3):
3726         * testsuite/caps/deserialize.c: (main):
3727         * testsuite/caps/enumcaps.c: (main):
3728         * testsuite/caps/filtercaps.c: (main):
3729         * testsuite/caps/intersect2.c: (main):
3730         * testsuite/caps/random.c: (main):
3731         * testsuite/caps/renegotiate.c: (my_fixate), (main):
3732         * testsuite/caps/sets.c: (check_caps):
3733         * testsuite/caps/simplify.c: (check_caps), (main):
3734         * testsuite/caps/subtract.c: (check_caps):
3735         Fix _pad_get_direction wrt ghostpads.
3736         Fix caps testsuite.
3737
3738 2005-03-09  Wim Taymans  <wim@fluendo.com>
3739
3740         * check/Makefile.am:
3741         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
3742         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
3743         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
3744         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
3745         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
3746         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
3747         (gst_bin_remove), (gst_bin_iterate_recurse_up),
3748         (bin_element_is_sink), (gst_bin_iterate_sinks),
3749         (gst_bin_iterate_all_by_interface):
3750         * gst/gstbin.h:
3751         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
3752         (gst_element_change_state), (gst_element_dispose),
3753         (gst_element_finalize), (gst_element_set_loop_function):
3754         * gst/gstelement.h:
3755         * gst/gstiterator.c: (find_custom_fold_func):
3756         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3757         (gst_pad_collectv), (gst_pad_collect_valist),
3758         (gst_pad_template_new):
3759         * gst/gstpipeline.c: (gst_pipeline_class_init),
3760         (gst_pipeline_dispose), (gst_pipeline_set_property),
3761         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
3762         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
3763         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
3764         * gst/gstutils.h:
3765         * gst/schedulers/entryscheduler.c:
3766         * gst/schedulers/gstbasicscheduler.c:
3767         (gst_basic_scheduler_cothreaded_chain),
3768         (gst_basic_scheduler_chain_add_element):
3769         * testsuite/bins/interface.c: (main):
3770         Added GstBin test.
3771         Added GstSystemClock test.
3772         Implemented clock distribution code in GstBin.
3773         Implemented iterate sinks method for future use.
3774         Rearranged gstelement.h
3775         Fix GstIterator comparison bug.
3776         Moved some code to GstPipeline, mostly clocking related.
3777
3778 2005-03-09  Wim Taymans  <wim@fluendo.com>
3779
3780         * configure.ac:
3781         * gst/gst_private.h:
3782         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3783         (gst_bin_remove_func), (gst_bin_remove),
3784         (gst_bin_get_by_name_recurse_up):
3785         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
3786         (gst_clock_id_compare_func), (gst_clock_id_wait),
3787         (gst_clock_id_wait_async), (gst_clock_init),
3788         (gst_clock_adjust_unlocked), (gst_clock_get_time):
3789         * gst/gstelement.h:
3790         * gst/gstinfo.c: (_gst_debug_init):
3791         * gst/gstobject.h:
3792         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3793         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
3794         * gst/gstpad.h:
3795         Bump version number, we're now 0.9.0
3796         Add future debugging category.
3797         Fix NULL _unref() in _get_by_name_recurse_up
3798         Rearrange gstpad.h.
3799         Update some docs.
3800
3801 2005-03-08  Wim Taymans  <wim@fluendo.com>
3802
3803         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
3804         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3805         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3806         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
3807         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
3808         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
3809         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
3810         * gst/elements/gstidentity.c: (gst_identity_class_init):
3811         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
3812         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
3813         * gst/elements/gstshaper.c: (gst_shaper_class_init):
3814         * gst/elements/gststatistics.c: (gst_statistics_class_init):
3815         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
3816         (gst_tee_link):
3817         * gst/gstelement.c: (gst_element_class_init),
3818         (gst_element_base_class_init), (gst_element_init),
3819         (gst_element_get_random_pad), (gst_element_wait_state_change),
3820         (gst_element_change_state), (gst_element_dispose),
3821         (gst_element_finalize), (gst_element_set_loop_function):
3822         * gst/gstelement.h:
3823         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
3824         * gst/gstthread.c: (gst_thread_class_init),
3825         (gst_thread_release_children_locks), (gst_thread_change_state):
3826         * gst/schedulers/gstbasicscheduler.c:
3827         (gst_basic_scheduler_loopfunc_wrapper),
3828         (gst_basic_scheduler_chain_wrapper),
3829         (gst_basic_scheduler_src_wrapper),
3830         (gst_basic_scheduler_remove_element):
3831         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3832         Remove threadsafe properties. Fix elements because GObject
3833         complains when installing a property before declaring a
3834         set/get_property handler.
3835         Rearrange gstelement.h file, use STATE macros for state locks.
3836         Free mutexes in the finalize method instead of dispose.
3837
3838 2005-03-08  Wim Taymans  <wim@fluendo.com>
3839
3840         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3841         * gst/gstthread.c: (gst_thread_release_children_locks):
3842         Added parentage check.
3843         Fix build og GstThread again.
3844
3845 2005-03-08  Wim Taymans  <wim@fluendo.com>
3846
3847         * docs/design/part-MT-refcounting.txt:
3848         * docs/design/part-conventions.txt:
3849         * docs/design/part-gstobject.txt:
3850         * docs/design/part-relations.txt:
3851         * docs/design/part-standards.txt:
3852         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3853         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
3854         (gst_bin_get_by_name), (gst_bin_get_by_interface),
3855         (gst_bin_iterate_all_by_interface):
3856         * gst/gstbuffer.h:
3857         * gst/gstclock.h:
3858         * gst/gstelement.c: (gst_element_class_init),
3859         (gst_element_change_state), (gst_element_set_loop_function):
3860         * gst/gstelement.h:
3861         * gst/gstiterator.c:
3862         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
3863         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
3864         (gst_object_dispatch_properties_changed), (gst_object_set_name),
3865         (gst_object_set_parent), (gst_object_unparent),
3866         (gst_object_check_uniqueness):
3867         * gst/gstobject.h:
3868         Docs updates, clean up some headers.
3869
3870 2005-03-07  Wim Taymans  <wim@fluendo.com>
3871
3872         * check/.cvsignore:
3873         * check/Makefile.am:
3874         * check/gst-libs/.cvsignore:
3875         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
3876         * check/gst/.cvsignore:
3877         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
3878         (START_TEST), (gstbus_suite), (main):
3879         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
3880         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
3881         (gst_data_suite), (main):
3882         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
3883         (add_fold_func), (gstiterator_suite), (main):
3884         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
3885         (thread_name_object), (thread_name_object_default),
3886         (gst_object_name_compare), (gst_object_suite), (main):
3887         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
3888         (gst_pad_suite), (main):
3889         * check/gstcheck.c: (gst_check_log_message_func),
3890         (gst_check_log_critical_func), (gst_check_init):
3891         * check/gstcheck.h:
3892         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
3893         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
3894         Added checks.
3895
3896 2005-03-07  Wim Taymans  <wim@fluendo.com>
3897
3898         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
3899         (gst_list_iterator_next), (gst_list_iterator_resync),
3900         (gst_list_iterator_free), (gst_iterator_new_list),
3901         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
3902         (gst_iterator_free), (gst_iterator_push), (filter_next),
3903         (filter_resync), (filter_uninit), (filter_free),
3904         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
3905         (gst_iterator_foreach), (find_custom_fold_func),
3906         (gst_iterator_find_custom):
3907         * gst/gstiterator.h:
3908         Added missing files.
3909
3910 2005-03-07  Wim Taymans  <wim@fluendo.com>
3911
3912         * Makefile.am:
3913         * configure.ac:
3914         * docs/design/part-MT-refcounting.txt:
3915         * docs/design/part-conventions.txt:
3916         * docs/design/part-gstobject.txt:
3917         * docs/design/part-relations.txt:
3918         * examples/mixer/mixer.c: (main):
3919         * examples/thread/thread.c: (eos), (main):
3920         * gst/Makefile.am:
3921         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
3922         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
3923         (gst_spider_plug_from_srcpad):
3924         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
3925         (gst_spider_identity_change_state),
3926         (gst_spider_identity_sink_loop_type_finding):
3927         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
3928         * gst/elements/gstidentity.c: (gst_identity_init):
3929         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
3930         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
3931         * gst/elements/gsttypefindelement.c: (free_entry):
3932         * gst/gst.c:
3933         * gst/gst.h:
3934         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
3935         (gst_bin_set_clock_func), (gst_bin_auto_clock),
3936         (gst_bin_set_index), (gst_bin_set_element_sched),
3937         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
3938         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
3939         (gst_bin_iterate_elements), (iterate_child_recurse),
3940         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
3941         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
3942         (compare_interface), (gst_bin_get_by_interface),
3943         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
3944         * gst/gstbin.h:
3945         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
3946         (gst_buffer_default_free), (gst_buffer_default_copy),
3947         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
3948         (gst_buffer_create_sub):
3949         * gst/gstbuffer.h:
3950         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
3951         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
3952         (gst_caps_unref), (gst_static_caps_get),
3953         (gst_caps_remove_and_get_structure), (gst_caps_append),
3954         (gst_caps_append_structure), (gst_caps_remove_structure),
3955         (gst_caps_copy_nth), (gst_caps_set_simple),
3956         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
3957         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
3958         (gst_caps_structure_intersect_field), (gst_caps_intersect),
3959         (gst_caps_structure_subtract_field), (gst_caps_subtract),
3960         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
3961         (gst_caps_structure_figure_out_union),
3962         (gst_caps_switch_structures), (gst_caps_do_simplify),
3963         (gst_caps_replace), (gst_caps_from_string),
3964         (gst_caps_copy_conditional):
3965         * gst/gstcaps.h:
3966         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
3967         (_gst_clock_id_free), (gst_clock_id_unref),
3968         (gst_clock_id_compare_func), (gst_clock_id_wait),
3969         (gst_clock_id_wait_async), (gst_clock_class_init),
3970         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
3971         (gst_clock_get_time), (gst_clock_set_time_adjust),
3972         (gst_clock_set_property), (gst_clock_get_property):
3973         * gst/gstclock.h:
3974         * gst/gstcompat.h:
3975         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
3976         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
3977         * gst/gstdata.h:
3978         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3979         (gst_element_requires_clock), (gst_element_provides_clock),
3980         (gst_element_set_clock), (gst_element_clock_wait),
3981         (gst_element_wait), (gst_element_set_time_delay),
3982         (gst_element_is_indexable), (gst_element_add_pad),
3983         (gst_element_add_ghost_pad), (gst_element_remove_pad),
3984         (pad_compare_name), (gst_element_get_static_pad),
3985         (gst_element_request_pad), (gst_element_get_request_pad),
3986         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
3987         (gst_element_class_get_pad_template_list),
3988         (gst_element_class_get_pad_template), (gst_element_error_func),
3989         (gst_element_get_random_pad), (gst_element_get_event_masks),
3990         (gst_element_send_event), (gst_element_seek),
3991         (gst_element_get_query_types), (gst_element_query),
3992         (gst_element_get_formats), (gst_element_convert),
3993         (gst_element_is_locked_state), (gst_element_set_locked_state),
3994         (gst_element_sync_state_with_parent), (gst_element_change_state),
3995         (gst_element_finalize), (gst_element_yield),
3996         (gst_element_interrupt), (gst_element_set_scheduler),
3997         (gst_element_get_scheduler), (gst_element_set_loop_function):
3998         * gst/gstelement.h:
3999         * gst/gstevent.h:
4000         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4001         (gst_format_get_by_nick), (gst_format_get_details),
4002         (gst_format_iterate_definitions):
4003         * gst/gstformat.h:
4004         * gst/gstindex.c: (gst_index_gtype_resolver):
4005         * gst/gstinfo.c:
4006         * gst/gstinfo.h:
4007         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4008         (gst_mem_chunk_free):
4009         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4010         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4011         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4012         (gst_object_dispatch_properties_changed),
4013         (gst_object_set_name_default), (gst_object_set_name),
4014         (gst_object_get_name), (gst_object_set_name_prefix),
4015         (gst_object_get_name_prefix), (gst_object_set_parent),
4016         (gst_object_get_parent), (gst_object_unparent),
4017         (gst_object_check_uniqueness), (gst_object_save_thyself),
4018         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4019         (gst_object_set_property), (gst_object_get_property),
4020         (gst_object_get_path_string):
4021         * gst/gstobject.h:
4022         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4023         (gst_real_pad_init), (gst_real_pad_get_property),
4024         (gst_pad_custom_new), (gst_pad_get_direction),
4025         (gst_pad_set_active), (gst_pad_is_active),
4026         (gst_pad_set_event_function), (gst_pad_is_linked),
4027         (gst_pad_link_free), (gst_pad_link_intersect),
4028         (gst_pad_link_fixate), (gst_pad_set_caps),
4029         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4030         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4031         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4032         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4033         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4034         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4035         (gst_pad_realize), (gst_pad_get_allowed_caps),
4036         (gst_real_pad_dispose), (gst_real_pad_finalize),
4037         (gst_pad_collectv), (gst_pad_collect_valist),
4038         (gst_pad_template_dispose), (gst_pad_template_new),
4039         (gst_pad_get_internal_links):
4040         * gst/gstpad.h:
4041         * gst/gstpipeline.c: (gst_pipeline_dispose),
4042         (gst_pipeline_change_state):
4043         * gst/gstpipeline.h:
4044         * gst/gstplugin.c:
4045         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4046         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4047         * gst/gstpluginfeature.h:
4048         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4049         * gst/gstquery.c: (_gst_query_type_initialize),
4050         (gst_query_type_register), (gst_query_type_get_by_nick),
4051         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4052         * gst/gstquery.h:
4053         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4054         * gst/gstscheduler.c: (gst_scheduler_add_element),
4055         (gst_scheduler_factory_create):
4056         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4057         (gst_structure_free), (gst_structure_set_name),
4058         (gst_structure_id_set_value), (gst_structure_set_value),
4059         (gst_structure_set_valist), (gst_structure_remove_field),
4060         (gst_structure_remove_fields),
4061         (gst_structure_remove_fields_valist),
4062         (gst_structure_remove_all_fields), (gst_structure_foreach),
4063         (gst_structure_map_in_place),
4064         (gst_caps_structure_fixate_field_nearest_int),
4065         (gst_caps_structure_fixate_field_nearest_double):
4066         * gst/gststructure.h:
4067         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4068         (gst_system_clock_init), (gst_system_clock_dispose),
4069         (gst_system_clock_async_thread),
4070         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4071         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4072         * gst/gstsystemclock.h:
4073         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4074         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4075         * gst/gsttaginterface.c:
4076         * gst/gstthread.c: (gst_thread_dispose),
4077         (gst_thread_release_children_locks), (gst_thread_change_state),
4078         (gst_thread_main_loop):
4079         * gst/gsttrashstack.h:
4080         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4081         * gst/gsttypes.h:
4082         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4083         (gst_element_request_pad), (gst_element_get_pad_from_template),
4084         (gst_element_request_compatible_pad),
4085         (gst_element_get_compatible_pad_filtered),
4086         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4087         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4088         (gst_element_link_many), (gst_element_link),
4089         (gst_element_link_pads), (gst_element_unlink_pads),
4090         (gst_element_unlink_many), (gst_element_unlink),
4091         (gst_pad_can_link_filtered), (gst_pad_can_link),
4092         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4093         (gst_object_default_error), (gst_bin_add_many),
4094         (gst_bin_remove_many), (gst_element_populate_std_props),
4095         (gst_element_class_install_std_props), (gst_buffer_merge),
4096         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4097         (link_fold_func), (gst_pad_proxy_setcaps):
4098         * gst/gstutils.h:
4099         * gst/gstvalue.c: (gst_value_deserialize_string):
4100         * gst/parse/grammar.y:
4101         * gst/schedulers/gstbasicscheduler.c:
4102         (gst_basic_scheduler_cothreaded_chain),
4103         (gst_basic_scheduler_chain_recursive_add),
4104         (gst_basic_scheduler_pad_link):
4105         * gst/schedulers/gstoptimalscheduler.c:
4106         (get_group_schedule_function),
4107         (gst_opt_scheduler_state_transition),
4108         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4109         * libs/gst/bytestream/bytestream.c:
4110         * libs/gst/dataprotocol/dataprotocol.c:
4111         (gst_dp_header_from_buffer):
4112         * po/nb.po:
4113         * po/ru.po:
4114         * tests/threadstate/threadstate2.c: (eos):
4115         * tools/gst-compprep.c: (main):
4116         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4117         (print_pad_info), (print_children_info):
4118         * tools/gst-launch.c: (idle_func), (main):
4119         * tools/gst-md5sum.c: (idle_func), (main):
4120         * tools/gst-xmlinspect.c: (print_element_info):
4121         First THREADED backport attempt, focusing on adding locks and
4122         making sure the API is threadsafe. Needs more work. More docs
4123         follow this week.
4124
4125 2005-02-24  Andy Wingo  <wingo@pobox.com>
4126
4127         * tests/bench-complexity.scm:
4128         * tests/complexity.gnuplot: New files, good for running complexity
4129         benchmarks.
4130
4131         * tests/Makefile.am:
4132         * tests/complexity.c: New test, sets up N elements, at each level
4133         teeing into M streams per element. Eeeenteresting.
4134
4135         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4136         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4137         running bench-mass_elements.scm.
4138
4139         * tests/bench-mass_elements.scm: New script, runs mass_elements
4140         for various numbers of identities, outputting the results to a
4141         file. Requires guile 1.6. Just for testing.
4142
4143 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4144
4145         * gst/schedulers/fairscheduler.c:
4146           compile with debug disabled
4147
4148 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4149
4150         * configure.ac:
4151           hunting season on 0.9 is now OPEN
4152
4153 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4154
4155         * docs/libs/tmpl/gstcontrol.sgml:
4156         * docs/libs/tmpl/gstdparam.sgml:
4157         * docs/libs/tmpl/gstdplinint.sgml:
4158         * docs/libs/tmpl/gstdpman.sgml:
4159         * docs/libs/tmpl/gstdpsmooth.sgml:
4160         * docs/libs/tmpl/gstunitconvert.sgml:
4161           more docs for the state of dparams
4162
4163 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4164
4165         * gst/gstelementfactory.c: (gst_element_factory_create):
4166         * gst/gstobject.c: (gst_object_init),
4167         (gst_object_set_name_default), (gst_object_set_name):
4168           name objects by default, not in gst_element_factory_create. Allows
4169           using elements created with g_object_new. (fixes #167283)
4170
4171 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4172
4173         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4174           make the time that debugging functions print relative to when
4175           gst_init was called
4176
4177 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4178
4179         * gst/gsttaginterface.c:
4180           Fix inline docs: tag setter vararg functions are NULL-terminated,
4181           GST_TAG_INVALID doesn't exist any more.
4182
4183 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4184
4185         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4186         Allocate the 1 byte more memory that was forgotten!!!!!
4187         fixes memory corruption on 64bit platforms
4188
4189 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4190
4191         * docs/pwg/building-pads.xml:
4192         * docs/pwg/intro-basics.xml:
4193           fixed a few typos, relabeled introductionary list of types
4194         * docs/random/ensonic/dparams.txt:
4195           more notes abut dparam changes
4196         * libs/gst/control/dparam.c: (gst_dparam_attach):
4197         * libs/gst/control/dparammanager.c:
4198         * libs/gst/control/dparammanager.h:
4199           - many comments and notes on dparam implementation
4200           - new dparams are were not initialized to the default value
4201             from param spec
4202
4203 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4204
4205         submitted by: Peter Astakhov
4206
4207         * po/LINGUAS:
4208         * po/ru.po:
4209           adding Russian translation
4210
4211 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4212
4213         * configure.ac:
4214         * docs/gst/Makefile.am:
4215         * docs/libs/Makefile.am:
4216           make sure popt is added to gtk-doc flags.  Fixes #147782.
4217
4218 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4219
4220         * docs/faq/using.xml:
4221           Fix typo in FAQ (artssink => artsdsink)
4222
4223 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4224
4225         * tools/gst-launch.1.in:
4226           Fix typo (#166699).
4227
4228 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4229
4230         * docs/faq/using.xml:
4231           Add -v argument to fakesrc/fakesink gst-launch line,
4232           so that the promised output will actually show up.
4233
4234 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4235
4236         * gst/gstthread.c: (gst_thread_change_state):
4237           Implement state-change error handling (#166073).
4238
4239 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4240
4241         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4242           Release interrupt after handling (#166250).
4243
4244 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4245
4246         * configure.ac:
4247           back to HEAD
4248
4249 === release 0.8.9 ===
4250
4251 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4252
4253         * NEWS:
4254         * RELEASE:
4255         * configure.ac:
4256           releasing 0.8.9, "Like Eating Glass"
4257
4258 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4259
4260         submitted by: Clytie Siddall
4261
4262         * po/vi.po: Added Vietnamese translation
4263
4264 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4265
4266         patch by: Tim Philipp-Müller
4267
4268         * configure.ac:
4269         * gst/gstpad.c:
4270           unref data when probe function returns FALSE.  Fixes #166362
4271
4272 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4273
4274         * gst/gst.c: (gst_init_get_popt_table):
4275           Fix typo (#166269).
4276
4277 2005-02-04  Andy Wingo  <wingo@pobox.com>
4278
4279         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4280         the debugging on whether the caps are compatible.
4281
4282 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4283
4284         * docs/manual/basics-elements.xml:
4285           Fix two typos.
4286
4287 2005-02-02  Wim Taymans  <wim@fluendo.com>
4288
4289         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4290         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4291         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4292         Remove some FIXMEs after analysing and commenting why they
4293         are not issues.
4294
4295 2005-02-02  Wim Taymans  <wim@fluendo.com>
4296
4297         * gst/schedulers/gstoptimalscheduler.c:
4298         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4299         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4300         (get_invalid_call), (chain_invalid_call),
4301         (get_group_schedule_function), (loop_group_schedule_function),
4302         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4303         (gst_opt_scheduler_state_transition),
4304         (gst_opt_scheduler_add_element),
4305         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4306         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4307         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4308         (gst_opt_scheduler_show):
4309         Added lock to protect scheduler data structures.
4310
4311 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4312
4313         * testsuite/threads/threadi.c: (cb_data):
4314           Fix buglet in test.
4315
4316 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4317
4318         * testsuite/threads/Makefile.am:
4319         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4320           On Wim's request, split the test in three separately-compiled
4321           tests that each test a very specific bug. Two of them still fail,
4322           will create bugs for those. threadi.c indicates why they fail.
4323
4324 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4325
4326         * gst/schedulers/gstoptimalscheduler.c:
4327         (get_group_schedule_function):
4328           Try to work with the threading mess that queue_link is.
4329
4330 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4331
4332         * gst/gstbin.c: (gst_bin_remove_func):
4333           Explicitely make an element release locks in a group when being
4334           remove from a bin.
4335         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4336           If there's no scheduler, always return immediately (similar to
4337           gst_element_interrupt).
4338
4339 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4340
4341         * gst/gstbin.c: (gst_bin_child_state_change_func):
4342           Remove a piece of code that could never be reached.
4343         * docs/gst/gstreamer-sections.txt:
4344         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4345         (gst_pad_call_get_function):
4346         * gst/gstpad.h:
4347         * testsuite/pad/Makefile.am:
4348           Fix #150546, enable tests.
4349
4350 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4351
4352         * docs/pwg/advanced-types.xml:
4353           Fix description for buffer-frames=0.
4354         * docs/gst/tmpl/gstbin.sgml:
4355         * gst/gstbin.c: (gst_bin_child_state_change_func),
4356         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4357         * gst/gstbin.h:
4358         * testsuite/threads/Makefile.am:
4359         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4360         (cb_state), (cb_play), (main):
4361           Fix non-recursive state changes to *really* change the state
4362           of the object, and not just call parent_class->state_change.
4363           Fix a lot of lockups caused by this. Fixes #132775. Add test
4364           for the problem. Also enable test to show #142588 (fixed).
4365         * gst/gstthread.c: (gst_thread_change_state),
4366         (gst_thread_child_state_change):
4367           Don't exit the thread if we go to NULL and are inside thread
4368           context. Instead, return control to the main thread context
4369           and exit from there.
4370         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4371           Don't unset virtual functions, since those may still be used.
4372           That's not necessarily correct, but suffices for now.
4373         * configure.ac:
4374         * testsuite/Makefile.am:
4375         * testsuite/pad/Makefile.am:
4376         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4377         (gst_test_sink_base_init), (gst_test_sink_chain),
4378         (gst_test_sink_init), (main):
4379         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4380         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4381         (main):
4382         * testsuite/pad/link.c: (gst_test_element_class_init),
4383         (gst_test_element_base_init), (gst_test_src_get),
4384         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4385         (gst_test_filter_loop), (gst_test_filter_init),
4386         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4387         (cb_error), (main):
4388           Add tests to show #150546. Pass, but should fail (currently
4389           disabled from the testsuite).
4390         * gst/gstscheduler.c: (gst_scheduler_dispose):
4391           Dereference child schedulers on dispose (#94464).
4392         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4393           Fix typo.
4394         * testsuite/threads/thread.c: (main):
4395           Add more debug.
4396
4397 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4398
4399         * gst/gstpad.c: (gst_pad_push):
4400           Oops, revert previous commit, broke testsuite...
4401
4402 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4403
4404         * gst/gstpad.c: (gst_pad_push):
4405           Add check that the pad on which the push is performed is not a
4406           get-based pad (#150546).
4407
4408 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4409
4410         * gst/elements/gsttypefindelement.c:
4411         (gst_type_find_element_handle_event):
4412           Fix buffer pushing if stream EOSes during typefinding.
4413
4414 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4415
4416         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4417
4418         * gst/gstvalue.c: (gst_string_wrap):
4419           Allow NULL-strings as argument (#165365).
4420
4421 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4422
4423         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4424
4425         * gst/schedulers/faircothreads.c:
4426         (gst_fair_scheduler_cothread_queue_show):
4427           Fix build without debug enabled.
4428
4429 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4430
4431         * docs/gst/gstreamer-sections.txt:
4432         * docs/libs/gstreamer-libs-docs.sgml:
4433         * docs/libs/gstreamer-libs-sections.txt:
4434         * docs/libs/tmpl/gstcontrol.sgml:
4435         * docs/libs/tmpl/gstdparam.sgml:
4436         * docs/libs/tmpl/gstdplinint.sgml:
4437         * docs/libs/tmpl/gstdpman.sgml:
4438         * docs/libs/tmpl/gstdpsmooth.sgml:
4439         * docs/libs/tmpl/gstputbits.sgml:
4440         * docs/libs/tmpl/gstunitconvert.sgml:
4441         * libs/gst/control/dparam.c:
4442         * libs/gst/control/dparam.h:
4443         * libs/gst/control/dparammanager.c:
4444         (gst_dpman_add_required_dparam_callback),
4445         (gst_dpman_add_required_dparam_direct),
4446         (gst_dpman_add_required_dparam_array),
4447         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4448         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4449         (gst_dpman_get_manager)
4450           restructured DParam docs
4451
4452 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4453
4454         * gst-element-check.m4:
4455           Only check for gst-inspect if we haven't already
4456           found it in previous element check runs
4457
4458 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4459
4460         * docs/gst/Makefile.am:
4461         * docs/libs/Makefile.am:
4462           fixed install rules to treat style.css as optional
4463
4464 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4465
4466         * docs/gst/Makefile.am:
4467         * docs/libs/Makefile.am:
4468           install style.css along with docs
4469         * docs/gst/tmpl/gstbin.sgml:
4470         * docs/gst/tmpl/gstclock.sgml:
4471         * docs/gst/tmpl/gstdata.sgml:
4472         * docs/gst/tmpl/gstelement.sgml:
4473         * gst/gstbin.h:
4474         * gst/gstelement.c: (gst_element_class_init):
4475         * gst/gstelement.h:
4476           fixing incomplete docs
4477
4478 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4479
4480         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4481           Don't unref seek event twice when fflush() fails
4482           
4483 2005-01-22  David Schleef  <ds@schleef.org>
4484
4485         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4486
4487 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4488
4489         * docs/gst/Makefile.am:
4490         * docs/libs/Makefile.am:
4491           added params for deprecation guards
4492         * gst/gst.c:
4493         * gst/gst.h:
4494         * gst/gsterror.c: (_gst_resource_errors_init),
4495         (_gst_stream_errors_init):
4496         * gst/gsterror.h:
4497           documented some more enums
4498
4499 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4500         * gst/autoplug/gstspideridentity.c:
4501         Cosmetic fix - spider_find_peek should be static
4502         * gst/parse/parse.l:
4503         Applying fix for #164261
4504
4505 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4506
4507         * docs/gst/gstreamer-sections.txt:
4508         * docs/gst/tmpl/gstplugin.sgml:
4509         * docs/libs/gstreamer-libs-sections.txt:
4510         * docs/libs/tmpl/gstcontrol.sgml:
4511         * gst/gstbuffer.h:
4512         * gst/gsttag.h:
4513         * gst/gstvalue.c:
4514           added docs for the TAG defines
4515
4516 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4517
4518         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4519           Only unref entry if there is an entry.
4520
4521 2005-01-17  Wim Taymans  <wim@fluendo.com>
4522
4523         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4524         (remove_from_group), (schedule_group), (normalize_group),
4525         (gst_opt_scheduler_iterate):
4526         Also ref/unref decoupled elements before iterating the
4527         group since they are not added to the list of elements.
4528
4529 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4530
4531         * docs/manual/highlevel-components.xml:
4532           Add subtitle/streamselection as new features to playbin.
4533
4534 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4535
4536         * docs/manual/manual.xml:
4537           Re-enable dataaccess docs (oops).
4538
4539 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4540
4541         * docs/pwg/advanced-types.xml:
4542         * docs/random/mimetypes:
4543           Add documentation on libsndfile types (#163309), by Steve Baker
4544           <steve@stevebaker.org>.
4545         * gst/gstelement.c: (gst_element_release_request_pad):
4546           If an element has no explicit function, just remove the pad.
4547
4548 2005-01-17  Luca Ognibene  <luogni@tin.it>
4549
4550         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4551
4552         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
4553           Fix memleak (#163801).
4554
4555 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4556
4557         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
4558           I think this is actually more correct...
4559
4560 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4561
4562         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4563           Another workaround for memory access while destroyed in callback.
4564           Please, someone with refcount knowledge, have a look at this.
4565
4566 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4567
4568         * docs/faq/faq.xml:
4569         * docs/faq/legal.xml:
4570           move the legal Q&A here
4571
4572 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4573
4574         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
4575         (gst_tee_request_new_pad):
4576           Fix negotiation.
4577
4578 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4579
4580         * docs/random/omega/caps2:
4581         * testsuite/caps/caps_strings:
4582           replace framerate aproximations by their real value
4583           (24000/1001, 30000/1001, 60000/1001)
4584           Partially fixes bug #164049
4585
4586 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4587
4588         * docs/gst/Makefile.am:
4589           don't fail on the stupid GstPoptOption
4590
4591 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4592
4593         * gst/gstpad.h:
4594         * gst/gstprobe.c:
4595           allow probes to work on ghost pads by realizing the pad
4596           probe debugging
4597
4598 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4599
4600         * docs/gst/gstreamer-sections.txt:
4601         * docs/gst/tmpl/gstpad.sgml:
4602         * gst/gstpad.c: (gst_pad_set_active_recursive):
4603         * gst/gstpad.h:
4604           Add gst_pad_set_active_recursive().
4605
4606 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4607
4608         * docs/random/release:
4609           updates
4610         * gst/gst_private.h:
4611         * gst/gstinfo.c:
4612         * gst/gstobject.c:
4613           move deep_notify logging to a new category
4614         * gst/gstprobe.c:
4615         * gst/gstprobe.h:
4616           add stuff so bindings can wrap probes
4617
4618 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4619
4620         * gst/gstplugin.c: (gst_plugin_load):
4621           Fix plugin loading if plugin/lib was already loaded. Fixes
4622           #163383
4623
4624 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
4625
4626         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4627
4628         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
4629           Protect plugin loading by a mutex so it's threadsafe. Fixes
4630           #163234.
4631
4632 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4633
4634         * gst/gstevent.c: (_gst_event_copy):
4635           Reference source object when copying events, since it'll be
4636           dereferenced on event dereferencing as well.
4637
4638 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4639
4640         * docs/gst/gstreamer-sections.txt:
4641         * docs/gst/tmpl/gstevent.sgml:
4642         * gst/gstevent.c: (gst_event_new_filler_stamped),
4643         (gst_event_filler_get_duration):
4644         * gst/gstevent.h:
4645           Add two new functions for filler events (which are used to
4646           synchronize streams if one of them is not having any data
4647           for a while) without interrupting the actual data-stream.
4648           Basically a no-op.
4649         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4650         (gst_queue_link_sink), (gst_queue_link_src),
4651         (gst_queue_change_state):
4652           Allow for renegotiation while filled. Required for stream
4653           switching while playing.
4654
4655 2005-01-08  Benjamin Otte  <otte@gnome.org>
4656
4657         * gst/gstelement.c: (gst_element_link_many):
4658           fix up g_return_if_fail's
4659         * po/LINGUAS:
4660         * po/de.po:
4661           add German translation, that was somehow not included
4662
4663 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4664
4665         * docs/random/mimetypes:
4666           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
4667           do not add them to riff-lib as they are not common
4668
4669 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4670
4671         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4672           Check for existence of probe after performing the probe before
4673           re-accessing it to prevent segfaults caused by removal of the
4674           probe in the callback.
4675
4676 2005-01-05  David Schleef  <ds@schleef.org>
4677
4678         * testsuite/registry/Makefile.am:
4679         * testsuite/registry/gst-print-formats.c:
4680         (print_pad_templates_info), (print_element_list),
4681         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
4682         (g_list_uniqify), (get_pad_templates_info),
4683         (get_element_mime_list), (print_mime_list), (main): A little
4684         program that looks through the registry to find elements of
4685         a given type.  Not particularly interesting as a test, except
4686         that there's no other test covering the same area.
4687
4688 2005-01-05  David Schleef  <ds@schleef.org>
4689
4690         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
4691         (fault_handler_sigaction), (fault_spin),
4692         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
4693         in signal.h-type signal handlers by not calling forbidden functions,
4694         including gst_element_set_state().
4695
4696 2005-01-05  David Schleef  <ds@schleef.org>
4697
4698         * gst/gstvalue.h: Mark _gst_reserved[] as private
4699
4700 2005-01-05  David Schleef  <ds@schleef.org>
4701
4702         * gst/gstvalue.c: Fix doc build problem.
4703
4704 2005-01-05  David Schleef  <ds@schleef.org>
4705
4706         * gst/gstvalue.c: Add some documentation
4707
4708 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
4709
4710         * docs/README:
4711           another shell oneliner for empty return value docs
4712         * gst/gstcaps.c:
4713         * gst/gstvalue.c:
4714         * libs/gst/control/dparam.c:
4715           more doc fixes (parameters and return values)
4716
4717 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
4718
4719         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4720
4721         * gst/gstregistry.h:
4722         * gst/registries/gstxmlregistry.c:
4723           Fix macro's for Mingw (fixes #162276).
4724
4725 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
4726
4727         * docs/README:
4728           quick shell oneliner to find undocumented members
4729         * docs/gst/tmpl/gstplugin.sgml:
4730         * docs/gst/tmpl/gstscheduler.sgml:
4731         * docs/gst/tmpl/gstthread.sgml:
4732           more enumtypes cleanup
4733         * gst/gsterror.h:
4734           activated documentation comments, now someone needs to document
4735           the enums :(
4736
4737 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4738
4739         * docs/manual/manual.xml:
4740           Add dataaccess part (doh!).
4741
4742 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4743
4744         * docs/manual/advanced-autoplugging.xml:
4745           Fix typo (intiate -> initiate).
4746
4747 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4748
4749         * docs/random/bbb/streamselection:
4750           Add some notes on how to handle multi-subtitle/-audio streams.
4751
4752 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
4753
4754         * docs/gst/gstreamer-docs.sgml:
4755         * docs/gst/gstreamer-sections.txt:
4756         * docs/gst/tmpl/gstenumtypes.sgml:
4757         * docs/gst/tmpl/gsterror.sgml:
4758         * docs/gst/tmpl/gstevent.sgml:
4759         * docs/gst/tmpl/gstpad.sgml:
4760         * docs/gst/tmpl/gstpadtemplate.sgml:
4761         * docs/gst/tmpl/gstthread.sgml:
4762           removed gstenumtypes section from docs and put all the enums into
4763           their sections
4764
4765 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4766
4767         * gst/gstplugin.c:
4768           document gst_library_load a bit more (riff special case + return
4769           value if already loaded)
4770         * testsuite/bytestream/filepadsink.c:
4771           plugin name is 'gstbytestream', not 'bytestream'
4772
4773 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4774
4775         * docs/random/bbb/subtitles:
4776           Add some first mind rumblings on proper subtitle support.
4777
4778 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
4779
4780         * po/ca.po:
4781         * po/sv.po:
4782           updated translations
4783
4784 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4785
4786         * docs/manual/advanced-dataaccess.xml:
4787           Add section on how to use fakesrc/fakesink/identity in your
4788           application, plus section on how to embed plugins. Also mention
4789           probes.
4790         * docs/manual/appendix-checklist.xml:
4791         * docs/manual/appendix-debugging.xml:
4792         * docs/manual/appendix-gnome.xml:
4793         * docs/manual/appendix-integration.xml:
4794           Debug -> checklist, GNOME -> integration, add sections on Linux,
4795           KDE integration and add other things useful for application
4796           development.
4797         * docs/manual/manual.xml:
4798           Remove some fixmes, update some file pointers.
4799         * docs/pwg/appendix-checklist.xml:
4800           Fix typo.
4801         * docs/pwg/building-boiler.xml:
4802           Remove ugly header and add commented fixme.
4803         * docs/pwg/pwg.xml:
4804           Add fixme.
4805         * examples/manual/Makefile.am:
4806           Add example for added docs.
4807
4808 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4809
4810         * configure.ac:
4811           back to HEAD
4812
4813 === release 0.8.8 ===
4814
4815 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4816
4817         * NEWS:
4818         * RELEASE:
4819         * configure.ac:
4820           Releasing 0.8.8, "I'll Take Care Of You"
4821
4822 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4823
4824         * configure.ac:
4825           second prerelease
4826
4827 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4828
4829         patch by: Wim Taymans
4830
4831         * gst/gstbin.c:
4832           Fix for #159852 - make iterate emission threadsafe
4833
4834 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4835
4836         * docs/faq/cvs.xml:
4837           notes about new fdo account request
4838
4839 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
4840
4841         * docs/gst/gstreamer-docs.sgml:
4842         * docs/gst/tmpl/gstenumtypes.sgml:
4843         * docs/gst/tmpl/gstplugin.sgml:
4844         * docs/libs/gstreamer-libs-docs.sgml:
4845           Added missing short docs. Added ids for navigation.
4846
4847 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4848
4849         * docs/manual/advanced-autoplugging.xml:
4850         * docs/manual/advanced-schedulers.xml:
4851         * docs/manual/advanced-threads.xml:
4852           Rewrites. Remove cothreads, go a bit into opt specifically,
4853           document threads and their gotchas, and do some technical stuff
4854           on autoplugging plus add some working examples. Fixes #157395.
4855         * examples/manual/Makefile.am:
4856           Add typefind/autoplugger example (one that actually works).
4857           Remove queue example since it's a duplicate of the thread one.
4858
4859 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4860
4861         * gst/gstvalue.c: (gst_value_deserialize_string):
4862           use deprecated g_value_set_string_take_ownership to keep compatible
4863           with glib 2.2
4864
4865 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4866
4867         * gst/gstvalue.c: (gst_value_deserialize_string):
4868           revert last patch, only dom a g_utf8_validate now before accepting
4869           the string - caps parsing strips " from strings so we can't rely on
4870           them
4871         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4872           disable a test that tested the above and comment it
4873
4874 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
4875
4876         Patch reviewed by David Schleef  <ds@schleef.org>
4877
4878         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
4879         bug #153882)
4880         * win32/gstenumtypes.h: same
4881
4882 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4883
4884         * gst/gstpad.c: (gst_pad_query):
4885           Do query on realized pad, similar to how convert/send_event handle
4886           this. Also makes sense, since this pad belongs to the function to
4887           which this query will be sent. Fixes #158163.
4888
4889 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
4890
4891         * docs/manual/appendix-programs.xml: fix pipeline to actually work
4892
4893 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4894
4895         * docs/faq/general.xml: fix pipeline to actually work
4896
4897 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4898
4899         * gst/gstvalue.c: (gst_value_deserialize_string):
4900           check that a simple string that gets deserialized does not contain
4901           invalid characters
4902         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4903           remove a test that tested a wring behaviour
4904
4905 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
4906
4907         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4908
4909         * docs/manual/intro-motivation.xml:
4910           Fix typos.
4911
4912 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
4913
4914         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4915
4916         * docs/gst/tmpl/gstprobe.sgml:
4917           Fix documentation of probe callback - it is supposed to return
4918           FALSE, not TRUE, to remove data from the stream (#159087).
4919
4920 2004-12-16  Daniel Gazard  <dany42@free.fr>
4921
4922         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4923
4924         * gst/gstelementfactory.c: (gst_element_factory_create):
4925           Fix compile failure if compiling without libxml2 support (#149936).
4926
4927 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4928
4929         * docs/manual/advanced-autoplugging.xml:
4930         * docs/manual/highlevel-components.xml:
4931           Move spider from autoplugging to components. Autoplugging is for
4932           internals, not for solutions. ;-).
4933
4934 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4935
4936         * docs/random/ds/0.9-suggested-changes:
4937           Make note on device/location/uri property names.
4938
4939 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4940
4941         * docs/manual/advanced-autoplugging.xml:
4942         * docs/manual/advanced-clocks.xml:
4943         * docs/manual/advanced-interfaces.xml:
4944         * docs/manual/advanced-metadata.xml:
4945         * docs/manual/advanced-position.xml:
4946         * docs/manual/advanced-schedulers.xml:
4947         * docs/manual/advanced-threads.xml:
4948         * docs/manual/appendix-gnome.xml:
4949         * docs/manual/appendix-programs.xml:
4950         * docs/manual/appendix-quotes.xml:
4951         * docs/manual/autoplugging.xml:
4952         * docs/manual/basics-bins.xml:
4953         * docs/manual/basics-data.xml:
4954         * docs/manual/basics-elements.xml:
4955         * docs/manual/basics-helloworld.xml:
4956         * docs/manual/basics-init.xml:
4957         * docs/manual/basics-pads.xml:
4958         * docs/manual/basics-plugins.xml:
4959         * docs/manual/bins-api.xml:
4960         * docs/manual/bins.xml:
4961         * docs/manual/buffers-api.xml:
4962         * docs/manual/buffers.xml:
4963         * docs/manual/clocks.xml:
4964         * docs/manual/components.xml:
4965         * docs/manual/cothreads.xml:
4966         * docs/manual/debugging.xml:
4967         * docs/manual/dparams-app.xml:
4968         * docs/manual/dynamic.xml:
4969         * docs/manual/elements-api.xml:
4970         * docs/manual/elements.xml:
4971         * docs/manual/factories.xml:
4972         * docs/manual/gnome.xml:
4973         * docs/manual/goals.xml:
4974         * docs/manual/helloworld.xml:
4975         * docs/manual/helloworld2.xml:
4976         * docs/manual/highlevel-components.xml:
4977         * docs/manual/highlevel-xml.xml:
4978         * docs/manual/init-api.xml:
4979         * docs/manual/intro-basics.xml:
4980         * docs/manual/intro-motivation.xml:
4981         * docs/manual/intro-preface.xml:
4982         * docs/manual/intro.xml:
4983         * docs/manual/links-api.xml:
4984         * docs/manual/links.xml:
4985         * docs/manual/manual.xml:
4986         * docs/manual/motivation.xml:
4987         * docs/manual/pads-api.xml:
4988         * docs/manual/pads.xml:
4989         * docs/manual/plugins-api.xml:
4990         * docs/manual/plugins.xml:
4991         * docs/manual/programs.xml:
4992         * docs/manual/queues.xml:
4993         * docs/manual/quotes.xml:
4994         * docs/manual/schedulers.xml:
4995         * docs/manual/states-api.xml:
4996         * docs/manual/states.xml:
4997         * docs/manual/threads.xml:
4998         * docs/manual/typedetection.xml:
4999         * docs/manual/win32.xml:
5000         * docs/manual/xml.xml:
5001           Try 2. This time, include a short preface as a "general
5002           introduction", also add code blocks around all code samples
5003           so they get compiled. We still need a way to tell readers
5004           the filename of the code sample. In some cases, don't show
5005           all code in the documentation, but do include it in the generated
5006           code. This allows for focussing on specific bits in the docs,
5007           while still having a full test application available.
5008         * examples/manual/Makefile.am:
5009           Fix up examples for new ADM. Add several of the new examples that
5010           were either added or were missing from the build system.
5011         * examples/manual/extract.pl:
5012           Allow nameless blocks.
5013
5014 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5015
5016         * docs/manual/elements-api.xml:
5017         * docs/manual/helloworld.xml:
5018         * examples/manual/extract.pl:
5019           fix last example.  Add example of adding code blocks that are not
5020           shown in docbook output.
5021
5022 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5023
5024         * docs/manual/dynamic.xml:
5025         * docs/manual/elements-api.xml:
5026         * docs/manual/gnome.xml:
5027         * docs/manual/helloworld2.xml:
5028         * docs/manual/init-api.xml:
5029         * docs/manual/queues.xml:
5030         * docs/manual/threads.xml:
5031         * docs/manual/xml.xml:
5032         * examples/manual/extract.pl:
5033           Make it possible to extract example code from separate blocks.
5034           Should make Ronald happy.
5035
5036 2004-12-15  Wim Taymans  <wim@fluendo.com>
5037
5038         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5039         (remove_from_group), (group_elements_set_visited),
5040         (normalize_group), (gst_opt_scheduler_iterate):
5041         Fix bug where a flag was not updated on a decoupled entry point 
5042         because we were just checking the group element list and decoupled
5043         elements are not in that list..
5044
5045 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5046
5047         * docs/manual/advanced-autoplugging.xml:
5048         * docs/manual/advanced-clocks.xml:
5049         * docs/manual/advanced-dparams.xml:
5050         * docs/manual/advanced-interfaces.xml:
5051         * docs/manual/advanced-metadata.xml:
5052         * docs/manual/advanced-position.xml:
5053         * docs/manual/advanced-schedulers.xml:
5054         * docs/manual/advanced-threads.xml:
5055         * docs/manual/appendix-debugging.xml:
5056         * docs/manual/appendix-gnome.xml:
5057         * docs/manual/appendix-programs.xml:
5058         * docs/manual/appendix-quotes.xml:
5059         * docs/manual/appendix-win32.xml:
5060         * docs/manual/autoplugging.xml:
5061         * docs/manual/basics-bins.xml:
5062         * docs/manual/basics-data.xml:
5063         * docs/manual/basics-elements.xml:
5064         * docs/manual/basics-helloworld.xml:
5065         * docs/manual/basics-init.xml:
5066         * docs/manual/basics-pads.xml:
5067         * docs/manual/basics-plugins.xml:
5068         * docs/manual/bins-api.xml:
5069         * docs/manual/bins.xml:
5070         * docs/manual/buffers-api.xml:
5071         * docs/manual/buffers.xml:
5072         * docs/manual/clocks.xml:
5073         * docs/manual/components.xml:
5074         * docs/manual/cothreads.xml:
5075         * docs/manual/debugging.xml:
5076         * docs/manual/dparams-app.xml:
5077         * docs/manual/dynamic.xml:
5078         * docs/manual/elements-api.xml:
5079         * docs/manual/elements.xml:
5080         * docs/manual/factories.xml:
5081         * docs/manual/gnome.xml:
5082         * docs/manual/goals.xml:
5083         * docs/manual/helloworld.xml:
5084         * docs/manual/helloworld2.xml:
5085         * docs/manual/highlevel-components.xml:
5086         * docs/manual/highlevel-xml.xml:
5087         * docs/manual/init-api.xml:
5088         * docs/manual/intro-motivation.xml:
5089         * docs/manual/intro-preface.xml:
5090         * docs/manual/intro.xml:
5091         * docs/manual/links-api.xml:
5092         * docs/manual/links.xml:
5093         * docs/manual/manual.xml:
5094         * docs/manual/motivation.xml:
5095         * docs/manual/pads-api.xml:
5096         * docs/manual/pads.xml:
5097         * docs/manual/plugins-api.xml:
5098         * docs/manual/plugins.xml:
5099         * docs/manual/programs.xml:
5100         * docs/manual/queues.xml:
5101         * docs/manual/quotes.xml:
5102         * docs/manual/schedulers.xml:
5103         * docs/manual/states-api.xml:
5104         * docs/manual/states.xml:
5105         * docs/manual/threads.xml:
5106         * docs/manual/typedetection.xml:
5107         * docs/manual/win32.xml:
5108         * docs/manual/xml.xml:
5109           First try at rewriting the ADM. Needs lotsamore work, but some
5110           parts might already be somewhat useful.
5111         * docs/pwg/advanced-interfaces.xml:
5112           Remove properties interface, it never actually existed (except for
5113           on my HD...).
5114
5115 2004-12-13  David Schleef  <ds@schleef.org>
5116
5117         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5118         be NULL (bug #160220).
5119
5120 2004-12-13  David Schleef  <ds@schleef.org>
5121
5122         * configure.ac: remove all mmx stuff, because it's not used.
5123         * docs/random/ds/0.9-suggested-changes: additional notes
5124         * include/Makefile.am: we don't use these anymore
5125         * include/mmx.h: remove
5126         * include/sse.h: remove
5127
5128 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5129
5130         * docs/random/mimetypes:
5131           Add FOURCC code for h264 codec (VSSH)
5132           Add alternate FOURCC codes for h263 related codecs
5133
5134 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5135
5136         * docs/manual/programs.xml:
5137           Added more gst-launch examples.
5138
5139 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5140
5141         * gst/gstqueue.c: (gst_queue_handle_src_query):
5142           Check for availability again.
5143
5144 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5145
5146         * gst/gstcaps.c: (gst_caps_compare_structures):
5147           Simple caps go first. This has the nice side-effect of fixing an
5148           obscure warning.
5149
5150 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5151
5152         * gst/gstversion.h.in:
5153           Protect header.
5154
5155 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5156
5157         * gst/schedulers/gstoptimalscheduler.c:
5158         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5159         (gst_opt_scheduler_get_wrapper):
5160           When we're recursing into a chain run, only run the directly
5161           related group, not all queued ones. This will fix a possible
5162           deadlock in chains with more than two groups.
5163
5164 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5165
5166         * autogen.sh:
5167           remove patch if autopoint fails
5168
5169 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5170
5171         * docs/gst/gstreamer-sections.txt:
5172           Document Thomas' addition, fix build, make Luis the sheriff happy.
5173
5174 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5175
5176         * gst/gstplugin.c:
5177         * gst/gstplugin.h:
5178           add accessor for version field
5179
5180 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5181
5182         submitted by: Luca Ferretti <elle.uca@infinito.it>
5183
5184         * po/LINGUAS:
5185         * po/it.po:
5186           New tranlation added: Italian
5187
5188 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5189
5190         * gst/gstpad.c: (gst_pad_is_negotiated),
5191         (gst_pad_get_negotiated_caps):
5192           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5193           it doesn't actually check the contents), so be sure to hand it
5194           a RealPad else we'll crash.
5195
5196 2004-12-03  Wim Taymans  <wim@fluendo.com>
5197
5198         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5199         (gst_queue_link), (gst_queue_handle_src_query):
5200         Reverted to 1.110 until this makes the testsuite and various
5201         apps work.
5202
5203 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5204
5205         * docs/upload.mak: fix included CVS conflict strings
5206
5207 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5208
5209         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5210
5211         * gst/gstelement.c: (gst_element_error_full):
5212           Use g_error_new_literal because error text may have
5213           percentage signs in it. Fixes #160019.
5214
5215 2004-12-01  Benjamin Otte  <otte@gnome.org>
5216
5217         * gst/elements/gstbufferstore.c:
5218         (gst_buffer_store_add_buffer_func):
5219           don't try to make subbuffers bigger than they can be. (fixes
5220           #159970)
5221
5222 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5223
5224         * docs/gst/gstreamer-sections.txt:
5225         * docs/gst/tmpl/gstvalue.sgml:
5226           Add new function to docs to fix build.
5227
5228 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5229
5230         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5231         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5232         (_gst_pad_default_fixate_foreach):
5233         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5234         * gst/gstvalue.h:
5235           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5236           in some cases (arrays), the fixedness depends on the content.
5237         * gst/gstqueue.c: (gst_queue_handle_src_query):
5238           Check for availability before doing something.
5239
5240 2004-11-29  Wim Taymans  <wim@fluendo.com>
5241
5242         * testsuite/threads/Makefile.am:
5243         * testsuite/threads/signals.c: (gst_test_get_type),
5244         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5245         (gst_test_set_property), (gst_test_get_property),
5246         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5247         (gst_test_do_prop), (run_thread), (main):
5248         Added a bunch of testcases that show threadsafety bugs in glib.
5249
5250 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5251
5252         * docs/manual/programs.xml:
5253           Added a first batch of gst-launch examples, as provided by Ronald
5254           and others from the devel-mlist
5255
5256 2004-11-28  Benjamin Otte  <otte@gnome.org>
5257
5258         * gst/gstelement.c: (gst_element_negotiate_pads):
5259           simplify
5260         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5261         (gst_value_serialize_string), (gst_value_deserialize_string):
5262           add unwrapping of previously wrapped strings. Fix bug in wrapping
5263           while at it.
5264         * testsuite/caps/value_serialize.c: (test1),
5265         (test_string_serialization), (test_string_deserialization), (main):
5266           add tests for string (de)serialization
5267
5268 2004-11-26  Wim Taymans  <wim@fluendo.com>
5269
5270         * testsuite/threads/159566.c: (object_deep_notify), (main):
5271         * testsuite/threads/Makefile.am:
5272         Added testsuite to show bug #159566
5273
5274 2004-11-25  Wim Taymans  <wim@fluendo.com>
5275
5276         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5277         (gst_thread_child_state_change), (gst_thread_main_loop):
5278         Ref the thread object in the GThread mainloop. Break out of the
5279         thread mainloop if it holds the last ref. This properly exits
5280         the threads when disposing the thread from its own context. It
5281         also avoids possible deadlocks in the dispose function.
5282
5283 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5284
5285         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5286         it is necessary to wait.
5287
5288 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5289
5290         * docs/pwg/building-boiler.xml:
5291           Make description somewhat clearer.
5292
5293 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5294
5295         * docs/upload.mak:
5296           Apparently docs changed location on FDO's server.
5297
5298 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5299
5300         * docs/pwg/appendix-checklist.xml:
5301           Add some random notes on things to check when writing an element.
5302           This list can be extended as people see fit.
5303
5304 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5305
5306         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5307         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5308         pad. The queue will now wait until it is empty and forward the new
5309         caps to the source.
5310         * gst/gstbin.c (gst_bin_set_element_sched)
5311         (gst_bin_unset_element_sched): Make sure that all elements and
5312         links are registered and unregistered with the scheduler exactly
5313         once. This elaborates on a fix by Benjamin Otte, but
5314         guarantees that decoupled elements are also registered.
5315
5316 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5317
5318         * docs/manual/quotes.xml:
5319           add a quote
5320         * configure.ac:
5321         * gst/gst.c:
5322         * gst/gstinfo.c:
5323           add LIBDIR and move init message higher up so it's at the start
5324
5325 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5326
5327         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5328         * gstreamer.spec.in: add fair
5329
5330 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5331
5332         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5333         * gst/elements/gstidentity.c: (gst_identity_class_init):
5334           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5335           <teuf@gnome.org> (#157263).
5336         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5337         (gst_type_find_handle_src_query):
5338           Subtract size of internally stored data from position queries.
5339
5340 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5341
5342         * gst/schedulers/fairscheduler.c:
5343         * gst/schedulers/faircothreads.c:
5344         * gst/schedulers/faircothreads.h:
5345         New cothread based scheduler: Fair scheduler.
5346         * gst/schedulers/gthread-cothreads.h: 
5347         Add the standard #if around the whole file.
5348         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5349         compilation of the functions defined in this file. This is
5350         necessary to be able to use this file as a normal header.
5351         * gst/schedulers/Makefile.am: Add compiling support for fair
5352         scheduler.
5353         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5354         scheduler cothreads layer from documentation generation.
5355
5356 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5357
5358         * gst/autoplug/gstspideridentity.c:
5359         (gst_spider_identity_sink_loop_type_finding):
5360           Don't crash if that function is not implemented.
5361
5362 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5363
5364         * docs/pwg/advanced-types.xml:
5365           Another typo.
5366
5367 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5368
5369         * docs/pwg/intro-preface.xml:
5370           Hm, ok, so the brackets weren't really useful...
5371         * docs/pwg/other-ntoone.xml:
5372           Fix embarassing typo.
5373
5374 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5375
5376         * docs/pwg/intro-preface.xml:
5377           Rewrite preface.
5378
5379 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5380
5381         * docs/pwg/advanced-scheduling.xml:
5382         * docs/pwg/advanced-tagging.xml:
5383         * docs/pwg/advanced-types.xml:
5384         * docs/pwg/building-boiler.xml:
5385         * docs/pwg/building-chainfn.xml:
5386         * docs/pwg/building-signals.xml:
5387         * docs/pwg/building-state.xml:
5388         * docs/pwg/building-testapp.xml:
5389         * docs/pwg/intro-basics.xml:
5390         * docs/pwg/other-manager.xml:
5391         * docs/pwg/other-source.xml:
5392           Typo fixes.
5393         * docs/pwg/other-manager.xml:
5394           Add some first content. No example code yet.
5395         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5396           Remove double newlines.
5397
5398 2004-11-04  Wim Taymans  <wim@fluendo.com>
5399
5400         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5401         (remove_from_group), (normalize_group), (group_migrate_connected),
5402         (gst_opt_scheduler_iterate):
5403         * testsuite/schedulers/.cvsignore:
5404         * testsuite/schedulers/Makefile.am:
5405         * testsuite/schedulers/queue_link.c: (main):
5406         Added testcase for scheduler segfault.
5407         Fix scheduler segfault when removing a decoupled
5408         entry point as the last element from a group.
5409
5410 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5411
5412         * gst/gstmarshal.list: add missing marshaller, fixes build
5413
5414 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5415
5416         * docs/random/signal: added notes about using BOXED for GstBuffer
5417         signal marshallers, not POINTER
5418
5419 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5420
5421         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5422         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5423         POINTER=>BOXED changes to marshal GstBuffers
5424
5425 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5426
5427         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5428         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5429
5430 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5431
5432         * docs/gst/gstreamer-sections.txt:
5433         * docs/gst/tmpl/gstcaps.sgml:
5434         * docs/gst/tmpl/gsterror.sgml:
5435         * docs/gst/tmpl/gstinfo.sgml:
5436         * docs/gst/tmpl/gstmacros.sgml:
5437         * docs/gst/tmpl/gstutils.sgml:
5438         * docs/random/ensonic/interfaces.txt:
5439         * gst/gstinfo.h:
5440           added some more docs, removed two obsolete defines
5441
5442 2004-11-02  Kjartan Maraas <as at gnome.org>
5443
5444         reviewed by: Wim Taymans, Ronald Bultje.
5445
5446         * gst/cothreads.c: (cothread_create):
5447         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5448         (gst_bin_child_state_change_func):
5449         * gst/gstbuffer.c: (gst_buffer_span):
5450         * gst/gstelement.c: (gst_element_get_index),
5451         (gst_element_get_event_masks), (gst_element_get_query_types),
5452         (gst_element_get_formats):
5453         * gst/gsterror.c: (_gst_core_errors_init),
5454         (_gst_library_errors_init), (_gst_resource_errors_init),
5455         (_gst_stream_errors_init):
5456         * gst/gstobject.c: (gst_object_default_deep_notify):
5457         * gst/gstpad.c: (gst_pad_get_event_masks),
5458         (gst_pad_get_internal_links_default):
5459         * gst/gstplugin.c: (gst_plugin_register_func),
5460         (gst_plugin_get_module):
5461         * gst/gststructure.c: (gst_structure_get_string),
5462         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5463         (gst_structure_to_abbr):
5464         * gst/gstutils.c: (gst_print_element_args):
5465         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5466         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5467         Aplied part of patch #157127: Cleanup of issues reported by 
5468         sparse.
5469         Also do not try to use cothreads when there is no cothread
5470         context yet.
5471
5472 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5473
5474         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5475         (gst_opt_scheduler_iterate):
5476         Applied patch #154061. Running a pipeline in which an element 
5477         calls GST_ELEMENT_ERROR in the chain function, the opt 
5478         scheduler doesn't unref the chain so it never gets freed.
5479
5480 2004-11-02  Wim Taymans  <wim@fluendo.com>
5481
5482         * gst/gststructure.c: (gst_structure_get_abbrs),
5483         (gst_structure_from_abbr), (gst_structure_to_abbr):
5484         Remove that ugly if-then thing in the code that converts
5485         between strings and types.
5486
5487 2004-11-02  Wim Taymans  <wim@fluendo.com>
5488
5489         * gst/gstscheduler.c: (gst_scheduler_add_element),
5490         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5491         Aplied clock distribution patch, this should fix bug
5492         #148787.
5493
5494 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5495
5496         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5497
5498         * po/LINGUAS:
5499         * po/nb.po:
5500           Added Norwegian Bokmaal translation
5501
5502 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5503
5504         * tools/gst-inspect.c: (print_signal_info):
5505           print signal arguments as pointers if they are
5506
5507 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5508
5509         * docs/pwg/building-boiler.xml:
5510           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5511
5512 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5513
5514         * gst/parse/parse.l:
5515         * testsuite/parse/parse1.c: (main):
5516         Since parse can do 'element name=a:b' make 'a:b.' work as
5517         well. 
5518         Added testcase to verify fix.
5519
5520 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5521
5522         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
5523         Use the realpad when printing the direction.
5524         Add extra \n when printing extensions of typefind factories.
5525
5526 2004-10-13  David Schleef  <ds@schleef.org>
5527
5528         * examples/manual/Makefile.am: $< isn't portable in Makefile
5529         rules.
5530
5531 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
5532
5533         * docs/gst/tmpl/gstobject.sgml:
5534         * docs/gst/tmpl/gstplugin.sgml:
5535         * docs/gst/tmpl/gstpluginfeature.sgml:
5536         * docs/gst/tmpl/gstregistry.sgml:
5537         * docs/gst/tmpl/gstversion.sgml:
5538         * gst/gstbin.c:
5539           more api documentation
5540         * gst/gstplugin.c: (gst_plugin_register_func),
5541         (gst_plugin_check_file), (gst_plugin_load_file):
5542           better error signaling and logging
5543
5544 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5545
5546         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
5547           Subtract current queue contents from position queries.
5548
5549 2004-10-11  Johan Dahlin  <johan@gnome.org>
5550
5551         * gst/gsturi.c (gst_uri_get_location): unescape string
5552         (gst_uri_construct): escape string.
5553
5554 2004-10-11  Benjamin Otte  <otte@gnome.org>
5555
5556         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
5557         (gst_pad_try_set_caps_nonfixed):
5558           allow renegotiation of unconnected pads (as inside spider). Simply
5559           return OK if unconnected - mimic try_set_caps there.
5560
5561 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5562
5563         * gst/gstbin.c: (gst_bin_sync_children_state):
5564           Add missing break.
5565
5566 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5567
5568         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
5569         Set element to EOS before sending EOS event
5570
5571 2004-10-08  Wim Taymans  <wim at fluendo dot com>
5572
5573         * gst/elements/gsttypefindelement.c:
5574         (gst_type_find_element_handle_event):
5575         Handle EOS events when doing the transition from
5576         typefind to data passing. This should fix the
5577         infinite loops in short files.
5578
5579 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5580
5581         * gst/gstthread.c: (gst_thread_change_state),
5582         (gst_thread_child_state_change):
5583         Make sure no iteration happens while performing
5584         the state change as it could mess up the internal
5585         consistency of the thread state.
5586
5587 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5588
5589         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
5590         (gst_thread_change_state), (gst_thread_child_state_change):
5591         Do not try to grab the iterate lock in the state change method
5592         when we are in the same thread as the iterate or else we
5593         could deadlock. Some other cleanups.
5594
5595 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5596
5597         * configure.ac:
5598           bump nano to cvs
5599
5600 === release 0.8.7 ===
5601
5602 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5603
5604         * configure.ac:
5605         * NEWS:
5606         * RELEASE:
5607         * configure.ac:
5608           releasing 0.8.7, "A Cruise"
5609
5610 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5611
5612         * docs/random/mimetypes:
5613         Add an entry for Sony ATRAC3 audio format with mime-type
5614         used by rmdemux et riff-read
5615
5616 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5617
5618         * gst/elements/gsttypefindelement.c: (stop_typefinding):
5619         Push the buffer store instead of clearing it in case that
5620         the stream is not seekable.
5621
5622 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5623
5624         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
5625         (gst_thread_main_loop):
5626         Lock the iteration and the state change so that automatic
5627         negotiation and fixation does not happen at the same time
5628         as the in stream negotiation.
5629
5630 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5631
5632         * configure.ac:
5633           bump nano to cvs
5634
5635 === release 0.8.6 ===
5636
5637 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5638
5639         * configure.ac:
5640         * NEWS:
5641         * RELEASE:
5642         * configure.ac:
5643           releasing 0.8.6, "Narc"
5644
5645 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5646
5647         * configure.ac:
5648           prerel bump
5649
5650 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5651
5652         patch by: Steve Lhomme
5653
5654         * gst/elements/gstfakesrc.c:
5655         * gst/elements/gstidentity.c:
5656         * gst/gstthread.c:
5657           Fix for #153881
5658
5659 2004-10-01  Wim Taymans  <wim at fluendo dot com>
5660
5661         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
5662         Fix threadsafety of the crc checking function.
5663
5664 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5665
5666         patch by: Ronald Bultje
5667
5668         * gst/elements/gsttypefindelement.c: (stop_typefinding),
5669         (gst_type_find_element_handle_event),
5670         (gst_type_find_element_chain):
5671         * gst/elements/gsttypefindelement.h:
5672          #153657.
5673          Filter out discont event from seekable sources when typefind
5674          asks them to seek.  Fixes typefind with demuxers for
5675          avi, asf and matroska.
5676
5677 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5678
5679         * docs/gst/gstreamer-sections.txt:
5680         * gst/gstcaps.c:
5681         * gst/gstcaps.h:
5682         * gst/gstpad.c:
5683           Revert preferred caps: (#147789)
5684
5685 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
5686
5687         * win32/dirent.c:
5688           fix a memory leak
5689
5690 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5691
5692         * configure.ac:
5693           bump for prerelease
5694
5695 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5696
5697         * docs/Makefile.am:
5698         * docs/manual/elements-api.xml:
5699           restructure so that common stuff is shown first
5700         * docs/manual/init-api.xml:
5701           convert to examples
5702         * docs/manual/manual.xml:
5703         * docs/manuals.mak:
5704         * docs/url.entities:
5705           link to API on the website, possibly override later in build
5706         * examples/manual/.cvsignore:
5707           ignore more
5708         * examples/manual/Makefile.am:
5709           add more examples
5710         * examples/manual/extract.pl:
5711           error out on failure
5712
5713 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5714
5715         * docs/gst/tmpl/gstthread.sgml:
5716         * docs/manual/init-api.xml:
5717         * examples/manual/Makefile.am:
5718           convert two code bits to examples
5719
5720 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5721
5722         * gst/gstelement.c: (gst_element_change_state):
5723           Well, actually, I was about to remove this insane assert when
5724           I noticed Wim already did that. A warning is nice so we can
5725           fix actual ugs (using --g-fatal-warnings and backtraces), so
5726           I added that instead.
5727
5728 2004-09-06  Wim Taymans  <wim@fluendo.com>
5729
5730         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
5731         (gst_element_threadsafe_properties_post_run),
5732         (gst_element_set_state), (gst_element_change_state):
5733         Added extra refcounting around various places. 
5734
5735 2004-09-06  Wim Taymans  <wim@fluendo.com>
5736
5737         * gst/gstpad.c: (gst_pad_link_call_link_functions):
5738         Fix debug info.
5739
5740 2004-09-06  Wim Taymans  <wim@fluendo.com>
5741
5742         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5743         (remove_from_group):
5744         Some more debug info.
5745
5746 2004-09-03  Wim Taymans  <wim@fluendo.com>
5747
5748         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5749         (gst_fakesrc_init), (gst_fakesrc_set_clock),
5750         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5751         (gst_fakesrc_get), (gst_fakesrc_change_state):
5752         * gst/elements/gstfakesrc.h:
5753         * gst/elements/gstidentity.c: (gst_identity_class_init),
5754         (gst_identity_init), (gst_identity_chain),
5755         (gst_identity_set_property), (gst_identity_get_property),
5756         (gst_identity_change_state):
5757         * gst/elements/gstidentity.h:
5758         Added datarate properties to limit the datarate.
5759
5760 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5761
5762         * gst/autoplug/gstspider.c: (plugin_init):
5763           don't set a rank. We don't want to autoplug by inserting spiders.
5764
5765 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5766
5767         * gst/autoplug/gstspider.c: (gst_spider_class_init),
5768         (gst_spider_identity_plug):
5769           add a template for spider's sink
5770         * gst/gst.c: (gst_register_core_elements):
5771           queue's rank should be NULL, we don't want spider to add it.
5772
5773 2004-08-18  David Schleef  <ds@schleef.org>
5774
5775         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
5776         * docs/libs/Makefile.am: same
5777         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
5778         * docs/random/ds/0.9-planning: random additions
5779         * docs/random/ds/0.9-suggested-changes: same
5780         * gst/gstxml.h: remove vestigal GstXMLNs definition
5781
5782         Preferred caps: (#147789)
5783         * docs/gst/gstreamer-sections.txt: Add symbols
5784         * docs/gst/tmpl/gstcaps.sgml: Add symbols
5785         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
5786         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
5787         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
5788         (gst_caps_get_preferred), (gst_caps_set_preferred),
5789         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
5790         (gst_caps_use_preferred): Handle caps preferences
5791         * gst/gstcaps.h: Add caps preferences
5792         * gst/gstpad.c: (gst_pad_link_get_preferred),
5793         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
5794         (gst_pad_renegotiate), (gst_pad_guess_preferred),
5795         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
5796         negotiation.
5797
5798 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5799
5800         * gst/autoplug/gstspideridentity.c:
5801         (gst_spider_identity_request_new_pad):
5802         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
5803         (gst_aggregator_init):
5804         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
5805         (gst_fakesink_init):
5806         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
5807         (gst_fakesrc_init):
5808         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
5809         (gst_fdsink_init):
5810         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
5811         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
5812         (gst_filesink_init):
5813         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
5814         (gst_filesrc_init):
5815         * gst/elements/gstidentity.c: (gst_identity_base_init),
5816         (gst_identity_init):
5817         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
5818         (gst_multifilesrc_init):
5819         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
5820         (gst_pipefilter_init):
5821         * gst/elements/gststatistics.c: (gst_statistics_base_init),
5822         (gst_statistics_init):
5823         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
5824         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
5825           s/gst_pad_new/&_from_template/
5826           register pad templates in the base_init function
5827           add static pad template definitions
5828
5829 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5830
5831         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
5832         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
5833         * testsuite/refcounting/pad.c: (main):
5834         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
5835           s/gst_pad_new/&_from_template/
5836           prepare deprecation of gst_pad_new
5837
5838 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
5839
5840         patch by: Luca Ognibene <skaboy81@virgilio.it>
5841
5842         * gst/gstcaps.c:
5843         * gst/gstelement.c:
5844         * gst/gstpad.c:
5845         * gst/gstxml.c:
5846           fix memleaks.  Fixes #150001
5847
5848 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5849
5850         * docs/random/ds/0.9-suggested-changes:
5851           add notes - mostly about pad templates
5852
5853 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
5854
5855         * win32/GStreamer.vcproj:
5856           temporary locale files are .gmo not .mo
5857
5858 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5859
5860         * configure.ac: bump nano to cvs
5861
5862 === release 0.8.5 ===
5863
5864 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5865
5866         * configure.ac:
5867           releasing 0.8.5, "Stuttgart"
5868         * NEWS:
5869         * RELEASE:
5870         * configure.ac:
5871         * docs/random/release:
5872           updates for release
5873
5874 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5875
5876         patch by: Wim Taymans (wim@fluendo.com)
5877
5878         * gst/gstbuffer.c:
5879         * gst/gstindex.h:
5880         * libs/gst/dataprotocol/dataprotocol.c:
5881           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
5882
5883 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5884
5885         * Makefile.am:
5886         * win32/MANIFEST:
5887           add win32 dir to the build.  Fixes #149981.
5888
5889 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5890
5891         * configure.ac:
5892           bump libtool versioning
5893         * gst/gststructure.c:
5894           mark function as static
5895         * po/af.po:
5896         * po/az.po:
5897         * po/ca.po:
5898         * po/cs.po:
5899         * po/en_GB.po:
5900         * po/fr.po:
5901         * po/nl.po:
5902         * po/sq.po:
5903         * po/sr.po:
5904         * po/sv.po:
5905         * po/tr.po:
5906         * po/uk.po:
5907           translations update
5908         * win32/README.txt:
5909           trademark protection
5910
5911 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5912
5913         * configure.ac:
5914           fix GST_ORIGIN
5915           set GST_PACKAGE to source, and distinguish between release and other
5916         * tools/gst-inspect.c:
5917           print out plugin an element factory is part of so we see this info
5918
5919 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5920
5921         * docs/gst/gstreamer-sections.txt:
5922         * docs/gst/tmpl/gstbuffer.sgml:
5923         * docs/gst/tmpl/gstschedulerfactory.sgml:
5924           reorder docs a little, make GstBuffer's more sensible.
5925         * gst/gstbuffer.h:
5926           API: added GST_BUFFER_FLAG_DELTA_UNIT
5927         * gst/gstscheduler.c:
5928           comment API addition
5929
5930 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5931
5932         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
5933           work with non-regular files that can be mmapped (like /dev/zero)
5934         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
5935           get rid of typefinds that require a seek when we can't seek instead
5936           of trying them over and over again
5937         * tools/gst-launch.c: (idle_func), (error_cb), (main):
5938           return non-zero failure value when the pipeline was interrupted or
5939           an error occurred
5940
5941 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5942
5943         * win32/config.h:
5944         * win32/GStreamer.vcproj:
5945           compile and install the locales
5946
5947 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5948
5949         * gst/gstvalue.c:
5950           fix a possible memory leak under Windows
5951
5952 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5953
5954         * win32/GStreamer.vcproj:
5955           fix a memory leak that occured under Windows
5956         * win32/gstreamer.def:
5957           add gst_scheduler_register
5958
5959 2004-08-11  Benjamin Otte  <otte@gnome.org>
5960
5961         * docs/gst/gstreamer-sections.txt:
5962         * gst/gstscheduler.c: (gst_scheduler_register):
5963         * gst/gstscheduler.h:
5964           API:
5965           add gst_scheduler_register shortcut similar to gst_element_register
5966         * gst/schedulers/entryscheduler.c: (plugin_init):
5967         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
5968         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
5969           use it
5970
5971 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
5972
5973         * gst/gstvalue.h:
5974           fix a memory leak that occured under Windows
5975
5976 2004-08-10  Colin Walters  <walters@redhat.com>
5977
5978         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
5979         Don't use O_EXCL to open temporary registry.  It will prevent
5980         registry creation if a temporary one already exists, which
5981         is unnecessary.
5982
5983 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5984
5985         * docs/gst/gstreamer-sections.txt:
5986         * docs/gst/tmpl/gstvalue.sgml:
5987           remove some valuable stuff from the documentation due to the use of GST_EXPORT
5988
5989 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5990
5991         * win32/gstbytestream.vcproj:
5992         * win32/gstelements.vcproj:
5993         * win32/gstgetbits.vcproj:
5994         * win32/gst-inspect.vcproj:
5995         * win32/gst-launch.vcproj:
5996         * win32/gstoptimalscheduler.vcproj:
5997         * win32/GStreamer.vcproj:
5998         * win32/gst-register.vcproj:
5999         * win32/gstspider.vcproj:
6000           update the include and lib dirs to fit standard libraries as
6001           described in the Win32 manual
6002
6003 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6004
6005         * win32/config.h:
6006         * win32/gstversion.h:
6007           enable NLS again, push the version number for the coming 0.8.5 release
6008
6009 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6010
6011         * gst/gstvalue.h:
6012           export gst_type_XXX for windows DLLs
6013
6014 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6015
6016         * docs/faq/gst-uninstalled:
6017           fix PKG_CONFIG_PATH and PYTHONPATH
6018         * gst/schedulers/Makefile.am:
6019           cleanup
6020         * libs/gst/bytestream/bytestream.c:
6021           remove newline
6022         * po/LINGUAS:
6023         * po/sq.po:
6024           adding Albanian translation (Laurent Dhima)
6025         * po/cs.po:
6026           updated
6027
6028 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6029
6030         * po/ca.po:
6031         * po/sv.po:
6032           updated translations
6033
6034 2004-08-04  Benjamin Otte  <otte@gnome.org>
6035
6036         * tests/mass_elements.c: (main):
6037           allow specifying src and sink element explicitly, so I can test
6038           videotestsrc instead of fakesrc
6039
6040 2004-08-04  Benjamin Otte  <otte@gnome.org>
6041
6042         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6043         (gst_structure_id_empty_new), (gst_structure_empty_new),
6044         (gst_structure_copy):
6045           add gst_structure_id_empty_new_with_size to allow preallocating
6046           value array sizes. Use this in gst_structure_copy to get rid of
6047           reallocs.
6048           don't do quark=>string=>quark when copying structures
6049
6050 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6051
6052         * docs/manual/win32.xml:
6053         * win32/README.txt:
6054           update documentation with the clean version of dependencies
6055
6056 2004-08-03  Benjamin Otte  <otte@gnome.org>
6057
6058         * gst/schedulers/entryscheduler.c:
6059         (gst_entry_scheduler_remove_element):
6060           fix for GST_DISABLE_DEBUG
6061         * tools/gst-launch.c: (print_tag):
6062           fixes for G_DISABLE_ASSERT
6063
6064 2004-08-03  Benjamin Otte  <otte@gnome.org>
6065
6066         * gst/gst.c: (gst_register_core_elements):
6067           fix for G_DISABLE_ASSERT
6068         * gst/gstinfo.c: (__gst_in_valgrind):
6069           add for GST_DISABLE_DEBUG
6070
6071 2004-08-03  Benjamin Otte  <otte@gnome.org>
6072
6073         * gst/parse/parse.l:
6074           fix for G_DISABLE_ASSERT
6075
6076 2004-08-03  Wim Taymans  <wim@fluendo.com>
6077
6078         * gst/gstbin.c: (gst_bin_get_type),
6079         (gst_bin_child_state_change_func):
6080         * gst/gstthread.c: (gst_thread_change_state):
6081         Backported some debug logging from a reverted patch
6082         Don't try to destroy the thread twice. Added some more
6083         debugging in GstThread. Unlock and signal even if we
6084         are in the thread context.
6085
6086 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6087
6088         * po/uk.po:
6089           updated translation
6090
6091 2004-07-30  David Schleef  <ds@schleef.org>
6092
6093         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6094
6095 2004-07-29  David Schleef  <ds@schleef.org>
6096
6097         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6098         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6099
6100 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6101
6102         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6103         (gst_bin_add_func), (gst_bin_remove_func),
6104         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6105         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6106         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6107         (gst_bin_sync_children_state):
6108         * gst/gstbin.h:
6109         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6110         (gst_thread_change_state):
6111         * testsuite/states/Makefile.am:
6112           revert state change patches as agreed so we can rework them
6113           gradually
6114
6115 2004-07-29  Benjamin Otte  <otte@gnome.org>
6116
6117         * libs/gst/control/Makefile.am:
6118           link to libgstreamer (fixes Debian bug 262019, see
6119           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6120
6121 2004-07-29  Wim Taymans  <wim@fluendo.com>
6122
6123         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6124         (check_from_fraction_convert), (transform_test), (main):
6125         Make the test less pedantic about float roundoff errors.
6126
6127 2004-07-29  Benjamin Otte  <otte@gnome.org>
6128
6129         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6130         (gst_filesrc_srcpad_event):
6131           make seek events to before start/after end of file not fail, but
6132           seek to start/end instead
6133         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6134           add more output
6135
6136 2004-07-29  Benjamin Otte  <otte@gnome.org>
6137
6138         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6139           check that caps are fixed
6140         * gst/gstpad.c: (gst_pad_template_new):
6141           don't try to simplify caps, costs too much time on gst_init
6142         * gst/gstplugin.c: (gst_plugin_add_feature):
6143           G_ERROR if features are added twice
6144         * gst/gsttypefind.c: (gst_type_find_register):
6145         * gst/gstelementfactory.c: (gst_element_register):
6146           don't add features twice
6147         * docs/random/ds/0.9-suggested-changes:
6148           add note about possible gst_init optimization
6149
6150 2004-07-28  David Schleef  <ds@schleef.org>
6151
6152         * testsuite/elements/Makefile.am:
6153         * testsuite/elements/struct_i386.h:
6154         * testsuite/elements/struct_size.c: (main):  A little test
6155         to keep distcheck from working if someone changes a structure
6156         size accidentally.
6157
6158 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6159
6160         * docs/libs/Makefile.am:
6161         * docs/libs/gstreamer-libs-docs.sgml:
6162         * docs/libs/gstreamer-libs-sections.txt:
6163         * docs/libs/tmpl/gstbytestream.sgml:
6164         * docs/libs/tmpl/gstcontrol.sgml:
6165         * docs/libs/tmpl/gstdataprotocol.sgml:
6166         * docs/libs/tmpl/gstgetbits.sgml:
6167         * libs/gst/bytestream/Makefile.am:
6168         * libs/gst/bytestream/bytestream.c:
6169         * libs/gst/bytestream/bytestream.h:
6170         * libs/gst/control/Makefile.am:
6171         * libs/gst/dataprotocol/Makefile.am:
6172         * libs/gst/getbits/Makefile.am:
6173         * libs/gst/getbits/getbits.h:
6174           various doc and style fixes, adding bytestream to libs docs.
6175
6176 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6177
6178         * docs/gst/gstreamer-docs.sgml:
6179         * docs/libs/Makefile.am:
6180         * docs/libs/gstreamer-libs-docs.sgml:
6181         * docs/libs/gstreamer-libs-sections.txt:
6182         * libs/gst/control/dparam.c:
6183           more doc fixes.  gst-libs docs now build the same way as gst.
6184
6185 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6186
6187         * configure.ac:
6188         * testsuite/Makefile.am:
6189         * testsuite/bins/Makefile.am:
6190         * testsuite/caps/Makefile.am:
6191         * testsuite/cleanup/Makefile.am:
6192         * testsuite/clock/Makefile.am:
6193         * testsuite/debug/Makefile.am:
6194         * testsuite/dlopen/Makefile.am:
6195         * testsuite/dynparams/Makefile.am:
6196         * testsuite/elements/.cvsignore:
6197         * testsuite/elements/Makefile.am:
6198         * testsuite/enumcaps/Makefile.am:
6199         * testsuite/enumcaps/enumcaps.c:
6200         * testsuite/ghostpads/Makefile.am:
6201         * testsuite/indexers/Makefile.am:
6202         * testsuite/negotiation/Makefile.am:
6203         * testsuite/parse/Makefile.am:
6204         * testsuite/plugin/Makefile.am:
6205         * testsuite/refcounting/Makefile.am:
6206         * testsuite/schedulers/.cvsignore:
6207         * testsuite/states/Makefile.am:
6208         * testsuite/tags/Makefile.am:
6209         * testsuite/threads/Makefile.am:
6210           fold enumcaps into caps dir
6211           clean up Makefile.am's for testsuite
6212
6213 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6214
6215         * docs/gst/Makefile.am:
6216         * docs/libs/Makefile.am:
6217           clean up docs build.  Fixes needless rebuilding of template files.
6218
6219 2004-07-28  Wim Taymans  <wim@fluendo.com>
6220
6221         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6222         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6223         Make sure that a bin state change tries to keep the children
6224         in sync. 
6225         Added debug logging to the thread.
6226
6227 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6228
6229         * win32/GStreamer.vcproj:
6230         * win32/gstreamer.def:
6231           more exports for the plugins
6232
6233 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6234
6235         * win32/gstgetbits.vcproj:
6236         * win32/gstgetbits.def:
6237         * win32/msvc71.sln:
6238           add support for the getbits plugin
6239
6240 2004-07-27  Wim Taymans  <wim@fluendo.com>
6241
6242         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6243         (gst_value_transform_fraction_double), (_gst_value_initialize):
6244         * testsuite/caps/Makefile.am:
6245         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6246         (check_from_fraction_convert), (transform_test), (main):
6247         Added transform functions between double and fraction.
6248         Added testcase to verify transforms
6249
6250 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6251
6252         * win32/GStreamer.vcproj:
6253           rename GStreamer-0.8.lib to libgstreamer.lib
6254
6255 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6256
6257         * win32/gstelements.vcproj:
6258         * win32/gstoptimalscheduler.vcproj:
6259           fixes for the Release build
6260
6261 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6262
6263         * win32/config.h:
6264           update the version number
6265
6266 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6267
6268         * win32/GStreamer.vcproj:
6269           add gstinterface to the build
6270
6271 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6272
6273         * win32/gstreamer.def:
6274           add many definitions needed by plugins,
6275           GST_CAT_DEFAULT only available in the Debug build ?
6276
6277 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6278
6279         * gst/gstelement.c: (gst_element_set_eos_recursive):
6280           various whitespace fixes.
6281           doc fix, fixes #148497
6282
6283 2004-07-25  Benjamin Otte  <otte@gnome.org>
6284
6285         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6286           don't delay links on the sink elements, it causes unnegotiated
6287           links.
6288         * gst/elements/gsttypefindelement.c:
6289         (gst_type_find_element_base_init):
6290           add our padtemplates, we indeed do have some.
6291         * gst/elements/gsttypefindelement.c:
6292         (gst_type_find_element_handle_event),
6293         (gst_type_find_element_chain):
6294           don't push data when typefinding failed.
6295         * gst/gstpad.c: (gst_pad_link_fixate):
6296           check that no fixate function returns empty caps.
6297         * gst/gstpad.c: (gst_pad_push):
6298           check that the link is negotiated before data gets pushed.
6299         * tools/gst-register.c: (main):
6300           don't assert (fixes #148283)
6301
6302 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6303
6304         * docs/gst/gstreamer-sections.txt:
6305         * docs/gst/tmpl/gstconfig.sgml:
6306           add GST_PLUGIN_EXPORT definition
6307
6308 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6309
6310         * gst/gstplugin.h:
6311         * gst/gstconfig.h.in:
6312         * win32/gstconfig.h:
6313         * win32/gstelements.def:
6314         * win32/gstelements.vcproj:
6315         * win32/gstoptimalscheduler.def:
6316         * win32/gstoptimalscheduler.vcproj:
6317         * win32/gstspider.def:
6318         * win32/gstspider.vcproj:
6319           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6320
6321 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6322
6323         * docs/gst/gstreamer-sections.txt:
6324           remove GST_CAT_DEFAULT because the type has changed
6325
6326 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6327
6328         * win32/gstbytestream.vcproj:
6329         * win32/gstelements.vcproj:
6330         * win32/gst-inspect.vcproj:
6331         * win32/gst-launch.vcproj:
6332         * win32/gstoptimalscheduler.vcproj:
6333         * win32/GStreamer.vcproj:
6334         * win32/gst-register.vcproj:
6335         * win32/gstspider.vcproj:
6336         * win32/msvc71.sln:
6337           Copy the files where needed after building, The testsuite will be
6338           built separately
6339
6340 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6341
6342         * win32/config.h:
6343         * win32/README.txt:
6344         * docs/manual/win32.xml:
6345         Fixed the plugin and GStreamer location
6346
6347 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6348
6349         * win32/gstreamer.def:
6350         More exports for the plugins
6351
6352 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6353
6354         * gst/gstinfo.h:
6355         Marc was right, we need to export literally GST_CAT_DEFAULT
6356
6357 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6358
6359         * win32/config.h:
6360         NLS crashes in gettext, disabled until this is solved
6361
6362 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6363
6364         * win32/gst-inspect.vcproj:
6365         * win32/gst-launch.vcproj:
6366         Should use NLS when available
6367
6368 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6369
6370         * gst/registries/gstxmlregistry.c:
6371         removing the file doesn't seem to be a good idea on Linux
6372
6373 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6374
6375         * gst/registries/gstxmlregistry.c:
6376         Remove the registry before renaming the tempfile (needed for Windows)
6377
6378 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6379
6380         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6381         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6382         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6383         * gst/elements/gstmultifilesrc.h:
6384         Added newmedia property so it generates newmedia events between each
6385         file when property is set, as well as fixed eos handling
6386
6387 2004-07-22  David Schleef  <ds@schleef.org>
6388
6389         * gst/gststructure.c: (gst_structure_id_empty_new),
6390         (gst_structure_empty_new):  Set type field correctly.
6391         * gst/gststructure.h: Check type field correctly.
6392         * testsuite/caps/Makefile.am:
6393         * testsuite/caps/structure.c: (test1), (main): Add a very small
6394         test for structures.
6395
6396 2004-07-22  David Schleef  <ds@schleef.org>
6397
6398         * docs/random/ds/0.9-suggested-changes: more comments
6399         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6400
6401 2004-07-22  Benjamin Otte  <otte@gnome.org>
6402
6403         * gst/gstelementfactory.c: (gst_element_register):
6404           set the factory in the class struct, so gst_element_get_factory
6405           actually works
6406         * gst/parse/grammar.y:
6407           set element to playing when it gets unlocked as we can't rely on the
6408           bin state - all elements in the bin state might still be locked in
6409           NULL)
6410
6411 2004-07-22  Benjamin Otte  <otte@gnome.org>
6412
6413         * gst/gstelement.c: (gst_element_set_state_func):
6414           make this a static function
6415
6416 2004-07-22  Wim Taymans  <wim@fluendo.com>
6417
6418         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6419         (gst_opt_scheduler_pad_link):
6420         fix 147894-2 and the group_link problem.
6421
6422 2004-07-22  Wim Taymans  <wim@fluendo.com>
6423
6424         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6425         (handoff_identity), (main):
6426         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6427         (handoff_identity), (main):
6428         * testsuite/schedulers/Makefile.am:
6429         * testsuite/schedulers/group_link.c: (main):
6430         Show bug in scheduler when linking chain and loop based element 
6431         where the chain based element was not yet in a group.
6432
6433 2004-07-21  Benjamin Otte  <otte@gnome.org>
6434
6435         * gst/.cvsignore:
6436         * gst/autoplug/.cvsignore:
6437         * gst/elements/.cvsignore:
6438         * gst/indexers/.cvsignore:
6439         * libs/gst/bytestream/.cvsignore:
6440         * libs/gst/control/.cvsignore:
6441         * libs/gst/getbits/.cvsignore:
6442         * testsuite/states/.cvsignore:
6443         * testsuite/threads/.cvsignore:
6444           keep this up to date, since I seem to be the only one who cares
6445           about not missing files on commits (editor's note: no you don't,
6446           but feel free to change them at the time you add stuff instead
6447           of later on)
6448
6449 2004-07-21  Benjamin Otte  <otte@gnome.org>
6450
6451         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6452         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6453         (gst_bin_child_state_change_func), (set_kid_state_func),
6454         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6455           make state changes work correctly and reentrant (so removing
6456           elements from bins during state changes of bins doesn't cause
6457           segfaults or even wrong states)
6458           add debugging category and debugging output to print children states
6459         * gst/gstbin.c: (gst_bin_dispose): 
6460           add some assertion checks
6461         * gst/gstbin.h:
6462         * gst/gstbin.c: (gst_bin_sync_children_state):
6463           deprecate this function - it just does gst_bin_set_state (bin,
6464           GST_STATE (bin)) 
6465         * testsuite/threads/queue.c: (main):
6466           don't use gst_bin_sync_children_state anymore
6467         * testsuite/states/Makefile.am:
6468         * testsuite/states/bin.c:
6469           test that the state changes of bins work as expected
6470         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6471           some adjustments to change states correctly, too
6472         * gst/gstthread.c: (gst_thread_change_state):
6473           don't enable/disable "threadsafe" properties, they're unused and
6474           cause random segfaults
6475         * testsuite/threads/Makefile.am:
6476           the queue check randomly passes now, ignore it
6477
6478 2004-07-21  Benjamin Otte  <otte@gnome.org>
6479
6480         * gst/gstpad.c:
6481           check if data is NULL before outputting debug info. (fixes #145100)
6482
6483 2004-07-21  Benjamin Otte  <otte@gnome.org>
6484
6485         * gst/schedulers/entryscheduler.c:
6486         (gst_entry_scheduler_loop_wrapper),
6487         (gst_entry_scheduler_chain_wrapper),
6488         (gst_entry_scheduler_get_wrapper):
6489           reset the state when the cothread starts, so we don't get assertion
6490           failures on restarting of cothreads
6491
6492 2004-07-20  Benjamin Otte  <otte@gnome.org>
6493
6494         * gst/gstelement.c: (gst_element_link_pads_filtered):
6495           use correct sinkpad, if only sinkpad is specified, but not srcpad
6496           (fixes #147889)
6497         * gst/gstelement.c: (gst_element_set_state_func),
6498         (gst_element_change_state): ref/unref the element, signal handlers
6499         could get rid of the element otherwise
6500
6501 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6502
6503         * docs/random/ds/0.9-suggested-changes:
6504           Make note about renaming fixed-list to array.
6505         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6506         (_gst_value_initialize):
6507           Add array intersections.
6508         * testsuite/caps/intersect2.c: (main):
6509           Add test for array intersections.
6510
6511 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6512
6513         * configure.ac: back to cvs
6514
6515 === release 0.8.4 ===
6516
6517 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6518
6519         * configure.ac:
6520           releasing 0.8.4, "Paella"
6521           bump libtool versioning
6522
6523 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6524
6525         * po/LINGUAS:
6526         * po/ca.po:
6527           adding Catalan translation (Jordi Mallach)
6528
6529 2004-07-20  Wim Taymans  <wim@fluendo.com>
6530
6531         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6532         (handoff_identity), (main):
6533         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6534         (handoff_identity), (main):
6535         * testsuite/schedulers/Makefile.am:
6536         Added failing testcase for variant of #147894
6537
6538 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6539
6540         patch by: David Moore
6541
6542         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6543         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
6544         (group_migrate_connected):
6545         * testsuite/schedulers/Makefile.am:
6546           fix for #142813 (Deadlock in optimal scheduler)
6547
6548 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6549
6550         patch by: Wim Taymans
6551
6552         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6553         (gst_opt_scheduler_schedule_run_queue),
6554         (gst_opt_scheduler_get_wrapper), (get_group),
6555         (group_migrate_connected):
6556         * testsuite/schedulers/Makefile.am:
6557           fix for #147819 (Add some checks in the opt scheduler)
6558
6559 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6560
6561         patch by: Benjamin Otte
6562
6563         * gst/gstelementfactory.c: (__gst_element_details_set):
6564           fix for #147929: running gst-register in non-utf8 locale can cause
6565           invalid registry
6566
6567 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6568
6569         patch by: Wim Taymans
6570
6571         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
6572         (group_has_element), (element_get_reachables_func),
6573         (group_migrate_connected):
6574           fix for #147894 (opt scheduler decoupled elements mismanagement)
6575         * testsuite/schedulers/Makefile.am:
6576           testsuite app now passes
6577
6578 2004-07-19  Wim Taymans  <wim@fluendo.com>
6579
6580         * testsuite/schedulers/147819.c: (handoff_identity1),
6581         (handoff_identity2), (main):
6582         * testsuite/schedulers/Makefile.am:
6583         Added testcase for bug 147819
6584
6585 2004-07-19  Wim Taymans  <wim@fluendo.com>
6586
6587         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6588         (handoff_identity), (main):
6589         * testsuite/schedulers/Makefile.am:
6590         Added testcase for bug 147894
6591
6592 2004-07-16  Wim Taymans  <wim@fluendo.com>
6593
6594         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
6595         * testsuite/schedulers/142183.c: (handoff_identity), (main):
6596         * testsuite/schedulers/Makefile.am:
6597         Added testsuite for bug 142183 in its two incarnations. Refcount
6598         is not increased for scheduled elements and threadsafe properties
6599         mutexes are not properly unlocked.
6600
6601 2004-07-16  Wim Taymans  <wim@fluendo.com>
6602
6603         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
6604         (create_chain), (destroy_chain), (create_group), (destroy_group),
6605         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
6606         (group_dec_link), (gst_opt_scheduler_pad_link),
6607         (group_inc_links_for_element), (group_migrate_connected):
6608         Call group_inc_link with the proper src->sink ordering -- 
6609         break this, and we break sort_chain. patch from wingo for bug
6610         147713.
6611         Partially revert patch 1.89. When adding a loop based element to 
6612         the scheduler, the links to other groups are automatically followed
6613         and incremented. This should not happen because the bin will call
6614         pad_link explicitly for those connection, resulting in them counted 
6615         twice. Results in assertion failure on pipeline cleanup.
6616
6617 2004-07-16  Wim Taymans  <wim@fluendo.com>
6618
6619         * testsuite/schedulers/143777-2.c: (main):
6620         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
6621         (main):
6622         * testsuite/schedulers/Makefile.am:
6623         Added cleanup code to testcase 143777-2.
6624         Added testcase to show bug 147713, does not really show the
6625         deadlock as I can't figure out how to trigger it, but it does
6626         demonstrate bad ordering in the scheduler.
6627
6628 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6629
6630         * gst/gstvalue.c: (gst_value_deserialize_fraction):
6631           change strndup to g_strndup.  Fixes #147707
6632
6633 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6634
6635         * po/af.po:
6636         * po/az.po:
6637         * po/cs.po:
6638         * po/en_GB.po:
6639         * po/fr.po:
6640         * po/nl.po:
6641         * po/sr.po:
6642         * po/sv.po:
6643         * po/tr.po:
6644         * po/uk.po:
6645           updated translations
6646
6647 2004-07-16  Benjamin Otte  <otte@gnome.org>
6648
6649         * gst/gstvalue.c: (gst_greatest_common_divisor):
6650           use ints and return ints, fractions only use ints, too, so this
6651           avoids accidently casting multiplications to unsigned
6652         (gst_value_lcopy_fraction): it's ints, not uint32
6653         (gst_value_set_fraction): disallow minint, multiplying and negation
6654           are broken with it
6655         (gst_value_fraction_multiply): fix to make large numbers work and get
6656         rid of the assumption that the multiplication of two ints fits an
6657         int64 - dunno if that's true for all systems
6658         * testsuite/caps/Makefile.am:
6659         * testsuite/caps/fraction-multiply-and-zero.c:
6660         (check_multiplication), (check_equal), (zero_test), (main):
6661           add tests for all the stuff above
6662         * testsuite/caps/value_compare.c: (test1):
6663           fix comment
6664         * tests/.cvsignore:
6665         * testsuite/caps/.cvsignore:
6666         * testsuite/debug/.cvsignore:
6667         * testsuite/dlopen/.cvsignore:
6668         * testsuite/states/.cvsignore:
6669           get up to date
6670
6671 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6672
6673         * docs/manual/bins-api.xml:
6674         * docs/manual/factories.xml:
6675         * docs/manual/helloworld.xml:
6676         * docs/manual/links-api.xml: 
6677           fixes for out of date info, incorrect info and grammar
6678
6679 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6680
6681         * docs/manual/pads.xml:
6682         * docs/manual/pads-api.xml: grammar fix
6683
6684 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6685
6686         * docs/manual/pads-api.xml: typo + grammar fix
6687
6688 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6689
6690         * docs/gst/gstreamer-sections.txt:
6691           add new symbols
6692         * docs/gst/tmpl/gstelement.sgml:
6693         * docs/gst/tmpl/gstpad.sgml:
6694         * docs/gst/tmpl/gsttypes.sgml:
6695         * docs/gst/tmpl/gstvalue.sgml:
6696           update docs
6697         * gst/gststructure.c: (gst_structure_set_valist),
6698         (gst_structure_from_abbr), (gst_structure_to_abbr):
6699         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
6700         (gst_greatest_common_divisor), (gst_value_init_fraction),
6701         (gst_value_copy_fraction), (gst_value_collect_fraction),
6702         (gst_value_lcopy_fraction), (gst_value_set_fraction),
6703         (gst_value_get_fraction_numerator),
6704         (gst_value_get_fraction_denominator),
6705         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
6706         (gst_value_deserialize_fraction),
6707         (gst_value_transform_fraction_string),
6708         (gst_value_transform_string_fraction),
6709         (gst_value_compare_fraction), (_gst_value_initialize):
6710         * gst/gstvalue.h:
6711           adding GstFraction GValue type, get/set, and multiply
6712         * testsuite/caps/Makefile.am:
6713         * testsuite/caps/fraction.c: (test), (main):
6714         * testsuite/caps/string-conversions.c: (main):
6715         * testsuite/caps/value_compare.c: (test1), (main):
6716           add regression tests for GstFraction
6717
6718 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6719         
6720         * docs/manual/init-api.xml: Grammar fix
6721
6722 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6723
6724         * docs/manual/states.xml: Fix inconsistent information
6725
6726 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6727
6728         * gst/gstelement.c: (gst_element_set_state):
6729         * gst/gstpad.c: (gst_pad_try_set_caps):
6730         * gst/gststructure.c:
6731         * gst/gstthread.c: (gst_thread_child_state_change):
6732         * gst/gstvalue.c: (gst_value_compare_double):
6733         * gst/gstvalue.h:
6734         * testsuite/parse/parse1.c: (main):
6735           debugging additions and style cleanups
6736
6737 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6738
6739         * docs/manual/states.xml: Grammar fix
6740
6741 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6742
6743         * docs/manual/pads.xml: Grammar fix
6744
6745 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6746
6747         * docs/manual/elements.xml: Fixed image reference
6748
6749 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6750
6751         * docs/manual/goals.xml: Grammar fix
6752
6753 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6754
6755         * docs/manual/motivation.xml:
6756         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
6757
6758 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6759
6760         * docs/manual/motivation.xml: Fix spelling
6761
6762 2004-07-15  Benjamin Otte  <otte@gnome.org>
6763
6764         * gst/gstelement.h: 
6765           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
6766           strings.
6767         * gst/gstelement.c (gst_element_class_init):
6768           GError's are boxed, not objects
6769         * gst/gstmarshal.list:
6770           update list for the fixed error signal
6771
6772 2004-07-14  Andy Wingo  <wingo@pobox.com>
6773
6774         * gst/gsttag.c: Add a tag merge func for pointers. The header was
6775         there all along, but the function wasn't. (guile-gstreamer's build
6776         system uses the address of the function -- I wasn't actually
6777         trying to use this.)
6778
6779 2004-07-14  Andy Wingo  <wingo@pobox.com>
6780
6781         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
6782         as gst_pad_proxy_pad_link) just link to every other pad when they
6783         are called. In the case where the graph has cycles, this will mean
6784         that a call to try_set_caps will recurse. Allow this recursion
6785         and return OK, while we wait for the first try_set_caps to give a
6786         proper return value.
6787         (gst_pad_link_call_link_functions): Since this function is the
6788         only one to set the NEGOTIATING flag on a pad, if the flag is set
6789         it means that the link functions have indirectly recursed. If this
6790         happens, error out to avoid infinite recursion and an eventual
6791         SEGV.
6792         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
6793         (gst_pad_proxy_getcaps): Intersect the result with the template
6794         caps to ensure that the return value is valid.
6795
6796 2004-07-14  Andy Wingo  <wingo@pobox.com>
6797
6798         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
6799         one refcount, the calling function is the owner of the buffer.
6800
6801 2004-07-14  Wim Taymans  <wim@fluendo.com>
6802
6803         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
6804         (gst_opt_scheduler_pad_link), (group_migrate_connected):
6805         Fix stupid warning when an element is to be migrated but
6806         is already migrated.
6807
6808 2004-07-14  Wim Taymans  <wim@fluendo.com>
6809
6810         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
6811         (gst_opt_scheduler_pad_link), (group_migrate_connected):
6812         Make sure that a single non-loop-based element does not 
6813         end up in a group. This fixes the testsuite again.
6814
6815 2004-07-14  Wim Taymans  <wim@fluendo.com>
6816
6817         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6818         (add_to_group), (merge_groups), (schedule_group),
6819         (gst_opt_scheduler_get_wrapper), (group_elements),
6820         (group_dec_link), (gst_opt_scheduler_pad_link),
6821         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
6822         (gst_opt_scheduler_iterate):
6823         move isolated groups to a new chain.
6824         Emit a warning instead of segfaulting in some error cases.
6825         Fix a bug where the link count between groups was not calculated 
6826         correctly. Fixes #144510.
6827
6828 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
6829         * gst/elements/gstfilesrc.c:
6830           Binary files support under Windows now OK
6831       
6832 2004-07-13  Benjamin Otte  <otte@gnome.org>
6833
6834           compatibility fixes for Solaris 8/gcc 2.95
6835         * configure.ac:
6836           include libintl libs in LDFLAGS
6837         * gstvalue.c (gst_value_deserialize_buffer):
6838           cast isxdigit stuff to int to silence compiler warning
6839
6840 2004-07-12  Benjamin Otte  <otte@gnome.org>
6841
6842         * gst/gsttypes.h:
6843           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
6844           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
6845           just causes support madness
6846         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
6847           make it work without this
6848         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
6849         (gst_file_index_commit):
6850           glib IO channels don't want binary mode
6851         * testsuite/bytestream/filepadsink.c: (main):
6852         * testsuite/bytestream/test1.c: (read_param_file):
6853           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
6854
6855 2004-07-12  Benjamin Otte  <otte@gnome.org>
6856
6857         * gst/gstelement.c: (gst_element_class_init),
6858         (gst_element_set_state), (gst_element_set_state_func):
6859           virutalize gst_element_set_state, use set_state member in class
6860           struct that was already added in 0.7 for this.
6861         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
6862         (gst_bin_change_state):
6863           make gst_bin_foreach works similar to other foreach functions, plug
6864           memleaks in it. Make functions using it work with the new approach.
6865           Document gst_bin_foreach, so it can be exported if we want to
6866         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
6867           use virtualized set_state to make set_state on bins set the state of
6868           all its children.
6869
6870 2004-07-12  Benjamin Otte  <otte@gnome.org>
6871
6872         * configure.ac:
6873           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
6874           http://bugs.gentoo.org/show_bug.cgi?id=53967)
6875         * gst/gstpad.c: (gst_pad_alloc_buffer):
6876           allow buffer_alloc functions to return NULL and allocate a normal
6877           buffer in that case
6878
6879 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6880         * gst/elements/gstfilesink.c:
6881         * gst/elements/gstfilesrc.c:
6882         * gst/indexers/gstfileindex.c:
6883         * gst/gsttypes.h:
6884         * testsuite/bytestream/filepadsink.c:
6885         * testsuite/bytestream/test1.c:
6886           Handle binary files under Windows
6887
6888 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6889         * docs/manual/win32.xml:
6890         * win32/config.h:
6891         * win32/gst-register.vcproj:
6892         * win32/gstreamer.def:
6893           Update to another gettext public build
6894
6895 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6896         * gst/gstplugin.c:
6897           Fix an impossible C syntax
6898         * win32/config.h:
6899           Disable i18n under Windows for the moment
6900         * win32/gst-register.vcproj:
6901           Use this configuration
6902
6903 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
6904         * docs/manual/quotes.xml:
6905           Keep the quotes file alive
6906         * docs/random/ds/0.9-suggested-changes:
6907           Add the suggestion of including a 'rowstride' as part of video
6908           format caps
6909
6910 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6911
6912         * gst/gstelement.c: (gst_element_set_state),
6913         (gst_element_change_state):
6914           d'oh.  Set PENDING state correctly before forcing bin to change.
6915         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6916         (gst_structure_parse_fixed_list):
6917         * gst/schedulers/gstoptimalscheduler.c:
6918         (gst_opt_scheduler_state_transition):
6919         * testsuite/states/parent.c: (main):
6920           remove comment now that it's fixed.
6921
6922 2004-07-11  Benjamin Otte  <otte@gnome.org>
6923
6924         * gst/gstclock.h:
6925           GST_SECOND shouldn't cause a conversion to unsigned.
6926         * testsuite/clock/.cvsignore:
6927         * testsuite/clock/Makefile.am:
6928         * testsuite/clock/signedness.c: (main):
6929           make sure it never will again
6930
6931 2004-07-11  Andy Wingo  <wingo@pobox.com>
6932
6933         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
6934         whose state is higher than the bin state, raise the bin state to
6935         ensure that bin state := highest child state.
6936         
6937 2004-07-11  Andy Wingo  <wingo@pobox.com>
6938
6939         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
6940         procedure on the children of a bin. Assumes that the procedure can
6941         change the set of children.
6942         (set_kid_state_func): New static function.
6943         (gst_bin_change_state): Use gst_bin_foreach to call
6944         set_kid_state_func. Fixes a bug: if a child had a state-change
6945         handler that removes it from the bin, there would be a segfault.
6946         Hopefully it should also work in the case where the state-change
6947         handler on one child adds or removes other children. In any case,
6948         fixes should go to gst_bin_foreach.
6949
6950 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6951
6952         * gst/gstelement.c: (gst_element_set_state):
6953           compatibility fix for latest plugins release.  Change loop back
6954           to while {}
6955
6956 2004-07-09  Wim Taymans  <wim@fluendo.com>
6957
6958         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
6959         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
6960         (gst_thread_main_loop):
6961         Since remove is virtual in GstBin we must not assume the 
6962         elements GList to have anothing useful.
6963         Add some more logging to GstThread and be a bit more paranoid
6964         when resetting the scheduler.
6965         Set the state of the bin to NULL before removing the children.
6966
6967 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6968
6969         * testsuite/threads/Makefile.am:
6970         * testsuite/threads/threadg.c:
6971           added test to check if problem when removing all elements from a
6972           GstThread before setting GstThread state to NULL
6973
6974 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6975
6976         * docs/gst/tmpl/gstelement.sgml:
6977         * docs/gst/tmpl/gsttypes.sgml:
6978         * gst/gstbin.c: (gst_bin_change_state):
6979         * gst/gstelement.c: (gst_element_set_state),
6980         (gst_element_change_state):
6981           rework so that for bins we try to set the state on all children
6982           as well even if the bin is in the correct state already.
6983           change while to do so at least one iteration is done.
6984           For regular elements, we fall back to the previous behaviour for
6985           now since we first need a new plugins release.
6986         * testsuite/states/parent.c: (main):
6987           test for this case
6988           Fixes #123774
6989
6990 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6991
6992         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
6993         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
6994         (gst_queue_release_locks), (gst_queue_change_state),
6995         (gst_queue_set_property):
6996           add proper lock debugging.  Change dispose to finalize, since
6997           we're freeing mutexes and other stuff which should happen only once.
6998
6999 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7000
7001         * docs/gst/tmpl/gstelement.sgml:
7002         * docs/gst/tmpl/gstplugin.sgml:
7003         * docs/gst/tmpl/gsttypes.sgml:
7004         * docs/pwg/building-state.xml:
7005         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7006         * gst/gstelement.c: (gst_element_change_state):
7007         * gst/gstthread.c: (gst_thread_change_state):
7008           catch wrong state changes in element base class.
7009
7010 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7011
7012         * gst/gstinfo.h:
7013           clean up layout a little.
7014
7015 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7016
7017         * configure.ac:
7018         * testsuite/Makefile.am:
7019         * testsuite/states/Makefile.am:
7020         * testsuite/states/parent.c: (main):
7021           re-enable states testsuite dir.  Add test for state changes and
7022           parent behaviour
7023
7024 2004-07-09  Wim Taymans  <wim@fluendo.com>
7025
7026         * gst/schedulers/gstoptimalscheduler.c:
7027         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7028         (element_get_reachables_func), (element_get_reachables),
7029         (debug_element), (rechain_group), (group_migrate_connected),
7030         (gst_opt_scheduler_pad_unlink):
7031         Do not try to migrate decoupled elements to a new group since
7032         they are not added to groups.
7033
7034 2004-07-08  Benjamin Otte  <otte@gnome.org>
7035
7036         * gst/gstelement.c: (gst_element_error_func):
7037           make reentrant (= allow removing elements in error handler)
7038
7039 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7040
7041         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7042         (gst_pad_send_event), (gst_pad_call_chain_function):
7043           events sent to elements below PAUSED cannot be handled, so
7044           don't try to
7045
7046 2004-07-08  Wim Taymans  <wim@fluendo.com>
7047
7048         * gst/schedulers/gstoptimalscheduler.c:
7049         (chain_recursively_migrate_group), (create_group),
7050         (schedule_group), (gst_opt_scheduler_pad_link),
7051         (group_elements_set_visited), (element_get_reachables_func),
7052         (element_get_reachables), (group_can_reach_group), (debug_element),
7053         (rechain_group), (group_migrate_connected),
7054         (gst_opt_scheduler_pad_unlink):
7055         * testsuite/schedulers/Makefile.am:
7056         Implemented group splitting and rechaining.
7057         Fixes 143777 and 143777-2 in the testsuite.
7058
7059 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7060
7061         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7062           extra debugging
7063         * gst/gstevent.h:
7064         * gst/gstinfo.c: (gst_debug_log_default):
7065           print time nicely.  add thread pointer until someone figures out
7066           a completely portable way of getting at thread id's.
7067         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7068         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7069         (gst_pad_call_chain_function):
7070           extra debugging
7071         * gst/schedulers/gstoptimalscheduler.c:
7072         (get_group_schedule_function), (loop_group_schedule_function),
7073         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7074         (pad_clear_queued), (gst_opt_scheduler_iterate):
7075           rename BUFPEN and friends to DATAPEN since that's what they are.
7076
7077 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7078
7079         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7080         * gst/gstbuffer.h:
7081         * gst/gstpad.c:
7082           cleanups and debugging
7083
7084 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7085
7086         * configure.ac:
7087         * gst/gstvalue.c: (gst_value_compare_enum),
7088         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7089         (gst_value_can_compare), (gst_value_compare):
7090         * testsuite/Makefile.am:
7091         * testsuite/enumcaps/Makefile.am:
7092         * testsuite/enumcaps/enumcaps.c:
7093           Fix enum serialization, deserialization, comparison in caps, add
7094           a test to ensure that this continues working in the future.
7095
7096 2004-07-06  David Schleef  <ds@schleef.org>
7097
7098         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7099         Fix memleak.
7100
7101 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7102
7103         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7104         * gst/gstplugin.h:
7105         * gst/registries/gstxmlregistry.c:
7106         (plugin_times_older_than_recurse), (plugin_times_older_than),
7107         (gst_xml_registry_parse_padtemplate):
7108           only rebuild registry when actual plugins have a newer time than
7109           the registry.  Fixes #145520
7110
7111 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7112
7113         * docs/manual/manual.xml:
7114         * docs/manual/win32.xml:
7115           add chapter on win32 building.  fixes #142422
7116
7117 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7118
7119         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7120
7121         * gst/autoplug/gstspider.c: (gst_spider_init),
7122         (gst_spider_dispose):
7123           fix spider memleaks.  fixes #137863
7124
7125 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7126
7127         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7128
7129         * gst/schedulers/gstoptimalscheduler.c:
7130         (gst_opt_scheduler_pad_unlink):
7131           fix SIGBUS error, fixes #145338
7132
7133 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7134
7135         * gst/gstobject.c: (gst_object_replace):
7136         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7137         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7138           clean up clock lifecycle.  Fixes #109831
7139
7140 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7141
7142         * po/LINGUAS:
7143         * po/cs.po:
7144           added Czech translation (Miloslav Trmac)
7145
7146 2004-07-04  David Schleef  <ds@schleef.org>
7147
7148         * tools/Makefile.am:
7149         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7150
7151 2004-07-04  David Schleef  <ds@schleef.org>
7152
7153         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7154
7155 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7156
7157         * gst/gstbin.c: (gst_bin_restore_thyself):
7158           chain to parent restore so the bins get restored correctly
7159           in the editor
7160
7161 2004-07-03  David Schleef  <ds@schleef.org>
7162
7163         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7164         Actually do something in these functions, like before the big
7165         caps change.  (bug #145137)
7166
7167 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7168
7169         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7170         (gst_element_get_compatible_pad_filtered):
7171         * gst/gstthread.c: (gst_thread_main_loop):
7172           more debugging
7173
7174 2004-07-02  David Schleef  <ds@schleef.org>
7175
7176         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7177         * gst/gstobject.h:
7178         * gst/gstparse.h:
7179         * gst/gsttrace.h:
7180         * gst/gstxml.h:
7181
7182 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7183
7184         * gst/gstpad.c: (gst_pad_check_schedulers),
7185         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7186         (gst_pad_link_prepare):
7187           revert until testsuite is fixed
7188
7189 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7190
7191         * testsuite/Makefile.am:
7192         * testsuite/caps/filtercaps.c: (main):
7193         * testsuite/clock/clock1.c: (main):
7194         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7195           fix some more tests
7196
7197 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7198
7199         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7200         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7201         * testsuite/cleanup/cleanup4.c: (main):
7202           fix testsuite
7203
7204 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7205
7206         * libs/gst/control/control.c:
7207         * libs/gst/control/dparam.c:
7208         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7209         * libs/gst/control/dparammanager.c:
7210         * libs/gst/control/dparammanager.h:
7211         * testsuite/dynparams/Makefile.am:
7212         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7213         (gst_dptest_change_state), (gst_dptest_chain), (main):
7214           fix testcase for dparams
7215           add debugging category
7216
7217 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7218
7219         * testsuite/Rules:
7220           change path
7221
7222 2004-07-02  Benjamin Otte  <otte@gnome.org>
7223
7224         * tests/.cvsignore:
7225         * tests/Makefile.am:
7226         * tests/mass_elements.c: (gst_get_current_time), (main):
7227           add simple benchmark to test various speeds of fakesrc ! identity !
7228           identity ! ... ! fakesink.
7229           Usage: mass_elements [num_identities] [num_buffers]
7230           If not specified they default to 1000.
7231
7232 2004-07-02  Benjamin Otte  <otte@gnome.org>
7233
7234         * gst/gstpad.c: (gst_pad_check_schedulers),
7235         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7236         (gst_pad_link_prepare):
7237           check that pads that get linked belong to the same manager. The old
7238           code allowed linking elements before putting them into bins, so it
7239           worked to link them and then put them in different threads, which
7240           lead to weird behaviour.
7241           Since this effectively disallows linking elements before putting
7242           them in a bin, some applications might not work after this and error
7243           out. If these applications are too critical, we might need to revert
7244           that patch. Please test this before the next release...
7245
7246 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7247
7248         * gst/gstpad.c: (gst_pad_get_caps):
7249           throw an error if the getcaps function does not return a subset of
7250           the template caps.
7251         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7252           make disconts without position info an error in debugging
7253         * tests/spidey_bench.c: (handoff), (main):
7254           don't count first try when averaging
7255
7256 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7257
7258         * gst/gstplugin.c: (gst_plugin_load_file):
7259           figure out problem with dynamic test
7260
7261 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7262
7263         * docs/gst/Makefile.am:
7264           fix docs build
7265
7266 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7267
7268         * po/POTFILES.in:
7269         * po/af.po:
7270         * po/az.po:
7271         * po/en_GB.po:
7272         * po/fr.po:
7273         * po/nl.po:
7274         * po/sr.po:
7275         * po/sv.po:
7276         * po/tr.po:
7277         * po/uk.po:
7278         * tools/gst-register.c: (plugin_added_func), (main):
7279           i18n-ize -register, fix plural
7280
7281 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7282
7283         * gst/elements/gstidentity.c: (gst_identity_class_init),
7284         (gst_identity_init), (gst_identity_chain),
7285         (gst_identity_set_property), (gst_identity_get_property):
7286         * gst/elements/gstidentity.h:
7287           check for perfect stream
7288
7289 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7290
7291         * gst/elements/gstidentity.c: (gst_identity_chain):
7292           print offset_end
7293
7294 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7295
7296         * docs/gst/Makefile.am:
7297         * docs/gst/gstreamer-docs.sgml:
7298           doc fixes
7299
7300 2004-06-24  David Schleef  <ds@schleef.org>
7301
7302         * autogen.sh:  Remove call to env, since the buildbot isn't
7303         broken anymore.
7304
7305 2004-06-24  Wim Taymans  <wim@fluendo.com>
7306
7307         * gst/elements/Makefile.am:
7308         * gst/elements/gstelements.c:
7309         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7310         (gst_multifdsink_class_init), (gst_multifdsink_init),
7311         (gst_multifdsink_add), (gst_multifdsink_remove),
7312         (gst_multifdsink_clear), (gst_multifdsink_chain),
7313         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7314         * gst/elements/gstmultifdsink.h:
7315         Added an element that writes to multiple filedescriptors at once.
7316
7317 2004-06-24  Benjamin Otte  <otte@gnome.org>
7318
7319         * gst/parse/grammar.y:
7320           don't try to link elements before they have been added to bins
7321
7322 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7323
7324         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7325         (gst_file_pad_get_length):
7326         * libs/gst/bytestream/filepad.h:
7327           add 2 new functions
7328
7329 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7330
7331         * docs/gst/gstreamer-sections.txt:
7332         remove from docs, the define that Benjamin removed from gstelement.h
7333
7334 2004-06-22  Benjamin Otte  <otte@gnome.org>
7335
7336         * gst/gstelement.h:
7337           remove define that referenced a nonexisting GstElement struct member
7338
7339 2004-06-20  Benjamin Otte  <otte@gnome.org>
7340
7341         * gst/gstdata.c: (gst_data_is_writable):
7342           whoops, return values were wrong, so writable data was marked as
7343           non-writable and vice versa. (fixes #143953, spotted by Francis
7344           Labonte)
7345           Shows how rarely we need to copy data ;)
7346
7347 2004-06-20  Benjamin Otte  <otte@gnome.org>
7348
7349         * testsuite/schedulers/.cvsignore:
7350         * testsuite/schedulers/Makefile.am:
7351         * testsuite/schedulers/143777-2.c: (main):
7352           add test for opt breakage in bug #143777
7353
7354 2004-06-20  Benjamin Otte  <otte@gnome.org>
7355
7356         * gst/gstpad.c: (gst_pad_call_chain_function):
7357           check for if we were unlinked while inside the chainfunction (fixes
7358           entrygthread having issues with #143777)
7359         * testsuite/schedulers/143777.c: (main):
7360         * testsuite/schedulers/Makefile.am:
7361           add a test for that fix
7362
7363 2004-06-20  Benjamin Otte  <otte@gnome.org>
7364
7365         * gst/gstvalue.c: (gst_value_set_int_range):
7366           test that start is smaller then end
7367         * libs/gst/bytestream/Makefile.am:
7368         * libs/gst/bytestream/filepad.c: 
7369         * libs/gst/bytestream/filepad.h:
7370           add GstFilePad - a pad that behaves like a FILE*
7371         * testsuite/bytestream/.cvsignore:
7372         * testsuite/bytestream/Makefile.am:
7373         * testsuite/bytestream/filepadsink.c: 
7374           test for the GstFilePad
7375
7376 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7377
7378         * gst/elements/gstidentity.c: (gst_identity_class_init),
7379         (gst_identity_init), (gst_identity_set_clock),
7380         (gst_identity_chain), (gst_identity_set_property),
7381         (gst_identity_get_property):
7382         * gst/elements/gstidentity.h:
7383         * gst/gstclock.c: (gst_clock_id_wait):
7384           add a "sync" property to sync to the clock
7385
7386 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7387
7388         * gst/gstelementfactory.c: (gst_element_factory_create):
7389           make the freakin "elementfactory bla has no type" message more
7390           useful. So we actually can do something when someone shows up
7391           complaining about it.
7392
7393 2004-06-15  Johan Dahlin  <johan@gnome.org>
7394
7395         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7396         found. This matches the old behavior better. Thanks to Thomas for
7397         pointing out.
7398
7399 2004-06-14  David Schleef  <ds@schleef.org>
7400
7401         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7402         -fomit-frame-pointer.  Appears to generate correct code in
7403         other cases as well.
7404
7405 2004-06-14  Johan Dahlin  <johan@gnome.org>
7406
7407         * tools/gst-inspect.c (main): Add two new command line options: -a
7408         to print all elements and -n to print the name on each line. Also
7409         fix some error reporting.
7410         (main): Simplify, remove -n and always print names if -a is specified
7411
7412 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7413
7414         * win32/gstconfig.h:
7415         * win32/GSTreamer.vcproj:
7416         * win32/Makefile:
7417         * gst/gstconfig.h.in:
7418         * gst/gst.h:
7419         * gst/gstbin.h:
7420         * gst/gstelement.h:
7421         * gst/gstevent.h:
7422         * gst/gstobject.h:
7423         * gst/gstpad.h:
7424         * docs/gst/gstreamer-sections.txt:
7425         * docs/gst/tmpl/gstconfig.sgml:
7426           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7427
7428 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7429         * docs/gst/gstreamer-sections.txt:
7430         * docs/gst/tmpl/gstconfig.sgml:
7431         Add the GSTREAMER_EXPORT macro to the docs
7432
7433 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7434
7435         * tools/gst-compprep.c: (handle_xmlerror), (main):
7436         Add a check for the version that introduced SetStructuredError to fix
7437         the build on FC1
7438
7439 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7440
7441         * win32/msvc71.sln:
7442         * win32/testsuite/:
7443           prepare to compile the testsuite with MSVC
7444
7445 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7446
7447         * docs/manual/win32.xml:
7448           attempt to transform the Win32 README into an XML doc
7449
7450 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7451
7452         * gst/gst.c:
7453         * gst/gstbin.*:
7454         * gst/config.h.in:
7455         * gst/gstelement.*:
7456         * gst/gstevent.h:
7457         * gst/gstobject.*:
7458         * gst/gstpad.h:
7459         * tools/gst-register.c:
7460         * win32/gstreamer.def:
7461           extern symbols are now exported for the Windows DLL
7462
7463 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7464
7465         * gst/gstinfo.h:
7466           fix a problem to enable/disable DEBUG under MSVC
7467
7468 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7469
7470         * win32/:
7471           enable more debug code in DEBUG build
7472
7473 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7474
7475         * win32/config.h:
7476         * gst/gst-i18n-app.h:
7477           enable NLS under Windows
7478
7479 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7480         * tools/gst-compprep.c: (handle_xmlerror), (main):
7481           Make an error that baffled me a bit clearer
7482
7483 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7484
7485         * gst/gstqueue.c:
7486           don't use g_queue_get_length () because it's 2.4, use ->length
7487
7488 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7489
7490         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7491
7492         * tools/gst-inspect.c: (print_signal_info):
7493           don't free random data twice. (fixes #144185)
7494
7495 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7496
7497         * gst/gstqueue.c:
7498         * gst/gstqueue.h:
7499           fix removing from the wrong queue on event timeout
7500           fix disposing of the event queue by casting correctly
7501           add mutexes for handling the event queue
7502           someone was sleeping when fixing queue last time around :)
7503
7504 2004-06-10  Johan Dahlin  <johan@gnome.org>
7505
7506         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7507         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7508
7509 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7510
7511         * docs/random/gdp:
7512         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7513         * libs/gst/dataprotocol/dataprotocol.c:
7514         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7515         (gst_dp_buffer_from_header):
7516         * libs/gst/dataprotocol/dataprotocol.h:
7517         * libs/gst/dataprotocol/dp-private.h:
7518           rev version to 0.1, add buffer flags and copy them
7519
7520 2004-06-09  Johan Dahlin  <johan@gnome.org>
7521
7522         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
7523         the flags from the buffer we're copying.
7524
7525 2004-06-09  Wim Taymans  <wim@fluendo.com>
7526
7527         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
7528         * gst/elements/gstidentity.c: (gst_identity_init),
7529         (gst_identity_chain):
7530         Print more buffer info in fakesink.
7531         Make identity output similar to fakesink.
7532
7533 2004-06-07  Daniel Gazard  <dany42@free.fr>
7534
7535         reviewed by Benjamin Otte  <otte@gnome.org>
7536
7537         * configure.ac:
7538           fix cross compiling not working. (fixes #143741)
7539
7540 2004-06-07  Benjamin Otte  <otte@gnome.org>
7541
7542         * gst/gstelement.c: (gst_element_set_time_delay):
7543           add failure check
7544         * gst/gstinfo.h:
7545           put brackets around macro arguments of GST_TIME_ARGS, add note to
7546           move it to correct header in 0.9
7547
7548 2004-06-07  Benjamin Otte  <otte@gnome.org>
7549
7550         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
7551         (gst_file_index_load), (_file_index_id_save_entries),
7552         (gst_file_index_commit), (gst_file_index_add_association),
7553         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
7554         (gst_file_index_plugin_init):
7555           make debugging use a default category
7556
7557 2004-06-06  David Moore  <dcm@acm.org>
7558
7559         reviewed by Benjamin Otte  <otte@gnome.org>
7560
7561         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
7562         (gst_fdsrc_change_state):
7563           reset offset counter when going READY => PAUSED. (fixes #142903)
7564
7565 2004-06-06  ed@catmur.co.uk
7566
7567         reviewed by Benjamin Otte  <otte@gnome.org>
7568
7569         * gst/registries/gstxmlregistry.c:
7570         (gst_xml_registry_rebuild_recurse):
7571           don't rely on g_dir_open to figure out if a file is a directory, use
7572           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
7573           directories. (fixes #142850)
7574
7575 2004-06-06  Benjamin Otte  <otte@gnome.org>
7576
7577         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
7578           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
7579         * libs/gst/bytestream/adapter.c:
7580         * libs/gst/bytestream/adapter.h:
7581           fix copyright in header and typo in debugging category name
7582
7583 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7584
7585         * configure.ac:
7586           bump nano to cvs
7587
7588 === release 0.8.3 ===
7589
7590 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7591
7592         * configure.ac:
7593           update libtool versioning
7594           do a new release
7595         * docs/gst/tmpl/gstelement.sgml:
7596         * docs/gst/tmpl/gsttypes.sgml:
7597         * gst/gstinfo.c: (_gst_debug_init):
7598           put back GST_CAT_DATAFLOW to fix API breakage
7599
7600 2004-06-04  David Schleef  <ds@schleef.org>
7601
7602         * autogen.sh: Add a temporary 'env' to test buildbot problems.
7603
7604 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7605
7606         * configure.ac:
7607           bump nano to cvs
7608
7609 === release 0.8.2 ===
7610
7611 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7612
7613         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
7614           check GST_DEBUG environment variable which is parsed the same way
7615           as --gst-debug=
7616
7617 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7618
7619         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
7620                             gstmd5sink.c gstshaper.c gsttee.c
7621                             gsttypefindelement.c
7622         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
7623
7624           - removing trailing commas at end of enums
7625             it is correct C99 code but C90 compilers would complain
7626             (AIX, Forte, ...)
7627             ('should' fix #143290, at least partially)
7628
7629 2004-05-27  Wim Taymans  <wim@fluendo.com>
7630
7631         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
7632         (chain_group_set_enabled), (create_group), (add_to_group),
7633         (merge_groups), (setup_group_scheduler), (group_elements),
7634         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
7635         Don't try to follow the pad connections with other groups
7636         when a loop based element is added to the scheduler because
7637         the bin will inform the scheduler about the pad links a little
7638         later.
7639
7640 2004-05-27  Wim Taymans  <wim@fluendo.com>
7641
7642         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7643         (remove_from_chain), (chain_group_set_enabled),
7644         (setup_group_scheduler), (group_element_set_enabled),
7645         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
7646         (gst_opt_scheduler_show):
7647         Elements without a group can do a state change as well, just wait
7648         with the setup of the scheduling function when it is added to a
7649         chain.
7650
7651 2004-05-27  Wim Taymans  <wim@fluendo.com>
7652
7653         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7654         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
7655         (merge_groups), (setup_group_scheduler),
7656         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
7657         (gst_opt_scheduler_show):
7658         Fixes to maintain internal consistency of the scheduler data
7659         structures. 
7660          - adding an enabled group to a chain should increment the
7661            number of enabled elements in that chain.
7662          - removing an enabled group from a chain could disable the
7663            chain.
7664          - removing a disabled group from a chain could enable the
7665            chain.
7666          - add g_assert when internal inconsistency is detected.
7667          - adding an element to a group could increase the number of
7668            links this group has with other groups.
7669          - merging two groups also merges the chains.
7670          - also show group links in the _show method.
7671            
7672
7673 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7674
7675         * gst/gstcaps.c: (gst_caps_structure_simplify):
7676           don't print error messages when there is no error
7677         * gst/gstvalue.c: (gst_value_compare_int_range):
7678           compare the second value, too
7679         * testsuite/caps/Makefile.am:
7680         * testsuite/caps/random.c: (assert_on_error), (main):
7681           add tests to make sure the two things above are checked for
7682
7683 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
7684
7685         * configure.ac:
7686         * libs/gst/dataprotocol/Makefile.am:
7687         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
7688         * libs/gst/dataprotocol/dataprotocol.h:
7689           wrap header in GST_ENABLE_NEW.  make code use it
7690
7691 2004-05-23  Johan Dahlin  <johan@gnome.org>
7692
7693         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
7694         so verbose and print GstElement signal names all the time.
7695
7696 2004-05-22  David Schleef  <ds@schleef.org>
7697
7698         * gst/registries/gstxmlregistry.c:
7699         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
7700         (bug #142957)
7701
7702 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
7703
7704         * configure.ac:
7705           scrub cflags for glib2 so gcc doesn't complain when glib is in
7706           /usr/local
7707
7708 2004-05-21  Johan Dahlin  <johan@gnome.org>
7709
7710         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
7711         __GNUC__, patch from Brian Cameron, fixes bug #142804
7712
7713 2004-05-20  David Schleef  <ds@schleef.org>
7714
7715         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
7716         comparison code.  (bug #142819)
7717
7718 2004-05-20  Wim Taymans  <wim@fluendo.com>
7719
7720         * gst/gstbuffer.c: (gst_buffer_default_copy):
7721         * gst/gstbuffer.h:
7722         Added Comment to a flag.
7723         copy relevant flags in _buffer_copy.
7724
7725 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7726
7727         reviewed by: Wim Taymans <wim at fluendo dot com>
7728
7729         * gst/gstbuffer.h:
7730           add GST_BUFFER_IN_CAPS buffer flag
7731         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7732         (gst_structure_parse_any_list), (gst_structure_parse_list),
7733         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
7734         * gst/gstvalue.c: (gst_value_serialize_any_list),
7735         (gst_value_transform_any_list_string),
7736         (gst_value_list_prepend_value), (gst_value_list_append_value),
7737         (gst_value_list_get_size), (gst_value_list_get_value),
7738         (gst_value_transform_list_string),
7739         (gst_value_transform_fixed_list_string),
7740         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
7741         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
7742         (_gst_value_initialize):
7743         * gst/gstvalue.h:
7744           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
7745           < , > as a format.
7746         * testsuite/caps/string-conversions.c: (main):
7747           add regression tests for < >
7748
7749 2004-05-20  Johan Dahlin  <johan@gnome.org>
7750
7751         * docs/gst/Makefile.am (all-local): Re-add
7752
7753 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7754
7755         * docs/gst/Makefile.am:
7756         * docs/gst/gstreamer-docs.sgml:
7757         * docs/libs/Makefile.am:
7758         * docs/libs/gstreamer-libs-docs.sgml:
7759           fix distcheck issues
7760
7761 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7762
7763         * libs/gst/dataprotocol/Makefile.am:
7764           add to autotest
7765
7766 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7767
7768         * libs/gst/dataprotocol/Makefile.am:
7769         * libs/gst/dataprotocol/dataprotocol.c:
7770         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7771         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
7772         * libs/gst/dataprotocol/dp-private.h:
7773           use GST macros to read/write fixed length ints
7774           add some more asserts
7775
7776 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7777
7778         * docs/libs/gstreamer-libs-docs.sgml:
7779         * docs/libs/gstreamer-libs-sections.txt:
7780           remove idct and putbits
7781         * configure.ac:
7782         * docs/libs/tmpl/gstdataprotocol.sgml:
7783         * libs/gst/Makefile.am:
7784         * libs/gst/dataprotocol/Makefile.am:
7785         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
7786         (buffer_test), (caps_test), (event_test), (main):
7787         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
7788         (gst_dp_dump_byte_array), (gst_dp_init),
7789         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
7790         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7791         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
7792         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
7793         (gst_dp_validate_header), (gst_dp_validate_payload),
7794         (gst_dp_validate_packet), (plugin_init):
7795         * libs/gst/dataprotocol/dataprotocol.h:
7796         * libs/gst/dataprotocol/dp-private.h:
7797           add dataprotocol
7798
7799 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7800
7801         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
7802           fix int variable deserialization and add a helper so we can actually
7803           debug this.
7804
7805 2004-05-18  David Schleef  <ds@schleef.org>
7806
7807         * testsuite/debug/commandline.c: (main): Call ./commandline, not
7808           argv[0].  Calling yourself is probably not the best way to
7809           construct a test like this, btw.
7810
7811 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7812
7813         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
7814           don't claim to be more intelligent than a scheduler when the
7815           scheduler claims the pipeline is stopped
7816         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
7817         (safe_cothread_destroy),
7818         (gst_entry_scheduler_remove_all_cothreads),
7819         (gst_entry_scheduler_reset), (_remove_cothread),
7820         (gst_entry_scheduler_state_transition):
7821           hold off cothread destruction if we're not in main cothread
7822         * configure.ac:
7823         * testsuite/Makefile.am:
7824           add new test dir
7825         * testsuite/schedulers/.cvsignore:
7826         * testsuite/schedulers/Makefile.am:
7827           add tests
7828         * testsuite/schedulers/relink.c: (cb_handoff), (main):
7829           check relinking and adding/removing elements from a running pipeline
7830         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
7831           check unlinking in a running pipeline
7832         * testsuite/schedulers/unref.c: (cb_handoff), (main):
7833           check unreffing a running pipeline
7834         * testsuite/schedulers/useless_iteration.c: (main):
7835           check iterating a pipeline that contains running threads works
7836
7837 2004-05-18  David Schleef  <ds@schleef.org>
7838
7839         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
7840           is false.
7841
7842 2004-05-18  Wim Taymans  <wim@fluendo.com>
7843
7844         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7845         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
7846         Fixed an error introduced with patch for 1.63. When setting
7847         a get based element as the entry point in a group, make sure
7848         to mark the group as GET based.
7849
7850 2004-05-18  Wim Taymans  <wim@fluendo.com>
7851
7852         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7853         (setup_group_scheduler), (loop_group_schedule_function),
7854         (gst_opt_scheduler_pad_link):
7855         Added some more debug info and fixed a bug where the group
7856         type was set to LOOP but it was in fact unknown.
7857
7858 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7859
7860         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
7861           make resetting scheduler work twice in a row
7862
7863 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7864
7865         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
7866         (CREATE_USERIALIZATION), (_gst_value_initialize),
7867         (gst_value_compare_float), (gst_value_serialize_float),
7868         (gst_value_deserialize_float), (gst_value_compare_enum),
7869         (gst_value_serialize_enum), (gst_value_deserialize_enum):
7870           add serialization and comparison functions for long, int64, enum and
7871           float values
7872         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
7873           use best serialization function in type hierarchy instead of only a
7874           matching one. This is required for enums to work.
7875         * gst/parse/grammar.y:
7876           use gst_caps_deserialize
7877         * testsuite/parse/Makefile.am:
7878           parse1 now works
7879         * testsuite/parse/parse1.c: (main):
7880           remove aggregator check, aggregator is broken, this test works now
7881           but fails because of bug #138012
7882         * testsuite/parse/parse2.c: (main):
7883           s/xvideosink/xvimagesink - this test looks a lot like we should
7884           disable it
7885
7886 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7887
7888         * gst/gstelement.c: (gst_element_class_init):
7889           whoops, store the signal id correctly
7890         * gst/schedulers/gstbasicscheduler.c:
7891         (gst_basic_scheduler_chain_wrapper):
7892           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
7893           chain function isn't linked
7894
7895 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
7896         * configure.ac:
7897         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
7898         support until we decide where the flags should be used
7899         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
7900         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
7901         * gst/gstpad.c: (gst_pad_link_call_link_functions):
7902         Output refused caps in the debug info
7903
7904 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7905
7906         * gst/elements/gstidentity.c: (gst_identity_chain):
7907           add duration debug
7908         * gst/gstinfo.c: (gst_debug_log_default):
7909           add timestamp
7910
7911 2004-05-13  Benjamin Otte  <otte@gnome.org>
7912
7913         * gst/gstpipeline.c: (gst_pipeline_dispose),
7914         (gst_pipeline_change_state):
7915           call gst_scheduler_reset on dispose (fixes #141416)
7916
7917 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7918
7919         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7920           compute mapsize correctly
7921         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7922           use correct datatypes when calling a varargs function
7923         * gst/elements/gsttypefindelement.c: (stop_typefinding):
7924           push a DISCONT event as first thing
7925         * gst/gst_private.h:
7926         * gst/gstinfo.c: (_gst_debug_init):
7927           remove GST_DATAFLOW debugging category
7928         * gst/gstbin.c: (gst_bin_iterate):
7929           use GST_SCHEDULING category
7930         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
7931         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
7932         (gst_pad_call_get_function):
7933           add GST_DATAFLOW to easily track flow of buffers or events.
7934         * gst/gstqueue.c: (gst_queue_get_type),
7935         (gst_queue_handle_pending_events), (gst_queue_chain),
7936         (gst_queue_get), (gst_queue_handle_src_event):
7937           use own static debugging category GST_DATAFLOW for dataflow,
7938           use DEBUG category for showing which path events go, use LOG
7939           category for buffers.
7940
7941 2004-05-10  David Schleef  <ds@schleef.org>
7942
7943         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
7944
7945 2004-05-10  David Schleef  <ds@schleef.org>
7946
7947         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
7948         symbols, because otherwise we don't know what they are.  Thanks,
7949         the GStreamer team.
7950         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
7951
7952 2004-05-10  David Schleef  <ds@schleef.org>
7953
7954         (from Steve Lhomme)
7955         * win32/Makefile: When using make clean the MS Visual Studio makefiles
7956         are deleted.  Fix.
7957         * win32/Makefile.inspect:
7958         * win32/Makefile.launch:
7959         * win32/Makefile.register:
7960
7961 2004-05-10  David Schleef  <ds@schleef.org>
7962
7963         * gst/gstinfo.h: Add missing inline function.
7964         * gst/gsttrace.c: add include
7965         * gst/parse/grammar.y: remove unused code
7966         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
7967         more portable.
7968         * tools/gst-register.c: wrap unistd.h
7969         
7970         More additions/fixes from Steve for the MSVC build.
7971         * win32/GStreamer.vcproj:
7972         * win32/Makefile:
7973         * win32/Makefile.inspect:
7974         * win32/Makefile.launch:
7975         * win32/Makefile.register:
7976         * win32/README.txt:
7977         * win32/gst-inspect.vcproj:
7978         * win32/gst-launch.vcproj:
7979         * win32/gst-register.vcproj:
7980         * win32/gstbytestream.def:
7981         * win32/gstbytestream.vcproj:
7982         * win32/gstconfig.h:
7983         * win32/gstelements.def:
7984         * win32/gstelements.vcproj:
7985         * win32/gstenumtypes.c:
7986         * win32/gstenumtypes.h:
7987         * win32/gstoptimalscheduler.def:
7988         * win32/gstoptimalscheduler.vcproj:
7989         * win32/gstreamer.def:
7990         * win32/gstspider.def:
7991         * win32/gstspider.vcproj:
7992         * win32/gstversion.h:
7993         * win32/msvc71.sln:
7994
7995 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7996
7997         * gst/gstelement.c: (gst_element_class_init),
7998         (gst_element_no_more_pads):
7999         * gst/gstelement.h:
8000           add gst_element_no_more_pads and the "no-more-pads" signal
8001
8002 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8003
8004         * gst/gstregistry.c: (gst_registry_add_plugin):
8005           refuse to add plugins when a plugin with same name is already
8006           registered. Fixes a bunch of "How to remove plugins?" issues.
8007           May lead to other problems though, let's test
8008
8009 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8010
8011         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8012         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8013         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8014
8015 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8016
8017         * tests/Makefile.am: fix am16 issue
8018
8019 2004-05-09  Benjamin Otte  <otte@gnome.org>
8020
8021         * libs/gst/bytestream/Makefile.am:
8022           we should indeed add .c files to makefiles or they won't be built
8023           (d'oh)
8024
8025 2004-05-08  Benjamin Otte  <otte@gnome.org>
8026
8027         * gst/gstpad.c: (gst_pad_proxy_fixate):
8028           really reduce the set of caps
8029
8030 2004-05-08  Benjamin Otte  <otte@gnome.org>
8031
8032         * tests/Makefile.am:
8033         * tests/spidey_bench.c: (handoff), (main):
8034           add benchmark to test how long spider needs to create a pipeline
8035
8036 2004-05-08  Benjamin Otte  <otte@gnome.org>
8037
8038         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8039           mark links as unengaged when unnegotiating instead of deactivating.
8040           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8041
8042 2004-05-08  Benjamin Otte  <otte@gnome.org>
8043
8044         * docs/manual/helloworld.xml:
8045           s/audiosink/osssink (patch by Patrick Guimond)
8046
8047 2004-05-07  David Schleef  <ds@schleef.org>
8048
8049         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8050         since it contains important stuff.
8051
8052 2004-05-07  David Schleef  <ds@schleef.org>
8053
8054         * testsuite/caps/caps.c: (test3), (main): A check for appending
8055         ANY caps.
8056
8057 2004-05-07  David Schleef  <ds@schleef.org>
8058
8059         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8060         which may contain commas.  Fixes detection of -Wa,-mregnames
8061
8062 2004-05-06  David Schleef  <ds@schleef.org>
8063
8064         Changes to handle compilers that don't have variadic macro
8065         support.  In particular, glib headers define some inlines
8066         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8067         builds.
8068         * gst/Makefile.am:
8069         * gst/cothreads.c:
8070         * gst/elements/gstfdsink.c:
8071         * gst/elements/gstfdsrc.c:
8072         * gst/elements/gstfilesink.c:
8073         * gst/elements/gstfilesrc.c:
8074         * gst/gst_private.h:
8075         * gst/gstatomic.c:
8076         * gst/gstcaps.c: (gst_caps_append):
8077         * gst/gstcpu.c: (gst_cpuid_i386):
8078         * gst/gstelement.c:
8079         * gst/gsterror.c:
8080         * gst/gstfilter.c:
8081         * gst/gstinfo.h:
8082         * gst/gstprobe.c:
8083         * gst/gstquery.c:
8084         * gst/gstregistry.c:
8085         * gst/gststructure.c:
8086         * gst/gsttaginterface.c:
8087         * gst/gsttrace.c: (gst_trace_new):
8088         * gst/gsttrashstack.c:
8089         * gst/gsturi.c:
8090         * gst/gstvalue.c:
8091         * gst/parse/grammar.y:
8092         * gst/parse/parse.l:
8093         * tools/gst-inspect.c: (main):
8094         * tools/gst-launch.c: (main):
8095         * tools/gst-xmlinspect.c: (PUT_STRING):
8096
8097 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8098
8099         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8100         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8101         * gst/elements/gstfilesrc.h:
8102           send NEW_MEDIA events correctly
8103         * gst/elements/gsttypefindelement.c: (start_typefinding),
8104         (gst_type_find_element_handle_event):
8105           restart typefinding when we get a NEW_MEDIA event
8106         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8107         (gst_bin_dispose):
8108           don't die when someone removes elements in callbacks
8109         * gst/gstelement.c: (gst_element_change_state):
8110           improve debugging
8111         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8112           we need a NEW_MEDIA event to engage a link
8113         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8114           don't g_print debugging stuff
8115         * testsuite/caps/simplify.c: (check_caps):
8116
8117 2004-05-04  Benjamin Otte  <otte@gnome.org>
8118
8119         * gst/parse/grammar.y:
8120           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8121
8122 2004-05-04  Benjamin Otte  <otte@gnome.org>
8123
8124         * testsuite/caps/renegotiate.c: (main):
8125           improve output in error case
8126
8127 2004-05-04  Benjamin Otte  <otte@gnome.org>
8128
8129         * gst/parse/grammar.y:
8130           fix assert to not trigger when there's no error argument
8131         * gst/parse/parse.l:
8132           fix definition of caps to allow more than two structures
8133         * testsuite/caps/Makefile.am:
8134         * testsuite/caps/renegotiate.c: (main):
8135           it's sinesrc and works in that case
8136
8137 2004-05-04  Wim Taymans  <wim@fluendo.com>
8138
8139         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8140         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8141         when removing an element from a group, we always need to
8142         decrement the link count that this group had with other 
8143         groups through the element.
8144         added an extra assert to catch inconsistencies when decrementing
8145         the link count.
8146
8147 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8148
8149         * configure.ac:
8150         * docs/gst/Makefile.am:
8151         * docs/gst/gstreamer-sections.txt:
8152         * docs/gst/tmpl/gstcompat.sgml:
8153         * examples/appreader/Makefile.am:
8154         * examples/cutter/Makefile.am:
8155         * examples/events/Makefile.am:
8156         * examples/helloworld/Makefile.am:
8157         * examples/helloworld2/Makefile.am:
8158         * examples/launch/Makefile.am:
8159         * examples/manual/Makefile.am:
8160         * examples/mixer/Makefile.am:
8161         * examples/pingpong/Makefile.am:
8162         * examples/plugins/Makefile.am:
8163         * examples/queue/Makefile.am:
8164         * examples/queue2/Makefile.am:
8165         * examples/queue3/Makefile.am:
8166         * examples/queue4/Makefile.am:
8167         * examples/retag/Makefile.am:
8168         * examples/thread/Makefile.am:
8169         * examples/typefind/Makefile.am:
8170         * examples/xml/Makefile.am:
8171         * gst/Makefile.am:
8172         * gst/autoplug/Makefile.am:
8173         * gst/elements/Makefile.am:
8174         * gst/gstcompat.h:
8175         * gst/indexers/Makefile.am:
8176         * gst/parse/Makefile.am:
8177         * gst/registries/Makefile.am:
8178         * gst/schedulers/Makefile.am:
8179         * libs/gst/bytestream/Makefile.am:
8180         * libs/gst/control/Makefile.am:
8181         * libs/gst/getbits/Makefile.am:
8182         * po/af.po:
8183         * po/az.po:
8184         * po/en_GB.po:
8185         * po/fr.po:
8186         * po/nl.po:
8187         * po/sr.po:
8188         * po/sv.po:
8189         * po/tr.po:
8190         * po/uk.po:
8191         * tests/Makefile.am:
8192         * tests/bufspeed/Makefile.am:
8193         * tests/instantiate/Makefile.am:
8194         * tests/memchunk/Makefile.am:
8195         * tests/muxing/Makefile.am:
8196         * tests/negotiation/Makefile.am:
8197         * tests/probes/Makefile.am:
8198         * tests/sched/Makefile.am:
8199         * tests/seeking/Makefile.am:
8200         * tests/threadstate/Makefile.am:
8201         * testsuite/caps/Makefile.am:
8202         * testsuite/cleanup/Makefile.am:
8203         * testsuite/dlopen/Makefile.am:
8204         * testsuite/dynparams/Makefile.am:
8205         * testsuite/plugin/Makefile.am:
8206         * testsuite/states/Makefile.am:
8207         * tools/Makefile.am:
8208           reorganize compile/link flags to be consistent
8209           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8210
8211 2004-05-04  David Schleef  <ds@schleef.org>
8212
8213         The "once more, with feeling" check-in.
8214         * testsuite/caps/Makefile.am: dist caps_strings
8215         * testsuite/caps/renegotiate.c: (main): This test triggers a
8216           segfault in the core.  Marking as failing.
8217
8218 2004-05-03  David Schleef  <ds@schleef.org>
8219
8220         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8221           by the build bots.
8222         * testsuite/caps/renegotiate.c: (main): Same.
8223
8224 2004-05-03  David Schleef  <ds@schleef.org>
8225
8226         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8227
8228 2004-05-03  David Schleef  <ds@schleef.org>
8229
8230         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8231           variable to find our source file.
8232
8233 2004-05-03  David Schleef  <ds@schleef.org>
8234
8235         * configure.ac:  Link plugins with libgstreamer and dependent
8236           libraries
8237         * testsuite/caps/Makefile.am:
8238         * testsuite/caps/caps_strings:
8239         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8240           through a file of caps strings and test each one
8241
8242 2004-05-04  Benjamin Otte  <otte@gnome.org>
8243
8244         * libs/gst/bytestream/Makefile.am:
8245         * libs/gst/bytestream/adapter.c: 
8246         * libs/gst/bytestream/adapter.h:
8247           add GstAdapter, similar to bytestream, but doesn't require ugly event
8248           handling or uglier loopbased elements
8249
8250 2004-05-03  David Schleef  <ds@schleef.org>
8251
8252         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8253         * testsuite/caps/erathostenes.c:
8254         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8255
8256 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8257
8258         * docs/pwg/pwg.xml:
8259           remove hardcoded stylesheet path (duh)
8260         * docs/random/release:
8261         * docs/gst/gstreamer-sections.txt:
8262         * gst/Makefile.am:
8263         * gst/gst.h:
8264         * gst/gst_private.h:
8265         * gst/gstcaps.c:
8266         * gst/gstevent.c:
8267         * gst/gstformat.c:
8268         * gst/gstinfo.c:
8269         * gst/gstinfo.h:
8270         * gst/gstinterface.c:
8271         * gst/gstmemchunk.c:
8272         * gst/gstprobe.c:
8273         * gst/gstquery.c:
8274         * gst/gstregistry.c:
8275         * gst/gstregistrypool.c:
8276         * gst/gststructure.c:
8277         * gst/gsttaginterface.c:
8278         * gst/gstthread.c:
8279         * gst/gsttrace.c:
8280         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8281         * gst/gsturi.c:
8282         * gst/gstvalue.c:
8283           deprecate gst_info; remove gstlog.h
8284    
8285
8286 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8287
8288         * Makefile.am:
8289         * po/en_GB.po:
8290         * po/sv.po:
8291         * po/uk.po:
8292           updated translations
8293
8294 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8295
8296         * gst/gstbin.c: (gst_bin_dispose):
8297           better debugging
8298
8299 2004-05-03  Johan Dahlin  <johan@gnome.org>
8300
8301         * gst/schedulers/gstoptimalscheduler.c
8302         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8303         really is a GstElement. Avoids critical when running gst-launch -v
8304         and a oggdemux/decoding pipeline.
8305
8306 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8307
8308         * docs/gst/tmpl/gstpipeline.sgml :
8309         * docs/manual/elements-api.xml :
8310                 doc fix by Patrick Guimond (Protector) from devel ML
8311                 reviewed by ronald
8312
8313 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8314
8315         * docs/gst/Makefile.am :
8316         * docs/libs/Makefile.am :
8317                 apply a patch from Arwed v. Merkatz so that gtk-doc
8318                 generated docs install (same for .devhelp file)
8319                 (fixes part 1 of #138836)
8320
8321 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8322
8323         * docs/faq/dependencies.xml: typo
8324         * docs/faq/getting.xml :
8325             - fix download URL for new gstreamer site
8326             - hide sf.net download page as latest version aren't there
8327             - fix apt URLs
8328             - fill "get via CVS" paragraph (link to dev page on the site)
8329         * docs/faq/general.xml:
8330             hide status tables as they no more exists
8331             change case on plugins license file to reflect reality
8332         * docs/faq/troubleshooting.xml:
8333             remove the wiki question/answer as there is no more wiki
8334
8335 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8336
8337         * gst/gsterror.h:
8338           include the headers needed for declarations used in this header
8339
8340 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8341
8342         * docs/random/uraeus/gstreamer_and_midi.txt :
8343           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8344           (fixes #132288)
8345
8346 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8347
8348         reviewed by Benjamin Otte  <otte@gnome.org>
8349
8350         * gst/schedulers/gthread-cothreads.h:
8351           free allocated data for main cothread, too when destroying context
8352           (fixes #141417)
8353
8354 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8355
8356         * docs/manual/goals.xml : remove duplicated paragraph at end 
8357         of doc page (fixes #141448)
8358
8359 2004-04-29  David Schleef  <ds@schleef.org>
8360
8361         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8362         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8363
8364 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8365
8366         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8367           fix property
8368         * gst/gstcaps.c:
8369           fix doc string
8370         * po/POTFILES.in:
8371           rename typefind source file
8372
8373 2004-04-28  David Schleef  <ds@schleef.org>
8374
8375         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8376         * win32/GStreamer.vcproj:
8377         * win32/Makefile:
8378         * win32/config.h:
8379         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8380         (_trewinddir), (_ttelldir), (_tseekdir):
8381         * win32/dirent.h:
8382         * win32/gst-inspect.vcproj:
8383         * win32/gst-launch.vcproj:
8384         * win32/gst-register.vcproj:
8385         * win32/gstbytestream.vcproj:
8386         * win32/gstelements.vcproj:
8387         * win32/gstoptimalscheduler.vcproj:
8388         * win32/gstspider.vcproj:
8389         * win32/gtchar.h:
8390         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8391         * win32/mman.h:
8392         * win32/mman.inl:
8393         * win32/msvc71.sln:
8394
8395 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8396
8397         * gst/gst.c: (init_post):
8398         * gst/gstinfo.c:
8399           remove useless _gst_progname stuff
8400         * tools/gst-inspect.c: (print_field), (print_caps):
8401           improve caps output
8402
8403 2004-04-28  David Schleef  <ds@schleef.org>
8404
8405         Disable parsing of a lot of files that aren't part of the
8406         exported API.  Move corresponding template files to old/,
8407         waiting for removal when they don't contain anything
8408         interesting.
8409         * docs/gst/Makefile.am:
8410         * docs/gst/gstreamer-sections.txt:
8411         * docs/gst/tmpl/cothreads.sgml:
8412         * docs/gst/tmpl/cothreads_compat.sgml:
8413         * docs/gst/tmpl/gettext.sgml:
8414         * docs/gst/tmpl/gobject2gtk.sgml:
8415         * docs/gst/tmpl/grammar.tab.sgml:
8416         * docs/gst/tmpl/gst-i18n-app.sgml:
8417         * docs/gst/tmpl/gst-i18n-lib.sgml:
8418         * docs/gst/tmpl/gst_private.sgml:
8419         * docs/gst/tmpl/gstaggregator.sgml:
8420         * docs/gst/tmpl/gstarch.sgml:
8421         * docs/gst/tmpl/gstatomic_impl.sgml:
8422         * docs/gst/tmpl/gstbufferstore.sgml:
8423         * docs/gst/tmpl/gstdata_private.sgml:
8424         * docs/gst/tmpl/gstdisksink.sgml:
8425         * docs/gst/tmpl/gstdisksrc.sgml:
8426         * docs/gst/tmpl/gstelementfactory.sgml:
8427         * docs/gst/tmpl/gstextratypes.sgml:
8428         * docs/gst/tmpl/gstfakesink.sgml:
8429         * docs/gst/tmpl/gstfakesrc.sgml:
8430         * docs/gst/tmpl/gstfdsink.sgml:
8431         * docs/gst/tmpl/gstfdsrc.sgml:
8432         * docs/gst/tmpl/gstfilesink.sgml:
8433         * docs/gst/tmpl/gstfilesrc.sgml:
8434         * docs/gst/tmpl/gsthttpsrc.sgml:
8435         * docs/gst/tmpl/gstidentity.sgml:
8436         * docs/gst/tmpl/gstindexfactory.sgml:
8437         * docs/gst/tmpl/gstmarshal.sgml:
8438         * docs/gst/tmpl/gstmd5sink.sgml:
8439         * docs/gst/tmpl/gstmultidisksrc.sgml:
8440         * docs/gst/tmpl/gstmultifilesrc.sgml:
8441         * docs/gst/tmpl/gstpadtemplate.sgml:
8442         * docs/gst/tmpl/gstpipefilter.sgml:
8443         * docs/gst/tmpl/gstschedulerfactory.sgml:
8444         * docs/gst/tmpl/gstsearchfuncs.sgml:
8445         * docs/gst/tmpl/gstshaper.sgml:
8446         * docs/gst/tmpl/gstspider.sgml:
8447         * docs/gst/tmpl/gstspideridentity.sgml:
8448         * docs/gst/tmpl/gststatistics.sgml:
8449         * docs/gst/tmpl/gsttee.sgml:
8450         * docs/gst/tmpl/gsttimecache.sgml:
8451         * docs/gst/tmpl/gsttypefind.sgml:
8452         * docs/gst/tmpl/gsttypefindfactory.sgml:
8453         * docs/gst/tmpl/gstxmlregistry.sgml:
8454         * docs/gst/tmpl/gthread-cothreads.sgml:
8455         * docs/gst/tmpl/old/cothreads.sgml:
8456         * docs/gst/tmpl/old/cothreads_compat.sgml:
8457         * docs/gst/tmpl/old/gettext.sgml:
8458         * docs/gst/tmpl/old/gobject2gtk.sgml:
8459         * docs/gst/tmpl/old/grammar.tab.sgml:
8460         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8461         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8462         * docs/gst/tmpl/old/gst_private.sgml:
8463         * docs/gst/tmpl/old/gstaggregator.sgml:
8464         * docs/gst/tmpl/old/gstarch.sgml:
8465         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8466         * docs/gst/tmpl/old/gstbufferstore.sgml:
8467         * docs/gst/tmpl/old/gstdata_private.sgml:
8468         * docs/gst/tmpl/old/gstdisksink.sgml:
8469         * docs/gst/tmpl/old/gstdisksrc.sgml:
8470         * docs/gst/tmpl/old/gstelementfactory.sgml:
8471         * docs/gst/tmpl/old/gstextratypes.sgml:
8472         * docs/gst/tmpl/old/gstfakesink.sgml:
8473         * docs/gst/tmpl/old/gstfakesrc.sgml:
8474         * docs/gst/tmpl/old/gstfdsink.sgml:
8475         * docs/gst/tmpl/old/gstfdsrc.sgml:
8476         * docs/gst/tmpl/old/gstfilesink.sgml:
8477         * docs/gst/tmpl/old/gstfilesrc.sgml:
8478         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8479         * docs/gst/tmpl/old/gstidentity.sgml:
8480         * docs/gst/tmpl/old/gstindexfactory.sgml:
8481         * docs/gst/tmpl/old/gstmarshal.sgml:
8482         * docs/gst/tmpl/old/gstmd5sink.sgml:
8483         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8484         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8485         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8486         * docs/gst/tmpl/old/gstpipefilter.sgml:
8487         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8488         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8489         * docs/gst/tmpl/old/gstshaper.sgml:
8490         * docs/gst/tmpl/old/gstspider.sgml:
8491         * docs/gst/tmpl/old/gstspideridentity.sgml:
8492         * docs/gst/tmpl/old/gststatistics.sgml:
8493         * docs/gst/tmpl/old/gsttee.sgml:
8494         * docs/gst/tmpl/old/gsttimecache.sgml:
8495         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8496         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8497         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8498         * docs/gst/tmpl/old/types.sgml:
8499         * docs/gst/tmpl/types.sgml:
8500
8501         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8502         gtkdoc-scan doesn't like files with the same name in different
8503         directories.
8504         * gst/elements/Makefile.am:
8505         * gst/elements/gstelements.c:
8506         * gst/elements/gsttypefind.c: 
8507         * gst/elements/gsttypefind.h:
8508         * gst/elements/gsttypefindelement.c:
8509         * gst/elements/gsttypefindelement.h:
8510
8511 2004-04-28  David Schleef  <ds@schleef.org>
8512
8513         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8514         patch (bug #141317):
8515         * gst/gst-i18n-lib.h: Allow disabling gettext.
8516         * gst/gstatomic_impl.h: disable warning when it's dumb.
8517         * gst/gstclock.c: fix include
8518         * gst/gstcompat.h: fix variadic macro
8519         * gst/gstinfo.c: fix include
8520         * gst/gstmacros.h: add defines for inlines on MSVC
8521         * gst/gstplugin.c: fix includes
8522         * gst/gstregistry.c: fix includes
8523         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
8524         * gst/gstsystemclock.c: fix include
8525         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
8526         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
8527         * gst/registries/gstxmlregistry.c:
8528         (gst_xml_registry_parse_element_factory): fix use of non-portable
8529         functions
8530         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
8531         * libs/gst/control/dparammanager.h: same
8532
8533 2004-04-28  David Schleef  <ds@schleef.org>
8534
8535         Move a bunch of unused files to old/ with names that are
8536         not case-insensitive-unique.  These files still contain some
8537         useful information that needs to be merged into gstbin.sgml,
8538         etc., so they shouldn't be deleted yet.
8539         * docs/gst/tmpl/GstBin.sgml:
8540         * docs/gst/tmpl/GstBuffer.sgml:
8541         * docs/gst/tmpl/GstCaps.sgml:
8542         * docs/gst/tmpl/GstClock.sgml:
8543         * docs/gst/tmpl/GstCompat.sgml:
8544         * docs/gst/tmpl/GstData.sgml:
8545         * docs/gst/tmpl/GstElement.sgml:
8546         * docs/gst/tmpl/GstEvent.sgml:
8547         * docs/gst/tmpl/GstIndex.sgml:
8548         * docs/gst/tmpl/GstStructure.sgml:
8549         * docs/gst/tmpl/GstTag.sgml:
8550         * docs/gst/tmpl/old/GstBin.sgml:
8551         * docs/gst/tmpl/old/GstBuffer.sgml:
8552         * docs/gst/tmpl/old/GstCaps.sgml:
8553         * docs/gst/tmpl/old/GstClock.sgml:
8554         * docs/gst/tmpl/old/GstCompat.sgml:
8555         * docs/gst/tmpl/old/GstData.sgml:
8556         * docs/gst/tmpl/old/GstElement.sgml:
8557         * docs/gst/tmpl/old/GstEvent.sgml:
8558         * docs/gst/tmpl/old/GstIndex.sgml:
8559         * docs/gst/tmpl/old/GstStructure.sgml:
8560         * docs/gst/tmpl/old/GstTag.sgml:
8561
8562 2004-04-28  David Schleef  <ds@schleef.org>
8563
8564         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
8565         (gst_caps_append), (gst_caps_append_structure),
8566         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
8567         (gst_caps_set_simple), (gst_caps_set_simple_valist),
8568         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
8569         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
8570         (gst_caps_intersect), (gst_caps_normalize),
8571         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
8572         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
8573         * gst/gstcaps.h: use GST_IS_CAPS().
8574
8575 2004-04-26  David Schleef  <ds@schleef.org>
8576
8577         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
8578         assembly.  gcc doesn't handle it correctly. (bug #141083)
8579         * gst/gsttrashstack.h: same
8580
8581 2004-04-25  Benjamin Otte  <otte@gnome.org>
8582
8583         * gst/gstelement.c: (gst_element_change_state):
8584           fix assertion to do an int comparison
8585
8586 2004-04-25  Benjamin Otte  <otte@gnome.org>
8587
8588         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8589           better debugging output on error
8590
8591 2004-04-25  Benjamin Otte  <otte@gnome.org>
8592
8593         * gst/gstcaps.c: (gst_caps_subtract):
8594           fix memleak
8595
8596 2004-04-23  Benjamin Otte  <otte@gnome.org>
8597
8598         * gst/gstvalue.c: (gst_value_compare_buffer),
8599         (_gst_value_initialize):
8600           add comparison function for buffers
8601
8602 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8603
8604         * docs/pwg/pwg.xml:
8605           Just found out that this so-called "ima-wav" format is really
8606           just "dvi adpcm" (according to the MS WAV documentation). So
8607           renaming it. We didn't use it yet anyway.
8608
8609 2004-04-23  Benjamin Otte  <otte@gnome.org>
8610
8611         * gst/gstcaps.c: (gst_caps_is_always_compatible):
8612           call gst_caps_is_subset
8613
8614 2004-04-23  Benjamin Otte  <otte@gnome.org>
8615
8616         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
8617         (gst_caps_is_subset):
8618           add documentation
8619
8620 2004-04-23  Benjamin Otte  <otte@gnome.org>
8621           
8622         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
8623         (gst_caps_structure_subtract), (gst_caps_subtract),
8624         (gst_caps_structure_figure_out_union),
8625         (gst_caps_structure_simplify), (gst_caps_do_simplify):
8626           fix simplifying and subtracting not working correctly with optional
8627           properties
8628           solve assorted problems that make it now simplify ebven more
8629         * docs/gst/tmpl/gstcaps.sgml:
8630         * gst/gstcaps.h:
8631           make gst_caps_do_simplify return a bool to indicate if it simplified
8632         * testsuite/caps/simplify.c: (main):
8633           add more checks. The tests is quite a bit useless right now because
8634           the core is heavily simplifying itself.
8635         * testsuite/caps/caps.h:
8636           fix caps to contain all optional properties
8637
8638 2004-04-22  Benjamin Otte  <otte@gnome.org>
8639
8640         * docs/gst/tmpl/gstcaps.sgml:
8641         * docs/gst/tmpl/gstfilesrc.sgml:
8642         * docs/gst/tmpl/gststructure.sgml:
8643         * docs/gst/tmpl/gstvalue.sgml:
8644           update for recent API changes
8645         * gst/gstcaps.c: (gst_caps_do_simplify):
8646           fix to stop trying with a freed structure
8647         * gst/gstpad.c: (gst_pad_link_fixate):
8648           simplify caps
8649         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
8650           remove C++ comment
8651         * gst/gstpad.h:
8652           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
8653         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8654         (gst_structure_to_string):
8655           keep the correct type when using lists of ranges
8656         * gst/gstvalue.c: (gst_value_list_prepend_value),
8657         (gst_value_list_append_value):
8658           copy the value before adding to the list (d'oh)
8659         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
8660         (gst_value_subtract_int_range_int_range):
8661           handle overflows correctly
8662         * gst/gstvalue.c: (gst_value_subtract_from_list):
8663           fix memleak
8664         * testsuite/caps/caps.h:
8665           add a caps that caused segfaults
8666
8667 2004-04-22  Benjamin Otte  <otte@gnome.org>
8668
8669         * testsuite/refcounting/pad.c: (main):
8670           fix test
8671
8672 2004-04-22  Benjamin Otte  <otte@gnome.org>
8673
8674         * gst/gstcaps.c: (gst_caps_subtract):
8675           allow subtracting ANY and EMPTY from ANY caps
8676
8677 2004-04-22  Benjamin Otte  <otte@gnome.org>
8678
8679         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
8680         (gst_caps_union):
8681           only simplify in functions that create new caps. Simplifying in
8682           gst_caps_append breaks tests.
8683
8684 2004-04-22  Benjamin Otte  <otte@gnome.org>
8685
8686         * gst/gstcaps.c: (gst_caps_structure_simplify):
8687           unset GValue after use
8688         * gst/gstcaps.c: (gst_caps_append), 
8689         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
8690           use gst_caps_simplify (reduces registry size by 30%)
8691         * gst/gstpad.c: (gst_pad_template_new):
8692           don't allow NULL caps
8693
8694 2004-04-22  Benjamin Otte  <otte@gnome.org>
8695
8696         * docs/gst/gstreamer-sections.txt:
8697           add gst_caps_do_simplify
8698         * gst/gstcaps.c:
8699           add documentation for gst_caps_do_simplify
8700         * gst/gstvalue.h:
8701           fix typo in gst_value_register_subtract_func declaration for gst-doc
8702
8703 2004-04-22  Benjamin Otte  <otte@gnome.org>
8704
8705         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8706           fix bug when converting from empty string.
8707         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
8708         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
8709           use gst_caps_new_empty to allocate a new caps. Only that function
8710           allocates memory for caps now.
8711         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
8712         (gst_caps_remove_structure):
8713           add ability to remove one structure (but not to header yet)
8714         * gst/gstcaps.c: (gst_caps_compare_structures),
8715         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
8716         (gst_caps_structure_simplify), (gst_caps_do_simplify),
8717         * gst/gstcaps.h:
8718           add gst_caps_do_simplify that tries to simplify a caps in place.
8719           Deprecate old gst_caps_simplify function.
8720         * testsuite/caps/caps.h:
8721           add caps.h containing a common set of caps to test against.
8722         * testsuite/caps/sets.c: (check_caps), (main):
8723           use it.
8724         * testsuite/caps/.cvsignore:
8725         * testsuite/caps/Makefile.am:
8726         * testsuite/caps/simplify.c: (check_caps), (main):
8727           add test to check correctness and efficency of caps simplification.
8728
8729 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
8730
8731         reviewed by Benjamin Otte  <otte@gnome.org>
8732
8733         * gst/gstparse.c: (_gst_parse_escape):
8734           Free the GString used in _gst_parse_escape()
8735
8736 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8737
8738         * gst/gstpad.c: (gst_pad_link_negotiate):
8739           refuse to link if the link is not possible
8740         * configure.ac:
8741         * testsuite/Makefile.am:
8742         * testsuite/negotiation/.cvsignore:
8743         * testsuite/negotiation/Makefile.am:
8744         * testsuite/negotiation/pad_link.c: (main):
8745           add test that checks the above behaviour
8746
8747 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8748
8749         * docs/gst/gstreamer-sections.txt:
8750           add newly added API
8751
8752 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8753
8754         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8755         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
8756         (gst_filesrc_open_file), (gst_filesrc_close_file),
8757         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
8758         * gst/elements/gstfilesrc.h:
8759           add support for non-regular files (#140734)
8760
8761 2004-04-21  Benjamin Otte  <otte@gnome.org>
8762
8763         * gst/gstpad.c: (gst_pad_link_fixate):
8764           add sophisticated error checking code to see if fixation functions
8765           did their fixation right
8766
8767 2004-04-21  Benjamin Otte  <otte@gnome.org>
8768
8769         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
8770           check for ANY caps before appending/unioning
8771         * gst/gstcaps.c: (gst_caps_is_subset),
8772         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
8773         (gst_caps_structure_subtract), (gst_caps_subtract):
8774         * gst/gstcaps.h:
8775           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
8776           the API. deprecate gst_caps_is_equal_fixed
8777         * gst/gstpad.c: (gst_pad_try_set_caps):
8778         * gst/gstqueue.c: (gst_queue_link):
8779           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
8780         * gst/gststructure.c: (gst_structure_get_name_id):
8781         * gst/gststructure.h:
8782           add function gst_structure_get_name_id
8783         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
8784         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
8785         (gst_value_subtract_int_range_int_range),
8786         (gst_value_subtract_double_double_range),
8787         (gst_value_subtract_double_range_double),
8788         (gst_value_subtract_double_range_double_range),
8789         (gst_value_subtract_from_list), (gst_value_subtract_list),
8790         (gst_value_can_intersect), (gst_value_subtract),
8791         (gst_value_can_subtract), (gst_value_register_subtract_func),
8792         (_gst_value_initialize):
8793         * gst/gstvalue.h:
8794           add support for subtracting values from each other. Note that
8795           subtracting means subtracting as in set theory. Required for caps
8796           stuff above.
8797         * testsuite/caps/.cvsignore:
8798         * testsuite/caps/Makefile.am:
8799         * testsuite/caps/erathostenes.c: (erathostenes), (main):
8800         * testsuite/caps/sets.c: (check_caps), (main):
8801         * testsuite/caps/subtract.c: (check_caps), (main):
8802           add tests for subtraction and equality code.
8803
8804 2004-04-20  David Schleef  <ds@schleef.org>
8805
8806         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
8807         * gst/indexers/Makefile.am:
8808         * gst/schedulers/Makefile.am:
8809         * libs/gst/bytestream/Makefile.am:
8810         * libs/gst/control/Makefile.am:
8811         * libs/gst/getbits/Makefile.am:
8812
8813 2004-04-20  David Schleef  <ds@schleef.org>
8814
8815         * common/as-libtool.mak: Fine-tune DLL building.
8816         * configure.ac: Link plugins against libgstreamer.  Define plugindir
8817         (like gst-plugins)
8818         * examples/plugins/Makefile.am: remove plugindir
8819         * gst/autoplug/Makefile.am: DLL building fixes
8820         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
8821         Windows.
8822         * gst/elements/gstelements.c: Conditionally disable pipefilter.
8823         * gst/indexers/Makefile.am: DLL building fixes
8824         * gst/schedulers/Makefile.am: DLL building fixes.
8825         * libs/gst/bytestream/Makefile.am: DLL building fixes.
8826         * libs/gst/control/Makefile.am: same
8827         * libs/gst/getbits/Makefile.am: same
8828         * testsuite/Makefile.am: New dlopen directory
8829         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
8830         when dlopened.
8831         * testsuite/dlopen/dlopen_gst.c: (main): same
8832         * testsuite/dlopen/loadgst.c: (do_test): same
8833
8834 2004-04-20  David Schleef  <ds@schleef.org>
8835
8836         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
8837         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
8838
8839 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8840
8841         * gst/gstelement.c: (gst_element_wait),
8842         (gst_element_set_time_delay), (gst_element_change_state):
8843           Use GST_TIME_*
8844
8845 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8846
8847         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
8848         (gst_spider_identity_plug):
8849           improve debugging messages
8850         * gst/gstbin.c: (gst_bin_remove_func):
8851           make sure the state_change function is only called with simple state
8852           transitions
8853
8854 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8855
8856         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
8857         (gst_fakesink_set_property), (gst_fakesink_chain):
8858         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
8859         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
8860         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
8861         * gst/elements/gstidentity.c: (gst_identity_chain),
8862         (gst_identity_set_property):
8863         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
8864         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
8865           add warnings to _set_property for unknown arguments
8866           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
8867
8868 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8869
8870         * Makefile.am:
8871         * docs/manuals.mak:
8872           add .po file download snippet
8873           fix a bug in the doc makefile
8874
8875 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8876
8877         * Makefile.am:
8878         * po/LINGUAS:
8879         * po/en_GB.po:
8880           Added en_GB translation (Gareth Owen)
8881
8882 2004-04-20  Johan Dahlin  <johan@gnome.org>
8883
8884         * gst/gstpad.c (_invent_event): Clean up
8885
8886 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8887
8888         * testsuite/caps/filtercaps.c: (main):
8889           fix test to test things correctly (caps are complicated)
8890
8891 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8892
8893         * testsuite/caps/Makefile.am:
8894         * testsuite/caps/filtercaps.c: (main):
8895           add test (that doesn't work right now, but should)
8896
8897 2004-04-19  David Schleef  <ds@schleef.org>
8898
8899         * configure.ac: Add test for allowing unaligned access.  Add define
8900         to put in gstconfig.h.
8901         * docs/gst/gstreamer-sections.txt: New symbols
8902         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
8903         * docs/gst/tmpl/gstfilesrc.sgml:
8904         * docs/gst/tmpl/gstparse.sgml:
8905         * docs/gst/tmpl/gsttypes.sgml:
8906         * docs/gst/tmpl/gstutils.sgml:
8907         * docs/gst/tmpl/gstvalue.sgml:
8908         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
8909         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
8910         on most !i386/!powerpc architectures.  From Daniel Gazard
8911         <daniel.gazard@free.fr>.  (bug #140156)
8912         * po/af.po: Check in changes made by gettext.
8913         * po/az.po:
8914         * po/fr.po:
8915         * po/nl.po:
8916         * po/sr.po:
8917         * po/sv.po:
8918
8919 2004-04-20  Benjamin Otte  <otte@gnome.org>
8920
8921         * gst/schedulers/entryscheduler.c: 
8922         (gst_entry_scheduler_yield):
8923           refuse to yield when decoupled elements insist on doing that.
8924           At least it's better than crashing
8925
8926 2004-04-19  David Schleef  <ds@schleef.org>
8927
8928         * docs/libs/Makefile.am: Change sinclude to include
8929         * docs/gst/Makefile.am: same
8930         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
8931
8932 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8933
8934         * po/LINGUAS:
8935         * po/uk.po:
8936           Added Ukrainian translation (Maxim V. Dziumanenko)
8937
8938 2004-04-19  Johan Dahlin  <johan@gnome.org>
8939
8940         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
8941         checking here, do it before calling the function.
8942         Clean up, use for loops instead of while loops while iterating
8943         over lists.
8944
8945         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
8946         in debug message.
8947         (gst_spider_create_and_plug): Improve debug message.
8948         General: Replace while loops which iterates over GLists with for
8949         loops. Which are much cleaner, improves readability, especially
8950         for gst_spider_identity_plug
8951
8952         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
8953         fixes bug 140477
8954
8955 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8956
8957         * po/LINGUAS:
8958         * po/tr.po:
8959           Added Turkish translation (Baris Cicek)
8960
8961 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8962
8963         * docs/faq/troubleshooting.xml:
8964           Mention gst-register in the FAQ (fixes 139045).
8965
8966 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8967
8968         * docs/gst/gstreamer-sections.txt:
8969
8970 2004-04-17  Benjamin Otte  <otte@gnome.org>
8971
8972         * gst/gstelement.c: (gst_element_dispose):
8973           simplify
8974         * gst/gstpad.c: (gst_pad_call_chain_function):
8975           don't create loads of events due to bad macro usage
8976
8977 2004-04-16  David Schleef  <ds@schleef.org>
8978
8979         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
8980         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
8981         * gst/gstvalue.c: (gst_value_serialize_buffer),
8982         (gst_value_deserialize_buffer), (gst_type_is_fixed),
8983         (_gst_value_initialize): Create a new function gst_type_is_fixed()
8984         to indicate types that are fixed wrt caps or not.  Switching to
8985         this function fixes (bug #140298).
8986         * gst/gstvalue.h:
8987
8988 2004-04-16  David Schleef  <ds@schleef.org>
8989
8990         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
8991         for GST_UNALIGNED_ACESS, since we essentially know which archs
8992         are ok.
8993
8994 2004-04-17  Benjamin Otte  <otte@gnome.org>
8995
8996         * docs/gst/Makefile.am:
8997           ignore gst/parse directory when building docs (fixes #140205)
8998
8999 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9000
9001         * testsuite/refcounting/mem.c: (vmsize):
9002           do error checking
9003
9004 2004-04-16  Johan Dahlin  <johan@gnome.org>
9005
9006         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9007         and gst_pad_call_get_function.
9008
9009 2004-04-15  David Schleef  <ds@schleef.org>
9010
9011         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9012         checks if we can access unaligned memory.
9013         * configure.ac: Use it.
9014
9015 2004-04-16  Benjamin Otte  <otte@gnome.org>
9016
9017         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9018         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9019         * gst/elements/gstfilesrc.h:
9020           s/seek_happened/need_discont/ and require discont before sending any
9021           data
9022
9023 2004-04-15  David Schleef  <ds@schleef.org>
9024
9025         * gst/gstvalue.c: (gst_value_serialize_buffer),
9026         (gst_value_deserialize_buffer), (_gst_value_initialize):
9027         Register these types as fundamental types. (bug #140015)
9028
9029 2004-04-16  Benjamin Otte  <otte@gnome.org>
9030
9031         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9032         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9033         (gst_pad_pull):
9034           implement enforcing discont events before buffers are passed. This
9035           allows state changes of only some elements and later correctly going
9036           on where they left off (or in short: you can now set audio sinks to
9037           NULL to release the device when the pipeline is paused)
9038         * gst/gstpad.c: (gst_pad_call_chain_function),
9039         (gst_pad_call_get_function):
9040         * gst/gstpad.h:
9041           add gst_pad_call_chain_function and gst_pad_call_get_function for
9042           scheduler interaction. They are required because of the changes
9043           above.
9044         * gst/schedulers/entryscheduler.c: (get_buffer),
9045         (gst_entry_scheduler_chain_wrapper),
9046         (gst_entry_scheduler_get_wrapper),
9047         (gst_entry_scheduler_state_transition),
9048         (gst_entry_scheduler_pad_link):
9049         * gst/schedulers/gstbasicscheduler.c:
9050         (gst_basic_scheduler_chain_wrapper),
9051         (gst_basic_scheduler_src_wrapper),
9052         (gst_basic_scheduler_chainhandler_proxy),
9053         (gst_basic_scheduler_gethandler_proxy),
9054         (gst_basic_scheduler_cothreaded_chain),
9055         (gst_basic_scheduler_chain_elements):
9056         * gst/schedulers/gstoptimalscheduler.c:
9057         (get_group_schedule_function), (pad_clear_queued),
9058         (gst_opt_scheduler_pad_link):
9059           use the new functions instead of calling get/chain-functions
9060           directly.
9061
9062 2004-04-15  David Schleef  <ds@schleef.org>
9063
9064         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9065         * docs/gst/tmpl/gstinfo.sgml: same
9066         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9067         gtk-doc put here.
9068         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9069         * examples/queue/queue.c: (main):  We iterate pipelines, not
9070         bins.  (bug #139996)
9071
9072 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9073
9074         * docs/pwg/advanced-types.xml:
9075           Add MS RLE support. Also document Qt RLE although I have no sample
9076           files for that yet. And document an extra property for ADPCM.
9077
9078 2004-04-15  David Schleef  <ds@schleef.org>
9079
9080         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9081         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9082         Windows.
9083
9084 2004-04-15  David Schleef  <ds@schleef.org>
9085
9086         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9087         symbol names to not conflict with new gstinfo.h symbols.
9088         * gst/gstinfo.h: Add inline functions for all those crazy
9089         compilers that don't know how to handle variadic macros (MSVC).
9090
9091 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9092
9093         * configure.ac: bump nano to 1
9094
9095 === release 0.8.1 ===
9096
9097 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9098
9099         * NEWS:
9100         * RELEASE:
9101         * configure.ac:
9102           releasing 0.8.1, "Snow Brigade"
9103
9104 2004-04-14  David Schleef  <ds@schleef.org>
9105
9106         * testsuite/Makefile.am: define tests_ignore
9107         * testsuite/Rules: Added new tests_ignore, which get compiled,
9108         but not run (generally because they're inconsistent or have
9109         heisenbugs).  Now we can ensure all the .c files compile in
9110         testsuite/.
9111         * testsuite/bins/Makefile.am: define tests_ignore
9112         * testsuite/bytestream/Makefile.am:
9113         * testsuite/caps/Makefile.am:
9114         * testsuite/clock/Makefile.am:
9115         * testsuite/debug/Makefile.am:
9116         * testsuite/debug/global.c: (gst_debug_log_one),
9117         (gst_debug_log_two): Fix compilation problem.
9118         * testsuite/dynparams/Makefile.am:
9119         * testsuite/elements/Makefile.am:
9120         * testsuite/ghostpads/Makefile.am:
9121         * testsuite/indexers/Makefile.am:
9122         * testsuite/parse/Makefile.am:
9123         * testsuite/plugin/Makefile.am:
9124         * testsuite/refcounting/Makefile.am:
9125         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9126         results, because it's not calculated correctly.
9127         * testsuite/refcounting/pad.c: (main): same
9128         * testsuite/states/Makefile.am:
9129         * testsuite/tags/Makefile.am:
9130         * testsuite/threads/Makefile.am:
9131
9132 2004-04-14  David Schleef  <ds@schleef.org>
9133
9134         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9135         generating bad code around the cpu detection asm code.
9136
9137 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9138
9139         * tools/gst-inspect.c: (print_element_info):
9140           print numeric version of rank as well, since we added some - 1
9141           rank values to elements
9142
9143 2004-04-13  David Schleef  <ds@schleef.org>
9144
9145         * configure.ac:  Disable various code when compiling for MinGW.
9146         * gst/elements/Makefile.am:
9147         * gst/elements/gstelements.c:
9148         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9149         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9150         * gst/registries/gstxmlregistry.c: (make_dir):
9151
9152 2004-04-13  David Schleef  <ds@schleef.org>
9153
9154         * gst/Makefile.am:
9155         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9156         assembly.
9157         * gst/gstcpuid_i386.s: remove
9158
9159 2004-04-13  David Schleef  <ds@schleef.org>
9160
9161         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9162         seems to think it needs to be done.
9163         * docs/gst/tmpl/gstfakesink.sgml:
9164         * docs/gst/tmpl/gstfakesrc.sgml:
9165         * docs/gst/tmpl/gstfdsink.sgml:
9166         * docs/gst/tmpl/gstfdsrc.sgml:
9167         * docs/gst/tmpl/gstfilesink.sgml:
9168         * docs/gst/tmpl/gstfilesrc.sgml:
9169         * docs/gst/tmpl/gstidentity.sgml:
9170         * docs/gst/tmpl/gstmd5sink.sgml:
9171         * docs/gst/tmpl/gstmultifilesrc.sgml:
9172         * docs/gst/tmpl/gstpipefilter.sgml:
9173         * docs/gst/tmpl/gstshaper.sgml:
9174         * docs/gst/tmpl/gstspider.sgml:
9175         * docs/gst/tmpl/gstspideridentity.sgml:
9176         * docs/gst/tmpl/gststatistics.sgml:
9177         * docs/gst/tmpl/gsttee.sgml:
9178         * docs/gst/tmpl/gsttypefind.sgml:
9179         * docs/gst/tmpl/gstutils.sgml:
9180
9181 2004-04-13  David Schleef  <ds@schleef.org>
9182
9183         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9184         and to build DLLs on Windows.
9185         * gst/Makefile.am:
9186         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9187         (gst_filesrc_open_file):
9188         * gst/schedulers/Makefile.am:
9189
9190 2004-04-13  David Schleef  <ds@schleef.org>
9191
9192         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9193         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9194         fixating lists.
9195
9196 2004-04-12  David Schleef  <ds@schleef.org>
9197
9198         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9199         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9200         to using it.
9201         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9202         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9203         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9204         * gst/gststructure.c: (gst_structure_set_valist),
9205         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9206         support for buffers.
9207         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9208         intended to be const.
9209         * gst/gsttag.h: same
9210         * gst/gstvalue.c: (gst_value_serialize_buffer),
9211         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9212         to (de)serialize buffers.
9213         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9214         * testsuite/caps/string-conversions.c: (main):
9215         * testsuite/caps/value_serialize.c: add new test
9216
9217 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9218
9219         * docs/pwg/advanced-types.xml:
9220           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9221
9222 2004-04-11  Benjamin Otte  <otte@gnome.org>
9223
9224         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9225           rename categories to basic_*
9226         * gst/schedulers/gstbasicscheduler.c: 
9227         (gst_basic_scheduler_chain_wrapper),
9228         (gst_basic_scheduler_chainhandler_proxy),
9229         (gst_basic_scheduler_gethandler_proxy),
9230         (gst_basic_scheduler_eventhandler_proxy):
9231           debugging category fixes - put common stuff in log category
9232         * gst/schedulers/gstbasicscheduler.c: 
9233         (gst_basic_scheduler_chain_elements):
9234           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9235           active and linking two active chains
9236
9237 2004-04-10  Benjamin Otte  <otte@gnome.org>
9238
9239         * docs/pwg/intro-preface.xml:
9240           fix dead links and remove reference to Wiki
9241
9242 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9243
9244         * gst/schedulers/gstbasicscheduler.c:
9245           make sure we can switch back to the main function if we're still in
9246           the main function (supposed to fix #139617)
9247         * gst/schedulers/gthread-cothreads.h:
9248           don't throw an error when switching to the same cothread
9249
9250 2004-04-09  Benjamin Otte  <otte@gnome.org>
9251
9252         * gst/gstbin.c: (gst_bin_get_type):
9253         * gst/gstclock.c: (gst_clock_get_type):
9254         * gst/gstindex.c: (gst_index_get_type):
9255         * gst/gstobject.c: (gst_object_get_type),
9256         (gst_signal_object_get_type):
9257         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9258         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9259         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9260         * gst/gstqueue.c: (gst_queue_get_type):
9261         * gst/gstregistry.c: (gst_registry_get_type):
9262         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9263         * gst/gstthread.c: (gst_thread_get_type):
9264           don't use memchunks for these objects, use malloc instead
9265
9266 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9267
9268         * docs/gst/.cvsignore:
9269         * docs/gst/Makefile.am:
9270         * docs/gst/gstreamer-sections.txt:
9271         * docs/gst/tmpl/gstaggregator.sgml:
9272         * docs/gst/tmpl/gstbuffer.sgml:
9273         * docs/gst/tmpl/gstclock.sgml:
9274         * docs/gst/tmpl/gstelement.sgml:
9275         * docs/gst/tmpl/gstfakesink.sgml:
9276         * docs/gst/tmpl/gstfakesrc.sgml:
9277         * docs/gst/tmpl/gstfdsink.sgml:
9278         * docs/gst/tmpl/gstfdsrc.sgml:
9279         * docs/gst/tmpl/gstfilesink.sgml:
9280         * docs/gst/tmpl/gstfilesrc.sgml:
9281         * docs/gst/tmpl/gstidentity.sgml:
9282         * docs/gst/tmpl/gstindex.sgml:
9283         * docs/gst/tmpl/gstinfo.sgml:
9284         * docs/gst/tmpl/gstmd5sink.sgml:
9285         * docs/gst/tmpl/gstmultifilesrc.sgml:
9286         * docs/gst/tmpl/gstpad.sgml:
9287         * docs/gst/tmpl/gstpipefilter.sgml:
9288         * docs/gst/tmpl/gstpipeline.sgml:
9289         * docs/gst/tmpl/gstpluginfeature.sgml:
9290         * docs/gst/tmpl/gstqueue.sgml:
9291         * docs/gst/tmpl/gstregistry.sgml:
9292         * docs/gst/tmpl/gstscheduler.sgml:
9293         * docs/gst/tmpl/gstshaper.sgml:
9294         * docs/gst/tmpl/gstspider.sgml:
9295         * docs/gst/tmpl/gstspideridentity.sgml:
9296         * docs/gst/tmpl/gststatistics.sgml:
9297         * docs/gst/tmpl/gstsystemclock.sgml:
9298         * docs/gst/tmpl/gsttee.sgml:
9299         * docs/gst/tmpl/gstthread.sgml:
9300         * docs/gst/tmpl/gsttypefind.sgml:
9301         * docs/gst/tmpl/gstutils.sgml:
9302           further doc build fixes
9303
9304 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9305
9306         * docs/gst/Makefile.am:
9307           make docs exit on scanning problems
9308           fix nonsrcdir build issues
9309         * docs/gst/gstreamer-sections.txt:
9310           adding stuff from -unused
9311         * gst/gstqueue.h:
9312           create GstQueueSize
9313         * gst/schedulers/cothreads_compat.h:
9314           fix cothread warnings
9315
9316 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9317
9318         * docs/gst/gstreamer-sections.txt:
9319           remove defines deprecated by Benjamin
9320
9321 2004-04-07  Benjamin Otte  <otte@gnome.org>
9322
9323         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9324           when the buffer is complete, don't check if other buffers are needed
9325         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9326           check that the offset is >0 so we don't try to read before the
9327           beginning of the file
9328         * gst/gstpad.c: (gst_pad_set_pad_template):
9329           sink the template, so we don't end up with 130k pad templates
9330
9331 2004-04-06  Benjamin Otte  <otte@gnome.org>
9332
9333         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9334           don't ref the element, adding already reffed it. And we didn't unref
9335           it later anyway... (huge memleak when you used many spider elements)
9336         * gst/gstelement.c: (gst_element_base_class_finalize):
9337         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9338         (gst_element_register):
9339         * gst/gsturi.c: (gst_element_make_from_uri):
9340           use gst_object_(un)ref instead of g_object(un)ref
9341
9342 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9343
9344         * gst/gstbuffer.h:
9345           remove macro that wouldn't work anymore because struct member has
9346           been removed.
9347         * gst/schedulers/entryscheduler.c: (schedule_forward):
9348           fix segfault for unconnected pads
9349         
9350 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9351
9352         reviewed by David Schleef <ds@schleef.org>
9353
9354         * gst/gstinfo.h:
9355           *_FORMAT modifiers should require putting a % in front of them for
9356           consistency reasons.
9357
9358 2004-04-05  Colin Walters  <walters@redhat.com>
9359
9360         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9361         space.
9362
9363 2004-04-05  Benjamin Otte  <otte@gnome.org>
9364
9365         * configure.ac:
9366         * gst/Makefile.am:
9367         * gst/gst_private.h:
9368         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9369           add support for detecting if GStreamer runs inside valgrind.
9370           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9371           print a big message in valgrind that GStreamer has detected it's
9372           running inside and might now use different code.
9373         * gst/gstmemchunk.c: (populate), (free_area),
9374         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9375         (gst_mem_chunk_free):
9376           flag memchunks for valgrind, so it can detect leaking of chunks.
9377           This allows detecting leaks of GstBuffer and GstEvent correctly
9378           inside valgrind.
9379
9380 2004-04-05  David Schleef  <ds@schleef.org>
9381
9382         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9383           jensgr@gmx.net (Jens Granseuer)
9384
9385 2004-04-05  David Schleef  <ds@schleef.org>
9386
9387         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9388         (gst_buffer_default_free), (gst_buffer_default_copy),
9389         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9390         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9391         structures in one place.
9392
9393 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9394
9395         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9396           (GST_TIME_FORMAT, GST_TIME_ARGS)
9397
9398 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9399
9400         * testsuite/elements/Makefile.am:
9401           disable test until it stops breaking make distcheck
9402
9403 2004-04-05  Johan Dahlin  <johan@gnome.org>
9404
9405         * po/sv.po: Updated translation
9406
9407 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9408
9409         * gst/gstplugin.c: (gst_plugin_load_file):
9410           fix segfault for when original plugin was loaded statically
9411
9412 2004-04-05  Benjamin Otte  <otte@gnome.org>
9413
9414         * testsuite/debug/category.c: (main):
9415         * testsuite/debug/commandline.c: (main):
9416         * testsuite/debug/output.c: (main):
9417           fix tests to work again with debugging enabled
9418
9419 2004-04-05  Benjamin Otte  <otte@gnome.org>
9420
9421         * gst/schedulers/gstbasicscheduler.c:
9422         (gst_basic_scheduler_pad_link):
9423           fix to work with recent scheduling changes
9424
9425 2004-04-05  Benjamin Otte  <otte@gnome.org>
9426
9427         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9428         prepareChangeLog doesn't work when cvs indents):
9429           don't throw an error when no element can be scheduled, there's too
9430           many weird reasons why it doesn't work. Return STOPPED instead.
9431           decoupled elemts' schedulability doesn't depend on bufpens.
9432
9433 2004-04-04  Benjamin Otte  <otte@gnome.org>
9434
9435         * gst/schedulers/gstbasicscheduler.c:
9436         (gst_basic_scheduler_pad_select):
9437           fix uninitialized variable warnings
9438
9439 2004-04-04  Benjamin Otte  <otte@gnome.org>
9440
9441         * gst/gstpad.c: (gst_pad_collect_valist):
9442           fix uninitialized variable warning
9443         * gst/schedulers/entryscheduler.c: (schedule_forward):
9444           fix shadowed variable
9445
9446 2004-04-04  Benjamin Otte  <otte@gnome.org>
9447
9448         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9449         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9450         (gst_pad_select):
9451         * gst/gstpad.h:
9452         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9453         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9454         * gst/gstscheduler.h:
9455           implement gst_pad_collect as replacement for gst_pad_select.
9456           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9457           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9458           new pad_select, lock and unlock calls.
9459         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9460         * gst/cothreads.h:
9461         * gst/schedulers/cothreads_compat.h:
9462         * gst/schedulers/gthread-cothreads.h:
9463           remove unused cothread_lock and cothread_unlock calls
9464         * gst/schedulers/entryscheduler.c:
9465         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9466         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9467         (gst_entry_scheduler_pad_select):
9468           update to new API
9469         * gst/schedulers/gstbasicscheduler.c:
9470         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9471         (gst_basic_scheduler_pad_select):
9472           remove useless lock and unlock calls, update pad_select to new API
9473           (untested)
9474         * gst/schedulers/gstoptimalscheduler.c:
9475         (gst_opt_scheduler_class_init):
9476           remove useless select, lock and unlock function calls
9477         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9478           use gst_pad_collect instead of gst_pad_select
9479
9480 2004-04-04  Benjamin Otte  <otte@gnome.org>
9481
9482         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9483         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9484         (schedule_next_element), (print_entry):
9485           add can_schedule_pad to handle element states.
9486           add schedule_forward to select the correct entry to schedule next
9487
9488 2004-04-03  Benjamin Otte  <otte@gnome.org>
9489
9490         * gst/schedulers/entryscheduler.c: 
9491           remove unused variable, fix error inside Rb, fix compile warning in
9492           unreachable code
9493
9494 2004-04-03  Benjamin Otte  <otte@gnome.org>
9495
9496         * gst/schedulers/entryscheduler.c:
9497           completely revamp the inner workings, so it's a lot easier to
9498           understand and extend
9499
9500 2004-04-03  Andy Wingo  <wingo@pobox.com>
9501
9502         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9503         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9504         This allows better introspection of pipeline topology.
9505         (add_to_chain): Don't do trickery to put loop elements first;
9506         rather, queue a chain sort by marking the chain as dirty.
9507         (remove_from_chain): Mark the chain dirty.
9508         (sort_chain): New function. Sorts the group list so that terminal
9509         sinks are first. This means elements on the sink side will be
9510         preferentially sscheduled before elements on the src side of the
9511         pipeline.
9512         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9513         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9514         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9515         (group_inc_link): Change argument and variable names to match the
9516         new link structure member names (src and sink).
9517         (group_dec_link): Add some description
9518
9519 2004-04-03  Benjamin Otte  <otte@gnome.org>
9520
9521         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9522         * gst/gstinfo.h:
9523         * testsuite/debug/category.c: (main):
9524         * testsuite/debug/commandline.c: (main):
9525         * testsuite/debug/output.c: (main):
9526         * testsuite/debug/printf_extension.c: (main):
9527           fix to successfully build and test with --disable-gst-debug
9528           configure switch (fixes #138705)
9529
9530 2004-04-03  Benjamin Otte  <otte@gnome.org>
9531
9532         * docs/pwg/building-boiler.xml:
9533           add cvs login line and s/anonymous/anoncvs/
9534
9535 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
9536
9537         reviewed by Benjamin Otte  <otte@gnome.org>
9538
9539         * gst/gststructure.c: (gst_structure_free):
9540           memleak fix: free fields array (partial fix for #134839)
9541
9542 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9543
9544         * docs/random/ds/0.9-suggested-changes:
9545           Add a note to change handoff use in fakesrc to be usable in
9546           a more generic way (fakesrc should be renamed to appsrc or so).
9547         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9548           Change signal type to scope, so we can fill the buffer in the
9549           handoff handler (that's the whole use of this signal...).
9550
9551 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9552
9553         * docs/pwg/other-ntoone.xml:
9554           Document muxers and n-to-1 elements.
9555
9556 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
9557
9558         * gst/registries/gstxmlregistry.c
9559         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
9560         determine if a file is a G_MODULE. The old one discards paths
9561         containing "so" somewhere in the middle. My home directory is
9562         called "soto". Go figure...
9563
9564 2004-03-31  David Schleef  <ds@schleef.org>
9565
9566         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
9567         to eventually deprecate gst_buffer_merge().  (bug: #136408)
9568         * gst/gstbuffer.h:
9569
9570 2004-03-31  David Schleef  <ds@schleef.org>
9571
9572         * gst/gstvalue.c: (gst_value_union_int_int_range),
9573         (gst_value_union_int_range_int_range), (gst_value_can_union),
9574         (gst_value_union), (_gst_value_initialize):  Add some union
9575         implementations.  We didn't have any previously.
9576         * testsuite/caps/Makefile.am:
9577         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
9578         (gst_audioscale_getcaps), (test_caps), (main): A little test
9579         that is the same as the caps manipulation in audioscale.
9580
9581 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9582
9583         * docs/faq/general.xml:
9584           add entry about "does gst support format X?"
9585
9586 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9587
9588         * gst/gstthread.c:
9589           fix docs
9590         * gst/gstutils.h:
9591           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
9592
9593 2004-03-30  Benjamin Otte  <otte@gnome.org>
9594
9595         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9596           set the offset of the buffer to the requested offset
9597         * gst/elements/gsttypefind.c: (stop_typefinding):
9598           revert patch 1.18 (which I unfortunately don't know the reason for).
9599           This is needed to allow downstream elements to seek. Otherwise
9600           typefind might overwrite a previous seek by downstream elements.
9601           This lead to errors with id3tag and typefind on some mp3s.
9602         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9603         (gst_entry_scheduler_iterate):
9604           be more verbose when debugging
9605
9606 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9607
9608         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9609           make sure we don't get NULL strings
9610
9611 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9612
9613         * gst/gstcaps.c:
9614         * gst/gstelement.c:
9615         * gst/gstelementfactory.c: (gst_element_factory_get_type):
9616         * gst/gstindex.c: (gst_index_resolver_get_type),
9617         (gst_index_get_type), (gst_index_factory_get_type):
9618         * gst/gstinfo.c:
9619         * gst/gstpad.c:
9620         * gst/gstplugin.c:
9621         * gst/gsturi.c: (gst_uri_handler_get_type):
9622         * gst/gstvalue.c:
9623           first batch of documentation fixes
9624
9625 2004-03-29  David Schleef  <ds@schleef.org>
9626
9627         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
9628         * docs/gst/gstreamer-docs.sgml:  More hacking
9629         * docs/gst/gstreamer-sections.txt:
9630         * docs/gst/tmpl/cothreads_compat.sgml:
9631         * docs/gst/tmpl/gstcaps.sgml:
9632         * docs/gst/tmpl/gstclock.sgml:
9633         * docs/gst/tmpl/gstelement.sgml:
9634         * docs/gst/tmpl/gstevent.sgml:
9635         * docs/gst/tmpl/gstpad.sgml:
9636         * docs/gst/tmpl/gstutils.sgml:
9637         * docs/gst/tmpl/gstxml.sgml:
9638         * docs/gst/tmpl/gthread-cothreads.sgml:
9639         * docs/random/ds/0.9-suggested-changes:
9640         * gst/elements/gstfakesink.h: doc fixes
9641         * gst/elements/gstfakesrc.h: doc fixes
9642         * gst/gstcaps.c: doc fixes
9643         * gst/gstcaps.h: doc fixes
9644         * gst/gstelement.c: doc fixes
9645         * gst/gstelement.h: doc fixes
9646         * gst/gstindex.c: doc fixes
9647         * gst/gstinfo.c: doc fixes
9648         * gst/gstpad.c: doc fixes
9649         * gst/gstpad.h: doc fixes
9650         * gst/gstplugin.c: doc fixes
9651         * gst/gsttypefind.h: doc fixes
9652         * gst/gsturi.c: doc fixes
9653         * gst/gstvalue.c: doc fixes
9654
9655 2004-03-29  Colin Walters  <walters@redhat.com>
9656
9657         * gst/registries/gstxmlregistry.c (get_time)
9658         (plugin_times_older_than_recurse):
9659         Use the result of stat to determine whether a path is a file,
9660         so we don't attempt to opendir() files.
9661
9662 2004-03-29  Benjamin Otte  <otte@gnome.org>
9663
9664         * gst/gstpad.c: (gst_pad_set_explicit_caps):
9665           print caps in debugging output when setting caps failed
9666         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9667         (schedule_next_element), (get_buffer), (run_chainhandler),
9668         (element_may_start), (gst_entry_scheduler_chain_handler),
9669         (gst_entry_scheduler_get_handler),
9670         (gst_entry_scheduler_state_transition),
9671         (gst_entry_scheduler_pad_link):
9672           make this scheduler a testcase for mandatory
9673           discont-before-first-buffer which is needed if we want to allow apps
9674           to release the sound device.
9675           add SCHED_ASSERT macro to print scheduler state before an assertion
9676           triggers.
9677
9678 2004-03-29  Benjamin Otte  <otte@gnome.org>
9679
9680         * COPYING:
9681           replace by LGPL (former COPYING.LIB). The core is completely
9682           licensed LGPL.
9683         * COPYING.LIB:
9684           remove
9685
9686 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9687
9688         * po/af.po:
9689         * po/sv.po:
9690           updated Afrikaans and Swedish
9691
9692 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9693
9694         * po/LINGUAS:
9695         * po/az.po:
9696           adding Azerbaijani (Mətin Əmirov)
9697
9698 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
9699
9700         * gst/gstelement.h: 
9701         * gst/gstelement.c (gst_element_set_time_delay): New function for
9702         setting element time taking into account a hardware buffering
9703         delay.
9704         (gst_element_set_time): Now just an invocation of
9705         gst_element_set_time_delay.
9706         * gst/gstclock.h: 
9707         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
9708         allowing to set event times in the future.
9709         (gst_clock_get_event_time): Now just an invocation of
9710         gst_clock_get_event_time_delay.
9711
9712 2004-03-28  Benjamin Otte  <otte@gnome.org>
9713
9714         * gst/gstbin.c: (gst_bin_set_element_sched),
9715         (gst_bin_unset_element_sched):
9716           don't add decoupled elements to schedulers - otherwise it's
9717           impossible to control if a link to a decoupled element was already
9718           removed from a scheduler or not.
9719         * gst/schedulers/cothreads_compat.h:
9720         * gst/schedulers/gthread-cothreads.h:
9721           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
9722           is no "unused" warning.
9723         * gst/schedulers/Makefile.am:
9724         * gst/schedulers/entryscheduler.c:
9725           add new scheduler, based on ideas from talking to David and Martin.
9726           It's supposed to be small and correct. Currently it's also slow (but
9727           it's not noticable)
9728         * examples/retag/retag.c: (main):
9729         * testsuite/bytestream/test1.c: (main):
9730           fix missing NULLs at end of variadic functions
9731         * testsuite/elements/.cvsignore:
9732           update
9733
9734 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
9735
9736         * gst/gstevent.h:
9737         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
9738
9739 2004-03-25  David Schleef  <ds@schleef.org>
9740
9741         * docs/gst/gstreamer-sections.txt:  More doc hacking.
9742         * docs/gst/tmpl/gstaggregator.sgml:
9743         * docs/gst/tmpl/gstautoplugfactory.sgml:
9744         * docs/gst/tmpl/gstbin.sgml:
9745         * docs/gst/tmpl/gstbuffer.sgml:
9746         * docs/gst/tmpl/gstbufferstore.sgml:
9747         * docs/gst/tmpl/gstfakesink.sgml:
9748         * docs/gst/tmpl/gstfakesrc.sgml:
9749         * docs/gst/tmpl/gstmd5sink.sgml:
9750         * docs/gst/tmpl/gstreamer-unused.sgml:
9751         * docs/gst/tmpl/gstsearchfuncs.sgml:
9752         * docs/gst/tmpl/gstshaper.sgml:
9753         * docs/gst/tmpl/gstspider.sgml:
9754         * docs/gst/tmpl/gsttee.sgml:
9755         * docs/gst/tmpl/gstutils.sgml:
9756         * docs/gst/tmpl/gstvalue.sgml:
9757         * docs/gst/tmpl/gstxml.sgml:
9758         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
9759         and we don't support it.
9760         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
9761         (gst_use_threads), (gst_has_threads): same
9762         * gst/gstthreaddummy.c: same
9763         * gst/autoplug/gstspider.c: Make gst_spider_details static.
9764         * gst/autoplug/gstspider.h: same
9765         * gst/elements/gstaggregator.h: Remove bogus function from header
9766         * gst/elements/gstfakesink.h: same
9767         * gst/elements/gstfakesrc.h: same
9768         * gst/elements/gstmd5sink.h: same
9769         * gst/elements/gstshaper.h: same
9770         * gst/elements/gsttee.h: same
9771         * gst/gstbin.c: doc fixes
9772         * gst/gstbin.h: Remove unused definition.
9773         * gst/gstbuffer.c: doc fixes
9774         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
9775         * gst/gstfilter.c: doc fixes
9776         * gst/gsttag.c: doc fixes
9777         * gst/gstvalue.c: doc fixes
9778
9779 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9780
9781         * docs/pwg/advanced-types.xml:
9782           Document typefinding.
9783         * docs/pwg/other-oneton.xml:
9784           Document one-to-n elements, demuxers and parsers.
9785
9786 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
9787
9788         reviewed by: David Schleef  <ds@schleef.org>
9789
9790         * configure.ac: Check bison version (bug #127838)
9791
9792 2004-03-25  David Schleef  <ds@schleef.org>
9793
9794         * docs/gst/gstreamer-docs.sgml: More fine tuning.
9795         * docs/gst/gstreamer-sections.txt:
9796         * docs/gst/tmpl/gstautoplug.sgml:
9797         * docs/gst/tmpl/gststaticautoplug.sgml:
9798         * docs/gst/tmpl/gststaticautoplugrender.sgml:
9799         * docs/gst/tmpl/gstutils.sgml:
9800         * docs/gst/tmpl/gstxml.sgml:
9801
9802 2004-03-24  David Schleef  <ds@schleef.org>
9803
9804         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
9805         manual being such complete crap, that I decided to do major
9806         hacking of it.  This checkin replaces any fine tuning that
9807         may have been done previously, with the benefit of actually
9808         being complete for much of the API that was changed since
9809         0.6.  Further fine tuning will occur shortly.  (bug #134721)
9810         * docs/gst/gstreamer-sections.txt:
9811         * docs/gst/tmpl/GstBin.sgml:
9812         * docs/gst/tmpl/GstBuffer.sgml:
9813         * docs/gst/tmpl/GstCaps.sgml:
9814         * docs/gst/tmpl/GstClock.sgml:
9815         * docs/gst/tmpl/GstCompat.sgml:
9816         * docs/gst/tmpl/GstData.sgml:
9817         * docs/gst/tmpl/GstElement.sgml:
9818         * docs/gst/tmpl/GstEvent.sgml:
9819         * docs/gst/tmpl/GstIndex.sgml:
9820         * docs/gst/tmpl/GstStructure.sgml:
9821         * docs/gst/tmpl/GstTag.sgml:
9822         * docs/gst/tmpl/cothreads.sgml:
9823         * docs/gst/tmpl/cothreads_compat.sgml:
9824         * docs/gst/tmpl/gettext.sgml:
9825         * docs/gst/tmpl/grammar.tab.sgml:
9826         * docs/gst/tmpl/gst-i18n-app.sgml:
9827         * docs/gst/tmpl/gst-i18n-lib.sgml:
9828         * docs/gst/tmpl/gst.sgml:
9829         * docs/gst/tmpl/gst_private.sgml:
9830         * docs/gst/tmpl/gstaggregator.sgml:
9831         * docs/gst/tmpl/gstarch.sgml:
9832         * docs/gst/tmpl/gstatomic.sgml:
9833         * docs/gst/tmpl/gstatomic_impl.sgml:
9834         * docs/gst/tmpl/gstbin.sgml:
9835         * docs/gst/tmpl/gstbuffer.sgml:
9836         * docs/gst/tmpl/gstbufferstore.sgml:
9837         * docs/gst/tmpl/gstcaps.sgml:
9838         * docs/gst/tmpl/gstclock.sgml:
9839         * docs/gst/tmpl/gstcompat.sgml:
9840         * docs/gst/tmpl/gstconfig.sgml:
9841         * docs/gst/tmpl/gstcpu.sgml:
9842         * docs/gst/tmpl/gstdata.sgml:
9843         * docs/gst/tmpl/gstdata_private.sgml:
9844         * docs/gst/tmpl/gstelement.sgml:
9845         * docs/gst/tmpl/gstenumtypes.sgml:
9846         * docs/gst/tmpl/gsterror.sgml:
9847         * docs/gst/tmpl/gstevent.sgml:
9848         * docs/gst/tmpl/gstfakesink.sgml:
9849         * docs/gst/tmpl/gstfakesrc.sgml:
9850         * docs/gst/tmpl/gstfilesink.sgml:
9851         * docs/gst/tmpl/gstfilter.sgml:
9852         * docs/gst/tmpl/gstindex.sgml:
9853         * docs/gst/tmpl/gstinfo.sgml:
9854         * docs/gst/tmpl/gstinterface.sgml:
9855         * docs/gst/tmpl/gstlog.sgml:
9856         * docs/gst/tmpl/gstmacros.sgml:
9857         * docs/gst/tmpl/gstmarshal.sgml:
9858         * docs/gst/tmpl/gstmd5sink.sgml:
9859         * docs/gst/tmpl/gstmultifilesrc.sgml:
9860         * docs/gst/tmpl/gstobject.sgml:
9861         * docs/gst/tmpl/gstpad.sgml:
9862         * docs/gst/tmpl/gstparse.sgml:
9863         * docs/gst/tmpl/gstpipeline.sgml:
9864         * docs/gst/tmpl/gstplugin.sgml:
9865         * docs/gst/tmpl/gstpluginfeature.sgml:
9866         * docs/gst/tmpl/gstqueue.sgml:
9867         * docs/gst/tmpl/gstreamer-unused.sgml:
9868         * docs/gst/tmpl/gstregistry.sgml:
9869         * docs/gst/tmpl/gstregistrypool.sgml:
9870         * docs/gst/tmpl/gstscheduler.sgml:
9871         * docs/gst/tmpl/gstsearchfuncs.sgml:
9872         * docs/gst/tmpl/gstshaper.sgml:
9873         * docs/gst/tmpl/gstspider.sgml:
9874         * docs/gst/tmpl/gstspideridentity.sgml:
9875         * docs/gst/tmpl/gststructure.sgml:
9876         * docs/gst/tmpl/gstsystemclock.sgml:
9877         * docs/gst/tmpl/gsttag.sgml:
9878         * docs/gst/tmpl/gsttaginterface.sgml:
9879         * docs/gst/tmpl/gsttee.sgml:
9880         * docs/gst/tmpl/gstthread.sgml:
9881         * docs/gst/tmpl/gsttrace.sgml:
9882         * docs/gst/tmpl/gsttrashstack.sgml:
9883         * docs/gst/tmpl/gsttypefind.sgml:
9884         * docs/gst/tmpl/gsttypes.sgml:
9885         * docs/gst/tmpl/gsturi.sgml:
9886         * docs/gst/tmpl/gsturitype.sgml:
9887         * docs/gst/tmpl/gstutils.sgml:
9888         * docs/gst/tmpl/gstvalue.sgml:
9889         * docs/gst/tmpl/gstversion.sgml:
9890         * docs/gst/tmpl/gstxml.sgml:
9891         * docs/gst/tmpl/gstxmlregistry.sgml:
9892         * docs/gst/tmpl/gthread-cothreads.sgml:
9893         * docs/gst/tmpl/types.sgml:
9894
9895 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9896
9897         * docs/pwg/other-sink.xml:
9898         * docs/pwg/other-source.xml:
9899           Documentation on how to write source and sink elements. Other
9900           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
9901           manager, autoplugger) are all still pending.
9902
9903 2004-03-25  Benjamin Otte  <otte@gnome.org>
9904
9905         * testsuite/elements/Makefile.am:
9906         * testsuite/elements/gst-compprep-check:
9907           add check to make sure gst-compprep works
9908         * testsuite/elements/gst-inspect-check.in:
9909           improve initialization output
9910         * testsuite/Makefile.am:
9911         * testsuite/gst-inspect-check:
9912           remove old file
9913
9914 2004-03-24  David Schleef  <ds@schleef.org>
9915
9916         * testsuite/elements/Makefile.am:
9917         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
9918         to the testsuite.
9919
9920 2004-03-24  Benjamin Otte  <otte@gnome.org>
9921
9922         * libs/gst/control/dparam.c: (gst_dparam_attach),
9923         (gst_dparam_detach):
9924         * libs/gst/control/dparammanager.c: (gst_dpman_init):
9925           fix lvalue casts for real
9926
9927 2004-03-24  Benjamin Otte  <otte@gnome.org>
9928
9929         * gst/schedulers/gstbasicscheduler.c:
9930         (gst_basic_scheduler_src_wrapper):
9931         * gst/schedulers/gstoptimalscheduler.c:
9932         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
9933         (pad_clear_queued), (gst_opt_scheduler_add_element),
9934         (gst_opt_scheduler_remove_element):
9935           fix GStreamer to not have issues with lvalue casts anymore (fixes
9936           #136841)
9937
9938 2004-03-24  Benjamin Otte  <otte@gnome.org>
9939
9940         * gst/gstelement.c:
9941           add documentation about a gobject quirk where the object hasn't the
9942           correct class pointer set on initialization
9943         * gst/schedulers/gstbasicscheduler.c:
9944         (gst_basic_scheduler_src_wrapper):
9945           make sure to not run into an infinite loop
9946
9947 2004-03-22  Benjamin Otte  <otte@gnome.org>
9948
9949         * gst/gstutils.c: (gst_util_dump_mem):
9950         * gst/gstutils.h:
9951           first argument of gst_util_dump_mem should be const
9952
9953 2004-03-22  Johan Dahlin  <johan@gnome.org>
9954
9955         * gst/gstvalue.h: Clean up a little bit.
9956
9957 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
9958
9959         reviewed by Benjamin Otte  <otte@gnome.org>
9960
9961         * gst/autoplug/gstspider.c: (gst_spider_dispose):
9962         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
9963         (gst_aggregator_class_init), (gst_aggregator_init):
9964         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9965         (gst_filesrc_dispose), (gst_filesrc_set_location):
9966         * gst/elements/gstidentity.c: (gst_identity_finalize),
9967         (gst_identity_class_init), (gst_identity_chain):
9968         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9969         * gst/elements/gststatistics.c: (gst_statistics_finalize),
9970         (gst_statistics_class_init):
9971         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
9972         (gst_tee_get_property):
9973           clean up used memory in this elements correctly on teardown (closes
9974           #137279)
9975
9976 2004-03-20  Colin Walters  <walters@redhat.com>
9977
9978         * gst/registries/gstxmlregistry.c:
9979         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
9980         registry saving atomic.
9981
9982 2004-03-20  Colin Walters  <walters@redhat.com>
9983
9984         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
9985         Just use
9986         access() instead of actually creating and deleting files.
9987
9988 2004-03-18  David Schleef  <ds@schleef.org>
9989
9990         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
9991         (bug #137625)
9992
9993 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9994
9995         * po/sv.po: updated translation (Christian Rose)
9996
9997 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9998
9999         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10000         (gst_filesink_get_query_types), (_do_init),
10001         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10002           return FALSE silently
10003         * po/af.po: updated translation (Petri Jooste)
10004
10005 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10006
10007         * Makefile.am:
10008         * configure.ac:
10009           dist common properly
10010         * po/af.po:
10011         * po/fr.po:
10012         * po/nl.po:
10013         * po/sr.po:
10014         * po/sv.po:
10015           refreshing translations
10016
10017 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10018
10019         * po/LINGUAS:
10020         * po/sv.po:
10021         * po/af.po:
10022           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10023
10024 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10025
10026         * Makefile.am: use common/release.mak
10027
10028 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10029
10030         * docs/faq/gst-uninstalled:
10031           adding gst-monkeysaudio to the list of possible plugin dirs
10032
10033 2004-03-16  David Schleef  <ds@schleef.org>
10034
10035         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10036         (gst_init_check_with_popt_table):  Fix some gettext strings to
10037         make them easier to translate.  Required making the strings
10038         non-const.
10039
10040 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10041
10042         * configure.ac: bump nano to 1
10043
10044 === release 0.8.0 ===
10045
10046 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10047
10048         * configure.ac: release 0.8.0, "Executive Slacks"
10049
10050 2004-03-16  Johan Dahlin  <johan@gnome.org>
10051
10052         * gst/schedulers/gstoptimalscheduler.c
10053         (gst_opt_scheduler_pad_unlink): Remove double ;,
10054         spotted by Scott Wheeler
10055
10056 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10057
10058         * configure.ac: bump libtool version
10059
10060 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10061
10062         * gst/gstcaps.h:
10063         * gst/gststructure.h:
10064           add reserved padding
10065
10066 2004-03-15  Benjamin Otte  <otte@gnome.org>
10067
10068         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10069           set the first parameter for select call correctly.
10070           (fixes #137230)
10071
10072 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10073
10074         * *.c,*.h: don't mix tabs and spaces
10075
10076 2004-03-15  Johan Dahlin  <johan@gnome.org>
10077
10078         * gst/schedulers/gstoptimalscheduler.c
10079         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10080         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10081
10082         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10083         
10084 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10085
10086         * testsuite/Rules:
10087           fix gst-register rules
10088
10089 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10090
10091         * testsuite/Rules:
10092           use versioned gst-register
10093
10094 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10095
10096         * docs/libs/gstreamer-libs-sections.txt:
10097           remove </SUBSECTION>
10098         * gst/gstplugin.c:
10099         * gst/gstregistry.c: (gst_registry_add_plugin):
10100         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10101         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10102           add debugging and fix some comment blocks
10103
10104 2004-03-15  Johan Dahlin  <johan@gnome.org>
10105
10106         * *.h: Revert indent changes.
10107         
10108 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10109
10110         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10111           g_error_free the g_error
10112         * tools/gst-feedback-m.m:
10113           check for other versions of gstreamer
10114         * tools/gst-indent:
10115           use sh, not bash
10116
10117 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10118
10119         * tools/gst-register.c: do not spill paths when registries are not
10120           writable, until we fix the "user running gst-register" case.
10121
10122 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10123
10124         * *.c, *.h: commit of gst-indent run on core
10125
10126 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10127
10128         * tools/gst-indent:
10129         * tools/Makefile.am:
10130           add our indentation style as a script
10131
10132 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10133
10134         * po/sr.po:
10135         * po/LINGUAS:
10136           added Serbian translation
10137
10138 2004-03-13  Benjamin Otte  <otte@gnome.org>
10139
10140         * gst/gstelement.c:
10141           add documentation note about gst_element_found_tags_for_pad not
10142           being usable in getfunctions. (see #137042)
10143
10144 2004-03-12  David Schleef  <ds@schleef.org>
10145
10146         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10147         change API right now!  Readd gst_caps_is_simple() macro.
10148         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10149         uninitialized variable.  I'd bet this caused crashes.
10150         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10151
10152 2004-03-12  Johan Dahlin  <johan@gnome.org>
10153
10154         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10155         * gst/gstcaps.h: Clean up
10156
10157         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10158         _gst_caps_initalize()
10159
10160         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10161         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10162
10163         * gst/gststructure.c (gst_structure_get_type): Ditto
10164
10165         * gst/gststructure.h: Ditto
10166         
10167 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10168
10169         * gst/gstqueue.c: (gst_queue_init):
10170           Reset default max. values in queues. Reason is simply to avoid
10171           braindead use. If you want wider values, use the properties. The
10172           default is supposed to always work. Wider values would make this
10173           beast a memory hog by default (250 full-PAL RGB32 video frames?
10174           That's 440 MB! No thank you).
10175
10176 2004-03-10  David Schleef  <ds@schleef.org>
10177
10178         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10179         were found.  (bug #136793)
10180
10181 2004-03-10  Johan Dahlin  <johan@gnome.org>
10182
10183         * gst/schedulers/gstoptimalscheduler.c
10184         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10185         links to elements within the same group, so we can finally remove
10186         that annoying warning. Refactor the code a little bit
10187         (group_dec_links_for_element): Split out
10188
10189 2004-03-09  David Schleef  <ds@schleef.org>
10190
10191         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10192         (bug #134863)
10193
10194 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10195
10196         * configure.ac: first bug fix due to major/minor bump
10197
10198 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10199
10200         * configure.ac: bump nano to 1
10201
10202 === release 0.7.6 ===
10203
10204 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10205
10206         * NEWS:
10207         * RELEASE:
10208         * configure.ac:
10209           releasing 0.7.6, "Almost"
10210         * po/fr.po:
10211         * po/nl.po:
10212         * tools/Makefile.am:
10213         * tools/gst-feedback-m.m:
10214           unversioned source
10215
10216 2004-03-09  Johan Dahlin  <johan@gnome.org>
10217
10218         Reviewed by: Thomas Vander Stichele
10219
10220         * gst/gstelement.c (gst_element_class_init): register second
10221         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10222         language bindings can (de)marshall correctly.
10223
10224         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10225
10226         * gst/gsterror.c (gst_g_error_get_type): New function
10227
10228         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10229         with VOID:OBJECT,OBJECT,STRING 
10230
10231 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10232
10233         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10234         Free a leaked g_timer on early returns.
10235
10236 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10237
10238         * docs/pwg/advanced-types.xml:
10239           Add cinepak description.
10240
10241 2004-03-07  David Schleef  <ds@schleef.org>
10242
10243         * docs/random/mimetypes:  Added cinepak description
10244
10245 2004-03-07  Andy Wingo  <wingo@pobox.com>
10246
10247         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10248
10249         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10250         there are no links to other groups when a group is destroyed.
10251         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10252         removed from a group, make sure the link count to elements linked
10253         to other pads is appropriately decremented. This really fixes
10254         #135672.
10255
10256         The 1.60->1.61 patch has been reapplied in light of this fix.
10257
10258         * gst/gstelement.c (gst_element_dispose): Really protect against
10259         multiple invocations this time.
10260
10261 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10262
10263         * docs/gst/gstreamer-sections.txt:
10264         * docs/gst/tmpl/gsttag.sgml:
10265           remove some deprecated functions, document some existing ones
10266         * gst/gsttag.c: (gst_tag_get_flag):
10267         * gst/gsttag.h:
10268           add accessor function
10269
10270 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10271
10272         * docs/gst/gstreamer-sections.txt:
10273         * docs/gst/tmpl/gsttag.sgml:
10274         * docs/gst/tmpl/gstxml.sgml:
10275         * gst/gsttag.c: (gst_tag_get_flag):
10276         * gst/gsttag.h:
10277
10278 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10279
10280         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10281         leak
10282
10283 2004-03-05  David Schleef  <ds@schleef.org>
10284
10285         * REQUIREMENTS: Add bison and flex.
10286         * configure.ac: Fix comment about bison.
10287         * docs/random/ds/0.9-suggested-changes: yer ma
10288         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10289
10290 2004-03-05  Benjamin Otte  <otte@gnome.org>
10291
10292         * gst/gstelement.c: (gst_element_error_full):
10293           revert recent recursive state changing commit - messing with other
10294           elements' states is evil and should be done by apps only.
10295
10296 2004-03-05  Benjamin Otte  <otte@gnome.org>
10297
10298         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10299           check for empty intersection instead of NULL caps
10300         (gst_element_get_compatible_pad_filtered):
10301           remove old workaround that is only a bug nowadays
10302
10303 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10304
10305         * gst/gstelement.c: (gst_element_error_full):
10306           make elements try to recursively change state to PAUSED on all
10307           parents after an error to suppress ensuing warnings
10308         * gst/parse/grammar.y:
10309           make it check if it was able to sync the state, and throw an error
10310           if not, so stuff like
10311           oggdemux ! vorbisdec ! osssink gets caught
10312
10313 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10314
10315         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10316           it contains lib64; use AS_AC_EXPAND to handle it properly
10317
10318 2004-03-05  David Schleef  <ds@schleef.org>
10319
10320         * gst/gstcpuid_i386.s:  Remove unused code
10321         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10322         (gst_getbits_newbuf): Remove MMX code
10323         * libs/gst/getbits/getbits.h: Remove MMX code
10324
10325 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10326
10327         * debian/.cvsignore:
10328         * debian/README.Debian:
10329         * debian/changelog:
10330         * debian/control:
10331         * debian/control.in:
10332         * debian/copyright:
10333         * debian/gstreamer-core-libs-dev.files:
10334         * debian/gstreamer-core-libs.files:
10335         * debian/gstreamer-core.files:
10336         * debian/gstreamer-core.postinst:
10337         * debian/gstreamer-core.postrm:
10338         * debian/gstreamer-doc.files:
10339         * debian/gstreamer-doc.links:
10340         * debian/gstreamer-doc.lintian:
10341         * debian/gstreamer-runtime.files:
10342         * debian/gstreamer-runtime.manpages:
10343         * debian/gstreamer-runtime.postinst:
10344         * debian/gstreamer-runtime.postrm:
10345         * debian/gstreamer-tools.files:
10346         * debian/gstreamer-tools.manpages:
10347         * debian/libgstreamer-dev.files:
10348         * debian/libgstreamer0.4.1.files:
10349         * debian/libgstreamerVERSION.files:
10350         * debian/rules:
10351         Debian package info not maintained here.
10352
10353 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10354
10355         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10356         * gst/gstbin.c: (gst_bin_class_init):
10357         * gst/gstelement.c: (gst_element_class_init):
10358         * gst/gstindex.c: (gst_index_class_init):
10359         * gst/gstobject.c: (gst_object_class_init),
10360         (gst_signal_object_class_init):
10361         * gst/gstpad.c: (gst_pad_template_class_init):
10362         * gst/gstregistry.c: (gst_registry_class_init):
10363         * gst/gsturi.c: (gst_uri_handler_base_init):
10364         * gst/gstxml.c: (gst_xml_class_init):
10365         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10366         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10367           make all signal names use dashes instead of underscore
10368
10369 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10370
10371         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10372
10373 2004-03-03  Benjamin Otte  <otte@gnome.org>
10374
10375         * gst/schedulers/gstoptimalscheduler.c:
10376           revert last commit by Andy Wingo. It causes segfaults on unreffing
10377           in Rhythmbox. (see bug #135672)
10378
10379 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10380
10381         * po/fr.po: fix typo
10382
10383 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10384
10385         * tools/gst-inspect.c: (main): 
10386         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10387
10388 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10389
10390         * configure.ac:
10391           get GLIB_ONLY and POPT flags for the nonversioned binaries
10392         * tools/Makefile.am:
10393           use them
10394
10395 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10396
10397         * gst/gst.c: (init_post):
10398           change so that GST_REGISTRY now is where the global registry gets
10399           saved, since that is where plugins now get attached to first, and
10400           spilled over to the user registry.  Note that in the case of using
10401           GST_REGISTRY env var, we don't want to affect any real registries
10402           beyond the one given by this var, and thus we don't set a user
10403           registry to spill to.  So make sure GST_REGISTRY is writable.
10404
10405 2004-03-01  David Schleef  <ds@schleef.org>
10406
10407         * AUTHORS:  Added some names.  Add yourself if you're missing.
10408
10409 2004-03-01  David Schleef  <ds@schleef.org>
10410
10411         * MAINTAINERS: Add
10412
10413 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10414
10415         * configure.ac:
10416           remove whitespace
10417         * docs/gst/tmpl/gstbuffer.sgml:
10418         * docs/gst/tmpl/gstdata.sgml:
10419         * docs/gst/tmpl/gstreamer-unused.sgml:
10420         * docs/gst/tmpl/gstxml.sgml:
10421           doc update
10422         * docs/manuals.mak:
10423           add a FIXME
10424         * docs/pwg/intro-preface.xml:
10425         * docs/pwg/pwg.xml:
10426           remove GNOME
10427         * gst/gst.c: (init_post):
10428           try GST_PLUGIN_PATH paths for the _global_registry first
10429         * gst/gstelement.h:
10430           add the error message as well, otherwise (null) debug info doesn't
10431           make much sense
10432         * tools/gst-register.c: (main):
10433           spill paths to next registry if this registry is not writable
10434         * po/fr.po:
10435         * po/nl.po:
10436           translation updates
10437
10438 2004-03-01  Johan Dahlin  <johan@gnome.org>
10439
10440         * gst/gstbuffer.c (_gst_buffer_initialize): 
10441         * gst/gstdata.c (gst_data_get_type): 
10442         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10443         instead of ref, since some applications that uses GBoxed
10444         routines depends on a function that actually returns a copy.
10445
10446 2004-02-27  Benjamin Otte  <otte@gnome.org>
10447
10448         * gst/gstbuffer.h:
10449           remove gst_buffer_free, use gst_data_unref
10450         * gst/gstdata.c: (gst_data_get_type):
10451           use refcounting in GstData GBoxed registration
10452         * gst/gstdata.h:
10453           remove gst_data_free, use gst_data_unref
10454
10455 2004-02-27  Johan Dahlin  <johan@gnome.org>
10456
10457         * gst/gstdata.c (gst_data_get_type): New function, register
10458         GstData as a GBoxed type.
10459
10460         * gst/gstdata.h (GST_TYPE_DATA): New macro
10461
10462 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10463
10464         * Makefile.am:
10465         * gstreamer.spec.in:
10466           put back RELEASE
10467         * gst/Makefile.am:
10468           clean up non-disting of built files
10469         * testsuite/debug/commandline.c:
10470           test fix for option rename
10471
10472 2004-02-26  David Schleef  <ds@schleef.org>
10473
10474         * configure.ac:  We don't really need glib-2.3.  Also remove
10475         some unneeded checks for library functions.
10476         * gst/Makefile.am:  Instead, we need to not dist files created
10477         by glib-genmarshal.
10478
10479 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10480
10481         * configure.ac:
10482           bump glib required version to 2.3.0 for g_value_takes_boxed
10483
10484  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10485
10486         * common/m4/gst-docs.m4
10487         change flavour text from enable to disable as enable is our default
10488         closes bug Bug 135304
10489
10490 === release 0.7.5 ===
10491  
10492  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10493  
10494         * NEWS:
10495           instate NEWS file
10496         * Makefile.am:
10497         * gstreamer.spec.in:
10498         * RELEASE:
10499           put back release
10500         * configure.ac:
10501         * docs/random/release:
10502           more updates
10503
10504 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10505
10506         * gst/gsttag.c: (_gst_tag_initialize):
10507         * po/fr.po:
10508         * po/nl.po:
10509           remove hyphen from codec tags
10510
10511 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10512
10513         * gst/parse/Makefile.am:
10514           fix dependency so that a make from a clean build works the first
10515           time
10516
10517 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10518
10519         * docs/random/release:
10520           update release strategy
10521         * po/fr.po:
10522           auto-update po file
10523         * po/nl.po:
10524           update dutch translation
10525
10526 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10527
10528         * docs/manual/debugging.xml:
10529         fix manual for new debugging system
10530
10531 2004-02-25  Andy Wingo  <wingo@pobox.com>
10532
10533         * gst/gstpad.c (gst_pad_link_prepare): Re-add
10534         gst_pad_link_prepare. Please email the list with specific reasons
10535         for reverting.
10536
10537 2004-02-24  Andy Wingo  <wingo@pobox.com>
10538
10539         * gst/gstelement.c (gst_element_dispose): Protect against multiple
10540         invocations.
10541
10542         * gst/schedulers/gstoptimalscheduler.c:
10543         I added a mess of prototypes at the top of the file by way of
10544         documentation. Some of the operations on chains and groups were
10545         re-organized.
10546
10547         (create_group): Added a type argument so if the group is enabled,
10548         the setup_group_scheduler knows what to do.
10549         (group_elements): Added a type argument here, too, to be passed on
10550         to create_group.
10551         (group_element_set_enabled): If an unlinked PLAYING element is
10552         added to a bin, we have to create a new group to hold the element,
10553         and this function will be called before the group is added to the
10554         chain. Thus we have a valid case for group->chain==NULL. Instead
10555         of calling chain_group_set_enabled, just set the flag on the group
10556         (the chain's status will be set when the group is added to it).
10557         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
10558         Setup the group scheduler when the group is enabled, not
10559         specifically when an element goes PAUSED->PLAYING. This means
10560         PLAYING elements can be added, linked, and scheduled into a
10561         PLAYING pipeline, as was intended.
10562         (add_to_group): Don't ref the group twice. I don't know when this
10563         double-ref got in here. Removing it has the potential to cause
10564         segfaults if other parts of the scheduler are buggy. If you find
10565         that the scheduler is segfaulting for you, put in an extra ref
10566         here and see if that hacks over the underlying issue. Of course,
10567         then find out what code is unreffing a group it doesn't own...
10568         (create_group): Make the extra refcount floating, and remove it
10569         after adding the element. This means that...
10570         (unref_group): Destroy when the refcount reaches 0, not 1, like
10571         every other refcounted object in the known universe.
10572         (remove_from_group): When a group becomes empty, set it to be not
10573         active, and remove it from its chain. Don't unref it again,
10574         there's no floating reference any more.
10575         (destroy_group): We have to remove the group from the chain in
10576         remove_from_group (rather than here) to break refcounting cycles
10577         (the chain always has a ref on the group). So assert that
10578         group->chain==NULL.
10579         (ref_group_by_count): Removed, it was commented out anyway.
10580         (merge_chains): Use the remove_from_chain and add_to_chain
10581         primitives to do the reparenting, instead of rolling our own
10582         implementation.
10583         (add_to_chain): The first non-disabled group in the chain's group
10584         list will be the entry point for the chain. Because buffers can
10585         accumulate in loop elements' peer bufpens, we preferentially
10586         schedule loop groups before get groups to avoid unnecessary
10587         execution of get-based groups when the bufpens are already full.
10588         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
10589         (get_group_schedule_function): Ditto.
10590         (loop_group_schedule_function): Ditto.
10591         (gst_opt_scheduler_loop_wrapper): Ditto.
10592         (gst_opt_scheduler_iterate): Ditto.
10593
10594         I understand the opt scheduler now, yippee!
10595
10596         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
10597         (gst_pad_get_name, gst_pad_set_chain_function) 
10598         (gst_pad_set_get_function, gst_pad_set_event_function) 
10599         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
10600         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
10601         (gst_pad_set_query_function, gst_pad_get_query_types) 
10602         (gst_pad_get_query_types_default) 
10603         (gst_pad_set_internal_link_function) 
10604         (gst_pad_set_formats_function, gst_pad_set_link_function) 
10605         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
10606         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
10607         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
10608         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
10609         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
10610         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
10611         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
10612         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
10613         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
10614         (gst_pad_event_default_dispatch, gst_pad_event_default) 
10615         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
10616         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
10617         (gst_pad_get_formats_default, gst_pad_get_formats): Better
10618         argument checks, and some doc fixes.
10619
10620         (gst_pad_custom_new_from_template): Um, does anyone
10621         use these functions? Actually make a custom pad instead of a
10622         normal one.
10623         (gst_pad_try_set_caps): Transpose some checks.
10624         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
10625         the pad is in negotiation.
10626         (gst_pad_try_relink_filtered): Use pad_link_prepare.
10627         
10628         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
10629
10630         * gst/gstelement.h: 
10631         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
10632         on the list.
10633
10634 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10635
10636         * gst/gstbin.c: (gst_bin_add):
10637           add error for not being able to add elements
10638
10639 2004-02-22  Julien MOUTTE <julien@moutte.net>
10640
10641         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
10642         audio-codec and video-codec.
10643
10644 2004-02-22  Benjamin Otte  <otte@gnome.org>
10645
10646         reported by: Padraig O'Briain <padraig.obriain@sun.com>
10647
10648         * autogen.sh:
10649           replace test -e with test -x for mkinstalldirs to be more portable.
10650           (fixes #134816)
10651
10652 2004-02-22  Benjamin Otte  <otte@gnome.org>
10653
10654         * gst/gstpad.c:
10655           revert last patch from Andy, it makes gst_pad_can_link_filtered much
10656           too noisy
10657         * gst/gsttag.c: (_gst_tag_initialize):
10658         * gst/gsttag.h:
10659           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
10660         * libs/gst/control/dparam.c: (gst_dparam_attach):
10661         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
10662           check that types for attached dparams match
10663
10664 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10665
10666         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10667         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10668         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10669           fix errors
10670
10671 2004-02-20  Andy Wingo  <wingo@pobox.com>
10672
10673         * gst/gstbin.c:
10674         * gst/gstbuffer.c:
10675         * gst/gstplugin.c:
10676         * gst/registries/gstxmlregistry.c: 
10677         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
10678
10679         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
10680         (gst_element_add_pad): DEBUG->INFO, some fixes.
10681         (gst_element_get_compatible_pad_template): Just see if the
10682         templates' caps intersect, not if one is a strict subset of the
10683         other. This conforms more to what gst_pad_link_intersect() does.
10684         (gst_element_class_add_pad_template): Don't memcpy the pad
10685         template, just ref it.
10686         (gst_element_get_compatible_pad_filtered): Clean up debug messages
10687
10688         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
10689         (gst_pad_link_filtered): Debug changes.
10690         (gst_pad_link_prepare): New function, consolidated from
10691         can_link_filtered and link_filtered.
10692
10693         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
10694         look more like that of the functions in gstelement.c
10695
10696         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
10697         object, and return the empty string if object is NULL.
10698
10699         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
10700         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
10701         LOG, not DEBUG. We still get flex info on debug.
10702
10703         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
10704         debug string more verbose.
10705         (plugin_times_older_than): DEBUG->LOG.
10706
10707 2004-02-20  Julien MOUTTE <julien@moutte.net>
10708
10709         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
10710         will emit found_tag for each stream they demux with the codec.
10711
10712 2004-02-20  Benjamin Otte  <otte@gnome.org>
10713
10714         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
10715           copy navigation event correctly. Check freeing tag lists. 
10716         * gst/gstthread.c: (gst_thread_change_state):
10717           don't abort() on state changing mess - it might happen because of
10718           bugs.
10719         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
10720           use boxed functions
10721         * gst/gstvalue.h:
10722           fix GST_VALUE_HOLDS_CAPS
10723
10724 2004-02-19  David Schleef  <ds@schleef.org>
10725
10726         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
10727         and use it for GST_FUNCTION.  (bug #134750)
10728
10729 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10730
10731         * po/fr.po:
10732         * po/nl.po:
10733           updating translations
10734
10735 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10736
10737         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
10738
10739 2004-02-18  kost@imn.htwk-leipzig.de
10740
10741         reviewed by: David Schleef  <ds@schleef.org>
10742
10743         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
10744         for libgstcontrol.
10745
10746 2004-02-18  David Schleef  <ds@schleef.org>
10747
10748         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10749         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10750         (gst_dpsmooth_new): Additional fixes to get double dparams working.
10751         * tools/gst-inspect.c: (print_element_info): Support dumping of
10752         double dparam information.
10753
10754 2004-02-17  David Schleef  <ds@schleef.org>
10755
10756         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10757         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
10758         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
10759         Use GST_TYPE_CAPS in signal prototype.
10760         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
10761         Convert GST_TYPE_CAPS to boxed.
10762         * gst/gstelement.c: (gst_element_class_init):
10763         Use GST_TYPE_TAG_LIST in signal prototype.
10764         * gst/gstindex.c: (gst_index_class_init):
10765         * gst/gstindex.h:
10766         Add GST_TYPE_INDEX_ENTRY type.
10767         * gst/gstmarshal.list:
10768         Add necessary marshal types.
10769         * gst/gstpad.c: (gst_real_pad_class_init),
10770         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
10771         (gst_pad_recover_caps_error):
10772         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
10773         * gst/gststructure.c: (_gst_structure_initialize),
10774         (gst_structure_copy), (_gst_structure_copy_conditional):
10775         * gst/gststructure.h:
10776         Convert GST_TYPE_STRUCTURE to boxed.
10777         * gst/gsttag.c: (gst_tag_list_get_type):
10778         * gst/gsttag.h:
10779         Add GST_TYPE_TAG_LIST type.
10780
10781 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10782
10783         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
10784         to what we agreed with david.
10785         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
10786
10787 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10788
10789         * po/nl.po: update translation
10790
10791 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10792
10793         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10794           throw an error if spider is trying to play a mime type there is
10795           no decoder for
10796         * po/POTFILES.in:
10797           add gst/autoplug/gstspider.c for translation
10798
10799 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10800
10801         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
10802         silently when the pad is negotiating.
10803
10804 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10805
10806         * docs/faq/Makefile.am:
10807           add script to run gstreamer uninstalled 
10808         * docs/faq/faq.xml:
10809         * docs/faq/developing.xml:
10810         * docs/faq/gst-uninstalled:
10811           extract script to run gstreamer uninstalled
10812         * docs/manuals.mak:
10813           add EXTRA_SOURCES variable for Makefile.am's to set to
10814           use additional SOURCE files for the doc build
10815
10816 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10817
10818         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
10819
10820 2004-02-15  Julien MOUTTE  <julien@moutte.net>
10821
10822         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
10823         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
10824         an error was thrown by osssink. Basically a state change failure for
10825         an element in a different scheduling group was considered as
10826         successful, which means that caps nego was going on and weird stuff
10827         happened. Like I wrote in the comment there, if someone wants to
10828         revert that please drop me a mail explaining why because I really see
10829         no point in keeping that broken behaviour there.
10830         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
10831         be empty, we then return NULL which will trigger a nice error when 
10832         pulling from the pad.
10833
10834 2004-02-13  David Schleef  <ds@schleef.org>
10835
10836         * libs/gst/control/dparam.c: (gst_dparam_class_init),
10837         (gst_dparam_get_property), (gst_dparam_set_property),
10838         (gst_dparam_do_update_default):
10839         * libs/gst/control/dparam.h:
10840         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10841         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
10842         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
10843         (gst_dpsmooth_do_update_double):
10844         * libs/gst/control/dparam_smooth.h:
10845         * libs/gst/control/dparammanager.c:
10846         (gst_dpman_inline_direct_update):
10847         Add support for double dparams.
10848
10849 2004-02-13  David Schleef  <ds@schleef.org>
10850
10851         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
10852         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
10853
10854 2004-02-13  Mattias Wadman  <mattias@sudac.org>
10855
10856         reviewed by: David Schleef  <ds@schleef.org>
10857
10858         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
10859         (gst_fdsrc_init), (gst_fdsrc_set_property),
10860         (gst_fdsrc_get_property), (gst_fdsrc_get):
10861         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
10862         and sends an EOS event if file descriptor reading times out.
10863
10864 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10865
10866         * configure.ac:
10867           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
10868
10869 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10870
10871         * configure.ac: pass required libxml version as argument
10872         (bug reported by Christophe Fergeau)
10873
10874 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10875   
10876         * docs/gst/gstreamer-docs.sgml:
10877         * docs/gst/tmpl/gstxml.sgml:
10878         * docs/libs/gstreamer-libs-docs.sgml:
10879           version API docs
10880
10881 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10882
10883         * gst/gstinfo.c:
10884         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
10885         (gst_registry_pool_feature_filter):
10886         * gst/gstthread.c: (gst_thread_class_init):
10887         * gst/gstvalue.c:
10888           add includes exposed by building without libxml
10889         * gst/indexers/Makefile.am:
10890           do not build fileindex when LOADSAVE disabled; we should have
10891           a better libxml check later since fileindex depends on xml, not
10892           LOADSAVE or REGISTRY
10893         * libs/gst/control/Makefile.am:
10894           link with m
10895         * tools/Makefile.am:
10896           fix wrong source code for gst-xmlinspect
10897
10898 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10899
10900         * configure.ac:
10901           fix gcov help output
10902           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
10903         * docs/random/release:
10904           some updated releasing notes
10905         * gstreamer.spec.in:
10906           more updates
10907
10908 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10909
10910         * docs/faq/faq.xml:
10911         * docs/manual/manual.xml:
10912         * docs/pwg/pwg.xml:
10913         * docs/pwg/titlepage.xml:
10914           put version in documentation
10915
10916 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10917
10918         * tools/Makefile.am: fix man page installation
10919
10920 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10921
10922         * configure.ac:
10923           don't check for libxml when load/save and registry disabled (#105844)
10924         * gstreamer.spec.in:
10925           sync with fedora candidate spec
10926
10927 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10928
10929         * po/fr.po:
10930         * po/nl.po:
10931           replace multidisksrc with multifilesrc
10932
10933 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10934
10935         * po/POTFILES.in:
10936           update to multidisksrc => multifilesrc file renaming (#134145)
10937
10938 2004-02-11  David Schleef  <ds@schleef.org>
10939
10940         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
10941         * docs/gst/tmpl/gstpadtemplate.sgml: same
10942         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
10943         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
10944         fixing dance.
10945         * gst/gstutils.c: Remove disabled code that uses GstProps.
10946         * gst/registries/gstxmlregistry.h: same
10947         * docs/random/ds/0.9-suggested-changes: random notes
10948
10949 2004-02-11  kost@imn.htwk-leipzig.de
10950
10951         reviewed by: David Schleef  <ds@schleef.org>
10952
10953         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
10954         initialisation of clock (bug #134128)
10955
10956 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10957
10958         * configure.ac:
10959         * gst/elements/Makefile.am:
10960         * gst/elements/gstelements.c:
10961         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
10962         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
10963         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
10964         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
10965         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
10966         * gst/elements/gstmultifilesrc.h:
10967           rename multidisksrc to multifilesrc (part of #122200)
10968
10969 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10970
10971         * docs/manuals.mak:
10972           fix automake complaints
10973         * gst-element-check.m4:
10974           fix unquotedness
10975
10976 2004-02-11  David Schleef  <ds@schleef.org>
10977
10978         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
10979         * gst/gstatomic_impl.h: Disable sparc implementation.
10980
10981 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10982
10983         * gst-element-check.m4:
10984           fix underquoted macros as reported by automake 1.8.x (#133800)
10985         * configure.ac:
10986           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
10987           by autopoint (fixes #132996)
10988
10989 2004-02-10  Andy Wingo  <wingo@pobox.com>
10990
10991         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
10992         way to do inheritance.
10993         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
10994         (gst_pad_get_query_types, gst_pad_get_query_types_default):
10995         Routine docs.
10996         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
10997         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
10998         doc.
10999         (gst_pad_unlink, gst_pad_is_linked): Docs.
11000         (gst_pad_renegotiate): A brief description of capsnego.
11001         (gst_pad_try_set_caps): Document.
11002         (gst_pad_try_set_caps_nonfixed): Document.
11003         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11004         (gst_pad_set_parent): Deprecated (although not out of the API).
11005         (gst_pad_get_parent): Deprecated, although many plugins use this.
11006         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11007         are private and will go away in 0.9.
11008         (gst_pad_perform_negotiate): Doc.
11009         (gst_pad_link_unnegotiate): I think this is meant to be static.
11010         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11011         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11012         (gst_pad_get_peer): Doc updates.
11013         (gst_pad_caps_change_notify): Doc.
11014         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11015         (gst_ghost_pad_new): Doc fixes.
11016
11017         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11018         (gst_object_check_uniqueness): 
11019
11020         * gst/gstelement.c (gst_element_add_pad) 
11021         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11022         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11023         (gst_element_get_static_pad, gst_element_get_pad_list) 
11024         (gst_element_class_get_pad_template_list) 
11025         (gst_element_class_get_pad_template): Work on the docs.
11026         (gst_element_get_pad_template_list): Uses the class method.
11027         (gst_element_get_compatible_pad_template): Docs, and consolidate
11028         some test conditions. 
11029         (gst_element_get_pad_from_template): New static function.
11030         (gst_element_request_compatible_pad): Docs, and work with
11031         non-request compatible templates. 
11032         (gst_element_get_compatible_pad_filtered): Docs and remove
11033         redundant checks.
11034         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11035         (gst_element_link_filtered, gst_element_link_many) 
11036         (gst_element_link, gst_element_link_pads) 
11037         (gst_element_unlink_many): Docs.
11038
11039 2004-02-05  Andy Wingo  <wingo@pobox.com>
11040
11041         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11042         s/pointer/boxed/.
11043
11044         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11045
11046         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11047         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11048         with the type=GST_TYPE_CAPS. This allows language bindings to know
11049         what kind of data they're dealing with.
11050
11051         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11052         to NULL when g_value_init is called. GstCaps, which rolls its own
11053         type implementation, now does the same instead of allocating empty
11054         caps.
11055         (_gst_caps_initialize, _gst_caps_collect_value,
11056         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11057         table methods. This allows G_VALUE_COLLECT to work.
11058
11059 2004-02-05  Andy Wingo  <wingo@pobox.com>
11060
11061         * configure.ac:
11062         * testsuite/Makefile.am (SUBDIRS): 
11063         * testsuite/ghostpads/Makefile.am: 
11064         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11065
11066         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11067         These two routines are the only ones that set
11068         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11069         pad template. They should be made static, depending on ABI needs.
11070         (gst_real_pad_dispose): Handle the case of ghost pads without a
11071         parent. Assert after dealing with ghost pads that the ghost pad
11072         list is empty.
11073         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11074         set after creation.
11075         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11076         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11077         functions. set_property will call add_ghost_pad/remove_ghost_pad
11078         as appropriate.
11079         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11080
11081         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11082         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11083         (gst_element_remove_pad): Handle ghost pads as well.
11084         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11085         depending on API-stability needs).
11086
11087 2004-02-05  Andy Wingo  <wingo@pobox.com>
11088
11089         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11090         of course they're const
11091
11092 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11093
11094         * tools/Makefile.am:
11095         * tools/gst-feedback:
11096         * tools/gst-feedback-0.7:
11097           make gst-feedback versioned too for consistency
11098
11099 2004-02-11  David Schleef  <ds@schleef.org>
11100
11101         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11102         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11103
11104 2004-02-10  Julien MOUTTE <julien@moutte.net>
11105
11106         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11107         the structure does not contain a valid tag list. Adding a safety check
11108         to remove a noisy warning in that case.
11109
11110 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11111
11112         * gst/gst.c: fix name to be in line with others
11113
11114 2004-02-09  Julien MOUTTE <julien@moutte.net>
11115
11116         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11117         not shout that loud when len is 0. Just return 0 silently.
11118
11119 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11120
11121         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11122         because data_unref has one and I prefer the debug to be symetric.
11123         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11124         were refed when added to the queue and unrefed only once when the queue
11125         was flushed. Now the flush handler unref the buffers two times : first
11126         unref for the ref added when pushing in the queue's tail and second
11127         unref to destroy the flushed buffer.
11128
11129 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11130
11131         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11132
11133 2004-02-06  David Schleef  <ds@schleef.org>
11134
11135         * docs/random/ds/0.9-suggested-changes: Random ramblings
11136         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11137         to int before printing.
11138         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11139         * gst/parse/parse.l: same.  See bug #129600
11140
11141 2004-02-06  David Schleef  <ds@schleef.org>
11142
11143         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11144         (gst_index_add_entry), (gst_index_add_associationv),
11145         (gst_index_add_association): Add gst_index_add_associationv()
11146         and clean up gst_index_add_association(). #127133
11147
11148 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11149
11150         * autogen.sh: check out common with right tag if CVS/Tag exists
11151
11152 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11153
11154         * testsuite/ghostpads/ghostpads.c: (main):
11155           fix testsuite from segfaulting
11156
11157 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11158
11159         * Makefile.am: add release target
11160         * configure.ac: bump nano to 1
11161         * docs/random/release:
11162
11163 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11164
11165         * gst/gstcaps.h:
11166         * gst/gstelement.c: (gst_element_base_class_init),
11167         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11168         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11169         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11170         (gst_real_pad_dispose):
11171         * gst/gststructure.c: (gst_structure_free),
11172         (gst_structure_from_string):
11173           put reverted patch back in
11174         * gst/gstelement.c: (gst_element_remove_pad):
11175           free explicit caps if they're set
11176         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11177           copy the structure when fixating
11178
11179 2004-02-05  David Schleef  <ds@schleef.org>
11180
11181         * gst/gstmarshal.list:
11182         * gst/gstpad.c: (gst_real_pad_class_init),
11183         (_gst_real_pad_fixate_accumulator):
11184         Revert POINTER->BOXED change in signal marshaller.
11185
11186 === release 0.7.4 ===
11187                                                                                 
11188 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11189                                                                                 
11190         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11191         * configure.ac: changed for release
11192
11193 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11194
11195         * gstreamer.spec.in:
11196           bump required version of gtk-doc
11197
11198 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11199
11200         * gst/gstcaps.h:
11201         * gst/gstelement.c: (gst_element_base_class_init),
11202         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11203         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11204         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11205         (gst_real_pad_dispose):
11206         * gst/gststructure.c: (gst_structure_free),
11207         (gst_structure_from_string):
11208           revert patch that breaks applications, reapply after release
11209           to get this fixed properly
11210
11211 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11212
11213         * gst/gsttag.c: (_gst_tag_initialize):
11214         * gst/gsttag.h:
11215           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11216
11217 2004-02-04  David Schleef  <ds@schleef.org>
11218
11219         Fix some memleaks:
11220         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11221         (gst_spider_plug_from_srcpad):
11222         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11223
11224 2004-02-04  David Schleef  <ds@schleef.org>
11225
11226         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11227         a GstRealPad before accessing its structure members.
11228
11229 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11230
11231         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11232         (gst_clock_get_speed):
11233         * gst/gstclock.h:
11234           reset padding, remove unused fields
11235
11236 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11237
11238         * gst/autoplug/gstspideridentity.c:
11239         (gst_spider_identity_sink_loop_type_finding):
11240           use get_allowed_caps, not get_caps (fixes #132519)
11241         * gst/elements/gsttypefind.c: (stop_typefinding):
11242           use correct order when sending buffers and seeking
11243
11244 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11245
11246         * configure.ac:
11247         * gst/gstelement.h:
11248         * gst/gstpad.h:
11249         * gst/gstqueue.h:
11250           upgrade libtool CURRENT, reset padding
11251
11252 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11253
11254         * configure.ac:
11255           bump to prerelease
11256           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11257
11258 2004-02-04  David Schleef  <ds@schleef.org>
11259
11260         * docs/random/ds/0.9-suggested-changes: random notes
11261         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11262         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11263         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11264         expansion.
11265         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11266         (gst_filesink_get_query_types): same
11267         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11268         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11269         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11270         to use new GST_PTR_FORMAT.
11271         * gst/gstelement.h: deprecate function factory macros
11272         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11273         These are our last variadic macros that can't be replaced with
11274         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11275         attempting to deprecate gst_element_clock_wait().
11276         * gst/gstevent.h: same
11277         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11278         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11279         * gst/gstpad.h: deprecate function factory macros similar to above.
11280
11281 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11282
11283         * configure.ac:
11284         * tools/Makefile.am:
11285         * tools/gst-run.c: (popt_callback), (hash_print_key),
11286         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11287         (get_candidates), (main):
11288           add new source file to generate non-versioned wrapper binaries
11289           for our tools.
11290
11291 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11292
11293         * gst/gstevent.c: (_gst_event_free):
11294           actually break; inside the switch statement
11295         * gst/parse/grammar.y:
11296           fix memleak where GValues weren't unset
11297
11298 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11299
11300         * gst/gststructure.c: (gst_structure_from_string):
11301           fix huge memleak
11302         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11303         (new_entry), (gst_type_find_element_chain):
11304         * gst/gstelement.c: (gst_element_base_class_init),
11305         (gst_element_class_set_details):
11306         * gst/gstpad.c: (gst_pad_can_link_filtered):
11307           fix smaller memleaks
11308         * gst/gstpad.c: (gst_real_pad_dispose):
11309           check that explicit caps are gone
11310         * gst/gststructure.c: (gst_structure_free):
11311           actually free the structure
11312         * gst/gstelement.c: (gst_element_clear_pad_caps):
11313           unset explicit caps
11314
11315 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11316
11317         * tools/Makefile.am:
11318           use AM_CFLAGS since all the CFLAGS are the same
11319           use AM_LDFAGS
11320
11321 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11322
11323         * docs/manual/gnome.xml:
11324           expand example a little
11325         * gst/gst.c: (gst_init_with_popt_table),
11326         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11327           make sure popt option displays are done with right textdomain
11328           use GstPoptOption type
11329         * gst/gst.h:
11330           create GstPoptOption type
11331
11332 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11333
11334         * gst/gsterror.c: (_gst_stream_errors_init):
11335         * gst/gsterror.h:
11336           adding error type for no codec
11337         * po/POTFILES.in:
11338           add gst-inspect
11339         * po/nl.po:
11340           update dutch translation
11341         * tools/gst-inspect.c: (print_element_list), (main):
11342           do proper internationalization
11343         * tools/gst-launch.c: (idle_func):
11344           remove commented out function call
11345
11346 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11347
11348         * docs/README:
11349           add some error fixing notes
11350         * docs/gst/gstreamer-sections.txt:
11351           remove double entries
11352         * docs/gst/tmpl/gstbin.sgml:
11353         * docs/gst/tmpl/gstclock.sgml:
11354           remove override
11355         * docs/gst/tmpl/gstelement.sgml:
11356         * docs/gst/tmpl/gstindex.sgml:
11357         * docs/gst/tmpl/gstobject.sgml:
11358         * docs/gst/tmpl/gstpadtemplate.sgml:
11359         * docs/gst/tmpl/gstreamer-unused.sgml:
11360         * docs/gst/tmpl/gsttag.sgml:
11361         * docs/gst/tmpl/gstthread.sgml:
11362         * docs/gst/tmpl/gstxml.sgml:
11363         * gst/gsttag.h:
11364           sync header prototypes with c decls
11365         * gst/gsttaginterface.c:
11366           fix doc headers
11367
11368 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11369
11370         * gst/parse/Makefile.am:
11371         * gst/gstobject.h:
11372           get rid of gstmarshal.h dependency. It's not needed.
11373         * gst/gst.h:
11374         * gst/elements/gstfakesink.c:
11375         * gst/elements/gstfakesrc.c:
11376         * gst/elements/gstidentity.c:
11377         * gst/gstbin.c:
11378         * gst/gstelement.c:
11379         * gst/gstindex.c:
11380         * gst/gstobject.c:
11381         * gst/gstpad.c:
11382         * gst/gstthread.c:
11383         * gst/gstxml.c:
11384         * libs/gst/control/dparam.c:
11385         * libs/gst/control/dparammanager.c:
11386           include gstmarshal.h.
11387         Fixes #132045
11388
11389 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11390
11391         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11392         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11393         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11394         * gst/elements/gstfilesrc.h:
11395           don't ref the filesrc when creating mmaped buffers. Don't keep a
11396           list of not-yet-destroyed buffers.
11397         * gst/gstbuffer.h:
11398           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11399
11400 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11401
11402         * gst/gst.c: (init_pre):
11403           remove textdomain
11404
11405 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11406
11407         * docs/pwg/advanced-events.xml:
11408         * docs/pwg/advanced-scheduling.xml:
11409         * docs/pwg/intro-basics.xml:
11410         * docs/pwg/other-manager.xml:
11411         * docs/pwg/other-nton.xml:
11412         * docs/pwg/other-ntoone.xml:
11413         * docs/pwg/other-oneton.xml:
11414         * docs/pwg/pwg.xml:
11415           All sort of documentation... Forgot what. Point is that I want this
11416           in before I leave. The 'other-*' will be the last section and will
11417           explain issues specific to these type of elements.
11418
11419 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11420
11421         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11422         (gst_filesrc_get_read):
11423           set all the values on buffers that we can
11424
11425 2004-02-02  David Schleef  <ds@schleef.org>
11426
11427         Change usage of isblah() to g_ascii_isblah() to be more locale
11428         independent.  (#133076)
11429         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11430         * gst/gstutils.c:
11431         * gst/parse/parse.l:
11432
11433 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11434
11435         reviewed by: David Schleef  <ds@schleef.org>
11436
11437         Fix memory leaks:
11438         * gst/gstcaps.c: (gst_caps_to_string):
11439         * gst/registries/gstxmlregistry.c:
11440         (gst_xml_registry_add_path_list_func),
11441         (gst_xml_registry_parse_padtemplate):
11442
11443 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11444
11445         * gst/gstelement.c: (gst_element_default_error):
11446           suffix error messages with period
11447
11448 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11449
11450         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11451         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11452         * gst/gsterror.c: (gst_error_get_message):
11453           Suffix with dots
11454         * po/fr.po:
11455         * po/nl.po:
11456           Update translation files
11457
11458 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11459
11460         * gst/autoplug/gstspideridentity.c:
11461         (gst_spider_identity_sink_loop_type_finding):
11462         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11463         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11464         (gst_filesink_close_file), (gst_filesink_handle_event),
11465         (gst_filesink_chain):
11466         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11467         (gst_filesrc_get_read), (gst_filesrc_open_file):
11468         * gst/elements/gstidentity.c: (gst_identity_chain):
11469         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11470         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11471         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11472         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11473         * gst/gsterror.c: (_gst_core_errors_init),
11474         (_gst_library_errors_init), (_gst_resource_errors_init),
11475         (_gst_stream_errors_init), (gst_error_get_message):
11476         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11477         (gst_pad_recover_caps_error), (gst_pad_pull):
11478         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11479         * gst/schedulers/gstbasicscheduler.c:
11480         (gst_basic_scheduler_chainhandler_proxy),
11481         (gst_basic_scheduler_gethandler_proxy),
11482         (gst_basic_scheduler_cothreaded_chain):
11483           Suffix error messages with period.
11484           Use (NULL) instead of NULL
11485
11486 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11487
11488         * docs/gst/tmpl/gstelement.sgml:
11489         * docs/gst/tmpl/gstxml.sgml:
11490         * gst/gstelement.c: (gst_element_error_full):
11491           add element path to error
11492
11493 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11494
11495         * docs/random/mimetypes:
11496           update raw int/float info
11497         * gst/gsttag.c: (_gst_tag_initialize):
11498         * gst/gsttag.h:
11499           add GST_TAG_ENCODER
11500
11501 2004-01-30  David Schleef  <ds@schleef.org>
11502
11503         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11504           missing (#132991)
11505
11506 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11507
11508         reviewed by Benjamin Otte 
11509           parts of the patch submitted in bug #113913
11510
11511         * configure.ac:
11512           use AC_C_INLINE. Use = instead of == with test
11513         * examples/plugins/example.c:
11514         * gst/autoplug/gstspideridentity.c:
11515         * gst/elements/gstfdsrc.c:
11516         * gst/elements/gstfilesrc.c:
11517         * gst/elements/gstidentity.c:
11518         * gst/elements/gstmultidisksrc.c:
11519         * gst/elements/gststatistics.c:
11520         * gst/gstelement.c:
11521         * gst/gstobject.c:
11522         * gst/gstpad.c:
11523         * gst/gstpipeline.c:
11524         * gst/gstthread.c:
11525           don't end enums with a comma
11526         * gst/gstindex.c: (gst_index_compare_func):
11527           do explicit casting to gint
11528         * gst/gsttrace.c: (gst_trace_text_flush):
11529           #define strsize as a macro
11530
11531 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11532
11533         * docs/README:
11534         * docs/gst/gstreamer-docs.sgml:
11535         * docs/gst/gstreamer-sections.txt:
11536         * docs/gst/tmpl/gstelement.sgml:
11537         * docs/gst/tmpl/gsterror.sgml:
11538         * docs/gst/tmpl/gstinterface.sgml:
11539         * docs/gst/tmpl/gstreamer-unused.sgml:
11540         * docs/gst/tmpl/gststructure.sgml:
11541         * docs/gst/tmpl/gsttag.sgml:
11542         * docs/gst/tmpl/gsttaginterface.sgml:
11543         * docs/gst/tmpl/gstvalue.sgml:
11544         make sure all API ends up in the built docs
11545         * gst/gstinterface.c:
11546         * gst/gststructure.c: (gst_structure_id_set_value),
11547         (gst_structure_set_value), (gst_structure_id_get_value):
11548         * gst/gststructure.h:
11549         * gst/gstvalue.h:
11550         sync .h with .c declarations
11551
11552 2004-01-30  Julien Moutte  <julien@moutte.net>
11553
11554         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
11555         Ronald will fix riffread.
11556
11557 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11558
11559         * docs/pwg/advanced-interfaces.xml:
11560           Added tuner interface docs.
11561
11562 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11563
11564         * docs/random/mimetypes:
11565           correct Theora information
11566         * gst/gstelement.h:
11567           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
11568
11569 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11570
11571         * gst/gstelement.c: (gst_element_error_full):
11572         * gst/gstelement.h:
11573           GST_ELEMENT_ERROR in enum -> _IN_ERROR
11574
11575 2004-01-29  Julien MOUTTE  <julien@moutte.net>
11576
11577         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11578         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
11579         again and even before DISCONT.
11580         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
11581         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
11582         bytestream so that it's not stopping to fill the bytestream if events
11583         different than EOS or DISCONT are received. Instead it process them so
11584         that they go downstream.
11585
11586 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11587
11588         * docs/gst/tmpl/gstelement.sgml:
11589         * docs/gst/tmpl/gstreamer-unused.sgml:
11590         * docs/gst/tmpl/gstxml.sgml:
11591         * gst/autoplug/gstspideridentity.c:
11592         (gst_spider_identity_sink_loop_type_finding):
11593         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11594         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11595         (gst_filesink_close_file), (gst_filesink_handle_event),
11596         (gst_filesink_chain):
11597         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11598         (gst_filesrc_get_read), (gst_filesrc_open_file):
11599         * gst/elements/gstidentity.c: (gst_identity_chain):
11600         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11601         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11602         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11603         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11604         * gst/gstelement.h:
11605         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11606         (gst_pad_recover_caps_error), (gst_pad_pull):
11607         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11608         * gst/schedulers/gstbasicscheduler.c:
11609         (gst_basic_scheduler_chainhandler_proxy),
11610         (gst_basic_scheduler_gethandler_proxy),
11611         (gst_basic_scheduler_cothreaded_chain):
11612           gst_element_error -> GST_ELEMENT_ERROR
11613
11614 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11615
11616         * docs/Makefile.am:
11617         * docs/gst/tmpl/gstelement.sgml:
11618         * docs/gst/tmpl/gstxml.sgml:
11619         * docs/manuals.mak:
11620         * docs/pwg/advanced-request.xml:
11621         * docs/pwg/advanced-scheduling.xml:
11622         * docs/pwg/advanced-tagging.xml:
11623           fix non-validating docbook using CDATA
11624           make sure make check-local gets run first to check if it validates
11625
11626 2004-01-29  Julien MOUTTE <julien@moutte.net>
11627
11628         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
11629         handling (up and downstream).
11630         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
11631         my_filter thing.
11632
11633 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11634
11635         * docs/pwg/advanced-tagging.xml:
11636           Add docs about tag writing.
11637
11638 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11639
11640         * docs/pwg/advanced-tagging.xml:
11641           Add a part about tag reading and application signalling... Tag
11642           writing still needs to be documented.
11643         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11644           We can set file locations in READY, too.
11645
11646 2004-01-29  Julien MOUTTE <julien@moutte.net>
11647
11648         * docs/random/ds/element-checklist: Adding some notes about src
11649         events.
11650
11651 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11652
11653         * docs/random/mimetypes:
11654           Update docs to point to correct elements for various mimetypes, and
11655           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
11656           <stephane.loeuillet@tiscali.fr>.
11657
11658 2004-01-28  David Schleef  <ds@schleef.org>
11659
11660         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
11661
11662 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11663
11664         * docs/random/mimetypes:
11665           update docs for audio/x-raw-float. Add "buffer-frames=0 means
11666           undefined"
11667         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11668           make it only work in NULL.
11669         * gst/gstcaps.c:
11670           don't posion NULL caps
11671         * gst/gstelement.c: (gst_element_set_time):
11672           add debugging statement
11673         * gst/gstelement.c: (gst_element_emit_found_tag),
11674         (gst_element_found_tag_func), (gst_element_found_tags):
11675         * gst/gstelement.h:
11676           These functions take const taglists
11677         * gst/gstpad.c: (gst_pad_proxy_getcaps):
11678           fix memleak
11679         * gst/gstpad.c: (gst_pad_event_default):
11680           make more effort on handling discont and clocks, g_warn if everything
11681           fails
11682         * gst/gststructure.c: (gst_structure_remove_fields),
11683         (gst_structure_remove_fields_valist):
11684         * gst/gststructure.h:
11685           add gst_structure_remove_fields(_valist)
11686         * gst/gsttag.c:
11687           fix doc glitch
11688
11689 2004-01-28  David Schleef  <ds@schleef.org>
11690
11691         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
11692         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
11693         Fix memory leakage of gst_caps_to_string().
11694
11695         Use GST_PTR_FORMAT instead of gst_caps_to_string():
11696         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
11697         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
11698         (gst_spider_identity_sink_loop_type_finding):
11699         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11700         (find_suggest):
11701         * gst/gstpad.c: (gst_pad_try_relink_filtered),
11702         (gst_pad_set_explicit_caps):
11703         * gst/parse/grammar.y:
11704
11705 2004-01-28  David Schleef  <ds@schleef.org>
11706
11707         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
11708         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
11709         * docs/random/ds/0.9-suggested-changes: Notes from Company.
11710         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
11711         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
11712         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
11713         (gst_debug_log_default), (_gst_info_printf_extension),
11714         (_gst_info_printf_extension_arginfo):  Add printf extension.
11715         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
11716         * gst/gststructure.c: (gst_structure_to_string),
11717         (_gst_structure_parse_value): Use gst_value_deserialize() and
11718         remove old code.
11719         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
11720         (gst_value_deserialize_boolean), (gst_strtoi),
11721         (gst_value_deserialize_int), (gst_value_deserialize_double),
11722         (gst_value_deserialize_string), (gst_value_deserialize): Implement
11723         a bunch of deserialize functions and gst_value_deserialize.
11724         * gst/gstvalue.h: er, _de_serialize, not unserialize
11725         * testsuite/caps/string-conversions.c: (main): We don't currently
11726         handle (float) in caps, so convert these to (double).
11727         * testsuite/debug/Makefile.am: Add new test for the printf extension
11728         * testsuite/debug/printf_extension.c: (main): same
11729
11730 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11731
11732         * docs/random/company/time:
11733           Add some docs about clocking and time
11734
11735 2004-01-28  Julien MOUTTE <julien@moutte.net>
11736
11737         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
11738
11739 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11740
11741         * docs/pwg/advanced-clock.xml:
11742         * docs/pwg/advanced-dparams.xml:
11743         * docs/pwg/advanced-events.xml:
11744         * docs/pwg/advanced-interfaces.xml:
11745         * docs/pwg/advanced-midi.xml:
11746         * docs/pwg/advanced-request.xml:
11747         * docs/pwg/advanced-scheduling.xml:
11748         * docs/pwg/advanced-tagging.xml:
11749         * docs/pwg/advanced-types.xml:
11750         * docs/pwg/appendix-checklist.xml:
11751         * docs/pwg/building-boiler.xml:
11752         * docs/pwg/building-chainfn.xml:
11753         * docs/pwg/building-filterfactory.xml:
11754         * docs/pwg/building-pads.xml:
11755         * docs/pwg/building-props.xml:
11756         * docs/pwg/building-signals.xml:
11757         * docs/pwg/building-state.xml:
11758         * docs/pwg/building-testapp.xml:
11759         * docs/pwg/intro-basics.xml:
11760         * docs/pwg/intro-preface.xml:
11761         * docs/pwg/other-autoplugger.xml:
11762         * docs/pwg/other-sink.xml:
11763         * docs/pwg/other-source.xml:
11764         * docs/pwg/titlepage.xml:
11765           fix up id's
11766
11767 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11768
11769         * docs/95NonPath:
11770         * docs/HACKING:
11771         * docs/README:
11772         * docs/building-the-docs-on-debian:
11773           collect relevant bits of doc info
11774
11775 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11776
11777         * docs/pwg/advanced_tagging.xml:
11778           Half-assed commit so Thomas can re-arrange document IDs here to be
11779           consistent, too.
11780
11781 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11782
11783         * docs/manual/autoplugging.xml:
11784         * docs/manual/bins-api.xml:
11785         * docs/manual/bins.xml:
11786         * docs/manual/buffers-api.xml:
11787         * docs/manual/buffers.xml:
11788         * docs/manual/clocks.xml:
11789         * docs/manual/components.xml:
11790         * docs/manual/cothreads.xml:
11791         * docs/manual/debugging.xml:
11792         * docs/manual/dparams-app.xml:
11793         * docs/manual/dynamic.xml:
11794         * docs/manual/elements-api.xml:
11795         * docs/manual/elements.xml:
11796         * docs/manual/factories.xml:
11797         * docs/manual/gnome.xml:
11798         * docs/manual/goals.xml:
11799         * docs/manual/helloworld.xml:
11800         * docs/manual/helloworld2.xml:
11801         * docs/manual/init-api.xml:
11802         * docs/manual/intro.xml:
11803         * docs/manual/links-api.xml:
11804         * docs/manual/links.xml:
11805         * docs/manual/manual.xml:
11806         * docs/manual/motivation.xml:
11807         * docs/manual/pads-api.xml:
11808         * docs/manual/pads.xml:
11809         * docs/manual/plugins-api.xml:
11810         * docs/manual/plugins.xml:
11811         * docs/manual/programs.xml:
11812         * docs/manual/queues.xml:
11813         * docs/manual/quotes.xml:
11814         * docs/manual/schedulers.xml:
11815         * docs/manual/states-api.xml:
11816         * docs/manual/states.xml:
11817         * docs/manual/threads.xml:
11818         * docs/manual/typedetection.xml:
11819         * docs/manual/xml.xml:
11820           use chapter, part, section or misc as id starts for all bits
11821
11822 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11823
11824         * docs/gst/gstreamer-sections.txt:
11825           Fix up TITLE of the sections
11826
11827 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11828
11829         * docs/pwg/advanced_interfaces.xml:
11830           Add documentation on propertyprobing.
11831         * docs/pwg/advanced_events.xml:
11832         * docs/pwg/advanced_tagging.xml:
11833         * docs/pwg/building_boiler.xml:
11834         * docs/pwg/building_filterfactory.xml:
11835         * docs/pwg/pwg.xml:
11836           Move filterfactory and tagging into their own chapter, add a chapter
11837           on events. all these are empty placeholders that will be filled in
11838           some day.
11839
11840 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11841
11842         * docs/pwg/advanced_interfaces.xml:
11843           Docs for mixer interface. Also a check for website uploading.
11844
11845 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11846
11847         * docs/HACKING:
11848         * docs/Makefile.am:
11849         * docs/faq/Makefile.am:
11850         * docs/gst/Makefile.am:
11851         * docs/gst/tmpl/gstelement.sgml:
11852         * docs/gst/tmpl/gstplugin.sgml:
11853         * docs/gst/tmpl/gstreamer-unused.sgml:
11854         * docs/libs/Makefile.am:
11855         * docs/manual/Makefile.am:
11856         * docs/manuals.mak:
11857         * docs/pwg/Makefile.am:
11858         * docs/upload.mak:
11859           Separate out upload target and make it similar for
11860           both docbook and gtk-doc docs
11861
11862 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11863
11864         * docs/manuals.mak:
11865           Fix upload target to work with freedesktop
11866
11867 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11868
11869         * docs/pwg/advanced_types.xml:
11870           Add notes on creating your own types.
11871         * docs/pwg/building_boiler.xml:
11872         * docs/pwg/building_pads.xml:
11873         * docs/pwg/building_state.xml:
11874           Add some stuff about how to retrieve values from structures, how
11875           that relates to types and change layout slightly again to be almost
11876           perfect.
11877
11878 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11879
11880         * docs/pwg/advanced_dparams.xml:
11881         * docs/pwg/advanced_scheduling.xml:
11882           Change index layout slightly.
11883
11884 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11885
11886         * docs/pwg/advanced_clock.xml:
11887         * docs/pwg/advanced_interfaces.xml:
11888         * docs/pwg/advanced_midi.xml:
11889           General placeholders for now.
11890         * docs/pwg/advanced_request.xml:
11891           Explanation about sometimes and request pads.
11892         * docs/pwg/advanced_scheduling.xml:
11893           Concept of bytestream, loopfunctions and schedulers.
11894         * docs/pwg/building_boiler.xml:
11895           Add something about plugin-init.
11896
11897 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11898
11899         * docs/pwg/building_pads.xml:
11900           Fix broken docbook
11901
11902 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11903
11904         * docs/pwg/advanced_interfaces.xml:
11905         * docs/pwg/pwg.xml:
11906           Add as a placeholder for future filling-in.
11907         * docs/pwg/basics_autoplugging.xml:
11908         * docs/pwg/basics_buffers.xml:
11909         * docs/pwg/basics_elements.xml:
11910         * docs/pwg/basics_events.xml:
11911         * docs/pwg/basics_plugins.xml:
11912         * docs/pwg/basics_types.xml:
11913           Remove, because unused (this is all in intro_basics.xml).
11914         * docs/pwg/building_signals.xml:
11915           Short intro to signals + reference to GObject docs - we really
11916           shouldn't go into these sort of things to deply because we don't
11917           use them that extensively anyway.
11918         * docs/pwg/building_state.xml:
11919           Explanation of states. Benjamin, please check.
11920         * docs/pwg/building_testapp.xml:
11921           Put everything in one page - putting only a few lines of content
11922           per page doesn't really make sense.
11923
11924           Time to get into the advanced topics. ;).
11925
11926 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11927
11928         * docs/pwg/advanced_types.xml:
11929           Finish documenting the current state of mimetypes.
11930         * docs/pwg/building_boiler.xml:
11931         * docs/pwg/building_chainfn.xml:
11932         * docs/pwg/building_pads.xml:
11933         * docs/pwg/building_props.xml:
11934         * docs/pwg/building_testapp.xml:
11935           Start documenting the "how to build a simple audio filter" part
11936           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
11937           states and (maybe?) a short introduction to capsnego in the chapter
11938           on pads (building_pads.xml). Capsnego should probably be explained
11939           fully in advanced_capsnego.xml or so.
11940
11941 2004-01-26  David Schleef  <ds@schleef.org>
11942
11943         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
11944         * gst/gstpad.h: Add new function to allow element to (somewhat)
11945         specify non-fixed caps on a pad.
11946         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
11947         that I added a few weeks ago.
11948
11949 2004-01-26  David Schleef  <ds@schleef.org>
11950
11951         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
11952           making try_set_caps() work with non-fixed caps.
11953
11954 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11955
11956         * docs/pwg/advanced_types.xml:
11957         * docs/pwg/intro_basics.xml:
11958         * docs/pwg/intro_preface.xml:
11959         * docs/pwg/pwg.xml:
11960         * docs/pwg/titlepage.xml:
11961           First try to resurrect the PWG. I'm halfway integrating the mimetypes
11962           in here (docs/random/mimetypes), and will from there on work on both
11963           updating outdated parts and adding missing parts.
11964           That doesn't mean I'll fix it completely, but I'll try at least. ;).
11965
11966 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11967
11968         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
11969           policy is set
11970
11971 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11972
11973         * gst/gstelement.h:
11974           remove gst_element_factory_get_version. It doesn't exist anymore.
11975         * gst/gstplugin.c:
11976         * gst/gstplugin.h:
11977           remove gst_plugin_set_name and change gst_plugin_get_longname to
11978           gst_plugin_get_description to match code.
11979         * gst/gsterror.h:
11980           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
11981         * gst/gstpad.c: (gst_pad_try_set_caps):
11982           make it work with nonfixed caps.
11983           Note that even in the nonfixed case the link function of the pad
11984           that tries to set caps isn't called.
11985
11986 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11987
11988         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11989           fix bug where buffer was not assembled correctly
11990         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
11991           silence by default
11992         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11993           only seek if there's no more buffers that could work without seeking
11994
11995 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11996
11997         * gst/gsttag.c: (_gst_tag_initialize):
11998         * gst/gsttag.h:
11999           Add application tag (for encoding/muxing app).
12000
12001 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12002
12003         * autogen.sh:
12004           make autopoint force, and libtoolize not copy
12005         * common/m4/as-docbook.m4:
12006           added docbook xml catalog setup check
12007         * common/m4/gst-doc.m4:
12008           use docbook check
12009
12010 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12011
12012         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12013         * gst/gsttag.h:
12014           add GstTagFlag
12015
12016 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12017
12018         * docs/gst/gstreamer-sections.txt:
12019         * docs/gst/tmpl/gst.sgml:
12020         * docs/gst/tmpl/gstbuffer.sgml:
12021         * docs/gst/tmpl/gstclock.sgml:
12022         * docs/gst/tmpl/gstelement.sgml:
12023         * docs/gst/tmpl/gstreamer-unused.sgml:
12024         * docs/gst/tmpl/gstxml.sgml:
12025           sync latest API changes to docs
12026
12027 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12028
12029         * gst/gstpluginfeature.c:
12030           fix doc snippet
12031         * tools/gst-inspect.c: (print_element_list):
12032           fix output of typefind
12033           add GPL header
12034         * tools/gst-launch.c:
12035           add GPL header
12036
12037 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12038
12039         * gst/elements/Makefile.am:
12040         * gst/elements/gstelements.c:
12041         * gst/elements/gsttypefindelement.c:
12042         * gst/elements/gsttypefindelement.h:
12043         * po/POTFILES.in:
12044         * po/fr.po:
12045         * po/nl.po:
12046           renamed gsttypefindelement to gsttypefind, conserving CVS history
12047
12048 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12049
12050         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12051         * gst/gsttag.h:
12052           add some tags used in ogg as well
12053           fix _ in replaygain tags
12054
12055 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12056
12057         * gst/gsterror.h:
12058           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12059
12060 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12061
12062         * gst/gstelement.c: (gst_element_error_full):
12063         * gst/gstelement.h:
12064           change _extended to _full
12065
12066 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12067
12068         reviewed by: <delete if not using a buddy>
12069
12070         * docs/gst/tmpl/gst.sgml:
12071         * docs/gst/tmpl/gstbuffer.sgml:
12072         * docs/gst/tmpl/gstclock.sgml:
12073         * docs/gst/tmpl/gstelement.sgml:
12074         * docs/gst/tmpl/gstreamer-unused.sgml:
12075         * docs/gst/tmpl/gstxml.sgml:
12076         * gst/gstelement.c: (gst_element_error_full):
12077         * gst/gstelement.h:
12078
12079 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12080
12081         * gst/gstelement.h: fix _gst_element_error_printf prototype
12082
12083 2004-01-20  David Schleef  <ds@schleef.org>
12084
12085         * gst/gststructure.c: (gst_structure_to_string):
12086         Convert function to use gst_value_serialize().
12087         * gst/gstvalue.c: (gst_value_serialize_list),
12088         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12089         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12090         (gst_value_serialize_int), (gst_value_serialize_double),
12091         (gst_string_wrap), (gst_value_serialize_string),
12092         (gst_value_serialize), (gst_value_deserialize):
12093         * gst/gstvalue.h:
12094         Add implementations for serialize.
12095
12096 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12097
12098         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12099         we want to keep that one in the future or change xvidenc.c to use 
12100         another error.
12101
12102 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12103
12104         * gst/gstelement.c: (_gst_element_error_printf):
12105         * gst/gstelement.h:
12106           privatise function
12107
12108 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12109
12110         * docs/random/error:
12111           doc explaining error system
12112         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12113           cleanup
12114
12115 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12116
12117         * gst/gst-i18n-app.h:
12118         * gst/gst-i18n-lib.h:
12119           remove inclusion of config.h
12120         * po/POTFILES.in:
12121         * po/nl.po:
12122           add gst/gstelement.c
12123
12124 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12125
12126         * po/nl.po: updated Dutch translation
12127
12128 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12129
12130         * gst/gsterror.c: (_gst_core_errors_init),
12131         (_gst_library_errors_init), (_gst_resource_errors_init),
12132         (_gst_stream_errors_init):
12133         remove ending punctuation dots
12134
12135 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12136
12137         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12138         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12139         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12140         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12141         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12142         use GST_ERROR_SYSTEM
12143
12144 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12145
12146         * gst/gstelement.c: (gst_element_error_printf),
12147         (gst_element_error_extended):
12148         * gst/gstelement.h:
12149           add a helper printf function so we can have NULL values passed.
12150
12151 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12152
12153         * gst/gstelement.h:
12154           add G_STMT macros to gst_element_error, which isn't strictly
12155           necessary but people tell me to anyway.
12156
12157 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12158
12159         * gst/Makefile.am:
12160         * gst/autoplug/gstspideridentity.c:
12161         (gst_spider_identity_sink_loop_type_finding):
12162         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12163         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12164         (gst_filesink_close_file), (gst_filesink_handle_event),
12165         (gst_filesink_chain):
12166         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12167         (gst_filesrc_map_region), (gst_filesrc_get_read),
12168         (gst_filesrc_open_file):
12169         * gst/elements/gstidentity.c: (gst_identity_chain):
12170         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12171         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12172         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12173         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12174         * gst/gst.h:
12175         * gst/gst_private.h:
12176         * gst/gstelement.c: (gst_element_class_init),
12177         (gst_element_default_error), (gst_element_error_func),
12178         (gst_element_error_extended):
12179         * gst/gstelement.h:
12180         * gst/gsterror.c: (_gst_core_errors_init),
12181         (_gst_library_errors_init), (_gst_resource_errors_init),
12182         (_gst_stream_errors_init), (gst_error_get_message):
12183         * gst/gsterror.h:
12184         * gst/gstinfo.c: (_gst_debug_init):
12185         * gst/gstmarshal.list:
12186         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12187         (gst_pad_recover_caps_error), (gst_pad_pull):
12188         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12189         * gst/schedulers/gstbasicscheduler.c:
12190         (gst_basic_scheduler_chainhandler_proxy),
12191         (gst_basic_scheduler_gethandler_proxy),
12192         (gst_basic_scheduler_cothreaded_chain):
12193         * po/POTFILES.in:
12194         * po/fr.po:
12195         * po/nl.po:
12196           change error signal
12197           add error categories
12198
12199 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12200
12201         * gst/gsttag.c: (_gst_tag_initialize):
12202         * gst/gsttag.h:
12203         Add replaygain tag
12204
12205 2004-01-18  Colin Walters  <walters@verbum.org>
12206
12207         * examples/retag/retag.c: Call gst_init before processing
12208         program args.  Add g_assert to _link_many call.
12209
12210 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12211
12212         * gst/gstpad.c: (gst_pad_alloc_buffer):
12213           Return a newly allocated buffer when the pad has no peer.
12214
12215 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12216
12217         * gst/gstclock.c: (gst_clock_get_time):
12218           make it compile with gcc 2.95 again.
12219           Patch by Scott Wheeler
12220
12221 2004-01-15  David Schleef  <ds@schleef.org>
12222
12223         * gst/gstcaps.h:
12224         Added gst_caps_is_simple() macro.
12225         * testsuite/caps/caps.c: (test1):
12226         * testsuite/caps/intersect2.c: (main):
12227         * testsuite/caps/intersection.c: (main):
12228         Fixes to make 'make check' work again after removing
12229         gst_caps_is_chained().
12230
12231 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12232
12233         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12234         and additions to the MIDI document.
12235
12236 2004-01-15  David Schleef  <ds@schleef.org>
12237
12238         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12239         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12240         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12241
12242 2004-01-15  David Schleef  <ds@schleef.org>
12243
12244         * gst/gstqueue.c:
12245         * gst/gstqueue.h:
12246         Fix the spelling of "treshold" and make min_threshold actually
12247         affect the queue.
12248
12249 2004-01-15  David Schleef  <ds@schleef.org>
12250
12251         * gst/gstcaps.c:
12252         Add lots of documentation.
12253         * gst/gstcaps.h:
12254         Deprecate a few functions.
12255         * gst/gstpad.c:
12256         Removed use of deprecated functions.
12257
12258 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12259
12260         * gst/gstpad.c: (gst_pad_is_linked):
12261         * gst/gstpad.h:
12262           implement gst_pad_is_linked
12263         * gst/gstelement.h:
12264           reserve space for initiate_state_change
12265
12266 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12267
12268         * gst/autoplug/gstspideridentity.c:
12269         (gst_spider_identity_sink_loop_type_finding):
12270           break infinite loop by just returning instead of looping
12271         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12272           set event time difference correctly. Set it to 1 second instead
12273           of 100ms to be more tolerant
12274         * gst/gstelement.c: (gst_element_set_time):
12275           add debugging output
12276
12277 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12278
12279         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12280           query if buffers are inside the pool, ignore events
12281
12282 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12283
12284         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12285         (gst_clock_set_speed), (gst_clock_set_active),
12286         (gst_clock_is_active), (gst_clock_reset),
12287         (gst_clock_handle_discont):
12288         * gst/gstclock.h:
12289           deprecate old interface and disable functions that aren't in use
12290           anymore.
12291         * gst/gstelement.h:
12292         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12293         (gst_element_set_time), (gst_element_adjust_time):
12294           add concept of "element time" and functions to get/set this time.
12295         * gst/gstelement.c: (gst_element_change_state):
12296           update element time correctly.
12297         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12298           This is a debug message, not a g_critical.
12299         * gst/gstpad.c: (gst_pad_event_default):
12300           handle discontinuous events right with element time.
12301         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12302           update to clocking fixes.
12303           set clocks on elements in READY=>PAUSED. The old behaviour caused
12304           a wrong element time on the first element that started playing.
12305         * gst/schedulers/gstbasicscheduler.c:
12306         (gst_basic_scheduler_class_init):
12307         * gst/schedulers/gstoptimalscheduler.c:
12308         (gst_opt_scheduler_class_init):
12309           remove code that just implements the default behaviour.
12310         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12311           update to use new clocking functions
12312         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12313         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12314           update to test new element time.
12315         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12316           use _get_allowed_caps instead of _get_caps. This catches filtered
12317           caps correctly.
12318         * testsuite/debug/commandline.c:
12319           update for new GST_DEBUG syntax.
12320         * testsuite/threads/Makefile.am:
12321           disable a test that only works sometimes.
12322
12323 2004-01-13  Julien MOUTTE <julien@moutte.net>
12324
12325         * po/LINGUAS: Adding fr.
12326         * po/fr.po: Adding french translation.
12327
12328 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12329
12330         * gst/parse/grammar.y:
12331         * po/POTFILES.in:
12332         * po/nl.po:
12333         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12334           translate parsing error messages
12335
12336 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12337
12338         * po/POTFILES.in: adding gst-launch
12339         * po/nl.po: updated translation, all 99 strings translated
12340         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12341         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12342           fix strings for translation
12343
12344 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12345
12346         * gst/gst.c:
12347           - capitalize beginnings of popt options
12348           - fix strings for translation
12349           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12350
12351 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12352
12353         * po/README: add some notes on how to update translations
12354
12355 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12356
12357         * ABOUT-NLS: removed, is autogenerated from autopoint
12358         * autogen.sh: add autopoint stuff
12359         * configure.ac: fix up gettext stuff
12360         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12361         * gst/elements/gsttypefindelement.c: add header include
12362         * gst/gettext.h: add header, copy from system-installed header
12363         * gst/gst-i18n-app.h: to be included by each app having translations
12364         * gst/gst-i18n-lib.h: to be included by each lib having translations
12365         * gst/gst.c: (init_pre): fix up gettext calls
12366         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12367         * po/LINGUAS: the new way to specify translations present
12368         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12369         * po/Makevars: the variables filled in for GStreamer
12370         * po/POTFILES.in: added new files with translations
12371         * po/de.po: has new strings
12372         * po/nl.po: readded, has new strings
12373
12374 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12375
12376         * gst/gsttag.c: fix some strings marked for translation
12377
12378 2004-01-13  Iain <iain@prettypeople.org>
12379
12380         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12381         group when we add an element to it, cos we unref it when we remove one
12382
12383 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12384
12385         * testsuite/debug/commandline.c: (debug_not_reached):
12386         * testsuite/debug/output.c: (check_message):
12387           fix testsuite
12388
12389 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12390
12391         * examples/cutter/.cvsignore:
12392         * examples/helloworld/.cvsignore:
12393         * examples/launch/.cvsignore:
12394         * examples/manual/.cvsignore:
12395         * examples/mixer/.cvsignore:
12396         * examples/pingpong/.cvsignore:
12397         * examples/plugins/.cvsignore:
12398         * examples/queue/.cvsignore:
12399         * examples/queue2/.cvsignore:
12400         * examples/queue3/.cvsignore:
12401         * examples/queue4/.cvsignore:
12402         * examples/retag/.cvsignore:
12403         * examples/thread/.cvsignore:
12404         * examples/typefind/.cvsignore:
12405         * examples/xml/.cvsignore:
12406         * gst/.cvsignore:
12407         * gst/autoplug/.cvsignore:
12408         * gst/elements/.cvsignore:
12409         * gst/indexers/.cvsignore:
12410         * gst/parse/.cvsignore:
12411         * gst/registries/.cvsignore:
12412         * gst/schedulers/.cvsignore:
12413         * libs/gst/bytestream/.cvsignore:
12414         * libs/gst/control/.cvsignore:
12415         * libs/gst/getbits/.cvsignore:
12416         * tests/.cvsignore:
12417         * tests/bufspeed/.cvsignore:
12418         * tests/instantiate/.cvsignore:
12419         * tests/memchunk/.cvsignore:
12420         * tests/muxing/.cvsignore:
12421         * tests/sched/.cvsignore:
12422         * tests/seeking/.cvsignore:
12423         * tests/threadstate/.cvsignore:
12424         * testsuite/.cvsignore:
12425         * testsuite/caps/.cvsignore:
12426         * testsuite/cleanup/.cvsignore:
12427         * testsuite/dynparams/.cvsignore:
12428         * testsuite/plugin/.cvsignore:
12429         * tools/.cvsignore:
12430           update - this is huge, because it includes *.bb, *.bbg and *.da files
12431           which are generated for gcov.
12432
12433 2004-01-11  David Schleef  <ds@schleef.org>
12434
12435         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12436         a function to parse integers in ways that strto[u]l() does not.
12437
12438 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12439
12440         * tools/gst-inspect.c: (print_caps):
12441           improve output of caps a bit
12442
12443 2004-01-11  David Schleef  <ds@schleef.org>
12444
12445         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12446         inherit correct flags (READONLY and DONTKEEP).
12447
12448 2004-01-11  David Schleef  <ds@schleef.org>
12449
12450         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12451         (gst_filesrc_map_region):
12452         * gst/gstbuffer.c: (_gst_buffer_initialize),
12453         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12454         (gst_buffer_new), (gst_buffer_create_sub),
12455         (gst_buffer_is_span_fast), (gst_buffer_span):
12456         * gst/gstbuffer.h:
12457         Change GstBuffer private structure element names. (all files)
12458         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12459         (gst_queue_link):
12460         * gst/gstqueue.h:
12461         Implement getcaps/pad_link functions that handle the case where
12462         there are data in the queue.
12463
12464 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12465
12466         * gst/elements/gstbufferstore.c:
12467           initialize debugging structure correctly
12468         * gst/elements/gsttee.c: (gst_tee_set_property):
12469           g_object_notify when property was changed
12470         * gst/elements/gsttypefindelement.c:
12471         (gst_type_find_element_change_state):
12472           clear caps correctly
12473
12474 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12475
12476         * gst/gstqueue.c: (gst_queue_init):
12477           Use better defaults for when a queue should block. This
12478           gets rid of jerky playback for quite a few files.
12479           It takes more memory.
12480
12481 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12482
12483         (gst_xml_registry_parse_padtemplate):
12484           make critical message slightly more useful
12485
12486 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12487
12488         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12489         (gst_debug_message_get), (gst_debug_log_default):
12490         * gst/gstinfo.h:
12491           Change gst_debug_log(_valist) to take a const format string.
12492           Change prototype of log function and functions using those to 
12493           take a GstDebugMessage instead of a string that requires using
12494           gst_debug_message_get.
12495
12496 2004-01-08  David Schleef  <ds@schleef.org>
12497
12498         * Makefile.am:
12499         * configure.ac:
12500         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12501         and -ftest-coverage, which allows gcov to show information about
12502         testsuite coverage.
12503
12504 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12505
12506         * gst/gstutils.h:
12507           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12508           GST_PARENT_CALL_WITH_DEFAULT
12509         * gst/elements/gstaggregator.c: 
12510         * gst/elements/gstbufferstore.c: 
12511         * gst/elements/gstfakesink.c: 
12512         * gst/elements/gstfakesrc.c: 
12513         * gst/elements/gstfdsink.c: 
12514         * gst/elements/gstfdsrc.c: 
12515         * gst/elements/gstfilesink.c: 
12516         * gst/elements/gstfilesrc.c: 
12517         * gst/elements/gstidentity.c: 
12518         * gst/elements/gstmd5sink.c: 
12519         * gst/elements/gstmultidisksrc.c:
12520         * gst/elements/gstpipefilter.c: 
12521         * gst/elements/gstshaper.c:
12522         * gst/elements/gststatistics.c:
12523         * gst/elements/gsttee.c:
12524         * gst/elements/gsttypefindelement.c:
12525           use them.
12526
12527 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
12528
12529         * docs/gst/gstreamer-docs.sgml: remove props
12530         * docs/gst/gstreamer-sections.txt: remove props
12531         * docs/gst/tmpl/gst.sgml:
12532         * docs/gst/tmpl/gstbin.sgml:
12533         * docs/gst/tmpl/gstbuffer.sgml:
12534         * docs/gst/tmpl/gstcaps.sgml:
12535         * docs/gst/tmpl/gstclock.sgml:
12536         * docs/gst/tmpl/gstelement.sgml:
12537         * docs/gst/tmpl/gstindex.sgml:
12538         * docs/gst/tmpl/gstobject.sgml:
12539         * docs/gst/tmpl/gstpad.sgml:
12540         * docs/gst/tmpl/gstpadtemplate.sgml:
12541         * docs/gst/tmpl/gstreamer-unused.sgml:
12542         * docs/gst/tmpl/gstthread.sgml:
12543         * docs/gst/tmpl/gstxml.sgml:
12544           sync with code reorganization
12545
12546 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
12547
12548         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12549         Make the 'Could not find compatible pad' message more informative.
12550
12551 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12552                                                                                 
12553         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
12554           Fix for if we pass NULL as property to location.
12555         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
12556         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
12557           Fix for instantiate-test (see below).
12558         * gst/gststructure.c: (_gst_structure_parse_value):
12559           Fix compile error on gcc-2.96.
12560         * configure.ac:
12561         * tests/Makefile.am:
12562         * tests/instantiate/Makefile.am:
12563         * tests/instantiate/create.c: (create_all_elements), (main):
12564           Add a test that instantiates all elements. This makes it easy to
12565           track dead code for old API/design (like setting event functions
12566           on sink pads and so on).
12567
12568 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
12569
12570         * gst/gstcaps.c: (gst_caps_append_structure):
12571           Move the poisoning to allow a NULL structure
12572         * gst/gstevent.c: (_gst_event_free):
12573           When freeing a navigation event, free the structure
12574           also
12575
12576 2004-01-04  David Schleef  <ds@schleef.org>
12577
12578         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12579         Remove usage of gst_pad_proxy_fixate.
12580         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
12581         (gst_caps_split_one), (gst_caps_replace):
12582         Add poisoning code.
12583         * gst/gstmarshal.list:
12584         Add pointer__pointer for fixate signal
12585         * gst/gstpad.c: (gst_real_pad_class_init),
12586         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12587         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
12588         (gst_pad_set_explicit_caps), (gst_pad_template_new):
12589         Add poisoning code. Add fixate signal on RealPad. Change
12590         set_explicit_caps() to take const GstCaps, like try_set_caps().
12591         * gst/gstpad.h:
12592         * testsuite/caps/Makefile.am:
12593         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
12594
12595 2004-01-03  David Schleef  <ds@schleef.org>
12596
12597         * gst/elements/gsttypefindelement.c:
12598         (gst_type_find_element_have_type), (gst_type_find_element_init):
12599         Use gst_pad_use_explicit_caps for src pad.
12600         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
12601         before using it.
12602
12603 2004-01-03  David Schleef  <ds@schleef.org>
12604
12605         * gst/gstelement.c: (gst_element_link_pads_filtered),
12606         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
12607         that linking was successful.
12608         * gst/gstpad.c: (gst_pad_link_free),
12609         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
12610         (gst_pad_link_try), (gst_pad_link_unnegotiate),
12611         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
12612         GstPadLinkReturn correctly between functions, and don't fail
12613         when DELAYED is used (DELAYED is very important).  Better
12614         cleanup on unlinking and unnegotiation.  Should fix some spider
12615         bugs.
12616
12617 2004-01-02  David Schleef  <ds@schleef.org>
12618
12619         * gst/gstelement.c: (gst_element_class_init),
12620         (gst_element_base_class_init): ->padtemplates should be cleared
12621         in base_init, since we need to have a fresh list for every
12622         class.  (Alternately, we chould copy the list and share the
12623         actual pad templates (not the list), but that would require
12624         changing every plugin to move pad template registration from
12625         base_init to class_init.)
12626
12627 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12628
12629         * gst/gstelement.c: (gst_element_class_add_pad_template):
12630           Refuse registering a pad template if another pad template
12631           with the same name already exists (#114715).
12632
12633 2004-01-02  David Schleef  <ds@schleef.org>
12634
12635         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
12636         (gst_caps_is_equal_fixed): Add new function.
12637         * gst/gstcaps.h: ditto.
12638         * gst/gstpad.c: (gst_real_pad_class_init),
12639         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
12640         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
12641         check new caps against existing caps -- if they're the same, return
12642         OK without renegotiating.  caps-nego-failed signal fixed so that
12643         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
12644         to save an extra caps copy.  Don't complete negotiation if a pad
12645         link function returns DELAYED.
12646
12647 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12648
12649         * gst/gstpad.c: (gst_pad_try_relink_filtered):
12650           Fix wrong g_return_if_fail
12651
12652 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
12653
12654         * gst/gstbin.c: (gst_bin_class_init):
12655         Change the marshalling of element_added/element_removed
12656         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
12657         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
12658
12659 2004-01-01  David Schleef  <ds@schleef.org>
12660
12661         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12662         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
12663         (gst_pad_use_explicit_caps):
12664         * gst/gstpad.h:
12665         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
12666         to use an internal getcaps and link fuction so that negotiation
12667         always results in the explicitly set caps.
12668         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
12669         are particularly useful for decoders.
12670
12671 2003-12-31  David Schleef  <ds@schleef.org>
12672
12673         * gst/elements/gstidentity.c: (gst_identity_class_init),
12674         (gst_identity_init), (gst_identity_chain),
12675         (gst_identity_set_property), (gst_identity_get_property):
12676         * gst/elements/gstidentity.h:
12677         * gst/gstqueue.c: (gst_queue_init):
12678           Negotiation fixes.
12679
12680 2003-12-31  David Schleef  <ds@schleef.org>
12681
12682         * gst/gstcaps.c: (gst_caps_intersect),
12683         (_gst_caps_normalize_foreach), (gst_caps_normalize):
12684           Implement gst_caps_normalize().
12685         * testsuite/caps/normalisation.c: (main):
12686           Add an additional test
12687
12688 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12689
12690         * gst/gstqueue.c: (gst_queue_init):
12691           use gst_pad_proxy_getcaps()
12692
12693 2003-12-31  David Schleef  <ds@schleef.org>
12694
12695         * gst/elements/gstshaper.c: (gst_shaper_link):
12696         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12697         * gst/gstqueue.c: (gst_queue_link):
12698           Negotiation fixes.
12699
12700 2003-12-31  David Schleef  <ds@schleef.org>
12701
12702         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
12703         * gst/gstpad.h: Add functions that are useful as default pad
12704         link and fixate functions for elements.
12705
12706 2003-12-30  David Schleef  <ds@schleef.org>
12707
12708         * gst/gstpad.c: (gst_pad_link_try):
12709           Fix segfault when attempting to return to old caps
12710
12711 2003-12-29  David Schleef  <ds@schleef.org>
12712
12713         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
12714         (gst_caps_structure_simplify), (gst_caps_simplify):
12715         * gst/gstcaps.h:
12716           Add simplify function
12717         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
12718         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
12719         * gst/gstpad.h:
12720           Copy over srcnotify, sinknotify when calling old pad_link
12721           functions.  Add new is_negotiated() function.
12722         * gst/gststructure.c: (gst_structure_copy):
12723           Fix an incredibly stupid bug that should have been noticed
12724           weeks ago.  _copy() returned the argument, not the new copy.
12725
12726 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12727
12728         * gst/gstcaps.c: (gst_caps_append):
12729           add sanity checks
12730         * gst/gstcaps.h: (gst_caps_debug):
12731           remove, it doesn't exist anymore.
12732         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
12733         (gst_element_threadsafe_properties_post_run):
12734           make debugging messages not clutter up THREAD debug category
12735         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
12736         (gst_element_change_state):
12737           update to new caps API
12738         * gst/gstinterface.c: (gst_implements_interface_cast):
12739           don't put vital code in g_return_if_fail
12740         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
12741         (gst_pad_link_filtered):
12742           add pst_pad_try_link and use it.
12743         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
12744           implement correctly, deprecate first one.
12745         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
12746           add and implement.
12747         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
12748           implement.
12749         (gst_pad_get_negotiated_caps):
12750           add and implement. Make GST_PAD_CAPS call this function.
12751         (gst_pad_get_caps):
12752           remove unneeded check..
12753         (gst_pad_recover_caps_error):
12754           disable, always return FALSE.
12755         (gst_real_pad_dispose):
12756           don't free caps and appfilter anymore, they're unused.
12757         * gst/gstpad.h:
12758           Reflect changes mentioned above.
12759         * gst/gstsystemclock.c: (gst_system_clock_wait):
12760           Make 'clock is way behind' a debugging message.
12761         * gst/gstthread.c: (gst_thread_change_state):
12762           Fix debugging message
12763
12764 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12765
12766         * gst/gstinfo.h:
12767           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
12768         * docs/gst/tmpl/gstreamer-unused.sgml:
12769           removed all traces of cvs conflicts
12770
12771 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12772
12773         * configure.ac:
12774         * gst/schedulers/cothreads_compat.h:
12775         * libs/Makefile.am:
12776           remove last instances of wingo cothread usage
12777
12778 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12779
12780         * gst/gstplugin.c:
12781         * gst/gstversion.h.in:
12782         * gst/parse/grammar.y:
12783           change comment block from /** to /* when not gtk-doc comments
12784
12785 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12786
12787         * gst/gst.c: whitespace and doc style fixes
12788
12789 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12790
12791         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
12792
12793 2003-12-24  Colin Walters  <walters@verbum.org>
12794
12795         * gst/elements/gsttypefindelement.c:
12796           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
12797           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
12798           Don't double-free caps.
12799
12800 2003-12-23  David Schleef  <ds@schleef.org>
12801
12802         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
12803           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
12804           Many little fixes and additions of debug statements to
12805           get rhythmbox working.
12806
12807 2003-12-23  Colin Walters  <walters@verbum.org>
12808
12809         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
12810         Use GST_PAD_LINK_SUCCESSFUL.
12811
12812 2003-12-23  David Schleef  <ds@schleef.org>
12813
12814         * gst/elements/gstaggregator.c:
12815         * gst/elements/gsttee.c:
12816           Use gst_pad_proxy_getcaps().
12817         * gst/gstpad.c:
12818         * gst/gstpad.h:
12819           Add gst_pad_proxy_getcaps(), which filter elements can use
12820           as a generic getcaps implementation.
12821           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
12822           was advertised.
12823
12824 2003-12-23  David Schleef  <ds@schleef.org>
12825
12826         * gst/gstpad.c:
12827           Rearrange/rewrite much of the pad negotiation code, since it
12828           resembled pasta.  This actually changes the way some
12829           negotiation works, since the previous code was inconsistent
12830           depending on how it was invoked.  Add (internal) structure
12831           GstPadLink, which is used to hold some information (more in
12832           the future) about the link between two pads.  Fixes a number
12833           of bugs, including random lossage of filter caps when the
12834           initial negotiation is delayed.  A few functions are still
12835           unimplemented.
12836         * gst/gstpad.h:
12837           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
12838           these when testing GstPadLinkReturn values instead of comparing
12839           directly.
12840
12841 2003-12-23  David Schleef  <ds@schleef.org>
12842
12843         * gst/gstvalue.c: 
12844         * gst/gstvalue.h:
12845           Rearrange lots of code.  Change registration of compare function
12846           into registration of compare/serialize/deserialize functions.
12847           Doesn't include implementation of gst_value_[de]serialize(),
12848           but that should be easy.
12849
12850 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12851
12852         * docs/gst/gstreamer-sections.txt:
12853         * docs/gst/tmpl/gstprops.sgml: removed
12854         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
12855           David removed props and caps code, so let's remove their docs as well.
12856           Removed all no longer existing symbols from gstreamer-sections.txt
12857           
12858 2003-12-22  Colin Walters  <walters@verbum.org>
12859
12860         * gst/gsttaginterface.c, gst/gsttaginterface.h,
12861           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
12862           of tags directly.
12863
12864 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12865
12866         * gst/elements/gstelements.c:
12867           Set ranks of elements to NONE, so the autoplugger doesn't use them.
12868         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
12869           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
12870           gst_caps (peer).
12871
12872 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12873
12874         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
12875         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
12876         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
12877         (gst_spider_identity_sink_loop_type_finding):
12878         * gst/autoplug/gstspideridentity.h:
12879           Fix autoplugging in spider element, so it works with new caps.
12880           This was mainly caused by identifying empty caps incorrectly.
12881
12882 2003-12-22  David Schleef  <ds@schleef.org>
12883
12884         * gststructure.c, gstvalue.c, gstvalue.h: Add
12885           gst_value_init_and_copy() and use it, to avoid silly mistakes in
12886           using g_value_copy()
12887
12888 2003-12-21  David Schleef  <ds@schleef.org>
12889
12890         * many, many files: Merge CAPS branch.  This includes:
12891           - implemention of GstValue and several GstValue types
12892           - implemention of GstStructure
12893           - entire rewrite of GstCaps
12894           - removal of GstProps
12895           - many changes to GstPad to compensate for new caps paradigm
12896           - removal of GstBufferpool
12897         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
12898         gstvalue.h, gst/gstcaps[2]*.[ch]:
12899           - rename gstcaps2.[ch] to gstcaps.[ch]
12900
12901 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12902
12903         * gst/gstqueue.c: (gst_queue_handle_pending_events),
12904         (gst_queue_chain), (gst_queue_handle_src_event):
12905           implement timeout for sending events. Workaround for if the
12906           pipeline on this queue is not passing any data.
12907
12908 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
12909                                                                                 
12910         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
12911         * moved CVS to freedesktop.org
12912