gst/parse/parse.l: Attempt to solve bug #172815.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-19  Andy Wingo  <wingo@pobox.com>
2
3         * gst/parse/parse.l: Attempt to solve bug #172815.
4
5 2005-07-19  Wim Taymans  <wim@fluendo.com>
6
7         * docs/design/part-clocks.txt:
8         * docs/design/part-events.txt:
9         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
10         Small docs updates.
11         Only update the seeking values when we are not
12         busy streaming.
13
14 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
15
16         * gst/base/gstbasesrc.c: (gst_base_src_loop):
17           Oops, ignore the result of gst_pad_push_event here.
18
19 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
20
21         * gst/base/gstbasesrc.c: (gst_base_src_loop),
22         (gst_base_src_activate_push):
23           Send discont event from the loop function, as pads
24           aren't activated yet in the activate_push handler.
25
26         * gst/gstbin.c: (bin_bus_handler):
27           Don't leak element name.
28
29 2005-07-18  Andy Wingo  <wingo@pobox.com>
30
31         * configure.ac: Use AS_LIBTOOL_TAGS.
32
33 2005-07-18  Wim Taymans  <wim@fluendo.com>
34
35         * docs/gst/gstreamer.types:
36         Remove deleted types.
37
38 2005-07-18  Wim Taymans  <wim@fluendo.com>
39
40         * check/elements/gstfakesrc.c: (GST_START_TEST):
41         * configure.ac:
42         * gst/Makefile.am:
43         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
44         (init_popt_callback):
45         * gst/gst.h:
46         * gst/gst_private.h:
47         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
48         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
49         * gst/gstbin.h:
50         * gst/gstbus.h:
51         * gst/gstconfig.h.in:
52         * gst/gstelement.c: (gst_element_class_init),
53         (gst_element_set_base_time), (gst_element_get_base_time),
54         (iterator_fold_with_resync), (gst_element_change_state),
55         (gst_element_dispose), (gst_element_get_bus):
56         * gst/gstelement.h:
57         * gst/gstelementfactory.h:
58         * gst/gsterror.c: (_gst_core_errors_init):
59         * gst/gsterror.h:
60         * gst/gstevent.h:
61         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
62         * gst/gstindex.c:
63         * gst/gstinfo.c: (_gst_debug_init):
64         * gst/gstmessage.c: (_gst_message_copy):
65         * gst/gstmessage.h:
66         * gst/gstminiobject.h:
67         * gst/gstobject.c:
68         * gst/gstobject.h:
69         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
70         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
71         * gst/gstpad.h:
72         * gst/gstparse.h:
73         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
74         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
75         (gst_pipeline_get_last_stream_time):
76         * gst/gstpipeline.h:
77         * gst/gstpluginfeature.h:
78         * gst/gstquery.h:
79         * gst/gstscheduler.c:
80         * gst/gstscheduler.h:
81         * gst/gststructure.h:
82         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
83         (gst_task_finalize), (gst_task_func), (gst_task_create),
84         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
85         (gst_task_stop), (gst_task_pause):
86         * gst/gsttask.h:
87         * gst/gsttypefind.h:
88         * gst/gsttypes.h:
89         * gst/registries/gstlibxmlregistry.c: (load_feature),
90         (gst_xml_registry_load), (gst_xml_registry_save_feature):
91         * gst/registries/gstxmlregistry.c:
92         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
93         * gst/schedulers/threadscheduler.c:
94         * libs/gst/control/dparammanager.h:
95         * tools/gst-inspect.c: (print_element_list),
96         (print_plugin_features), (print_element_features):
97         * tools/gst-xmlinspect.c: (print_element_list),
98         (print_plugin_info), (main):
99         Removed plugable schedulers.
100         Removed Scheduler/Manager from elements.
101         Removed gsttypes.h, rearranged includes.
102         Removed dependency pad<->element, element<>pipeline, and
103         various others,  fix includes.
104         implement gst_pad_get_parent() with gst_object_get_parent()
105         Make GstTask sefcontained.
106         Fix _get_state() on GstBin, it did not return ASYNC with a 0
107         timeout.
108         Fix endless loop in iterator_fold_with_resync.
109
110
111 2005-07-18  Wim Taymans  <wim@fluendo.com>
112
113         * gst/Makefile.am:
114         * gst/gstarch.h:
115         Remove old file.
116
117 2005-07-18  Wim Taymans  <wim@fluendo.com>
118
119         * gst/Makefile.am:
120         No more cothreads.h
121
122 2005-07-18  Wim Taymans  <wim@fluendo.com>
123
124         * gst/cothreads.c:
125         * gst/cothreads.h:
126         Let's remove these.
127
128 2005-07-18  Wim Taymans  <wim@fluendo.com>
129
130         * docs/design/part-dynamic.txt:
131         * docs/design/part-events.txt:
132         * docs/design/part-seeking.txt:
133         Some more docs in the works.
134
135         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
136         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
137         (gst_base_transform_setcaps), (gst_base_transform_get_size),
138         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
139         (gst_base_transform_handle_buffer),
140         (gst_base_transform_sink_activate_push),
141         (gst_base_transform_src_activate_pull),
142         (gst_base_transform_set_passthrough),
143         (gst_base_transform_is_passthrough):
144         Refcounting fixes.
145
146         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
147         Cleanups.
148
149         * gst/gstevent.c: (gst_event_finalize):
150         Set SRC to NULL.
151
152         * gst/gstutils.c: (gst_element_unlink),
153         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
154         (gst_pad_proxy_setcaps):
155         * gst/gstutils.h:
156         Add _get_parent_element() to get a pads parent as an element.
157
158 2005-07-18  Wim Taymans  <wim@fluendo.com>
159
160         * check/gst/gstbin.c: (GST_START_TEST):
161         Remove bogus test.
162
163 2005-07-18  Wim Taymans  <wim@fluendo.com>
164
165         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
166         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
167         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
168         (gst_base_sink_event), (gst_base_sink_do_sync),
169         (gst_base_sink_chain), (gst_base_sink_loop),
170         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
171         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
172         Refcounting fixes.
173         Fix logic for returning ASYNC when not prerolled.
174
175 2005-07-18  Wim Taymans  <wim@fluendo.com>
176
177         * gst/gstqueue.c: (gst_queue_handle_sink_event):
178         Fix nasty refcount bug.
179
180 2005-07-16 Philippe Khalaf <burger@speedy.org>
181         * gst/elements/gstfdsrc.c:
182         * gst/elements/gstfdsrc.h:
183         * gst/elements/gstelements.c:
184         * gst/elements/Makefile.am:
185         Ported fdsrc to 0.9.
186
187 2005-07-16  Wim Taymans  <wim@fluendo.com>
188
189         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
190         (gst_base_sink_do_sync):
191         Fix compile error.
192
193 2005-07-16  Wim Taymans  <wim@fluendo.com>
194
195         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
196         (gst_base_sink_event), (gst_base_sink_get_times),
197         (gst_base_sink_do_sync), (gst_base_sink_change_state):
198         * gst/base/gstbasesink.h:
199         Store and use discont values when syncing buffers as described
200         in design docs.
201         
202         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
203         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
204         (gst_base_src_activate_push):
205         Push discont event when starting.
206
207         * gst/elements/gstidentity.c: (gst_identity_transform):
208         Small cleanups.
209
210         * gst/gstbin.c: (gst_bin_change_state):
211         Small cleanups in base_time  distribution.
212
213         * gst/gstelement.c: (gst_element_set_base_time),
214         (gst_element_get_base_time), (gst_element_change_state):
215         * gst/gstelement.h:
216         Added methods for the base_time of the element.
217         Some MT fixes.
218
219         * gst/gstpipeline.c: (gst_pipeline_send_event),
220         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
221         (gst_pipeline_get_last_stream_time):
222         * gst/gstpipeline.h:
223         MT fixes.
224         Handle seeking as described in design doc, remove stream_time
225         hack.
226         Cleanups clock and stream_time selection code. Added accessors
227         for the stream_time.
228         
229
230 2005-07-16  Andy Wingo  <wingo@pobox.com>
231
232         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
233         (#305291).
234
235 2005-07-16  Wim Taymans  <wim@fluendo.com>
236
237         * check/gst/gstbin.c: (GST_START_TEST):
238         Make elements silent as the deep_notify refs the
239         parent, which might make the test fail.
240
241         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
242         Don't hold the lock for too long.
243
244 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
245
246         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
247           Don't unref the caps we passed to gst_caps_make_writable() after
248           passing them. gst_caps_make_writable() will do that for us.
249
250 2005-07-15  Andy Wingo  <wingo@pobox.com>
251
252         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
253         (#157311).
254
255         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
256         own marshalling function for the handoff signal. Properly type the
257         buffer as a buffer. Fixes some warnings. Should do a more general
258         solution.
259         (gst_identity_class_init): Plug into the right marshaller.
260
261 2005-07-15  Wim Taymans  <wim@fluendo.com>
262
263         * docs/design/part-TODO.txt:
264         * docs/design/part-clocks.txt:
265         * docs/design/part-element-sink.txt:
266         * docs/design/part-events.txt:
267         * docs/design/part-gstpipeline.txt:
268         Updated docs, mostly DISCONT related.
269
270 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
271
272         * docs/pwg/building-pads.xml:
273           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
274
275 2005-07-15  Andy Wingo  <wingo@pobox.com>
276
277         * tools/gst-typefind.c: Update, add copyright block.
278
279         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
280         Normalize and truncate caps before fixation.
281
282         * gst/gstcaps.h:
283         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
284         discards all but the first structure from its argument.
285
286 2005-07-15  Wim Taymans  <wim@fluendo.com>
287
288         * gst/base/gstbasetransform.c: (gst_base_transform_init),
289         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
290         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
291         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
292         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
293         (gst_base_transform_chain), (gst_base_transform_change_state),
294         (gst_base_transform_set_passthrough),
295         (gst_base_transform_is_passthrough):
296         * gst/base/gstbasetransform.h:
297         Make passthrough work using the bufferpools.
298         Changed API a bit, subclasses have to write into a buffer
299         provided by the base class.
300         More debug info in nego functions.
301         
302         * gst/elements/gstidentity.c: (gst_identity_init),
303         (gst_identity_transform):
304         Port to new base class.
305
306 2005-07-15  Wim Taymans  <wim@fluendo.com>
307
308         * gst/gstmessage.c: (gst_message_new_state_changed):
309         * tools/gst-launch.c: (event_loop), (main):
310         Totally dump messages in -launch with the -m option.
311         Fix message name for State messages,
312
313 2005-07-14  Wim Taymans  <wim@fluendo.com>
314
315         * gst/base/gstbasesrc.c: (gst_base_src_loop):
316         Post error messages on errors.
317
318 2005-07-14  Wim Taymans  <wim@fluendo.com>
319
320         * gst/gstcaps.c: (gst_caps_do_simplify):
321         Remove debug info.
322
323         * gst/gsterror.h:
324         Define error for stream stopped.
325
326         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
327         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
328         Do proper return values.
329
330         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
331         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
332         (gst_pad_get_range):
333         Better return values.
334
335         * gst/gstpad.h:
336         Reorganise return values, add macro to check for fatal errors.
337
338         * gst/gstqueue.c: (gst_queue_chain):
339         Return proper GstFlowReturn values,
340
341 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
342
343         * docs/gst/gstreamer-sections.txt:
344         * docs/gst/gstreamer.types:
345         * docs/gst/tmpl/gst.sgml:
346         * docs/gst/tmpl/gstbasesink.sgml:
347         * docs/gst/tmpl/gstbasesrc.sgml:
348         * docs/gst/tmpl/gstbasetransform.sgml:
349         * docs/gst/tmpl/gstbin.sgml:
350         * docs/gst/tmpl/gstbuffer.sgml:
351         * docs/gst/tmpl/gstcaps.sgml:
352         * docs/gst/tmpl/gstclock.sgml:
353         * docs/gst/tmpl/gstcompat.sgml:
354         * docs/gst/tmpl/gstconfig.sgml:
355         * docs/gst/tmpl/gstelement.sgml:
356         * docs/gst/tmpl/gstelementdetails.sgml:
357         * docs/gst/tmpl/gstelementfactory.sgml:
358         * docs/gst/tmpl/gstenumtypes.sgml:
359         * docs/gst/tmpl/gsterror.sgml:
360         * docs/gst/tmpl/gstevent.sgml:
361         * docs/gst/tmpl/gstfakesink.sgml:
362         * docs/gst/tmpl/gstfakesrc.sgml:
363         * docs/gst/tmpl/gstfilesink.sgml:
364         * docs/gst/tmpl/gstfilesrc.sgml:
365         * docs/gst/tmpl/gstfilter.sgml:
366         * docs/gst/tmpl/gstformat.sgml:
367         * docs/gst/tmpl/gstghostpad.sgml:
368         * docs/gst/tmpl/gstimplementsinterface.sgml:
369         * docs/gst/tmpl/gstindex.sgml:
370         * docs/gst/tmpl/gstindexfactory.sgml:
371         * docs/gst/tmpl/gstinfo.sgml:
372         * docs/gst/tmpl/gstiterator.sgml:
373         * docs/gst/tmpl/gstmacros.sgml:
374         * docs/gst/tmpl/gstmemchunk.sgml:
375         * docs/gst/tmpl/gstminiobject.sgml:
376         * docs/gst/tmpl/gstobject.sgml:
377         * docs/gst/tmpl/gstpad.sgml:
378         * docs/gst/tmpl/gstpadtemplate.sgml:
379         * docs/gst/tmpl/gstparse.sgml:
380         * docs/gst/tmpl/gstpipeline.sgml:
381         * docs/gst/tmpl/gstplugin.sgml:
382         * docs/gst/tmpl/gstpluginfeature.sgml:
383         * docs/gst/tmpl/gstquery.sgml:
384         * docs/gst/tmpl/gstqueue.sgml:
385         * docs/gst/tmpl/gstregistry.sgml:
386         * docs/gst/tmpl/gstregistrypool.sgml:
387         * docs/gst/tmpl/gstscheduler.sgml:
388         * docs/gst/tmpl/gstschedulerfactory.sgml:
389         * docs/gst/tmpl/gststructure.sgml:
390         * docs/gst/tmpl/gstsystemclock.sgml:
391         * docs/gst/tmpl/gsttaglist.sgml:
392         * docs/gst/tmpl/gsttagsetter.sgml:
393         * docs/gst/tmpl/gsttrace.sgml:
394         * docs/gst/tmpl/gsttrashstack.sgml:
395         * docs/gst/tmpl/gsttypefind.sgml:
396         * docs/gst/tmpl/gsttypefindfactory.sgml:
397         * docs/gst/tmpl/gsttypes.sgml:
398         * docs/gst/tmpl/gsturihandler.sgml:
399         * docs/gst/tmpl/gsturitype.sgml:
400         * docs/gst/tmpl/gstutils.sgml:
401         * docs/gst/tmpl/gstvalue.sgml:
402         * docs/gst/tmpl/gstversion.sgml:
403         * docs/gst/tmpl/gstxml.sgml:
404         * docs/libs/tmpl/gstcontrol.sgml:
405         * docs/libs/tmpl/gstdataprotocol.sgml:
406         * docs/libs/tmpl/gstdparam.sgml:
407         * docs/libs/tmpl/gstdplinint.sgml:
408         * docs/libs/tmpl/gstdpman.sgml:
409         * docs/libs/tmpl/gstdpsmooth.sgml:
410         * docs/libs/tmpl/gstgetbits.sgml:
411         * docs/libs/tmpl/gstunitconvert.sgml:
412         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
413         (gst_push_src_base_init), (gst_push_src_class_init),
414         (gst_push_src_init), (gst_push_src_create):
415         * gst/base/gstpushsrc.h:
416         * gst/elements/gstelements.c:
417         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
418         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
419         (gst_fake_sink_init), (gst_fake_sink_set_property),
420         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
421         (gst_fake_sink_event), (gst_fake_sink_preroll),
422         (gst_fake_sink_render), (gst_fake_sink_change_state):
423         * gst/elements/gstfakesink.h:
424         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
425         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
426         (gst_fake_src_base_init), (gst_fake_src_class_init),
427         (gst_fake_src_init), (gst_fake_src_event_handler),
428         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
429         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
430         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
431         (gst_fake_src_create_buffer), (gst_fake_src_create),
432         (gst_fake_src_start), (gst_fake_src_stop):
433         * gst/elements/gstfakesrc.h:
434         * gst/elements/gstfilesink.c: (_do_init),
435         (gst_file_sink_base_init), (gst_file_sink_class_init),
436         (gst_file_sink_init), (gst_file_sink_dispose),
437         (gst_file_sink_set_location), (gst_file_sink_set_property),
438         (gst_file_sink_get_property), (gst_file_sink_open_file),
439         (gst_file_sink_close_file), (gst_file_sink_query),
440         (gst_file_sink_event), (gst_file_sink_render),
441         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
442         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
443         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
444         * gst/elements/gstfilesink.h:
445         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
446         (gst_file_src_class_init), (gst_file_src_init),
447         (gst_file_src_finalize), (gst_file_src_set_location),
448         (gst_file_src_set_property), (gst_file_src_get_property),
449         (gst_file_src_map_region), (gst_file_src_map_small_region),
450         (gst_file_src_create_mmap), (gst_file_src_create_read),
451         (gst_file_src_create), (gst_file_src_is_seekable),
452         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
453         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
454         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
455         (gst_file_src_uri_handler_init):
456         * gst/elements/gstfilesrc.h:
457           more autistic cleanliness in functions/names/defines
458
459 2005-07-13  Andy Wingo  <wingo@pobox.com>
460
461         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
462         source couldn't negotiate.
463
464         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
465         connections again.
466
467         * gst/gstutils.h:
468         * gst/gstutils.c (gst_element_link_pads_filtered): New old
469         function. I am channeling Hades. Put your boots on suckers!!!
470
471 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
472
473         * testsuite/caps/Makefile.am:
474         * testsuite/caps/value_compare.c:
475         * testsuite/caps/value_intersect.c:
476         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
477           move two testsuite apps over to the check dir
478
479 2005-07-12  Wim Taymans  <wim@fluendo.com>
480
481         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
482         Added more debug info in the negotiate process.
483
484         * gst/gstmessage.h:
485         Prepare for segment playback.
486
487         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
488         Better debugging.
489
490         * gst/gstutils.c:
491         Some more docs.
492
493         * tools/gst-launch.c: (main):
494         NULL pipeline on errors.
495
496 2005-07-12  Andy Wingo  <wingo@pobox.com>
497
498         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
499         not it comes from a malloc region. Make sure our copy gets freed.
500
501 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
502
503         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
504         * check/gst/gstmessage.c: (GST_START_TEST):
505         * check/gst/gststructure.c: (GST_START_TEST),
506         (gst_structure_suite), (main):
507           more testing
508         * gst/gstelement.c: (gst_element_message_full):
509           clean up GError and debug string now that they get copied
510         * gst/gstmessage.c: (gst_message_new_error),
511         (gst_message_new_warning), (gst_message_parse_error),
512         (gst_message_parse_warning):
513           use GST_TYPE_G_ERROR for structure_new, and take copies of
514           arguments, so that we don't mess up refcounting
515
516 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
517
518         * check/Makefile.am:
519           add per-test valgrind targets
520         * check/gst-libs/gdp.c: (GST_START_TEST),
521         (gst_data_protocol_suite), (main):
522           clean up
523
524 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
525
526         * check/Makefile.am:
527           instate more valgrindable tests
528         * check/elements/gstfakesrc.c: (chain_func), (event_func),
529         (GST_START_TEST), (fakesrc_suite):
530         * check/gst/gstpad.c: (GST_START_TEST):
531         * check/gst/gststructure.c: (GST_START_TEST):
532           fix test leaks
533         * docs/gst/tmpl/gstminiobject.sgml:
534         * gst/gstpad.c: (gst_pad_finalize):
535           fix the static mutex leak
536
537 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
538
539         * check/Makefile.am:
540           add two more tests for valgrinding
541         * check/gst/gstvalue.c: (GST_START_TEST):
542           test refcount of deserialized buffer, found a leak
543         * docs/gst/gstreamer-docs.sgml:
544         * docs/gst/gstreamer-sections.txt:
545         * docs/gst/gstreamer.types:
546         * docs/gst/tmpl/gstminiobject.sgml:
547           add miniobject to docs
548         * gst/gstminiobject.c:
549           add some docs
550         * gst/gstvalue.c: (gst_value_deserialize_buffer),
551         (gst_string_unwrap):
552           fix a hard-to-find invalid write for one of the tests
553           fix a leak for deserialized buffers
554
555 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
556
557         * docs/pwg/advanced-events.xml:
558         * docs/pwg/advanced-request.xml:
559         * docs/pwg/advanced-scheduling.xml:
560         * docs/pwg/appendix-porting.xml:
561         * docs/pwg/building-boiler.xml:
562         * docs/pwg/intro-preface.xml:
563         * docs/pwg/other-ntoone.xml:
564           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
565           of example code and explanation for pad activation, loop() and
566           getrange() functions and a bit more. Remove old comments pointing
567           to loop-functions.
568         * examples/pwg/Makefile.am:
569           Add loop/getrange examples.
570
571 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
572
573         * configure.ac:
574           check for valgrind binary + some fixes
575         * check/gst.supp:
576           valgrind suppressions for the tests
577         * check/Makefile.am:
578           add a valgrind: target that valgrinds the unit tests
579         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
580         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
581         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
582         * check/gst/gstghostpad.c:
583           added some cleanup
584         * check/gst/gstdata.c:
585           removed
586         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
587         (thread_unref), (gst_mini_object_suite), (main):
588           added
589         * gst/gst.c: (gst_deinit):
590         * gst/gst.h:
591           add a method to clean up.
592         * gst/gstsystemclock.c: (gst_system_clock_dispose),
593         (gst_system_clock_obtain):
594           allow for disposing the system clock.
595         * tools/gst-launch.c: (main):
596           deinit
597
598 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
599
600         * docs/gst/tmpl/gstbasesrc.sgml:
601         * docs/gst/tmpl/gstfakesrc.sgml:
602         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
603         (gst_base_src_init), (gst_base_src_set_property),
604         (gst_base_src_get_property), (gst_base_src_get_range),
605         (gst_base_src_start):
606         * gst/base/gstbasesrc.h:
607           add num-buffers property
608         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
609         (gst_fakesrc_init), (gst_fakesrc_set_property),
610         (gst_fakesrc_get_property), (gst_fakesrc_create),
611         (gst_fakesrc_start):
612           remove num-buffers property
613
614 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
615
616         * docs/gst/gstreamer-sections.txt:
617         * docs/gst/tmpl/gstbasesink.sgml:
618         * docs/gst/tmpl/gstbasesrc.sgml:
619         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
620         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
621         (gst_base_sink_finalize), (gst_base_sink_set_clock),
622         (gst_base_sink_set_property), (gst_base_sink_get_property),
623         (gst_base_sink_handle_object), (gst_base_sink_event),
624         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
625         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
626         (gst_base_sink_loop), (gst_base_sink_deactivate),
627         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
628         (gst_base_sink_change_state):
629         * gst/base/gstbasesink.h:
630         * gst/base/gstbasesrc.h:
631         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
632         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
633         (gst_filesink_init):
634           more macro splitting
635
636 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
637
638         * gst/gstelement.c: (gst_element_get_bus):
639           add debug
640         * tools/gst-launch.c: (check_intr), (event_loop):
641           fix bus leaks
642
643 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
644
645         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
646           fix a caps leak
647
648 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
649
650         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
651         (gst_base_src_finalize):
652           add finalize method and clean up properly
653         * gst/gstpipeline.c: (gst_pipeline_dispose):
654           add debug
655
656 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
657
658         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
659         (gst_bin_suite):
660           add more things to check
661         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
662         * gst/gstelement.c:
663           more debug
664
665 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
666
667         * check/elements/gstfakesrc.c: (chain_func), (event_func),
668         (GST_START_TEST), (fakesrc_suite):
669         * check/gst-libs/gdp.c: (GST_START_TEST):
670         * check/gst/gst.c: (GST_START_TEST):
671         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
672         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
673         * check/gst/gstbus.c: (GST_START_TEST):
674         * check/gst/gstcaps.c: (GST_START_TEST):
675         * check/gst/gstdata.c: (GST_START_TEST):
676         * check/gst/gstelement.c: (GST_START_TEST):
677         * check/gst/gstghostpad.c: (GST_START_TEST):
678         * check/gst/gstiterator.c: (GST_START_TEST):
679         * check/gst/gstmessage.c: (GST_START_TEST):
680         * check/gst/gstobject.c: (GST_START_TEST):
681         * check/gst/gstpad.c: (GST_START_TEST):
682         * check/gst/gststructure.c: (GST_START_TEST):
683         * check/gst/gstsystemclock.c: (GST_START_TEST),
684         (gst_systemclock_suite):
685         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
686         * check/gst/gstvalue.c: (GST_START_TEST):
687         * check/pipelines/cleanup.c: (GST_START_TEST):
688         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
689         * check/states/sinks.c: (GST_START_TEST):
690         * check/gstcheck.c: (gst_check_init):
691         * check/gstcheck.h:
692           add debugging category
693           use GST_START_TEST now, so we add a debug line
694
695 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
696
697         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
698           add test for state change message on a bin
699         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
700           add another test
701         * gst/gstbin.c: (gst_bin_init):
702         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
703         * gst/gstelement.c: (gst_element_post_message),
704         (gst_element_set_state):
705         * gst/gstelementfactory.c: (gst_element_factory_create):
706         * gst/gstmessage.c: (gst_message_new):
707         * gst/gstscheduler.c:
708           various debugging additions and cleanups
709
710 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
711
712         * check/Makefile.am:
713         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
714         (main):
715           adding tests for elements
716         * gst/gstelement.c: (gst_element_dispose):
717
718 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
719
720         * gst/registries/gstlibxmlregistry.c: (load_feature):
721           plug more leaks.  A simple gst_init() now is leakfree, yay.
722
723 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
724
725         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
726         (gst_xml_registry_load):
727           plug another memleak
728
729 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
730
731         * configure.ac:
732           use GST_SET_ERROR_CFLAGS
733         * docs/faq/cvs.xml:
734           change to ERROR_CFLAGS
735
736 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
737
738         * configure.ac:
739           make GST_ERROR_CFLAGS overridable and re-enable Werror
740         * docs/faq/cvs.xml:
741           add a note about error CFLAGS
742         * docs/gst/tmpl/gstfakesrc.sgml:
743         * gst/elements/gstfakesrc.c:
744           comment out some unused code
745         * gst/gst.c: (split_and_iterate):
746         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
747         (load_feature):
748           plug some memleaks
749
750 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
751
752         * common/Makefile.am:
753         * common/gtk-doc.mak:
754         * docs/gst/Makefile.am:
755           factor out gtk-doc.mak
756
757 2005-07-07  Wim Taymans  <wim@fluendo.com>
758
759         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
760         (gst_thread_scheduler_dispose):
761         Unlock the STREAM_LOCK completely.
762
763 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
764
765         * check/Makefile.am:
766         * check/elements/.cvsignore:
767         * check/elements/gstfakesrc.c: (chain_func), (event_func),
768         (START_TEST), (fakesrc_suite), (main):
769         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
770         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
771         (gst_fakesrc_create), (gst_fakesrc_start):
772         * gst/elements/gstfakesrc.h:
773           adding a first element test
774
775 2005-07-07  Andy Wingo  <wingo@pobox.com>
776
777         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
778         debug message.
779
780 2005-07-07  Wim Taymans  <wim@fluendo.com>
781
782         * gst/gstquery.c:
783         * gst/gstquery.h:
784         Remove old types
785
786 2005-07-07  Wim Taymans  <wim@fluendo.com>
787
788         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
789         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
790         Allow subclasses to implement their own negotiation.
791
792 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
793
794         * docs/design/part-gstbin.txt:
795         * docs/design/part-gstpipeline.txt:
796           Update design notes to reflect the movement of
797           responsibility for bus handling from GstPipeline to
798           GstBin
799
800 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
801
802         * configure.ac:
803           Remove unnecessary queue2/3/4 examples.
804
805 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
806
807         * examples/Makefile.am:
808         * examples/helloworld/helloworld.c: (event_loop), (main):
809         * examples/queue/queue.c: (event_loop), (main):
810         * examples/queue2/queue2.c: (main):
811           Update a couple of the examples to work again.
812
813         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
814         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
815          Spelling corrections and extra debug.
816         
817         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
818         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
819         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
820         * gst/gstbin.h:
821         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
822         (gst_pipeline_change_state):
823         * gst/gstpipeline.h:
824           Move the bus handler for children to the GstBin, and create a
825           separate bus for receiving messages from children to the one the
826           bus sends 'upwards' on.
827
828 2005-07-06  Wim Taymans  <wim@fluendo.com>
829
830         * gst/base/README:
831         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
832         (gst_base_sink_handle_object), (gst_base_sink_loop),
833         (gst_base_sink_change_state):
834         * gst/base/gstbasesink.h:
835         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
836         (gst_base_src_init), (gst_base_src_setcaps),
837         (gst_base_src_getcaps), (gst_base_src_loop),
838         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
839         (gst_base_src_start), (gst_base_src_change_state):
840         * gst/base/gstbasesrc.h:
841         Make basesrc negotiate.
842         Handle the case where preroll fails in basesink.
843         Update README.
844
845 2005-07-06  Wim Taymans  <wim@fluendo.com>
846
847         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
848         Implement the fixate function.
849         Clean up acceptcaps.
850
851 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
852
853         * docs/pwg/building-filterfactory.xml:
854         * docs/pwg/pwg.xml:
855           Remove never-written filter-factory chapter; I'll add the various
856           base classes to part 4 ("other element types") later on.
857
858 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
859
860         * docs/pwg/advanced-negotiation.xml:
861         * docs/pwg/building-boiler.xml:
862         * docs/pwg/building-pads.xml:
863         * docs/pwg/pwg.xml:
864         * examples/pwg/Makefile.am:
865           Add a chapter on caps negotiation, simplify the original code
866           samples a bit w.r.t. caps negotiation, add link to the advanced
867           section. Add a bunch of examples showing different use cases of
868           different types of caps negotiation. Upstream renegotiation isn't
869           fully documented yet since nobody knows how that works.
870
871 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
872
873         * check/gst/gstpad.c:
874         * check/gstcheck.c:
875         * gst/gstpad.c: (gst_pad_get_internal_links_default):
876           if pad has no parent, return NULL as list of internal links
877
878 2005-07-05  Andy Wingo  <wingo@pobox.com>
879
880         * gst/elements/gstfilesrc.c:
881         * gst/elements/gstfakesrc.c: 
882         * gst/base/gstpushsrc.c:
883         * gst/base/gstbasesrc.h: 
884         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
885         
886 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
887
888         * Makefile.am:
889           better report generation target (lcov needs a patch)
890
891 2005-07-05  Andy Wingo  <wingo@pobox.com>
892
893         * gst/elements, testsuite: Null if we got it...
894
895 2005-07-05  Wim Taymans  <wim@fluendo.com>
896
897         * configure.ac:
898         * libs/gst/dataprotocol/Makefile.am:
899         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
900         * libs/gst/dataprotocol/dataprotocol.h:
901         * pkgconfig/Makefile.am:
902         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
903         * pkgconfig/gstreamer-dataprotocol.pc.in:
904         Ported dataprotol to 0.9. 
905         Added pkgconfig files.
906
907 2005-07-05  Andy Wingo  <wingo@pobox.com>
908
909         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
910         Default to returning TRUE for the case when tranform_caps returns
911         a fixed caps, like for identity or volume.
912
913         * check/gst/gstbus.c (pound_bus_with_messages): 
914         * check/gst/gstmessage.c (START_TEST): 
915         * check/pipelines/simple_launch_lines.c (got_handoff): Application
916         message API change.
917
918         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
919         logic weaks here: always run transform_caps, trying passthrough
920         operation only if the original caps intersects with the transform.
921
922         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
923         source and sink caps.
924
925         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
926         Intersect the peer caps with the pad template before going into
927         transform_caps.
928         (gst_base_transform_transform_caps): More debugging.
929
930         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
931         src argument.
932
933 2005-07-04  Edward Hervey  <edward@fluendo.com>
934
935         * gst/gstutils.c:
936         * gst/gstutils.h:
937         (gst_pad_add_*_probe): now returns the signal id for better wrapping
938         in bindings.
939
940 2005-07-04  Andy Wingo  <wingo@pobox.com>
941
942         * check/gst/gstpad.c: Only set explicit caps on pads.
943
944 2005-07-01  Andy Wingo  <wingo@pobox.com>
945
946         * tests/network-clock.scm: Commentary update.
947
948         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
949         Didn't really make sense, not implementable with basetransform,
950         etc.
951         (gst_identity_transform): Unref inbuf via make_writable. Feeble
952         attempt at implementing the sync property, needs an unlock method.
953
954         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
955         New func, by default returns the same caps (the identity
956         transformation).
957         (gst_base_transform_getcaps): Uses transform_caps to return
958         something sensible.
959         (gst_base_transform_setcaps): Complicated logic to get caps on
960         both pads, even if they are different, and to call set_caps once
961         for every time both pads get their caps set.
962         (gst_base_transform_handle_buffer): Give the ref to the transform
963         function. Allows in-place modification of the buffer.
964
965         * gst/base/gstbasetransform.h (transform_caps): New class method.
966         Given caps on one side, what can I do on the other.
967         (set_caps): Take two caps, one for each side of the element.
968
969         * gst/gstpad.h:
970         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
971         caps in place. This is safe because we can check the mutability of
972         the caps, and a good idea because fixate functions are just called
973         as a matter of last resort. (Not actually implemented.)
974         (gst_pad_set_caps): If the caps we're setting is actually the same
975         as the existing pad caps, just update the pointer without calling
976         setcaps. Assert that caps is either NULL or fixed, as per the
977         docs.
978
979         * gst/gstghostpad.c: Update for fixate changes.
980
981 2005-07-02  Andy Wingo  <wingo@pobox.com>
982
983         * gst/gstcaps.c:
984         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
985         two refcounts makes it immutable, which is enough. Doc more.
986
987 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
988
989         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
990           Put the mini_object into GValue as a mini_object,
991           not a gpointer, since that's how we declared
992           the signal.
993
994 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
995
996         * examples/pwg/Makefile.am:
997           Fix buildbot again.
998
999 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1000
1001         * docs/pwg/building-testapp.xml:
1002           Add extra check.
1003         * examples/pwg/Makefile.am:
1004           Fix buildbot.
1005
1006 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1007
1008         * configure.ac:
1009         * examples/Makefile.am:
1010         * examples/pwg/Makefile.am:
1011         * examples/pwg/extract.pl:
1012           Enable building the PWG examples.
1013         * docs/pwg/advanced-interfaces.xml:
1014           Add URI interface stub.
1015         * docs/pwg/advanced-types.xml:
1016         * docs/pwg/other-autoplugger.xml:
1017         * docs/pwg/appendix-porting.xml:
1018         * docs/pwg/pwg.xml:
1019           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1020         * docs/pwg/building-boiler.xml:
1021         * docs/pwg/building-chainfn.xml:
1022         * docs/pwg/building-pads.xml:
1023         * docs/pwg/building-props.xml:
1024         * docs/pwg/building-state.xml:
1025         * docs/pwg/building-testapp.xml:
1026           Update the building-*.xml parts for 0.9 changes. All examples
1027           code blocks compile in examples/pwg/*.
1028
1029 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1030
1031         * docs/manual/advanced-autoplugging.xml:
1032         * docs/manual/appendix-checklist.xml:
1033         * docs/manual/appendix-integration.xml:
1034         * docs/manual/highlevel-components.xml:
1035           Fix playbin/decodebin examples, update docs a bit, mention bus
1036           instead of signals in various places, mention kmplayer and
1037           kaffeine since they have a working GStreamer backend in the KDE
1038           section.
1039
1040 2005-06-30  Wim Taymans  <wim@fluendo.com>
1041
1042         * CHANGES-0.9:
1043         * docs/design/draft-ghostpads.txt:
1044         * docs/design/draft-push-pull.txt:
1045         * docs/design/draft-query.txt:
1046         * docs/design/part-TODO.txt:
1047         * docs/design/part-query.txt:
1048         Added CHANGES-0.9 doc, updated status of other docs.
1049         
1050         * gst/gstquery.h:
1051         Remove "hmm" macro
1052
1053 2005-06-30  Wim Taymans  <wim@fluendo.com>
1054
1055         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1056         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1057         (gst_base_sink_change_state):
1058         * gst/base/gstbasesink.h:
1059         Some tweaks, only EOS and a buffer complete a preroll.
1060
1061 2005-06-30  Andy Wingo  <wingo@pobox.com>
1062
1063         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1064         activate_push down to the internal pad as well.
1065
1066 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1067
1068         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1069
1070         * gst/gsttaginterface.c:
1071           Some documentation fixes (#307394 and #307397).
1072
1073 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1074
1075         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1076
1077         * gst/gstvalue.c: (gst_value_intersect_list):
1078           Fix memleak (#309125).
1079
1080 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1081
1082         * docs/manual/advanced-dataaccess.xml:
1083           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1084         * docs/manual/basics-pads.xml:
1085           Add reference for filtered caps to above chapter.
1086
1087 2005-06-30  Wim Taymans  <wim@fluendo.com>
1088
1089         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1090         (gst_bin_change_state):
1091         Probes are gone.
1092         Lame attempt at making the state change function a bit
1093         more readable.
1094
1095 2005-06-30  Wim Taymans  <wim@fluendo.com>
1096
1097         * docs/design/part-clocks.txt:
1098         * docs/design/part-element-sink.txt:
1099         * docs/design/part-events.txt:
1100         * docs/design/part-preroll.txt:
1101         * docs/design/part-states.txt:
1102         Some more tweeks and additions to the docs.
1103
1104 2005-06-30  Wim Taymans  <wim@fluendo.com>
1105
1106         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1107         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1108         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1109         (gst_pad_check_pull_range), (gst_pad_get_range),
1110         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1111         * gst/gstpad.h:
1112         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1113         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1114         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1115         (gst_pad_remove_buffer_probe):
1116         Removed atomic operations, use existing LOCK.
1117         Move exception handling out of main code path.
1118
1119 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1120
1121         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1122         (silly_return_true_function), (gst_pad_class_init),
1123         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1124         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1125         (gst_pad_send_event):
1126           Fix accumulator, add default value by using _emitv() instead
1127           of _emit() for signal emission.
1128
1129 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1130
1131         * docs/manual/advanced-dataaccess.xml:
1132         * examples/manual/Makefile.am:
1133           Add probe example.
1134         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1135           Make work (??).
1136
1137 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1138
1139         * gst/elements/gstfilesink.c: (gst_filesink_render):
1140           Simplify code so that we don't have to handle short
1141           writes and return GST_FLOW_ERROR if an error occured.
1142
1143 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1144
1145         * docs/gst/gstreamer-docs.sgml:
1146           Remove probes more.
1147
1148 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1149
1150         * docs/gst/gstreamer-sections.txt:
1151         * docs/gst/tmpl/gstpad.sgml:
1152         * docs/gst/tmpl/gstprobe.sgml:
1153         * gst/Makefile.am:
1154         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1155         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1156         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1157         (gst_pad_push_event), (gst_pad_send_event):
1158         * gst/gstpad.h:
1159         * gst/gstutils.c: (gst_pad_add_data_probe),
1160         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1161         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1162         (gst_pad_remove_buffer_probe):
1163         * gst/gstutils.h:
1164           Remove old probes, add new g-signal-based probes and some utility
1165           functions.
1166
1167 2005-06-29  Edward Hervey  <edward@fluendo.com>
1168
1169         * gst/gstelementfactory.c:
1170         * gst/gstutils.h:
1171         * gst/gstutils.c:
1172         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1173         the definition to the header file.
1174
1175 2005-06-29  Andy Wingo  <wingo@pobox.com>
1176
1177         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1178         plugins from the source directory.
1179
1180 2005-06-29  Wim Taymans  <wim@fluendo.com>
1181
1182         * docs/gst/tmpl/gstbuffer.sgml:
1183         * docs/gst/tmpl/gstclock.sgml:
1184         Some fixings for blantently wrong text.
1185
1186 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1187
1188         * check/Makefile.am:
1189         * gst/gst.c: (add_path_func), (init_pre):
1190         * gst/gstregistry.c: (gst_registry_add_path):
1191           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1192           only scan the GST_PLUGIN_PATH locations, and not add
1193           system locations
1194
1195 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1196
1197         * docs/gst/gstreamer-sections.txt:
1198         * docs/gst/tmpl/gstbasesrc.sgml:
1199         * gst/gstelement.c:
1200         * gst/gstelement.h:
1201         * gst/gstevent.c:
1202         * gst/gstutils.c:
1203           doc fixes
1204
1205 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1206
1207         * docs/manual/advanced-autoplugging.xml:
1208           Fix autoplugging example.
1209
1210 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1211
1212         * docs/manual/advanced-autoplugging.xml:
1213         * docs/manual/mime-world.fig:
1214           Try to get autoplugging working, fix type detection. Fix text
1215           in hello-world image.
1216
1217 2005-06-29  Wim Taymans  <wim@fluendo.com>
1218
1219         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1220         (gst_base_sink_change_state):
1221         Small debug line.
1222
1223         * gst/gstclock.h:
1224         map SIGNAL and BROADCAST to the right function.
1225
1226         * gst/gstobject.h:
1227         Remove redundant braces.
1228
1229         * gst/gstpad.c: (gst_pad_set_caps):
1230         Don't call setcaps function when reseting caps to NULL.
1231
1232         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1233         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1234         (gst_system_clock_id_unschedule):
1235         Use BROADCAST as this is what we do.
1236
1237 2005-06-29  Wim Taymans  <wim@fluendo.com>
1238
1239         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1240         We are actually prerolling before commiting the state
1241         change. 
1242
1243 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1244
1245         * docs/manual/advanced-clocks.xml:
1246         * docs/manual/advanced-interfaces.xml:
1247         * docs/manual/advanced-metadata.xml:
1248         * docs/manual/advanced-position.xml:
1249         * docs/manual/advanced-schedulers.xml:
1250         * docs/manual/advanced-threads.xml:
1251         * docs/manual/appendix-porting.xml:
1252         * docs/manual/basics-bins.xml:
1253         * docs/manual/basics-bus.xml:
1254         * docs/manual/basics-elements.xml:
1255         * docs/manual/basics-helloworld.xml:
1256         * docs/manual/basics-pads.xml:
1257         * docs/manual/highlevel-components.xml:
1258         * docs/manual/manual.xml:
1259         * docs/manual/thread.fig:
1260           Update (until threads/scheduling) Application Development Manual;
1261           remove GstThread, add GstBus, add simple porting checklist, add
1262           documentation for tag writing, clocks, make all examples until this
1263           part compile and run.
1264         * examples/manual/Makefile.am:
1265           Update from changes to Application Development Manual; add bus
1266           example, remove thread example.
1267
1268 2005-06-28  Wim Taymans  <wim@fluendo.com>
1269
1270         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1271         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1272         (gst_bus_source_dispatch):
1273         Add debugging messages.
1274         Make internal methods static.
1275         Handle the case where the bus is flushed in the handler.
1276         
1277         * gst/gstelement.c: (gst_element_get_bus):
1278         Fix refcount in _get_bus();
1279
1280         * gst/gstpipeline.c: (gst_pipeline_change_state),
1281         (gst_pipeline_get_clock_func):
1282         Clock refcounting fixes.
1283         Handle the case where preroll timed out more gracefully.
1284         
1285         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1286         Clean up the internal thread in dispose. This is needed
1287         for subclasses that actually get disposed.
1288         
1289         * gst/schedulers/threadscheduler.c:
1290         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1291         (gst_thread_scheduler_dispose):
1292         Free thread pool in dispose.
1293
1294 2005-06-28  Andy Wingo  <wingo@pobox.com>
1295
1296         * tests/network-clock-utils.scm (debug, print-event): New utils.
1297
1298         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1299         (*packet-loss*): Unified loss probability.
1300         (network-time): Report out-of-band events.
1301
1302         * tests/plot-data: Add support for out-of-band events. Hack it
1303         into this script instead of passing it down the pipe; should fix
1304         this later.
1305
1306 2005-06-28  Wim Taymans  <wim@fluendo.com>
1307
1308         * docs/gst/gstreamer.types:
1309         * docs/gst/tmpl/gstbasesrc.sgml:
1310         * docs/gst/tmpl/gstpad.sgml:
1311         Docs fixes.
1312
1313 2005-06-28  Wim Taymans  <wim@fluendo.com>
1314
1315         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1316         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1317         (gst_proxy_pad_do_fixatecaps):
1318         Correctly proxy the check_pull_range function.
1319
1320 2005-06-28  Andy Wingo  <wingo@pobox.com>
1321
1322         * tests/network-clock.scm: Removed need for slib.
1323         
1324 2005-06-28  Wim Taymans  <wim@fluendo.com>
1325
1326         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1327         (gst_basesink_preroll_queue_flush):
1328         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1329         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1330         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1331         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1332         (gst_proxy_pad_set_property):
1333         * gst/gstpad.c:
1334         * gst/gstpad.h:
1335         * gst/gstqueue.c: (gst_queue_init):
1336         The deprecated pad loop function is removed now.
1337
1338 2005-06-28  Andy Wingo  <wingo@pobox.com>
1339
1340         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1341         New parameters, simulate network packet loss.
1342
1343         * tests/network-clock-utils.scm: Initialize the RNG.
1344
1345 2005-06-28  Wim Taymans  <wim@fluendo.com>
1346
1347         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1348         (gst_basesink_event), (gst_basesink_deactivate):
1349         Flushing the preroll queue always needs to unlock the waiters.
1350
1351 2005-06-28  Edward Hervey  <edward@fluendo.com>
1352
1353         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1354         Wheen a seek was successful on a pipeline, set the stream_time to the
1355         seek offset in order to have a synchronized stream_time.
1356
1357 2005-06-28  Wim Taymans  <wim@fluendo.com>
1358
1359         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1360         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1361         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1362         (gst_proxy_pad_do_fixatecaps):
1363         Call wrapper function instead of just calling the function
1364         pointers. This takes care of any locking and whatmore.
1365
1366 2005-06-28  Wim Taymans  <wim@fluendo.com>
1367
1368         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1369         (gst_pad_pull_range):
1370         * gst/gstpad.h:
1371         CONNECTED -> LINKED.
1372
1373 2005-06-28  Andy Wingo  <wingo@pobox.com>
1374
1375         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1376         source-munging commit!!!
1377
1378         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1379         (gst_object_sink): Take gpointer arguments, not GstObject --
1380         avoids casts. Like GLib.
1381
1382         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1383         activate.
1384
1385 2005-06-27  Andy Wingo  <wingo@pobox.com>
1386
1387         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1388         remaining buffer.
1389
1390         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1391         returns a sorted copy of the trace list.
1392         (gst_alloc_trace_print_live): New API, only prints traces with
1393         live objects. Sort the list.
1394         (gst_alloc_trace_print_all): Sort the list.
1395         (gst_alloc_trace_print): Align columns.
1396
1397         * gst/elements/gstttypefindelement.c:
1398         * gst/elements/gsttee.c:
1399         * gst/base/gstbasesrc.c:
1400         * gst/base/gstbasesink.c:
1401         * gst/base/gstbasetransform.c:
1402         * gst/gstqueue.c: Adapt for pad activation changes.
1403
1404         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1405         sched.
1406         (gst_pipeline_dispose): Drop ref on sched.
1407
1408         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1409         (gst_pad_activate_default): Push mode by default.
1410         (pre_activate_switch, post_activate_switch): New stubs, things to
1411         do before and after switching activation modes on pads.
1412         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1413         the pad's activate function to choose which mode to activate.
1414         Shortcut on deactivation and call the right function directly.
1415         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1416         mode.
1417         (gst_pad_activate_push): New API, same for push mode.
1418         (gst_pad_set_activate_function) 
1419         (gst_pad_set_activatepull_function) 
1420         (gst_pad_set_activatepush_function): Setters for new API.
1421
1422         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1423         Trace all miniobjects.
1424         (gst_mini_object_make_writable): Unref the arg if we copy, like
1425         gst_caps_make_writable.
1426
1427         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1428
1429         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1430         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1431         Adapt for new pad API.
1432
1433         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1434
1435         * gst/gstelement.h:
1436         * gst/gstelement.c (gst_element_iterate_src_pads) 
1437         (gst_element_iterate_sink_pads): New API functions.
1438         
1439         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1440         should fold into gstiterator.c in some form.
1441         (gst_element_pads_activate): Simplified via use of fold and
1442         delegation of decisions to gstpad->activate.
1443
1444         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1445         help in debugging.
1446
1447         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1448         class once in init, like gstmessage. Didn't run into this issue
1449         but it seems correct. Don't initialize a trace, gstminiobject does
1450         that.
1451
1452         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1453         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1454         to the bus.
1455         (assert_live_count): New util function, uses alloc traces to check
1456         cleanup.
1457
1458         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1459         To be modified when unlink drops the internal pad.
1460
1461 2005-06-27  Wim Taymans  <wim@fluendo.com>
1462
1463         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1464         (gst_bin_change_state):
1465         Cleanup the get_state() function a little, make sure it
1466         iterates the same set of elements.
1467         Added stub iterate_state_order().
1468
1469 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1470
1471         * docs/gst/gstreamer-docs.sgml:
1472         * docs/gst/gstreamer-sections.txt:
1473         * docs/gst/gstreamer.types:
1474         * docs/gst/tmpl/gstbasesink.sgml:
1475         * docs/gst/tmpl/gstbasesrc.sgml:
1476         * docs/gst/tmpl/gstbasetransform.sgml:
1477         * docs/gst/tmpl/gstelement.sgml:
1478         * docs/gst/tmpl/gstiterator.sgml:
1479         * gst/base/gstbasesrc.c:
1480         * gst/base/gstbasesrc.h:
1481         * gst/base/gstbasetransform.h:
1482         * gst/gstelement.c:
1483         * gst/gstiterator.h:
1484           adding basetransform and iterator docs
1485
1486 2005-06-27  Andy Wingo  <wingo@pobox.com>
1487
1488         * docs/design/part-activation.txt: Notes on how activation should
1489         work -- not quite implemented yet.
1490
1491 2005-06-25  Wim Taymans  <wim@fluendo.com>
1492
1493         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1494         At least get the chain function correct, needs more
1495         fixing.
1496
1497 2005-06-25  Wim Taymans  <wim@fluendo.com>
1498
1499         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1500         (gst_basesink_handle_object), (gst_basesink_event),
1501         (gst_basesink_do_sync), (gst_basesink_handle_event),
1502         (gst_basesink_change_state):
1503         * gst/gsttask.h:
1504         Right, two problems here: ghostpads don't take locks and
1505         glib _rec_mutex_lock_full() with depth==0 still locks.
1506         Catch illegal locking and g_warn them.
1507
1508 2005-06-25  Wim Taymans  <wim@fluendo.com>
1509
1510         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1511         Have to check for completion now...
1512
1513 2005-06-25  Wim Taymans  <wim@fluendo.com>
1514
1515         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1516         (gst_basesink_handle_object), (gst_basesink_event),
1517         (gst_basesink_do_sync), (gst_basesink_handle_event),
1518         (gst_basesink_change_state):
1519         * gst/gstpad.h:
1520         Unlock STREAM_LOCK whatever the recursion was.
1521
1522 2005-06-25  Wim Taymans  <wim@fluendo.com>
1523
1524         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1525         (gst_basesink_preroll_queue_empty),
1526         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1527         (gst_basesink_event), (gst_basesink_do_sync),
1528         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1529         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1530         (gst_basesink_change_state):
1531         Reworked the base sink, handle event and buffer serialisation
1532         correctly and removed possible deadlock.
1533         Handle EOS correctly.
1534
1535 2005-06-25  Wim Taymans  <wim@fluendo.com>
1536
1537         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1538         (gst_pipeline_change_state):
1539         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1540         Allow elements to post EOS in the state change function.
1541         Fix up -launch, make it exit the poll loop when the
1542         pipeline actually changed state.
1543         Fix up warning parsing in -launch.
1544
1545 2005-06-25  Wim Taymans  <wim@fluendo.com>
1546
1547         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1548         (gst_tee_sink_activate):
1549         Core takes STREAM_LOCK for us now.
1550
1551 2005-06-25  Wim Taymans  <wim@fluendo.com>
1552
1553         * gst/gstelement.c: (gst_element_get_state_func),
1554         (gst_element_set_state):
1555         * gst/gstelement.h:
1556         * gst/gstmessage.c: (gst_message_parse_error),
1557         (gst_message_parse_warning):
1558         Keep track of current target state while performing a state
1559         change so that subclasses can do something interesting.
1560         Fix parsing of warning/error messages when GError is NULL.
1561
1562 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1563
1564         * docs/gst/Makefile.am:
1565         * docs/gst/gstreamer-docs.sgml:
1566         * docs/gst/gstreamer-sections.txt:
1567         * docs/gst/gstreamer.types:
1568         * docs/gst/tmpl/gstbasesink.sgml:
1569         * docs/gst/tmpl/gstbasesrc.sgml:
1570         * docs/gst/tmpl/gstbin.sgml:
1571         * docs/gst/tmpl/gstcompat.sgml:
1572         * docs/gst/tmpl/gstfakesink.sgml:
1573         * docs/gst/tmpl/gstfakesrc.sgml:
1574         * docs/gst/tmpl/gstfilesink.sgml:
1575         * docs/gst/tmpl/gstfilesrc.sgml:
1576         * docs/gst/tmpl/gstindex.sgml:
1577         * docs/manual/appendix-quotes.xml:
1578         * gst/base/gstbasesrc.h:
1579         * gst/elements/gstfakesrc.h:
1580         * gst/gstmessage.h:
1581           start pulling in base classes and elements in our docs
1582
1583 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1584
1585         * docs/gst/Makefile.am:
1586         * docs/libs/Makefile.am:
1587           fixed make distcheck with gtk-doc 1.3
1588
1589 2005-06-23  Wim Taymans  <wim@fluendo.com>
1590
1591         * gst/gstelement.c: (gst_element_get_state_func),
1592         (gst_element_set_state), (gst_element_change_state):
1593         When the state did not change, also report NO_PREROLL
1594         when it matters.
1595
1596 2005-06-23  Wim Taymans  <wim@fluendo.com>
1597
1598         * gst/gstpad.c: (gst_pad_event_default):
1599         * gst/gstqueue.c: (gst_queue_loop):
1600         No unsafe task pausing please.
1601
1602 2005-06-23  Wim Taymans  <wim@fluendo.com>
1603
1604         * gst/schedulers/threadscheduler.c:
1605         (gst_thread_scheduler_task_start),
1606         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1607         Ref the task before pushing it on the threadpool. This
1608         makes sure that we have a ref when the threadfunction is
1609         actually called.
1610
1611 2005-06-23  Andy Wingo  <wingo@pobox.com>
1612
1613         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1614         offset is greater than the file's size.
1615
1616         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1617         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1618         * gst/gstobject.c (gst_object_class_init): Make the class lock
1619         recursive. Wim won't let me drop deep_notify. Decodebin works
1620         again, whoopdy doo.
1621
1622         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1623         internal pad, and hacks accordingly. Doesn't do it on the target
1624         pad because we change its caps. Probably catches all cases of
1625         interest tho.
1626         (gst_ghost_pad_set_property): Connect to notify::caps as
1627         appropritate.
1628
1629         * tests/network-clock.scm (plot-simulation): Pipe data to the
1630         elite python skript.
1631
1632         * tests/network-clock-utils.scm (define-parameter): New macro,
1633         defines a parameter that can be set via the command line.
1634         (set-parameter!, parse-parameter-arguments): Command line args
1635         parser.
1636
1637         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1638         stdin.
1639
1640 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1641
1642         * gst/elements/gsttypefindelement.c:
1643         (gst_type_find_element_handle_event):
1644           Don't restart typefinding on a discont.
1645         * gst/gstelement.c: (gst_element_set_state):
1646           Debug spelling fix.
1647         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1648           Allow changing mode of an active pad.
1649           Debug output fixes.
1650         * gst/registries/gstlibxmlregistry.c: (load_feature):
1651           Don't cast a static pad template to a normal pad template.
1652
1653 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1654
1655         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1656         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1657           remove gst_strtoll completely, since it didn't actually do
1658           anything more than what g_ascii_strtoull already does.
1659           check for range errors when deserializing
1660           do a cast for the unsigned cases; but further fixing needs
1661           a decision on what the interpretation of "(int)" and
1662           deserialization should be for values that fall outside the
1663           type's boundaries (ie, refuse, or interpret as casting)
1664
1665 2005-06-23  Wim Taymans  <wim@fluendo.com>
1666
1667         * check/Makefile.am:
1668         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1669         * docs/design/part-live-source.txt:
1670         * docs/design/part-states.txt:
1671         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1672         (gst_basesrc_set_live), (gst_basesrc_is_live),
1673         (gst_basesrc_get_range), (gst_basesrc_activate),
1674         (gst_basesrc_change_state):
1675         * gst/base/gstbasesrc.h:
1676         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1677         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1678         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1679         * gst/gstelement.c: (gst_element_get_state_func),
1680         (gst_element_set_state):
1681         * gst/gstelement.h:
1682         * gst/gsttypes.h:
1683         * tools/gst-launch.c: (event_loop), (main):
1684         Added support for live sources and other elements that
1685         cannot do preroll.
1686         Updated design docs, added live-source design doc.
1687         Implemented live source functionality in basesrc
1688         Fix error condition in _bin_get_state()
1689         Implement live source handling in -launch.
1690         Added check for live sources.
1691         Fixed case in GstBin where elements were changed state
1692         multiple times.
1693
1694
1695 2005-06-23  Andy Wingo  <wingo@pobox.com>
1696
1697         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1698         borken refcounting.
1699
1700         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1701         gst_caps_replace takes care of this for us.
1702
1703         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1704         gst_pad_set_caps on the target, not just its setcaps() function.
1705
1706         * tests/network-clock.scm: 
1707         * tests/network-clock-utils.scm: A network clock simulator.
1708         Something of an algorithmic testbed before doing something in C.
1709
1710 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1711
1712         * check/Makefile.am:
1713         * check/gst/capslist.h:
1714           copy over from 0.8, and add two with bitmasks specified with
1715           (int) 0xFF...
1716         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1717           add test to parse everything from capslist.h
1718         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
1719         (main):
1720           add test for structure deserialization
1721         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1722           add tests for deserialization of strings to int types
1723         * gst/gststructure.c: (gst_structure_nth_field_name):
1724         * gst/gststructure.h:
1725           add a way to get the name of a field referenced by index
1726         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1727           instead of checking if the resulting long long lies between
1728           min and max, we check if the long long would fit into
1729           a number of bytes for the final type.
1730           This fixes cases where a string represents 2^32 - 1, which
1731           when cast to int would be the (valid) -1, but is bigger than
1732           G_MAXINT
1733
1734 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1735
1736         * gst/parse/grammar.y:
1737           add a log line for type deserialization
1738
1739 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1740
1741         * check/gst/gstvalue.c: (START_TEST):
1742         * gst/gstvalue.c: (gst_value_deserialize):
1743           return long long, not int, so gint64 deserialization actually
1744           works.  Is there any flag that makes the compiler check this ?
1745           Fixes #308559
1746
1747 2005-06-22  Wim Taymans  <wim@fluendo.com>
1748
1749         * gst/gstbuffer.h:
1750         Added convenience macros for setting buffers in GValue.
1751
1752 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1753
1754         * check/gst/.cvsignore:
1755         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1756           add a test deserializing int64, and comment part out because
1757           it fails, yay !
1758
1759 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1760
1761         * check/Makefile.am:
1762         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
1763         * testsuite/Makefile.am:
1764         * testsuite/caps/Makefile.am:
1765         * testsuite/caps/value_serialize.c:
1766         * testsuite/test_gst_init.c:
1767           move a value_serialize test over
1768
1769 2005-06-20  Wim Taymans  <wim@fluendo.com>
1770
1771         * gst/gstpad.c:
1772         Small doc updates.
1773         
1774         * gst/gstvalue.c: (gst_value_compare_buffer),
1775         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
1776         (gst_value_compare_flags), (gst_value_serialize_flags),
1777         (gst_value_deserialize_flags), (_gst_value_initialize):
1778         Fix serialisation of buffers, they are not boxed types anymore
1779
1780 2005-06-20  Wim Taymans  <wim@fluendo.com>
1781
1782         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1783         Testcase to show error in buffer-on-caps serialisation.
1784
1785 2005-06-20  Andy Wingo  <wingo@pobox.com>
1786
1787         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
1788         will be adding to later.
1789
1790         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
1791         if its socks fill with rocks.
1792         (gst_system_clock_obtain): Set the name on object construction.
1793         Avoid double-checked locking.
1794
1795 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
1796
1797         * gst/gsturi.c: (gst_element_make_from_uri):
1798           Fix potential endless loop.
1799
1800 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1801
1802         * check/Makefile.am:
1803           add gsttag
1804         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
1805         (main):
1806           move over from testsuite dir and clean up
1807         * configure.ac:
1808         * gst/gsttag.c:
1809         * testsuite/Makefile.am:
1810         * testsuite/tags/.cvsignore:
1811         * testsuite/tags/Makefile.am:
1812         * testsuite/tags/merge.c:
1813           remove testsuite/tags
1814
1815 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1816
1817         * docs/gst/gstreamer-sections.txt:
1818         * docs/gst/tmpl/gstenumtypes.sgml:
1819         * win32/gstenumtypes.c:
1820           clean up documentation build a little
1821
1822 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1823
1824         * check/gstcheck.h:
1825           add macros for checking refcounts on objects and caps
1826         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
1827           add some more unit tests
1828         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1829         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
1830           fix leaked refcounts (I hope :)) so unittest works
1831         * gst/gstpad.h:
1832           whitespace removal
1833
1834 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1835
1836         * configure.ac: back to HEAD
1837
1838 === release 0.9.1 ===
1839
1840 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1841
1842         * NEWS:
1843         * RELEASE:
1844           updated
1845
1846 2005-06-17  Andy Wingo  <wingo@pobox.com>
1847
1848         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
1849         assert; it's always possible that the pad gets deactivated in
1850         between the checks in gstpad.c and the implementation. Rely on
1851         finish_preroll() to return a FLUSHING or similar instead of on the
1852         assert.
1853         
1854         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
1855         clock and post an EOS message if we come out of finish_preroll in
1856         the playing state.
1857
1858 2005-06-16  David Schleef  <ds@schleef.org>
1859
1860         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
1861         (gst_capsfilter_set_property): Allow NULL as possible value
1862         for filter_caps property, indicating GST_CAPS_ANY.
1863
1864 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1865
1866         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
1867           fix debug output
1868         * gst/schedulers/Makefile.am:
1869           use libgst prefix
1870         * gstreamer.spec.in:
1871           fix spec for it
1872
1873 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1874
1875         * gstreamer.spec.in:
1876           clean up
1877
1878 2005-06-08  Andy Wingo  <wingo@pobox.com>
1879
1880         * gst/gstutils.c: RPAD fixes all around.
1881         (gst_element_link_pads): Refcounting fixes.
1882
1883         * tools/gst-inspect.c:
1884         * tools/gst-xmlinspect.c:
1885         * parse/grammar.y:
1886         * gst/base/gsttypefindhelper.c:
1887         * gst/base/gstbasesink.c:
1888         * gst/gstqueue.c: RPAD fixes.
1889
1890         * gst/gstghostpad.h:
1891         * gst/gstghostpad.c: New ghost pad implementation as full proxy
1892         pads. The tricky thing is they provide both source and sink
1893         interfaces, since they proxy the internal pad for the external
1894         pad, and vice versa. Implement with lower-level ProxyPad objects,
1895         with the interior proxy pad as a child of the exterior ghost pad.
1896         Should write a doc on this.
1897         
1898         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
1899         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
1900         gst_object API.
1901         
1902         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
1903         pads are real pads. No ghost pads in this file. Not documenting
1904         the myriad s/RPAD/PAD/ and REALIZE fixes.
1905         (gst_pad_class_init): Add properties for "direction" and
1906         "template". Both are construct-only, so they can't change during
1907         the life of the pad. Fixes properly deriving from GstPad.
1908         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
1909         derived objects, just set properties when creating the objects via
1910         g_object_new.
1911         (gst_pad_get_parent): Implement as a function, return NULL if the
1912         parent is not an element.
1913         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
1914         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
1915         
1916         * gst/gstobject.c (gst_object_class_init): Make name a construct
1917         property. Don't set it in the object init.
1918
1919         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
1920         with UNKNOWN direction.
1921         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
1922         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
1923         (gst_element_remove_pad): Remove ghost-pad special cases.
1924         (gst_element_pads_activate): Remove rpad cruft.
1925
1926         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
1927         catch the pad's-parent-not-an-element case.
1928
1929         * gst/gst.h: Include gstghostpad.h.
1930
1931         * gst/gst.c (init_post): No more real, ghost pads.
1932
1933         * gst/Makefile.am: Add gstghostpad.[ch].
1934
1935         * check/Makefile.am:
1936         * check/gst/gstbin.c:
1937         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
1938         into a bin creates ghost pads, and that the refcounts are right.
1939         Partly moved from gstbin.c.
1940
1941 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1942
1943         * check/gst-libs/.cvsignore:
1944         * check/gst/.cvsignore:
1945         * check/pipelines/.cvsignore:
1946           ignore more
1947         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
1948         (START_TEST), (cleanup_suite), (main):
1949           add some tests related to cleanup after running pipelines
1950
1951 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1952
1953         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
1954           add a testsuite for GstBuffer
1955
1956 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1957
1958         * gst/gstminiobject.h:
1959           add defines for accessing the refcount
1960
1961 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
1962
1963         * Makefile.am: added support for html unit test coverage reports
1964
1965 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
1966
1967         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
1968           Free existing caps if the capsfilter changes. Add a FIXME about
1969           setting those caps on the pads.
1970
1971         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
1972           Before adding a ghost pad to a parent bin, check that there isn't
1973           already one for the element on the bin. Prevents infinite recursion
1974           when using decodebin in parse pipelines. Andy says he'll rewrite the
1975           way this works anyway, so ignore the hack.
1976
1977 2005-06-02  Andy Wingo  <wingo@pobox.com>
1978
1979         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
1980         file size, pass it on to the type find helper.
1981
1982         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
1983         segment_start and segment_end properly according to the seek
1984         method. Segment_end is still a bit flaky because offset can be
1985         negative for CUR and END cases, but it takes -1 as an "unset"
1986         value.
1987
1988 2005-06-02  Wim Taymans  <wim@fluendo.com>
1989
1990         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
1991         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
1992         (gst_basesink_activate):
1993         * gst/base/gstbasesink.h:
1994         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1995         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1996         (gst_pad_query), (gst_pad_start_task):
1997         * gst/gstpad.h:
1998         * gst/gstqueue.c: (gst_queue_bufferalloc),
1999         (gst_queue_handle_sink_event), (gst_queue_chain):
2000         Bufferalloc: return GstFlowReturn to more accuratly report
2001         why allocation failed.
2002
2003 2005-06-02  Wim Taymans  <wim@fluendo.com>
2004
2005         * gst/gstpipeline.c: (gst_pipeline_send_event):
2006         Take snapshot of state without blocking.
2007
2008 2005-06-02  Wim Taymans  <wim@fluendo.com>
2009
2010         * docs/design/part-TODO.txt:
2011         * docs/design/part-caps.txt:
2012         * docs/design/part-clocks.txt:
2013         * docs/design/part-negotiation.txt:
2014         * docs/design/part-preroll.txt:
2015         Small doc updates 
2016
2017 2005-05-30  Wim Taymans  <wim@fluendo.com>
2018
2019         * gst/elements/gstidentity.c: (gst_identity_event),
2020         (gst_identity_transform), (gst_identity_get_property):
2021         Protect last_message property as it is accessed from
2022         multiple threads.
2023
2024 2005-05-30  Wim Taymans  <wim@fluendo.com>
2025
2026         * gst/gstelement.c: (gst_element_init),
2027         (gst_element_pads_activate), (gst_element_change_state):
2028         Slicker pad activation code.
2029
2030 2005-05-30  Wim Taymans  <wim@fluendo.com>
2031
2032         * gst/Makefile.am:
2033         * gst/gstelement.h:
2034         * gst/gstelementfactory.h:
2035         * gst/gsttypes.h:
2036         Move elementfactory methods to separate .h file.
2037
2038 2005-05-30  Wim Taymans  <wim@fluendo.com>
2039
2040         * docs/design/part-overview.txt:
2041         * gst/gstsystemclock.h:
2042         Small typo fixes, doc updates.
2043
2044 2005-05-30  Wim Taymans  <wim@fluendo.com>
2045
2046         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2047         (init_popt_callback):
2048         Remove cpu-opt flag.
2049
2050 2005-05-30  Wim Taymans  <wim@fluendo.com>
2051
2052         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2053         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2054         * gst/gstbuffer.h:
2055         Avoid typechecking in places where not needed.
2056         Added accessor for malloc_data.
2057
2058 2005-05-30  Wim Taymans  <wim@fluendo.com>
2059
2060         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2061         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2062         (gst_pad_configure_sink), (gst_pad_configure_src),
2063         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2064         (gst_pad_start_task):
2065         Propagate errors from _set_caps() in configure_src/sink
2066         functions instead of returning TRUE.
2067         FLUSH events can travel up and downstream
2068
2069
2070 2005-05-30  Wim Taymans  <wim@fluendo.com>
2071
2072         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2073         (gst_basesink_activate):
2074         Handle EOS in preroll.
2075
2076 2005-05-30  Wim Taymans  <wim@fluendo.com>
2077
2078         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2079         (gst_queue_loop), (gst_queue_handle_src_event):
2080         Remove old pieces of code
2081         Flushing the queue in an upstream event is a very bad idea.
2082
2083 2005-05-26  Andy Wingo  <wingo@pobox.com>
2084
2085         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2086         gst_value_set_mini_object so as to add a ref on the object (which
2087         will be removed when the value is unset).
2088
2089         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2090         arg type in ::handoff.
2091
2092         * gst/gstelement.c (gst_element_change_state): Also deactivate
2093         pads in READY->NULL, just in case the element didn't make it to
2094         PAUSED. Wingo tested, Wim approved.
2095
2096 2005-05-26  Wim Taymans  <wim@fluendo.com>
2097
2098         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2099         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2100         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2101         A flushing pad cannot be used to alloc_buffer from.
2102
2103 2005-05-26  Wim Taymans  <wim@fluendo.com>
2104
2105         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2106         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2107         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2108         (gst_bus_create_watch), (gst_bus_add_watch_full):
2109         * gst/gstbus.h:
2110         Implement a real GSource and use g_main_context_wakeup() to
2111         signal new messages instead of the socketpair.
2112
2113 2005-05-25  Wim Taymans  <wim@fluendo.com>
2114
2115         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2116         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2117         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2118         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2119         (gst_pad_send_event), (gst_pad_start_task):
2120         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2121         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2122         (gst_queue_sink_activate), (gst_queue_src_activate),
2123         (gst_queue_change_state):
2124         * gst/gstqueue.h:
2125         Fix state changes for non sinks. We now change sinks, then elements
2126         with unconnected srcpads, then the rest.
2127         More efficient queue unlocking in flush and state changes.
2128         Set the pad activate mode even if it does not have an activate
2129         function.
2130
2131 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2132
2133         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2134           Don't go in pull mode for non-seekable sources.
2135         * gst/elements/gsttypefindelement.h:
2136         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2137         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2138         (free_entry), (stop_typefinding),
2139         (gst_type_find_element_handle_event), (find_peek),
2140         (gst_type_find_element_chain), (do_pull_typefind),
2141         (gst_type_find_element_change_state):
2142           Allow typefinding (w/o seeking) in push-mode, simplified version
2143           of what was in 0.8.
2144         * gst/gstutils.c: (gst_buffer_join):
2145         * gst/gstutils.h:
2146           gst_buffer_join() from 0.8.
2147
2148 2005-05-25  Wim Taymans  <wim@fluendo.com>
2149
2150         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2151         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2152         (gst_pad_send_event), (gst_pad_start_task):
2153         Disable attempt at mode switching until it is figured out.
2154
2155 2005-05-25  Wim Taymans  <wim@fluendo.com>
2156
2157         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2158         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2159         (gst_basesink_finish_preroll), (gst_basesink_chain),
2160         (gst_basesink_loop), (gst_basesink_activate),
2161         (gst_basesink_change_state):
2162         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2163         (gst_basesrc_get_range), (gst_basesrc_loop),
2164         (gst_basesrc_activate):
2165         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2166         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2167         (gst_real_pad_init), (gst_real_pad_set_property),
2168         (gst_real_pad_get_property), (gst_pad_set_active),
2169         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2170         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2171         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2172         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2173         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2174         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2175         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2176         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2177         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2178         (gst_pad_stop_task):
2179         * gst/gstpad.h:
2180         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2181         (gst_queue_loop), (gst_queue_src_activate):
2182         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2183         (gst_task_get_state):
2184         * gst/gsttask.h:
2185         * gst/schedulers/threadscheduler.c:
2186         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2187         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2188         in task function.
2189         Remove ACTIVE pad flag, use FLUSHING everywhere
2190         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2191         functions.
2192         Add locks around IS_FLUSHING when reading.
2193         Take STREAM lock in chain(), get_range() functions so plugins
2194         don't need to take it anymore.
2195         
2196
2197
2198 2005-05-25  Wim Taymans  <wim@fluendo.com>
2199
2200         * tools/gst-launch.c: (event_loop):
2201         Unref message after using its contents instead of
2202         before.
2203
2204 2005-05-24  Wim Taymans  <wim@fluendo.com>
2205
2206         * docs/design/draft-ghostpads.txt:
2207         * docs/design/draft-push-pull.txt:
2208         * docs/design/draft-query.txt:
2209         * docs/design/part-overview.txt:
2210         Docs updates, added general overview doc.
2211
2212 2005-05-21  David Schleef  <ds@schleef.org>
2213
2214         * docs/gst/tmpl/old/GstBin.sgml:
2215         * docs/gst/tmpl/old/GstBuffer.sgml:
2216         * docs/gst/tmpl/old/GstCaps.sgml:
2217         * docs/gst/tmpl/old/GstClock.sgml:
2218         * docs/gst/tmpl/old/GstCompat.sgml:
2219         * docs/gst/tmpl/old/GstData.sgml:
2220         * docs/gst/tmpl/old/GstElement.sgml:
2221         * docs/gst/tmpl/old/GstEvent.sgml:
2222         * docs/gst/tmpl/old/GstIndex.sgml:
2223         * docs/gst/tmpl/old/GstStructure.sgml:
2224         * docs/gst/tmpl/old/GstTag.sgml:
2225         * docs/gst/tmpl/old/cothreads.sgml:
2226         * docs/gst/tmpl/old/cothreads_compat.sgml:
2227         * docs/gst/tmpl/old/gettext.sgml:
2228         * docs/gst/tmpl/old/gobject2gtk.sgml:
2229         * docs/gst/tmpl/old/grammar.tab.sgml:
2230         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2231         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2232         * docs/gst/tmpl/old/gst_private.sgml:
2233         * docs/gst/tmpl/old/gstaggregator.sgml:
2234         * docs/gst/tmpl/old/gstarch.sgml:
2235         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2236         * docs/gst/tmpl/old/gstbufferstore.sgml:
2237         * docs/gst/tmpl/old/gstdata_private.sgml:
2238         * docs/gst/tmpl/old/gstdisksink.sgml:
2239         * docs/gst/tmpl/old/gstdisksrc.sgml:
2240         * docs/gst/tmpl/old/gstelementfactory.sgml:
2241         * docs/gst/tmpl/old/gstextratypes.sgml:
2242         * docs/gst/tmpl/old/gstfakesink.sgml:
2243         * docs/gst/tmpl/old/gstfakesrc.sgml:
2244         * docs/gst/tmpl/old/gstfdsink.sgml:
2245         * docs/gst/tmpl/old/gstfdsrc.sgml:
2246         * docs/gst/tmpl/old/gstfilesink.sgml:
2247         * docs/gst/tmpl/old/gstfilesrc.sgml:
2248         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2249         * docs/gst/tmpl/old/gstidentity.sgml:
2250         * docs/gst/tmpl/old/gstindexfactory.sgml:
2251         * docs/gst/tmpl/old/gstmarshal.sgml:
2252         * docs/gst/tmpl/old/gstmd5sink.sgml:
2253         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2254         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2255         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2256         * docs/gst/tmpl/old/gstpipefilter.sgml:
2257         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2258         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2259         * docs/gst/tmpl/old/gstshaper.sgml:
2260         * docs/gst/tmpl/old/gstspider.sgml:
2261         * docs/gst/tmpl/old/gstspideridentity.sgml:
2262         * docs/gst/tmpl/old/gststatistics.sgml:
2263         * docs/gst/tmpl/old/gsttee.sgml:
2264         * docs/gst/tmpl/old/gsttimecache.sgml:
2265         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2266         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2267         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2268         * docs/gst/tmpl/old/types.sgml:
2269           I didn't intend to add these or check them in.
2270
2271 2005-05-19  David Schleef  <ds@schleef.org>
2272
2273         * configure.ac: Use -no-common everywhere.  In a sane world, it
2274           would be the default in libtool, because without it, you can't
2275           build DLLs on Windows.
2276         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2277         * docs/gst/gstreamer-sections.txt:
2278         * docs/gst/tmpl/gstcpu.sgml:
2279         * docs/gst/tmpl/gstdata.sgml:
2280         * docs/gst/tmpl/gstthread.sgml:
2281
2282 2005-05-19  David Schleef  <ds@schleef.org>
2283
2284         * gst/gstminiobject.c: (gst_value_set_mini_object),
2285         (gst_value_take_mini_object), (gst_value_get_mini_object):
2286         * gst/gstminiobject.h: Add GValue set/get functions.
2287
2288 2005-05-19  Wim Taymans  <wim@fluendo.com>
2289
2290         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2291         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2292         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2293         * gst/gstbuffer.h:
2294         * gst/gstbus.c: (gst_bus_post):
2295         * gst/gstelement.c: (gst_element_get_random_pad):
2296         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2297         Make subbufer unref the parent in finalize.
2298         some more debugging info.
2299
2300
2301 2005-05-19  Wim Taymans  <wim@fluendo.com>
2302
2303         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2304         (gst_basesink_init), (gst_basesink_finalize),
2305         (gst_basesink_activate), (gst_basesink_change_state):
2306         Don't free preroll queue too early.
2307
2308 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2309
2310         * gst/Makefile.am:
2311         * gst/ROADMAP:
2312           Hi, I'm outdated. Please shoot me.
2313
2314 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2315
2316         * gst/gstpipeline.c: (gst_pipeline_send_event):
2317           Do not access variables after they have been deleted.
2318
2319 2005-05-19  Wim Taymans  <wim@fluendo.com>
2320
2321         * tools/gst-inspect.c: (print_plugin_features):
2322         A plugin feature does unfortunatly not use the
2323         object name yet...
2324
2325 2005-05-18  Wim Taymans  <wim@fluendo.com>
2326
2327         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2328         Port _span() functions to new subbuffers.
2329
2330 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2331
2332         * gst/gstbin.c: (gst_bin_add_func):
2333           Fix clock settery in bins when adding kids after the clock has
2334           been selected.
2335
2336 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2337
2338         * gst/elements/gstidentity.c: (gst_identity_class_init):
2339           Workaround until signals support GstMiniObject.
2340
2341 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2342
2343         * gst/gstbuffer.c:
2344         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2345
2346 2005-05-18  Wim Taymans  <wim@fluendo.com>
2347
2348         * gst/base/Makefile.am:
2349         * gst/base/gstadapter.c: (gst_adapter_base_init),
2350         (gst_adapter_class_init), (gst_adapter_init),
2351         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2352         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2353         (gst_adapter_flush), (gst_adapter_available),
2354         (gst_adapter_available_fast):
2355         * gst/base/gstadapter.h:
2356         Ported and added adapter to the base classes.
2357
2358 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2359
2360         * gst/gst.c:
2361         * gst/gstmessage.c:
2362           Make sure the class is reffed/unreffed once before threads can be
2363           used.  Fixes #304551.
2364
2365 2005-05-17  Wim Taymans  <wim@fluendo.com>
2366
2367         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2368         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2369         * gst/gstminiobject.c: (gst_mini_object_get_type),
2370         (gst_mini_object_free):
2371         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2372         (gst_pad_push), (gst_pad_push_event):
2373         * gst/gstqueue.c: (gst_queue_change_state):
2374         Don't queue buffers in basesink when we are flushing.
2375         Unref buffer when flushing in basesink.
2376         Flush queue when going to READY
2377         Unref buffer when _push() returns an error.
2378         Don't free MiniObject instance when refcount is incremented
2379         in _finalize() so that we can recover objects.
2380
2381 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2382
2383         * docs/manual/advanced-schedulers.xml:
2384         * docs/manual/appendix-checklist.xml:
2385         * docs/pwg/advanced-clock.xml:
2386         * docs/pwg/advanced-interfaces.xml:
2387         * docs/pwg/advanced-request.xml:
2388         * docs/pwg/advanced-types.xml:
2389         * docs/pwg/intro-preface.xml:
2390         * examples/plugins/example.c: (gst_example_get_type),
2391         (gst_example_class_init), (gst_example_chain),
2392         (gst_example_set_property), (gst_example_get_property),
2393         (gst_example_change_state), (plugin_init):
2394         * examples/plugins/example.h:
2395           small doc fixes
2396
2397 2005-05-17  Wim Taymans  <wim@fluendo.com>
2398
2399         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2400         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2401         * gst/gstqueue.c: (gst_queue_change_state):
2402         Clear queue when going to READY.
2403         Remove IN_SETCAPS flag too.
2404
2405 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2406
2407         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2408           Remove implicit cast from gboolean to GstElementStateReturn;
2409           make sure we still return failure in paused => ready case if
2410           the parent class fails to change state and our own stop 
2411           vfunc succeeds.
2412
2413 2005-05-17  Wim Taymans  <wim@fluendo.com>
2414
2415         * tools/gst-launch.c: (event_loop):
2416         Message was unreffed too soon.
2417
2418 2005-05-16  Andy Wingo  <wingo@pobox.com>
2419
2420         * gst/gstbin.c (sink_iterator_filter): Err... um...
2421
2422         * check/gst/gstbin.c (test_ghost_pads): New test for the
2423         ghosting-if-elements-not-in-same-bin behavior.
2424
2425 2005-05-16  David Schleef  <ds@schleef.org>
2426
2427         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2428         accessing refcount directly.
2429
2430 2005-05-15  David Schleef  <ds@schleef.org>
2431
2432         * check/Makefile.am: remove GstData checks
2433         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2434         * gst/Makefile.am: add miniobject, remove data
2435         * gst/gst.h: add miniobject, remove data
2436         * gst/gstdata.c: remove
2437         * gst/gstdata.h: remove
2438         * gst/gstdata_private.h: remove
2439         * gst/gsttypes.h: remove GstEvent and GstMessage
2440         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2441         * gst/gstmarshal.list: change BOXED -> OBJECT
2442
2443         Implement GstMiniObject.
2444         * gst/gstminiobject.c:
2445         * gst/gstminiobject.h:
2446
2447         Modify to be subclasses of GstMiniObject.
2448         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2449         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2450         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2451         (gst_subbuffer_get_type), (gst_subbuffer_init),
2452         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2453         (gst_buffer_span):
2454         * gst/gstbuffer.h:
2455         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2456         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2457         (_gst_event_copy), (gst_event_new):
2458         * gst/gstevent.h:
2459         * gst/gstmessage.c: (_gst_message_initialize),
2460         (gst_message_get_type), (gst_message_class_init),
2461         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2462         (gst_message_new), (gst_message_new_error),
2463         (gst_message_new_warning), (gst_message_new_tag),
2464         (gst_message_new_state_changed), (gst_message_new_application):
2465         * gst/gstmessage.h:
2466         * gst/gstprobe.c: (gst_probe_perform),
2467         (gst_probe_dispatcher_dispatch):
2468         * gst/gstprobe.h:
2469         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2470         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2471         (_gst_query_copy), (gst_query_new):
2472
2473         Update elements for GstData -> GstMiniObject changes
2474         * gst/gstquery.h:
2475         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2476         (gst_queue_chain), (gst_queue_loop):
2477         * gst/elements/gstbufferstore.c:
2478         (gst_buffer_store_add_buffer_func),
2479         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2480         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2481         (gst_fakesink_render):
2482         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2483         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2484         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2485         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2486         (gst_filesrc_create_read):
2487         * gst/elements/gstidentity.c: (gst_identity_class_init):
2488         * gst/elements/gsttypefindelement.c:
2489         (gst_type_find_element_src_event), (free_entry_buffers),
2490         (gst_type_find_element_handle_event):
2491         * libs/gst/dataprotocol/dataprotocol.c:
2492         (gst_dp_header_from_buffer):
2493         * libs/gst/dataprotocol/dataprotocol.h:
2494         * libs/gst/dataprotocol/dp-private.h:
2495
2496 2005-05-15  David Schleef  <ds@schleef.org>
2497
2498         * gst/elements/gstelements.c: Don't include headers that were
2499         just removed.
2500
2501 2005-05-15  David Schleef  <ds@schleef.org>
2502
2503         * gst/elements/Makefile.am: Remove some elements that don't
2504         need to be in the core (or even exist at all).
2505         * gst/elements/gstaggregator.c:
2506         * gst/elements/gstaggregator.h:
2507         * gst/elements/gstmd5sink.c:
2508         * gst/elements/gstmd5sink.h:
2509         * gst/elements/gstmultifilesrc.c:
2510         * gst/elements/gstmultifilesrc.h:
2511         * gst/elements/gstpipefilter.c:
2512         * gst/elements/gstpipefilter.h:
2513         * gst/elements/gstshaper.c:
2514         * gst/elements/gstshaper.h:
2515         * gst/elements/gststatistics.c:
2516         * gst/elements/gststatistics.h:
2517         * po/POTFILES.in: Remove above files.
2518
2519 2005-05-14  Andy Wingo  <wingo@pobox.com>
2520
2521         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2522         so as to get the refs right.
2523         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2524         unreffing objects that don't pass the filter.
2525
2526         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2527         gst_element_set_bus.
2528         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2529         normal cases, this will destroy the bus.
2530
2531         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2532         object.
2533
2534         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2535         has no sinks.
2536
2537 2005-05-13  Andy Wingo  <wingo@pobox.com>
2538
2539         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2540         gst_pad_link, call pad_link_maybe_ghosting,
2541         (pad_link_maybe_ghosting): Links pads, making sure that the
2542         elements being linked are in the same bin.
2543         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2544         Helpers for pad_link_maybe_ghosting.
2545
2546 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2547
2548         * configure.ac:
2549           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2550
2551 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2552
2553         * docs/design/part-element-source.txt:
2554           Mention GstPushSrc
2555
2556 2005-05-12  Wim Taymans  <wim@fluendo.com>
2557
2558         * gst/base/gstbasesink.c: (gst_basesink_init),
2559         (gst_basesink_activate):
2560         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2561         (gst_basesrc_is_seekable):
2562         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2563         (bin_element_is_sink), (gst_bin_change_state):
2564         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2565         * gst/gstelement.h:
2566         Identify sinks by their flag to avoid overly complicated
2567         checks (fow now).
2568         Do state changes even for elements not reachable from the
2569         sinks.
2570         BaseSink is a sink now :)
2571         Some more debugging info in the basesrc.
2572
2573
2574 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2575
2576         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2577           Implement _query on a bin, similar to _send_event.
2578
2579 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2580
2581         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2582           Discont event offset format should be GST_FORMAT_BYTES,
2583           not GST_FORMAT_TIME.
2584
2585 2005-05-12  Wim Taymans  <wim@fluendo.com>
2586
2587         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2588         Same fix as Ronald's but without the signal. 
2589
2590 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2591
2592         * gst/gstutils.c: (gst_element_query_position):
2593           No, an element is not a pad.
2594
2595 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2596
2597         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2598         (gst_bin_get_state):
2599           If a child is removed from a bin while we remove the child from
2600           the bin and while we're retrieving its state, signal this to the
2601           get_state function so we abort the wait (instead of waiting for
2602           a timeout) and can immediately re-iterate over all other elements.
2603
2604 2005-05-12  Wim Taymans  <wim@fluendo.com>
2605
2606         * gst/base/Makefile.am:
2607         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2608         (gst_basesrc_start):
2609         * gst/base/gstbasesrc.h:
2610         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2611         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2612         (gst_pushsrc_init), (gst_pushsrc_create):
2613         * gst/base/gstpushsrc.h:
2614         Added is_seekable to BaseSrc
2615         Added simple PushSrc.
2616
2617 2005-05-11  Wim Taymans  <wim@fluendo.com>
2618
2619         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2620         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2621         (gst_element_link_pads), (gst_element_query_position),
2622         (gst_element_query_convert), (intersect_caps_func),
2623         (gst_pad_query_position), (gst_pad_query_convert):
2624         Fix refcounting in utils function.
2625         No point in trying to activate a pad when it's added, it could
2626         be added from the state change function and then we deadlock, the
2627         element has to decide what to do.
2628
2629 2005-05-10  Andy Wingo  <wingo@pobox.com>
2630
2631         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2632         *all* the arguments.
2633
2634         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2635         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2636         lock (according to the docs -- if this is wrong change the docs).
2637
2638         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2639         flush messages in the NULL state.
2640
2641         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2642         message immediately and return.
2643         (gst_bus_set_flushing): New function. If a bus is flushing, it
2644         flushes out any queued messages and immediately unrefs new
2645         messages. This is so when an element goes to NULL, all of the
2646         unhandled messages coming from it can be freed, and their
2647         references to the element dropped. In other words: message source
2648         ref considered harmful :P
2649
2650         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2651         we're finished with it.
2652
2653         * gst/gstmessage.c (gst_message_new_state_changed): 
2654
2655 2005-05-10  Wim Taymans  <wim@fluendo.com>
2656
2657         * gst/gstvalue.c: (gst_value_compare_flags),
2658         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2659         (_gst_value_initialize):
2660         Added flags serialize/deserialize/compare code.
2661
2662 2005-05-09  Andy Wingo  <wingo@pobox.com>
2663
2664         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2665         Intersect the peer's caps with our caps.
2666
2667 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2668
2669         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2670         * gst/elements/gsttypefindelement.c: (find_peek):
2671           Handle negative offsets better. Fixes decodebin.
2672
2673 2005-05-09  Wim Taymans  <wim@fluendo.com>
2674
2675         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2676         (gst_base_transform_event):
2677         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2678         Implement accept_caps.
2679         Fix silly lock/unlock mismatch in base class.
2680
2681 2005-05-09  Wim Taymans  <wim@fluendo.com>
2682
2683         * docs/design/draft-push-pull.txt:
2684         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2685         * gst/elements/gstfilesink.c: (gst_filesink_init),
2686         (gst_filesink_query):
2687         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2688         (gst_type_find_handle_src_query), (find_element_get_length):
2689         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2690         * gst/gstelement.h:
2691         * gst/gstmessage.c:
2692         * gst/gstmessage.h:
2693         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2694         (gst_real_pad_get_caps_unlocked),
2695         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2696         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2697         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2698         (gst_real_pad_dispose), (gst_real_pad_finalize),
2699         (gst_pad_load_and_link), (gst_pad_save_thyself),
2700         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2701         (gst_pad_check_pull_range), (gst_pad_pull_range),
2702         (gst_pad_template_get_type), (gst_pad_template_class_init),
2703         (gst_pad_template_init), (gst_pad_template_dispose),
2704         (name_is_valid), (gst_static_pad_template_get),
2705         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2706         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2707         (gst_pad_get_element_private), (gst_pad_start_task),
2708         (gst_pad_pause_task), (gst_pad_stop_task),
2709         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2710         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2711         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
2712         (gst_ghost_pad_new):
2713         * gst/gstpad.h:
2714         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
2715         (gst_query_new_position), (gst_query_set_position),
2716         (gst_query_parse_position), (gst_query_new_convert),
2717         (gst_query_set_convert), (gst_query_parse_convert):
2718         * gst/gstquery.h:
2719         * gst/gstqueryutils.c:
2720         * gst/gstqueryutils.h:
2721         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2722         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2723         (gst_queue_handle_src_query):
2724         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2725         (gst_element_query_position), (gst_element_query_convert),
2726         (intersect_caps_func), (gst_pad_query_position),
2727         (gst_pad_query_convert):
2728         * gst/gstutils.h:
2729         * tools/gst-inspect.c: (print_pad_info):
2730         * tools/gst-xmlinspect.c: (print_element_info):
2731         Remove old query functions. Ported old code.
2732         Added position/convert helper functions to gstutils.
2733         Reordered gstpad.c code, grouping relevant things.
2734         Remove gst_message_new(), always need to speficy a specific
2735         message.
2736
2737
2738 2005-05-09  Andy Wingo  <wingo@pobox.com>
2739
2740         * gst/gstiterator.h: Add some includes.
2741
2742         * gst/gstqueryutils.h: Include more headers.
2743
2744         * gst/gstpad.h:
2745         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
2746         some uses of gst_pad_query.
2747
2748         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
2749         NULL out parameters.
2750         (gst_query_new_position): New proc, allocates a new position
2751         query.
2752
2753         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
2754         gstqueryutils.c to the build.
2755
2756         * gst/gststructure.c (gst_structure_set_valist): Implement with
2757         the generic G_VALUE_COLLECT.
2758         
2759 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
2760
2761         * gst/Makefile.am: (gst_headers):
2762         Added gstqueryutils.h to the list of headers to install, that was
2763         a 'nachty' move wingo :)
2764
2765 2005-05-06  Andy Wingo  <wingo@pobox.com>
2766
2767         * gst/gstquery.h
2768         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
2769         GstData, init a memchunk.
2770         (standard_definitions): Add a few query types, deprecate a few.
2771         (gst_query_get_type): New proc.
2772         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
2773         implementation.
2774         (gst_query_new_application, gst_query_get_structure): New public
2775         procs.
2776
2777         * docs/design/draft-query.txt: Removed LINKS from the query types,
2778         because all the rest can be dispatched to other pads -- seemed
2779         ugly to have a query that couldn't be dispatched. internal_links
2780         is fine as a pad method.
2781
2782         * gst/gstpad.h: Add query2 as a pad method, add the new functions
2783         in gstpad.c, but maintain binary compatibility for the moment.
2784         Will fix before 0.9 is out.
2785
2786         * gst/gstqueryutils.c: 
2787         * gst/gstqueryutils.h: New files, implement 3 methods for each
2788         query type: parse_query, parse_response, and set. Probably need an
2789         allocator as well.
2790
2791         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
2792
2793         * gst/elements/gstfilesink.c (gst_filesink_query2):
2794         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
2795         query_types, and formats methods.
2796
2797         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
2798         (gst_pad_set_query2_function): New functions.
2799         (gst_real_pad_init): Set query2_default as the default query2
2800         function. Basically just dispatches to internally linked pads.
2801
2802         Needs review!
2803         
2804         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
2805         without using the atomic operations. Only one thread can possibly
2806         be accessing the data at this point. Changed so as to avoid
2807         gst_atomic operations.
2808
2809 2005-05-06  Wim Taymans  <wim@fluendo.com>
2810
2811         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
2812         Also set caps if we use the fallback buffer alloc.
2813
2814 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
2815
2816         * docs/gst/Makefile.am:
2817         * docs/gst/gstreamer-docs.sgml:
2818         * docs/gst/gstreamer-sections.txt:
2819         * docs/gst/tmpl/gstatomic.sgml:
2820         * docs/gst/tmpl/gstmemchunk.sgml:
2821         * testsuite/elements/struct_i386.h:
2822         * win32/GStreamer.vcproj:
2823         * win32/Makefile:
2824           Purge GstAtomic stuff from docs and win32 makefiles as well
2825
2826 2005-05-06  Wim Taymans  <wim@fluendo.com>
2827
2828         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
2829         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
2830         * gst/gstpad.c: (gst_pad_peer_get_caps):
2831         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2832         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2833         (gst_queue_src_activate), (gst_queue_change_state):
2834         * gst/gstqueue.h:
2835         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2836         (intersect_caps_func):
2837         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
2838         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
2839         Some fixes for the peer_get_caps() change.
2840
2841 2005-05-06  Wim Taymans  <wim@fluendo.com>
2842
2843         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2844         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
2845         (gst_basesink_activate):
2846         Actually do something with error codes returned from the push
2847         functions.
2848
2849 2005-05-06  Wim Taymans  <wim@fluendo.com>
2850
2851         * docs/design/part-element-sink.txt:
2852         * docs/design/part-element-source.txt:
2853         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2854         (gst_basesink_event), (gst_basesink_activate):
2855         * gst/base/gstbasesink.h:
2856         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
2857         (gst_basesrc_activate):
2858         * gst/base/gstbasesrc.h:
2859         * gst/gstelement.c: (gst_element_pads_activate):
2860         Some more documentation.
2861         Fixed scheduling decision in _pads_activate().
2862
2863 2005-05-05  Andy Wingo  <wingo@pobox.com>
2864
2865         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
2866         the test suite.
2867
2868 2005-05-05  Wim Taymans  <wim@fluendo.com>
2869
2870         * gst/base/Makefile.am:
2871         * gst/base/gstbasesink.h:
2872         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2873         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
2874         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
2875         (gst_collectpads_class_init), (gst_collectpads_init),
2876         (gst_collectpads_finalize), (gst_collectpads_new),
2877         (gst_collectpads_set_function), (gst_collectpads_add_pad),
2878         (find_pad), (gst_collectpads_remove_pad),
2879         (gst_collectpads_is_active), (gst_collectpads_collect),
2880         (gst_collectpads_collect_range), (gst_collectpads_start),
2881         (gst_collectpads_stop), (gst_collectpads_peek),
2882         (gst_collectpads_pop), (gst_collectpads_available),
2883         (gst_collectpads_read), (gst_collectpads_flush),
2884         (gst_collectpads_chain):
2885         * gst/base/gstcollectpads.h:
2886         * gst/elements/Makefile.am:
2887         * gst/elements/gstelements.c:
2888         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2889         (gst_fakesink_get_times), (gst_fakesink_event),
2890         (gst_fakesink_preroll), (gst_fakesink_render):
2891         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2892         (gst_filesink_init), (gst_filesink_set_location),
2893         (gst_filesink_open_file), (gst_filesink_close_file),
2894         (gst_filesink_pad_query), (gst_filesink_event),
2895         (gst_filesink_render), (gst_filesink_change_state):
2896         * gst/elements/gstfilesink.h:
2897         Added object to help in making collect pad based elements.
2898         Ported filesink.
2899         Make event function in sink baseclass return gboolean.
2900
2901 2005-05-05  Wim Taymans  <wim@fluendo.com>
2902
2903         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
2904         (gst_bin_get_by_name):
2905         * gst/gstbuffer.h:
2906         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
2907         (gst_clock_finalize):
2908         * gst/gstdata.c: (gst_data_replace):
2909         * gst/gstdata.h:
2910         * gst/gstelement.c: (gst_element_request_pad),
2911         (gst_element_pads_activate):
2912         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
2913         (gst_object_unref):
2914         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2915         (gst_pad_set_checkgetrange_function),
2916         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
2917         (gst_pad_check_pull_range), (gst_pad_pull_range),
2918         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2919         (gst_pad_pause_task), (gst_pad_stop_task):
2920         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2921         (gst_element_request_pad), (gst_pad_proxy_getcaps):
2922         Fix name lookup in GstBin.
2923         Added _data_replace() function and _buffer_replace()
2924         Use finalize method to clean up clock.
2925         Fix refcounting on request pads.
2926         Fix pad schedule mode error.
2927         Some more object refcounting debug info,
2928
2929
2930 2005-05-04  Andy Wingo <wingo@pobox.com>
2931
2932         * check/Makefile.am:
2933         * docs/gst/tmpl/gstatomic.sgml:
2934         * docs/gst/tmpl/gstplugin.sgml:
2935         * gst/base/gstbasesink.c: (gst_basesink_activate):
2936         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
2937         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
2938         (gst_basesrc_query), (gst_basesrc_set_property),
2939         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
2940         (gst_basesrc_activate):
2941         * gst/base/gstbasesrc.h:
2942         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
2943         (gst_base_transform_src_activate):
2944         * gst/elements/gstelements.c:
2945         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2946         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2947         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2948         * gst/elements/gsttypefindelement.c: (find_element_get_length),
2949         (gst_type_find_element_checkgetrange),
2950         (gst_type_find_element_activate):
2951         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
2952         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
2953         (gst_caps_load_thyself):
2954         * gst/gstelement.c: (gst_element_pads_activate),
2955         (gst_element_save_thyself), (gst_element_restore_thyself):
2956         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
2957         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
2958         * gst/gstpad.h:
2959         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
2960         (gst_xml_parse_file), (gst_xml_parse_memory),
2961         (gst_xml_get_element), (gst_xml_make_element):
2962         * gst/indexers/gstfileindex.c: (gst_file_index_load),
2963         (_file_index_id_save_xml), (gst_file_index_commit):
2964         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
2965         (read_enum), (load_pad_template), (load_feature), (load_plugin),
2966         (load_paths):
2967         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
2968         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
2969         * tools/gst-complete.c: (main):
2970         * tools/gst-compprep.c: (main):
2971         * tools/gst-inspect.c: (print_element_properties_info):
2972         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
2973         * tools/gst-xmlinspect.c: (print_element_properties):
2974         GCC 4 fixen.
2975         
2976 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
2977
2978         * gst/gstplugin.c: (gst_plugin_check_module),
2979         (gst_plugin_check_file), (gst_plugin_load_file):
2980             apply patch from #172526 to make register work on MacOSX
2981
2982 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2983
2984         * docs/gst/tmpl/gstconfig.sgml:
2985         * gst/gstconfig.h.in:
2986           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
2987         * testsuite/debug/printf_extension.c: (main):
2988           Do not use GST_PTR_FORMAT on pointers to types with
2989           sizeof < sizeof(gpointer).  Fixes test on 64-bit
2990         * testsuite/elements/property.h:
2991           use correct printf format
2992
2993 2005-05-02  Wim Taymans  <wim@fluendo.com>
2994
2995         * docs/design/draft-push-pull.txt:
2996         * docs/design/draft-query.txt:
2997         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
2998         (gst_basesrc_start):
2999         Added draft for new query API.
3000         Added draft for better selecting scheduling methods.
3001         Make basesrc ignore length if the subclass does not support
3002         it.
3003
3004 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3005
3006         * gst/Makefile.am:
3007           possible fixes for automake-1.5 - _LIBADD is reserved
3008
3009 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3010
3011         * docs/faq/Makefile.am:
3012         * docs/manual/Makefile.am:
3013         * docs/manuals.mak:
3014         * docs/pwg/Makefile.am:
3015         * gst/Makefile.am:
3016           possible fixes for automake-1.5
3017
3018 2005-04-28  Wim Taymans  <wim@fluendo.com>
3019
3020         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3021         (gst_basesink_pad_getcaps), (gst_basesink_init),
3022         (gst_basesink_do_sync):
3023         * gst/gstclock.c: (gst_clock_entry_new):
3024         * gst/gstevent.c: (gst_event_discont_get_value):
3025         * gst/gstpipeline.c: (pipeline_bus_handler),
3026         (gst_pipeline_change_state):
3027         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3028         Better debugging of clocking info.
3029         Allow NULL values when getting discont values.
3030
3031 2005-04-27  Wim Taymans  <wim@fluendo.com>
3032
3033         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3034         * check/gst/gstpad.c: (gst_pad_suite):
3035         Increase timeout for checks.
3036
3037 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3038
3039         * check/Makefile.am:
3040           fix the broken rule for cleanup.  Apparently this rule is
3041           only needed on FC2, so maybe this warrants further autotool
3042           inspection.
3043
3044 2005-04-26  Wim Taymans  <wim@fluendo.com>
3045
3046         * gst/gsttrashstack.h:
3047         Ooohh. a nasty one! After having a failed pop() from the stack,
3048         it's possible that the stack is empty. In that case, don't
3049         follow the NULL pointer.
3050
3051 2005-04-25  Wim Taymans  <wim@fluendo.com>
3052
3053         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3054         (gst_pad_set_checkgetrange_function),
3055         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3056         (gst_pad_check_pull_range), (gst_pad_pull_range),
3057         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3058         (gst_pad_pause_task), (gst_pad_stop_task):
3059         * gst/gstplugin.c: (gst_plugin_load):
3060         * gst/gstplugin.h:
3061         Remove gst_library_load as it does more harm than good with
3062         the new g_module flags.
3063         Revert bogus caps template check in pad linking, pad caps
3064         are important when linking not the template, which is more
3065         general than the current caps.
3066
3067 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3068
3069         * gst/autoplug/.cvsignore:
3070         * gst/autoplug/Makefile.am:
3071         * gst/autoplug/gstsearchfuncs.c:
3072         * gst/autoplug/gstsearchfuncs.h:
3073         * gst/autoplug/gstspider.c:
3074         * gst/autoplug/gstspider.h:
3075         * gst/autoplug/gstspideridentity.c:
3076         * gst/autoplug/gstspideridentity.h:
3077         * gst/autoplug/spidertest.c:
3078           Die, spider, die.
3079
3080 2005-04-25  Wim Taymans  <wim@fluendo.com>
3081
3082         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3083         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3084         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3085         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3086         * gst/gstpad.h:
3087         Added stubs for unimplemented functions. 
3088
3089 2005-04-24  David Schleef  <ds@schleef.org>
3090
3091         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3092         please fix.
3093
3094 2005-04-24  David Schleef  <ds@schleef.org>
3095
3096         Convert everything from GstAtomicInt to g_atomic_int_*, and
3097         remove gstatomic.
3098         * gst/Makefile.am:
3099         * gst/gstatomic.c:
3100         * gst/gstatomic.h:
3101         * gst/gstatomic_impl.h:
3102         * gst/gstbuffer.c:
3103         * gst/gstcaps.c:
3104         * gst/gstcaps.h:
3105         * gst/gstclock.c:
3106         * gst/gstclock.h:
3107         * gst/gstdata.c:
3108         * gst/gstdata.h:
3109         * gst/gstdata_private.h:
3110         * gst/gstevent.c:
3111         * gst/gstinfo.c:
3112         * gst/gstinfo.h:
3113         * gst/gstmessage.c:
3114         * gst/gstobject.c:
3115         * gst/gstobject.h:
3116         * gst/gststructure.c:
3117         * gst/gststructure.h:
3118         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3119         * gst/gstutils.h:
3120
3121 2005-04-24  David Schleef  <ds@schleef.org>
3122
3123         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3124         make the regressions tests work.  Remove some code that is no
3125         longer true.
3126         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3127         Disable warning for pads without templates.
3128
3129 2005-04-24  David Schleef  <ds@schleef.org>
3130
3131         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3132         functions that handle filtered links.
3133         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3134         removed functions.
3135         * gst/gstutils.c: Fix/remove utility functions that handle
3136         filtered caps.
3137         * gst/gstutils.h:
3138         * gst/gstvalue.c: Add serialization/deserialization of caps
3139         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3140         requires fixing so that the filter caps notation creates
3141         a capsfilter element and sets the filter_caps property.  I
3142         think everyone probably wants to keep the shorthand notation.
3143         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3144         * docs/gst/tmpl/gstpad.sgml:
3145
3146         * gst/elements/gstelements.c: Register capsfilter element.
3147         * gst/Makefile.am: fix spacing
3148         * docs/random/ds/0.9-suggested-changes: random
3149
3150 2005-04-23  David Schleef  <ds@schleef.org>
3151
3152         * gst/elements/Makefile.am:
3153         * gst/elements/gstcapsfilter.c: New element that acts like an
3154         identity, but filters caps.  Will eventually replace filtered
3155         caps in pad linking.
3156         * gst/gstutils.c: (gst_element_create_all_pads): New function
3157         to create all the ALWAYS pads that are registered with an
3158         element class.  This functionality should eventually be
3159         merged in with GstElement initialization.
3160         * gst/gstutils.h:
3161         * testsuite/trigger/README: part of trigger test code that should
3162         have been checked in a long time ago.
3163
3164 2005-04-23  David Schleef  <ds@schleef.org>
3165
3166         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3167         needed with new versions of libtool (nobody will confirm this),
3168         and hard to carry around.
3169         * gst/autoplug/Makefile.am:
3170         * gst/base/Makefile.am:
3171         * gst/elements/Makefile.am:
3172         * gst/indexers/Makefile.am:
3173         * gst/schedulers/Makefile.am:
3174         * libs/gst/bytestream/Makefile.am:
3175         * libs/gst/control/Makefile.am:
3176         * libs/gst/dataprotocol/Makefile.am:
3177         * libs/gst/getbits/Makefile.am:
3178
3179 2005-04-21  Wim Taymans  <wim@fluendo.com>
3180
3181         * docs/design/draft-push-pull.txt:
3182         * docs/design/part-MT-refcounting.txt:
3183         * docs/design/part-TODO.txt:
3184         * docs/design/part-caps.txt:
3185         * docs/design/part-events.txt:
3186         * docs/design/part-gstbus.txt:
3187         * docs/design/part-gstpipeline.txt:
3188         * docs/design/part-messages.txt:
3189         * docs/design/part-push-pull.txt:
3190         * docs/design/part-query.txt:
3191         Some more docs.
3192
3193 2005-04-21  Wim Taymans  <wim@fluendo.com>
3194
3195         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3196         (gst_message_new), (gst_message_new_error),
3197         (gst_message_new_warning), (gst_message_new_tag),
3198         (gst_message_new_state_changed), (gst_message_new_application),
3199         (gst_message_get_structure):
3200         * gst/gstmessage.h:
3201         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3202         (gst_structure_copy_conditional):
3203         Use parent refcount in GstMessage to ensure GstStructure
3204         consistency.
3205         Cleaned up headers a bit.
3206         
3207
3208 2005-04-20  Wim Taymans  <wim@fluendo.com>
3209
3210         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3211         (gst_basesink_pad_getcaps), (gst_basesink_init),
3212         (gst_basesink_chain_unlocked):
3213         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3214         (gst_type_find_helper):
3215         * gst/elements/gsttypefindelement.c:
3216         (gst_type_find_element_have_type), (gst_type_find_element_init),
3217         (stop_typefinding), (gst_type_find_element_handle_event),
3218         (find_suggest), (gst_type_find_element_chain),
3219         (gst_type_find_element_checkgetrange),
3220         (gst_type_find_element_getrange), (do_typefind),
3221         (gst_type_find_element_activate):
3222         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3223         (gst_buffer_default_free), (gst_buffer_default_copy),
3224         (gst_buffer_set_caps):
3225         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3226         (gst_caps_replace):
3227         * gst/gstmessage.c: (gst_message_new),
3228         (gst_message_new_state_changed):
3229         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3230         (gst_pad_set_checkgetrange_function),
3231         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3232         (gst_pad_set_caps), (gst_pad_check_pull_range),
3233         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3234         * gst/gstpad.h:
3235         * gst/gsttypefind.c: (gst_type_find_register):
3236         Make gst_caps_replace() work like other _replace() functions.
3237         Use _caps_replace() where possible.
3238         Make sure _message_new() initialises its field.
3239         Add gst_static_pad_template_get_caps()
3240
3241
3242 2005-04-18  Andy Wingo  <wingo@pobox.com>
3243
3244         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3245         on the peer, not the pad. I think that was a typo. Pass an extra
3246         arg to see if random access is possible. Activate the pads as
3247         PULL_RANGE if possible.
3248
3249         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3250
3251         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3252         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3253         to PROP_....
3254
3255 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3256
3257         * docs/faq/using.xml:
3258           Add note on gstreamer-properties (#154996).
3259
3260 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3261
3262         * docs/random/bbb/optional-properties:
3263           Some analysis on optional properties.
3264
3265 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3266
3267         * docs/gst/tmpl/gstelementfactory.sgml:
3268         * gst/gstelement.h:
3269         * gst/gstelementfactory.c: (gst_element_factory_init),
3270         (gst_element_factory_cleanup), (gst_element_register),
3271         (__gst_element_factory_add_static_pad_template),
3272         (gst_element_factory_get_static_pad_templates),
3273         (gst_element_factory_can_src_caps),
3274         (gst_element_factory_can_sink_caps):
3275         * gst/registries/Makefile.am:
3276         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3277         (gst_xml_registry_class_init), (gst_xml_registry_init),
3278         (gst_xml_registry_new), (gst_xml_registry_set_property),
3279         (gst_xml_registry_get_property), (get_time), (make_dir),
3280         (gst_xml_registry_get_perms_func),
3281         (plugin_times_older_than_recurse), (plugin_times_older_than),
3282         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3283         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3284         (add_to_char_array), (read_string), (read_uint), (read_enum),
3285         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3286         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3287         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3288         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3289         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3290         (gst_xml_registry_rebuild):
3291         * gst/registries/gstlibxmlregistry.h:
3292         * tools/gst-compprep.c: (main):
3293         * tools/gst-inspect.c: (print_pad_templates_info):
3294         * tools/gst-xmlinspect.c: (print_element_info):
3295           Use libxml2 for registry parsing, use staticpadtemplates in
3296           elementfactories. Makes gst_init() +/- 10x faster.
3297
3298 2005-04-12  Wim Taymans  <wim@fluendo.com>
3299
3300         * gst/base/Makefile.am:
3301         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3302         (gst_basesink_pad_getcaps), (gst_basesink_init),
3303         (gst_basesink_event), (gst_basesink_change_state):
3304         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3305         (gst_basesrc_init), (gst_basesrc_query),
3306         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3307         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3308         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3309         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3310         (gst_basesrc_stop), (gst_basesrc_activate),
3311         (gst_basesrc_change_state):
3312         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3313         (helper_find_suggest), (gst_type_find_helper):
3314         * gst/base/gsttypefindhelper.h:
3315         * gst/elements/Makefile.am:
3316         * gst/elements/gstelements.c:
3317         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3318         (gst_fakesink_get_times), (gst_fakesink_event),
3319         (gst_fakesink_preroll), (gst_fakesink_render):
3320         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3321         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3322         (gst_fakesrc_get_property), (gst_fakesrc_create),
3323         (gst_fakesrc_start), (gst_fakesrc_stop):
3324         * gst/elements/gstfakesrc.h:
3325         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3326         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3327         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3328         (gst_filesrc_create_read), (gst_filesrc_create),
3329         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3330         (gst_filesrc_start):
3331         * gst/elements/gsttypefindelement.c:
3332         (gst_type_find_element_have_type), (gst_type_find_element_init),
3333         (start_typefinding), (stop_typefinding), (push_buffer_store),
3334         (gst_type_find_element_handle_event),
3335         (gst_type_find_element_chain),
3336         (gst_type_find_element_checkgetrange),
3337         (gst_type_find_element_getrange), (do_typefind),
3338         (gst_type_find_element_activate),
3339         (gst_type_find_element_change_state):
3340         * gst/elements/gsttypefindelement.h:
3341         * gst/gstpipeline.c: (pipeline_bus_handler):
3342         Added typefind helper.
3343         Small preroll fix in the base sink.
3344         Disable typefind code in basesrc.
3345         Crude port of typefindelement.
3346         Fakesrc cleanups.
3347
3348
3349 2005-04-11  Wim Taymans  <wim@fluendo.com>
3350
3351         * check/gst/gstbus.c: (gstbus_suite):
3352         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3353         * check/gstcheck.h:
3354           Fix up the timeout so that the test does not fail.
3355
3356 2005-04-06  Wim Taymans  <wim@fluendo.com>
3357
3358         * gst/base/README:
3359         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3360         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3361         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3362         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3363         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3364         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3365         (gst_basesrc_stop), (gst_basesrc_activate),
3366         (gst_basesrc_change_state), (basesrc_find_peek),
3367         (basesrc_find_suggest), (gst_basesrc_type_find):
3368         * gst/base/gstbasesrc.h:
3369         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3370         (gst_filesrc_class_init), (gst_filesrc_init),
3371         (gst_filesrc_finalize), (gst_filesrc_set_location),
3372         (gst_filesrc_set_property), (gst_filesrc_get_property),
3373         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3374         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3375         (gst_filesrc_create_read), (gst_filesrc_create),
3376         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3377         * gst/elements/gstfilesrc.h:
3378         * gst/gstelement.c: (gst_element_get_state_func),
3379         (gst_element_lost_state), (gst_element_pads_activate):
3380         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3381         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3382         (gst_pad_pull_range):
3383         * gst/gstpad.h:
3384         More work on the generic source base class, implement seeking,
3385         query.
3386         Make filesrc extend the base source class.
3387         Added gst_pad_set_checkgetrange_function to GstPad.
3388
3389 2005-04-06  Andy Wingo  <wingo@pobox.com>
3390
3391         * pkgconfig/gstreamer-base.pc.in:
3392         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3393
3394         * pkgconfig/Makefile.am:
3395         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3396
3397 2005-04-04  Wim Taymans  <wim@fluendo.com>
3398
3399         * gst/base/Makefile.am:
3400         * gst/base/README:
3401         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3402         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3403         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3404         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3405         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3406         (gst_basesrc_base_init), (gst_basesrc_class_init),
3407         (gst_basesrc_init), (gst_basesrc_get_formats),
3408         (gst_basesrc_get_query_types), (gst_basesrc_query),
3409         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3410         (gst_basesrc_set_property), (gst_basesrc_get_property),
3411         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3412         (gst_basesrc_loop), (gst_basesrc_activate),
3413         (gst_basesrc_change_state):
3414         * gst/base/gstbasesrc.h:
3415         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3416         (gst_fakesrc_class_init), (gst_fakesrc_init),
3417         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3418         (gst_fakesrc_get_property), (gst_fakesrc_create):
3419         * gst/elements/gstfakesrc.h:
3420         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3421         (gst_filesrc_open_file), (gst_filesrc_loop),
3422         (gst_filesrc_activate), (filesrc_find_peek),
3423         (gst_filesrc_type_find):
3424         Made base source class, make fakesrc extend it.
3425         Add comments to basesink class.
3426         Some filesrc cleanup.
3427
3428 2005-03-31  David Schleef  <ds@schleef.org>
3429
3430         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3431         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3432         expected to link against libgstreamer.
3433         * gst/base/Makefile.am: link against libgstreamer
3434         * gst/elements/Makefile.am: same
3435
3436 2005-03-31  Andy Wingo  <wingo@pobox.com>
3437
3438         * tests/instantiate/Makefile.am:
3439         * tests/instantiate/caps.c: Add test to test speed of caps copy
3440         and free.
3441
3442         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3443         GMemChunk to be fair.
3444
3445         * gst/gsttrashstack.h: Remove warning about using the fallback
3446         trash stack implementation, it's still faster than malloc.
3447
3448 2005-03-30  Andy Wingo  <wingo@pobox.com>
3449
3450         * tests/complexity.c: Add a copyright.
3451
3452 2005-03-31  Wim Taymans  <wim@fluendo.com>
3453
3454         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3455         (gst_base_transform_class_init), (gst_base_transform_init),
3456         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3457         (gst_base_transform_get_property),
3458         (gst_base_transform_sink_activate),
3459         (gst_base_transform_src_activate),
3460         (gst_base_transform_change_state):
3461         * gst/base/gstbasetransform.h:
3462         * gst/elements/gstidentity.c: (gst_identity_class_init),
3463         (gst_identity_event), (gst_identity_check_perfect),
3464         (gst_identity_transform), (gst_identity_start),
3465         (gst_identity_stop):
3466         Added start/stop methods to transform base class so subclasses 
3467         don't need to deal with state changes even.
3468
3469 2005-03-31  Wim Taymans  <wim@fluendo.com>
3470
3471         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3472         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3473         * gst/gstevent.h:
3474         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3475         (gst_pad_pull_range):
3476         Added rate to the discont event to prepare for variable speed
3477         and reverse playback.
3478
3479 2005-03-29  David Schleef  <ds@schleef.org>
3480
3481         * configure.ac:
3482         * testsuite/trigger/Makefile.am:
3483         * testsuite/trigger/trigger.c: A little example program to show
3484         how trigger-based elements can work.
3485
3486 2005-03-29  Wim Taymans  <wim@fluendo.com>
3487
3488         * gst/base/Makefile.am:
3489         * gst/base/README:
3490         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3491         (gst_basesink_base_init), (gst_basesink_class_init),
3492         (gst_basesink_pad_getcaps), (gst_basesink_init),
3493         (gst_basesink_activate), (gst_basesink_change_state):
3494         * gst/base/gstbasesink.h:
3495         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3496         (gst_base_transform_base_init), (gst_base_transform_finalize),
3497         (gst_base_transform_class_init), (gst_base_transform_init),
3498         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3499         (gst_base_transform_event), (gst_base_transform_getrange),
3500         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3501         (gst_base_transform_set_property),
3502         (gst_base_transform_get_property),
3503         (gst_base_transform_sink_activate),
3504         (gst_base_transform_src_activate),
3505         (gst_base_transform_change_state):
3506         * gst/base/gstbasetransform.h:
3507         * gst/elements/gstidentity.c: (gst_identity_finalize),
3508         (gst_identity_class_init), (gst_identity_init),
3509         (gst_identity_event), (gst_identity_check_perfect),
3510         (gst_identity_transform), (gst_identity_set_property),
3511         (gst_identity_get_property), (gst_identity_change_state):
3512         * gst/elements/gstidentity.h:
3513         * gst/gstelement.c: (gst_element_get_state_func),
3514         (gst_element_lost_state), (gst_element_pads_activate):
3515         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3516         (gst_pad_check_pull_range), (gst_pad_pull_range):
3517         * gst/gstpad.h:
3518         Simplify pad activation.
3519         Added function to check if pull_range can be performed.
3520         Error out when pulling inactive or flushing pads.
3521         Removed const from refcounted types as it does not make sense.
3522         Simplify pad templates in basesink
3523         Added base class for simple 1-to-1 transforms.
3524         Make identity subclass the base transform.
3525
3526 2005-03-29  Andy Wingo  <wingo@pobox.com>
3527
3528         * docs/libs/gstreamer-libs-overrides.txt: 
3529         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3530         really don't understand what's going on, but like whatever. I want
3531         green buildbot!
3532
3533         * docs/gst/Makefile.am:
3534         * docs/libs/Makefile.am: Dist the overrides files.
3535
3536         * check/Makefile.am (clean-local): Remove .libs directories.
3537
3538         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3539         elements to EXTRA_DIST, so po/ files are happy.
3540
3541         * po/POTFILES.in: Er, remove it here.
3542
3543         * po/POTFILES: Remove gstspider.c.
3544
3545         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3546
3547         * docs/libs/gstreamer-libs-docs.sgml: 
3548         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3549         bytestream.
3550
3551         * tests/complexity.c (main): Set the length of the preroll queue
3552         on the sinks to prevent a lockup.
3553
3554         * libs/gst/dataprotocol/Makefile.am: 
3555         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3556         the same as the one in check/gst-libs/gdp.c.
3557
3558         * po/, docs/gst/: Commit automatic changes to docs and po files.
3559
3560         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3561         the versioned libgstbase.
3562
3563         * check/Makefile.am: Depend on an unversioned gst-register, seems
3564         to make autoconf happier.
3565
3566         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3567
3568 2005-03-28  Wim Taymans  <wim@fluendo.com>
3569
3570         * configure.ac:
3571         * docs/design/part-gstelement.txt:
3572         * docs/design/part-negotiation.txt:
3573         * docs/design/part-preroll.txt:
3574         * docs/design/part-scheduling.txt:
3575         * docs/design/part-states.txt:
3576         * gst/Makefile.am:
3577         * gst/base/Makefile.am:
3578         * gst/base/README:
3579         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3580         (gst_basesink_base_init), (gst_basesink_class_init),
3581         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3582         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3583         (gst_basesink_set_pad_functions),
3584         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3585         (gst_basesink_set_property), (gst_basesink_get_property),
3586         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3587         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3588         (gst_basesink_preroll_queue_push),
3589         (gst_basesink_preroll_queue_empty),
3590         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3591         (gst_basesink_event), (gst_basesink_get_times),
3592         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3593         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3594         (gst_basesink_loop), (gst_basesink_activate),
3595         (gst_basesink_change_state):
3596         * gst/base/gstbasesink.h:
3597         * gst/elements/Makefile.am:
3598         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3599         (gst_fakesink_class_init), (gst_fakesink_init),
3600         (gst_fakesink_set_property), (gst_fakesink_get_property),
3601         (gst_fakesink_get_times), (gst_fakesink_event),
3602         (gst_fakesink_preroll), (gst_fakesink_render),
3603         (gst_fakesink_change_state):
3604         * gst/elements/gstfakesink.h:
3605         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3606         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3607         * gst/gstelement.c: (gst_element_add_pad),
3608         (gst_element_get_state_func), (gst_element_abort_state),
3609         (gst_element_commit_state), (gst_element_lost_state),
3610         (gst_element_set_state), (gst_element_pads_activate):
3611         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3612         * gst/gstpipeline.c: (gst_pipeline_send_event),
3613         (gst_pipeline_change_state):
3614         Added state change code.
3615         Added/updated docs.
3616         Added sink base class, make fakesink extend the base class.
3617         Small cleanups in GstPipeline.
3618
3619 2005-03-26  David Schleef  <ds@schleef.org>
3620
3621         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3622         is broken and should be implemented in a different library.
3623         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3624         * gst/gst.h: remove gstcpu.h
3625         * gst/gstcpu.c: remove
3626         * gst/gstcpu.h: remove
3627         * gst/Makefile.am.future: Remove this file.  It's ancient.
3628
3629 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3630
3631         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3632         (gst_bin_send_event):
3633           Add default event/set_manager handlers. The set_manager handler
3634           takes care that the manager is distributed over kids that were
3635           already in the bin before the manager was set. The event handler
3636           is a utility virtual function that sends the event over all sinks,
3637           so that gst_element_send_event (bin, event); has the expected
3638           behaviour.
3639         * gst/gstpad.c: (gst_pad_event_default):
3640           Re-install default event handling for discontinuities, so that
3641           seeking works without requiring hacks in applications or extra
3642           code in sinks.
3643         * gst/gstpipeline.c: (gst_pipeline_class_init),
3644         (gst_pipeline_send_event):
3645           Half hack, half utility: set a pipeline to PAUSED for seek events,
3646           since that is the only way we can guarantee a/v sync. Means that
3647           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3648           and it "just works".
3649
3650 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3651
3652         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3653           Lock/unlock mismatch.
3654
3655 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3656
3657         * docs/faq/gst-uninstalled:
3658           add gst-plugins-base
3659         * docs/gst/Makefile.am:
3660           don't error out until docs are fixed
3661         * docs/gst/gstreamer.types:
3662           remove thread
3663
3664 2005-03-22  Wim Taymans  <wim@fluendo.com>
3665
3666         * check/Makefile.am:
3667         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3668         * gst/gststructure.c: (gst_structure_set_valist),
3669         (gst_structure_copy_conditional):
3670         Activated more tests.
3671         Added message test.
3672         Added G_TYPE_POINTER to GstStructure.
3673         
3674
3675 2005-03-22  Wim Taymans  <wim@fluendo.com>
3676
3677         * docs/design/part-TODO.txt:
3678         * docs/design/part-events.txt:
3679         * docs/design/part-gstbin.txt:
3680         * docs/design/part-gstbus.txt:
3681         * docs/design/part-gstpipeline.txt:
3682         * docs/design/part-messages.txt:
3683         * gst/gstbus.c:
3684         * gst/gstmessage.c:
3685         Docs updates
3686
3687 2005-03-21  Wim Taymans  <wim@fluendo.com>
3688
3689         * gst/gstbus.c: (gst_bus_post):
3690         Fix copy-and-paste error.
3691
3692 2005-03-21  Wim Taymans  <wim@fluendo.com>
3693
3694         * check/Makefile.am:
3695         * gst/Makefile.am:
3696         * gst/elements/Makefile.am:
3697         * gst/elements/gstelements.c:
3698         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3699         (gst_fakesink_event), (gst_fakesink_chain):
3700         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3701         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3702         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3703         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3704         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3705         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3706         (gst_fakesrc_loop), (gst_fakesrc_activate),
3707         (gst_fakesrc_change_state):
3708         * gst/elements/gstfakesrc.h:
3709         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3710         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
3711         (gst_filesrc_open_file), (gst_filesrc_loop),
3712         (gst_filesrc_activate), (gst_filesrc_change_state),
3713         (filesrc_find_peek), (filesrc_find_suggest),
3714         (gst_filesrc_type_find):
3715         * gst/elements/gstidentity.c: (gst_identity_finalize),
3716         (gst_identity_class_init), (gst_identity_init),
3717         (gst_identity_proxy_getcaps), (identity_queue_push),
3718         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
3719         (gst_identity_getrange), (gst_identity_chain),
3720         (gst_identity_sink_loop), (gst_identity_src_loop),
3721         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
3722         (gst_identity_set_property), (gst_identity_get_property),
3723         (gst_identity_change_state):
3724         * gst/elements/gstidentity.h:
3725         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
3726         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
3727         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
3728         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
3729         (gst_tee_sink_activate):
3730         * gst/elements/gsttee.h:
3731         * gst/gst.c: (gst_register_core_elements), (init_post):
3732         * gst/gst.h:
3733         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
3734         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
3735         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
3736         (gst_bin_change_state):
3737         * gst/gstbin.h:
3738         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
3739         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
3740         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
3741         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
3742         (gst_bus_set_sync_handler), (gst_bus_create_watch),
3743         (bus_watch_callback), (bus_watch_destroy),
3744         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
3745         (poll_timeout), (gst_bus_poll):
3746         * gst/gstbus.h:
3747         * gst/gstcaps.h:
3748         * gst/gstdata.h:
3749         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3750         (gst_element_post_message), (gst_element_message_full),
3751         (gst_element_get_state_func), (gst_element_get_state),
3752         (gst_element_abort_state), (gst_element_commit_state),
3753         (gst_element_lost_state), (gst_element_set_state),
3754         (gst_element_pads_activate), (gst_element_change_state),
3755         (gst_element_dispose), (gst_element_set_manager_func),
3756         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
3757         (gst_element_set_manager), (gst_element_get_manager),
3758         (gst_element_set_bus), (gst_element_get_bus),
3759         (gst_element_set_scheduler), (gst_element_get_scheduler):
3760         * gst/gstelement.h:
3761         * gst/gstevent.c: (gst_event_new_segment_seek),
3762         (gst_event_new_flush):
3763         * gst/gstevent.h:
3764         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
3765         (_gst_message_free), (gst_message_get_type), (gst_message_new),
3766         (gst_message_new_eos), (gst_message_new_error),
3767         (gst_message_new_warning), (gst_message_new_tag),
3768         (gst_message_new_state_changed), (gst_message_new_application),
3769         (gst_message_get_structure), (gst_message_parse_tag),
3770         (gst_message_parse_state_changed), (gst_message_parse_error),
3771         (gst_message_parse_warning):
3772         * gst/gstmessage.h:
3773         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
3774         (gst_real_pad_set_property), (gst_pad_set_active),
3775         (gst_pad_is_active), (gst_pad_set_blocked_async),
3776         (gst_pad_set_blocked), (gst_pad_is_blocked),
3777         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
3778         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
3779         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
3780         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
3781         (gst_pad_link_filtered), (gst_pad_relink_filtered),
3782         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
3783         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
3784         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
3785         (gst_pad_set_caps), (gst_pad_configure_sink),
3786         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
3787         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
3788         (gst_real_pad_dispose), (gst_real_pad_finalize),
3789         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
3790         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3791         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
3792         * gst/gstpad.h:
3793         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
3794         (pipeline_bus_handler), (gst_pipeline_change_state),
3795         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
3796         * gst/gstpipeline.h:
3797         * gst/gstprobe.h:
3798         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
3799         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
3800         (gst_queue_link_src), (gst_queue_bufferalloc),
3801         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
3802         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
3803         (gst_queue_loop), (gst_queue_handle_src_event),
3804         (gst_queue_handle_src_query), (gst_queue_src_activate),
3805         (gst_queue_change_state):
3806         * gst/gstqueue.h:
3807         * gst/gstscheduler.c: (gst_scheduler_init),
3808         (gst_scheduler_dispose), (gst_scheduler_create_task),
3809         (gst_scheduler_factory_create):
3810         * gst/gstscheduler.h:
3811         * gst/gststructure.c: (gst_structure_get_type),
3812         (gst_structure_copy_conditional):
3813         * gst/gststructure.h:
3814         * gst/gsttaginterface.h:
3815         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
3816         (gst_task_init), (gst_task_dispose), (gst_task_create),
3817         (gst_task_get_state), (gst_task_start), (gst_task_stop),
3818         (gst_task_pause):
3819         * gst/gsttask.h:
3820         * gst/gstthread.c:
3821         * gst/gstthread.h:
3822         * gst/gsttypes.h:
3823         * gst/schedulers/Makefile.am:
3824         * gst/schedulers/cothreads_compat.h:
3825         * gst/schedulers/entryscheduler.c:
3826         * gst/schedulers/faircothreads.c:
3827         * gst/schedulers/faircothreads.h:
3828         * gst/schedulers/fairscheduler.c:
3829         * gst/schedulers/gstbasicscheduler.c:
3830         * gst/schedulers/gstoptimalscheduler.c:
3831         * gst/schedulers/gthread-cothreads.h:
3832         * gst/schedulers/threadscheduler.c:
3833         (gst_thread_scheduler_task_get_type),
3834         (gst_thread_scheduler_task_class_init),
3835         (gst_thread_scheduler_task_init),
3836         (gst_thread_scheduler_task_start),
3837         (gst_thread_scheduler_task_stop),
3838         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
3839         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
3840         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
3841         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
3842         (plugin_init):
3843         * libs/gst/Makefile.am:
3844         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
3845         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
3846         (gst_file_pad_parent_set):
3847         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3848         (gst_dp_event_from_packet):
3849         * tests/complexity.c: (main):
3850         * tests/mass_elements.c: (main):
3851         * testsuite/states/locked.c: (message_received), (main):
3852         * testsuite/states/parent.c: (main):
3853         * tools/gst-inspect.c: (print_element_flag_info),
3854         (print_implementation_info), (print_pad_info):
3855         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
3856         (main):
3857         * tools/gst-md5sum.c: (event_loop), (main):
3858         * tools/gst-typefind.c: (main):
3859         * tools/gst-xmlinspect.c: (print_element_info):
3860         Next big merge.
3861         Added GstBus for mainloop integration.
3862         Added GstMessage for sending notifications on the bus.
3863         Added GstTask as an abstraction for pipeline entry points.
3864         Removed GstThread.
3865         Removed Schedulers.
3866         Simplified GstQueue for multithreaded core.
3867         Made _link threadsafe, removed old capsnego.
3868         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
3869         Added pad blocking functions.
3870         Reworked scheduling functions in GstPad to prepare for
3871         scheduling updates soon.
3872         Moved events out of data stream.
3873         Simplified GstEvent types.
3874         Added return values to push/pull.
3875         Removed clocking from GstElement.
3876         Added prototypes for state change function for next merge.
3877         Removed iterate from bins and state change management.
3878         Fixed some elements, disabled others for now.
3879         Fixed -inspect and -launch.
3880         Added check for GstBus.
3881
3882 2005-03-10  Wim Taymans  <wim@fluendo.com>
3883
3884         * docs/design/part-MT-refcounting.txt:
3885         * docs/design/part-clocks.txt:
3886         * docs/design/part-gstelement.txt:
3887         * docs/design/part-gstobject.txt:
3888         * docs/design/part-standards.txt:
3889         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3890         (gst_bin_remove_func), (gst_bin_remove):
3891         * gst/gstbin.h:
3892         * gst/gstbuffer.c:
3893         * gst/gstcaps.h:
3894         * testsuite/clock/clock1.c: (main):
3895         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
3896         (main):
3897         * testsuite/dlopen/loadgst.c: (do_test):
3898         * testsuite/refcounting/bin.c: (add_remove_test1),
3899         (add_remove_test2), (main):
3900         * testsuite/refcounting/element.c: (main):
3901         * testsuite/refcounting/element_pad.c: (main):
3902         * testsuite/refcounting/pad.c: (main):
3903         * tools/gst-launch.c: (sigint_handler_sighandler):
3904         * tools/gst-typefind.c: (main):
3905         Doc updates.
3906         Added doc about clock.
3907         removed gst_bin_iterate_recurse_up(), marked methods
3908         for removal.
3909         Fix more testsuites.
3910
3911 2005-03-09  Wim Taymans  <wim@fluendo.com>
3912
3913         * gst/gstpad.c: (gst_pad_get_direction),
3914         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
3915         (gst_pad_collect_valist):
3916         * testsuite/bins/interface.c: (main):
3917         * testsuite/caps/audioscale.c: (test_caps):
3918         * testsuite/caps/caps.c: (test1), (test2), (test3):
3919         * testsuite/caps/deserialize.c: (main):
3920         * testsuite/caps/enumcaps.c: (main):
3921         * testsuite/caps/filtercaps.c: (main):
3922         * testsuite/caps/intersect2.c: (main):
3923         * testsuite/caps/random.c: (main):
3924         * testsuite/caps/renegotiate.c: (my_fixate), (main):
3925         * testsuite/caps/sets.c: (check_caps):
3926         * testsuite/caps/simplify.c: (check_caps), (main):
3927         * testsuite/caps/subtract.c: (check_caps):
3928         Fix _pad_get_direction wrt ghostpads.
3929         Fix caps testsuite.
3930
3931 2005-03-09  Wim Taymans  <wim@fluendo.com>
3932
3933         * check/Makefile.am:
3934         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
3935         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
3936         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
3937         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
3938         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
3939         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
3940         (gst_bin_remove), (gst_bin_iterate_recurse_up),
3941         (bin_element_is_sink), (gst_bin_iterate_sinks),
3942         (gst_bin_iterate_all_by_interface):
3943         * gst/gstbin.h:
3944         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
3945         (gst_element_change_state), (gst_element_dispose),
3946         (gst_element_finalize), (gst_element_set_loop_function):
3947         * gst/gstelement.h:
3948         * gst/gstiterator.c: (find_custom_fold_func):
3949         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3950         (gst_pad_collectv), (gst_pad_collect_valist),
3951         (gst_pad_template_new):
3952         * gst/gstpipeline.c: (gst_pipeline_class_init),
3953         (gst_pipeline_dispose), (gst_pipeline_set_property),
3954         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
3955         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
3956         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
3957         * gst/gstutils.h:
3958         * gst/schedulers/entryscheduler.c:
3959         * gst/schedulers/gstbasicscheduler.c:
3960         (gst_basic_scheduler_cothreaded_chain),
3961         (gst_basic_scheduler_chain_add_element):
3962         * testsuite/bins/interface.c: (main):
3963         Added GstBin test.
3964         Added GstSystemClock test.
3965         Implemented clock distribution code in GstBin.
3966         Implemented iterate sinks method for future use.
3967         Rearranged gstelement.h
3968         Fix GstIterator comparison bug.
3969         Moved some code to GstPipeline, mostly clocking related.
3970
3971 2005-03-09  Wim Taymans  <wim@fluendo.com>
3972
3973         * configure.ac:
3974         * gst/gst_private.h:
3975         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3976         (gst_bin_remove_func), (gst_bin_remove),
3977         (gst_bin_get_by_name_recurse_up):
3978         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
3979         (gst_clock_id_compare_func), (gst_clock_id_wait),
3980         (gst_clock_id_wait_async), (gst_clock_init),
3981         (gst_clock_adjust_unlocked), (gst_clock_get_time):
3982         * gst/gstelement.h:
3983         * gst/gstinfo.c: (_gst_debug_init):
3984         * gst/gstobject.h:
3985         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3986         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
3987         * gst/gstpad.h:
3988         Bump version number, we're now 0.9.0
3989         Add future debugging category.
3990         Fix NULL _unref() in _get_by_name_recurse_up
3991         Rearrange gstpad.h.
3992         Update some docs.
3993
3994 2005-03-08  Wim Taymans  <wim@fluendo.com>
3995
3996         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
3997         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3998         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3999         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4000         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4001         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4002         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4003         * gst/elements/gstidentity.c: (gst_identity_class_init):
4004         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4005         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4006         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4007         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4008         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4009         (gst_tee_link):
4010         * gst/gstelement.c: (gst_element_class_init),
4011         (gst_element_base_class_init), (gst_element_init),
4012         (gst_element_get_random_pad), (gst_element_wait_state_change),
4013         (gst_element_change_state), (gst_element_dispose),
4014         (gst_element_finalize), (gst_element_set_loop_function):
4015         * gst/gstelement.h:
4016         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4017         * gst/gstthread.c: (gst_thread_class_init),
4018         (gst_thread_release_children_locks), (gst_thread_change_state):
4019         * gst/schedulers/gstbasicscheduler.c:
4020         (gst_basic_scheduler_loopfunc_wrapper),
4021         (gst_basic_scheduler_chain_wrapper),
4022         (gst_basic_scheduler_src_wrapper),
4023         (gst_basic_scheduler_remove_element):
4024         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4025         Remove threadsafe properties. Fix elements because GObject
4026         complains when installing a property before declaring a
4027         set/get_property handler.
4028         Rearrange gstelement.h file, use STATE macros for state locks.
4029         Free mutexes in the finalize method instead of dispose.
4030
4031 2005-03-08  Wim Taymans  <wim@fluendo.com>
4032
4033         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4034         * gst/gstthread.c: (gst_thread_release_children_locks):
4035         Added parentage check.
4036         Fix build og GstThread again.
4037
4038 2005-03-08  Wim Taymans  <wim@fluendo.com>
4039
4040         * docs/design/part-MT-refcounting.txt:
4041         * docs/design/part-conventions.txt:
4042         * docs/design/part-gstobject.txt:
4043         * docs/design/part-relations.txt:
4044         * docs/design/part-standards.txt:
4045         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4046         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4047         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4048         (gst_bin_iterate_all_by_interface):
4049         * gst/gstbuffer.h:
4050         * gst/gstclock.h:
4051         * gst/gstelement.c: (gst_element_class_init),
4052         (gst_element_change_state), (gst_element_set_loop_function):
4053         * gst/gstelement.h:
4054         * gst/gstiterator.c:
4055         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4056         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4057         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4058         (gst_object_set_parent), (gst_object_unparent),
4059         (gst_object_check_uniqueness):
4060         * gst/gstobject.h:
4061         Docs updates, clean up some headers.
4062
4063 2005-03-07  Wim Taymans  <wim@fluendo.com>
4064
4065         * check/.cvsignore:
4066         * check/Makefile.am:
4067         * check/gst-libs/.cvsignore:
4068         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4069         * check/gst/.cvsignore:
4070         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4071         (START_TEST), (gstbus_suite), (main):
4072         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4073         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4074         (gst_data_suite), (main):
4075         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4076         (add_fold_func), (gstiterator_suite), (main):
4077         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4078         (thread_name_object), (thread_name_object_default),
4079         (gst_object_name_compare), (gst_object_suite), (main):
4080         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4081         (gst_pad_suite), (main):
4082         * check/gstcheck.c: (gst_check_log_message_func),
4083         (gst_check_log_critical_func), (gst_check_init):
4084         * check/gstcheck.h:
4085         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4086         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4087         Added checks.
4088
4089 2005-03-07  Wim Taymans  <wim@fluendo.com>
4090
4091         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4092         (gst_list_iterator_next), (gst_list_iterator_resync),
4093         (gst_list_iterator_free), (gst_iterator_new_list),
4094         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4095         (gst_iterator_free), (gst_iterator_push), (filter_next),
4096         (filter_resync), (filter_uninit), (filter_free),
4097         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4098         (gst_iterator_foreach), (find_custom_fold_func),
4099         (gst_iterator_find_custom):
4100         * gst/gstiterator.h:
4101         Added missing files.
4102
4103 2005-03-07  Wim Taymans  <wim@fluendo.com>
4104
4105         * Makefile.am:
4106         * configure.ac:
4107         * docs/design/part-MT-refcounting.txt:
4108         * docs/design/part-conventions.txt:
4109         * docs/design/part-gstobject.txt:
4110         * docs/design/part-relations.txt:
4111         * examples/mixer/mixer.c: (main):
4112         * examples/thread/thread.c: (eos), (main):
4113         * gst/Makefile.am:
4114         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4115         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4116         (gst_spider_plug_from_srcpad):
4117         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4118         (gst_spider_identity_change_state),
4119         (gst_spider_identity_sink_loop_type_finding):
4120         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4121         * gst/elements/gstidentity.c: (gst_identity_init):
4122         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4123         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4124         * gst/elements/gsttypefindelement.c: (free_entry):
4125         * gst/gst.c:
4126         * gst/gst.h:
4127         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4128         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4129         (gst_bin_set_index), (gst_bin_set_element_sched),
4130         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4131         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4132         (gst_bin_iterate_elements), (iterate_child_recurse),
4133         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4134         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4135         (compare_interface), (gst_bin_get_by_interface),
4136         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4137         * gst/gstbin.h:
4138         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4139         (gst_buffer_default_free), (gst_buffer_default_copy),
4140         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4141         (gst_buffer_create_sub):
4142         * gst/gstbuffer.h:
4143         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4144         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4145         (gst_caps_unref), (gst_static_caps_get),
4146         (gst_caps_remove_and_get_structure), (gst_caps_append),
4147         (gst_caps_append_structure), (gst_caps_remove_structure),
4148         (gst_caps_copy_nth), (gst_caps_set_simple),
4149         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4150         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4151         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4152         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4153         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4154         (gst_caps_structure_figure_out_union),
4155         (gst_caps_switch_structures), (gst_caps_do_simplify),
4156         (gst_caps_replace), (gst_caps_from_string),
4157         (gst_caps_copy_conditional):
4158         * gst/gstcaps.h:
4159         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4160         (_gst_clock_id_free), (gst_clock_id_unref),
4161         (gst_clock_id_compare_func), (gst_clock_id_wait),
4162         (gst_clock_id_wait_async), (gst_clock_class_init),
4163         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4164         (gst_clock_get_time), (gst_clock_set_time_adjust),
4165         (gst_clock_set_property), (gst_clock_get_property):
4166         * gst/gstclock.h:
4167         * gst/gstcompat.h:
4168         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4169         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4170         * gst/gstdata.h:
4171         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4172         (gst_element_requires_clock), (gst_element_provides_clock),
4173         (gst_element_set_clock), (gst_element_clock_wait),
4174         (gst_element_wait), (gst_element_set_time_delay),
4175         (gst_element_is_indexable), (gst_element_add_pad),
4176         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4177         (pad_compare_name), (gst_element_get_static_pad),
4178         (gst_element_request_pad), (gst_element_get_request_pad),
4179         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4180         (gst_element_class_get_pad_template_list),
4181         (gst_element_class_get_pad_template), (gst_element_error_func),
4182         (gst_element_get_random_pad), (gst_element_get_event_masks),
4183         (gst_element_send_event), (gst_element_seek),
4184         (gst_element_get_query_types), (gst_element_query),
4185         (gst_element_get_formats), (gst_element_convert),
4186         (gst_element_is_locked_state), (gst_element_set_locked_state),
4187         (gst_element_sync_state_with_parent), (gst_element_change_state),
4188         (gst_element_finalize), (gst_element_yield),
4189         (gst_element_interrupt), (gst_element_set_scheduler),
4190         (gst_element_get_scheduler), (gst_element_set_loop_function):
4191         * gst/gstelement.h:
4192         * gst/gstevent.h:
4193         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4194         (gst_format_get_by_nick), (gst_format_get_details),
4195         (gst_format_iterate_definitions):
4196         * gst/gstformat.h:
4197         * gst/gstindex.c: (gst_index_gtype_resolver):
4198         * gst/gstinfo.c:
4199         * gst/gstinfo.h:
4200         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4201         (gst_mem_chunk_free):
4202         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4203         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4204         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4205         (gst_object_dispatch_properties_changed),
4206         (gst_object_set_name_default), (gst_object_set_name),
4207         (gst_object_get_name), (gst_object_set_name_prefix),
4208         (gst_object_get_name_prefix), (gst_object_set_parent),
4209         (gst_object_get_parent), (gst_object_unparent),
4210         (gst_object_check_uniqueness), (gst_object_save_thyself),
4211         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4212         (gst_object_set_property), (gst_object_get_property),
4213         (gst_object_get_path_string):
4214         * gst/gstobject.h:
4215         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4216         (gst_real_pad_init), (gst_real_pad_get_property),
4217         (gst_pad_custom_new), (gst_pad_get_direction),
4218         (gst_pad_set_active), (gst_pad_is_active),
4219         (gst_pad_set_event_function), (gst_pad_is_linked),
4220         (gst_pad_link_free), (gst_pad_link_intersect),
4221         (gst_pad_link_fixate), (gst_pad_set_caps),
4222         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4223         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4224         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4225         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4226         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4227         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4228         (gst_pad_realize), (gst_pad_get_allowed_caps),
4229         (gst_real_pad_dispose), (gst_real_pad_finalize),
4230         (gst_pad_collectv), (gst_pad_collect_valist),
4231         (gst_pad_template_dispose), (gst_pad_template_new),
4232         (gst_pad_get_internal_links):
4233         * gst/gstpad.h:
4234         * gst/gstpipeline.c: (gst_pipeline_dispose),
4235         (gst_pipeline_change_state):
4236         * gst/gstpipeline.h:
4237         * gst/gstplugin.c:
4238         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4239         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4240         * gst/gstpluginfeature.h:
4241         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4242         * gst/gstquery.c: (_gst_query_type_initialize),
4243         (gst_query_type_register), (gst_query_type_get_by_nick),
4244         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4245         * gst/gstquery.h:
4246         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4247         * gst/gstscheduler.c: (gst_scheduler_add_element),
4248         (gst_scheduler_factory_create):
4249         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4250         (gst_structure_free), (gst_structure_set_name),
4251         (gst_structure_id_set_value), (gst_structure_set_value),
4252         (gst_structure_set_valist), (gst_structure_remove_field),
4253         (gst_structure_remove_fields),
4254         (gst_structure_remove_fields_valist),
4255         (gst_structure_remove_all_fields), (gst_structure_foreach),
4256         (gst_structure_map_in_place),
4257         (gst_caps_structure_fixate_field_nearest_int),
4258         (gst_caps_structure_fixate_field_nearest_double):
4259         * gst/gststructure.h:
4260         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4261         (gst_system_clock_init), (gst_system_clock_dispose),
4262         (gst_system_clock_async_thread),
4263         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4264         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4265         * gst/gstsystemclock.h:
4266         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4267         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4268         * gst/gsttaginterface.c:
4269         * gst/gstthread.c: (gst_thread_dispose),
4270         (gst_thread_release_children_locks), (gst_thread_change_state),
4271         (gst_thread_main_loop):
4272         * gst/gsttrashstack.h:
4273         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4274         * gst/gsttypes.h:
4275         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4276         (gst_element_request_pad), (gst_element_get_pad_from_template),
4277         (gst_element_request_compatible_pad),
4278         (gst_element_get_compatible_pad_filtered),
4279         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4280         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4281         (gst_element_link_many), (gst_element_link),
4282         (gst_element_link_pads), (gst_element_unlink_pads),
4283         (gst_element_unlink_many), (gst_element_unlink),
4284         (gst_pad_can_link_filtered), (gst_pad_can_link),
4285         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4286         (gst_object_default_error), (gst_bin_add_many),
4287         (gst_bin_remove_many), (gst_element_populate_std_props),
4288         (gst_element_class_install_std_props), (gst_buffer_merge),
4289         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4290         (link_fold_func), (gst_pad_proxy_setcaps):
4291         * gst/gstutils.h:
4292         * gst/gstvalue.c: (gst_value_deserialize_string):
4293         * gst/parse/grammar.y:
4294         * gst/schedulers/gstbasicscheduler.c:
4295         (gst_basic_scheduler_cothreaded_chain),
4296         (gst_basic_scheduler_chain_recursive_add),
4297         (gst_basic_scheduler_pad_link):
4298         * gst/schedulers/gstoptimalscheduler.c:
4299         (get_group_schedule_function),
4300         (gst_opt_scheduler_state_transition),
4301         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4302         * libs/gst/bytestream/bytestream.c:
4303         * libs/gst/dataprotocol/dataprotocol.c:
4304         (gst_dp_header_from_buffer):
4305         * po/nb.po:
4306         * po/ru.po:
4307         * tests/threadstate/threadstate2.c: (eos):
4308         * tools/gst-compprep.c: (main):
4309         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4310         (print_pad_info), (print_children_info):
4311         * tools/gst-launch.c: (idle_func), (main):
4312         * tools/gst-md5sum.c: (idle_func), (main):
4313         * tools/gst-xmlinspect.c: (print_element_info):
4314         First THREADED backport attempt, focusing on adding locks and
4315         making sure the API is threadsafe. Needs more work. More docs
4316         follow this week.
4317
4318 2005-02-24  Andy Wingo  <wingo@pobox.com>
4319
4320         * tests/bench-complexity.scm:
4321         * tests/complexity.gnuplot: New files, good for running complexity
4322         benchmarks.
4323
4324         * tests/Makefile.am:
4325         * tests/complexity.c: New test, sets up N elements, at each level
4326         teeing into M streams per element. Eeeenteresting.
4327
4328         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4329         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4330         running bench-mass_elements.scm.
4331
4332         * tests/bench-mass_elements.scm: New script, runs mass_elements
4333         for various numbers of identities, outputting the results to a
4334         file. Requires guile 1.6. Just for testing.
4335
4336 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4337
4338         * gst/schedulers/fairscheduler.c:
4339           compile with debug disabled
4340
4341 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4342
4343         * configure.ac:
4344           hunting season on 0.9 is now OPEN
4345
4346 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4347
4348         * docs/libs/tmpl/gstcontrol.sgml:
4349         * docs/libs/tmpl/gstdparam.sgml:
4350         * docs/libs/tmpl/gstdplinint.sgml:
4351         * docs/libs/tmpl/gstdpman.sgml:
4352         * docs/libs/tmpl/gstdpsmooth.sgml:
4353         * docs/libs/tmpl/gstunitconvert.sgml:
4354           more docs for the state of dparams
4355
4356 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4357
4358         * gst/gstelementfactory.c: (gst_element_factory_create):
4359         * gst/gstobject.c: (gst_object_init),
4360         (gst_object_set_name_default), (gst_object_set_name):
4361           name objects by default, not in gst_element_factory_create. Allows
4362           using elements created with g_object_new. (fixes #167283)
4363
4364 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4365
4366         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4367           make the time that debugging functions print relative to when
4368           gst_init was called
4369
4370 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4371
4372         * gst/gsttaginterface.c:
4373           Fix inline docs: tag setter vararg functions are NULL-terminated,
4374           GST_TAG_INVALID doesn't exist any more.
4375
4376 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4377
4378         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4379         Allocate the 1 byte more memory that was forgotten!!!!!
4380         fixes memory corruption on 64bit platforms
4381
4382 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4383
4384         * docs/pwg/building-pads.xml:
4385         * docs/pwg/intro-basics.xml:
4386           fixed a few typos, relabeled introductionary list of types
4387         * docs/random/ensonic/dparams.txt:
4388           more notes abut dparam changes
4389         * libs/gst/control/dparam.c: (gst_dparam_attach):
4390         * libs/gst/control/dparammanager.c:
4391         * libs/gst/control/dparammanager.h:
4392           - many comments and notes on dparam implementation
4393           - new dparams are were not initialized to the default value
4394             from param spec
4395
4396 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4397
4398         submitted by: Peter Astakhov
4399
4400         * po/LINGUAS:
4401         * po/ru.po:
4402           adding Russian translation
4403
4404 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4405
4406         * configure.ac:
4407         * docs/gst/Makefile.am:
4408         * docs/libs/Makefile.am:
4409           make sure popt is added to gtk-doc flags.  Fixes #147782.
4410
4411 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4412
4413         * docs/faq/using.xml:
4414           Fix typo in FAQ (artssink => artsdsink)
4415
4416 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4417
4418         * tools/gst-launch.1.in:
4419           Fix typo (#166699).
4420
4421 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4422
4423         * docs/faq/using.xml:
4424           Add -v argument to fakesrc/fakesink gst-launch line,
4425           so that the promised output will actually show up.
4426
4427 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4428
4429         * gst/gstthread.c: (gst_thread_change_state):
4430           Implement state-change error handling (#166073).
4431
4432 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4433
4434         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4435           Release interrupt after handling (#166250).
4436
4437 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4438
4439         * configure.ac:
4440           back to HEAD
4441
4442 === release 0.8.9 ===
4443
4444 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4445
4446         * NEWS:
4447         * RELEASE:
4448         * configure.ac:
4449           releasing 0.8.9, "Like Eating Glass"
4450
4451 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4452
4453         submitted by: Clytie Siddall
4454
4455         * po/vi.po: Added Vietnamese translation
4456
4457 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4458
4459         patch by: Tim Philipp-Müller
4460
4461         * configure.ac:
4462         * gst/gstpad.c:
4463           unref data when probe function returns FALSE.  Fixes #166362
4464
4465 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4466
4467         * gst/gst.c: (gst_init_get_popt_table):
4468           Fix typo (#166269).
4469
4470 2005-02-04  Andy Wingo  <wingo@pobox.com>
4471
4472         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4473         the debugging on whether the caps are compatible.
4474
4475 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4476
4477         * docs/manual/basics-elements.xml:
4478           Fix two typos.
4479
4480 2005-02-02  Wim Taymans  <wim@fluendo.com>
4481
4482         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4483         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4484         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4485         Remove some FIXMEs after analysing and commenting why they
4486         are not issues.
4487
4488 2005-02-02  Wim Taymans  <wim@fluendo.com>
4489
4490         * gst/schedulers/gstoptimalscheduler.c:
4491         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4492         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4493         (get_invalid_call), (chain_invalid_call),
4494         (get_group_schedule_function), (loop_group_schedule_function),
4495         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4496         (gst_opt_scheduler_state_transition),
4497         (gst_opt_scheduler_add_element),
4498         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4499         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4500         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4501         (gst_opt_scheduler_show):
4502         Added lock to protect scheduler data structures.
4503
4504 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4505
4506         * testsuite/threads/threadi.c: (cb_data):
4507           Fix buglet in test.
4508
4509 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4510
4511         * testsuite/threads/Makefile.am:
4512         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4513           On Wim's request, split the test in three separately-compiled
4514           tests that each test a very specific bug. Two of them still fail,
4515           will create bugs for those. threadi.c indicates why they fail.
4516
4517 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4518
4519         * gst/schedulers/gstoptimalscheduler.c:
4520         (get_group_schedule_function):
4521           Try to work with the threading mess that queue_link is.
4522
4523 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4524
4525         * gst/gstbin.c: (gst_bin_remove_func):
4526           Explicitely make an element release locks in a group when being
4527           remove from a bin.
4528         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4529           If there's no scheduler, always return immediately (similar to
4530           gst_element_interrupt).
4531
4532 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4533
4534         * gst/gstbin.c: (gst_bin_child_state_change_func):
4535           Remove a piece of code that could never be reached.
4536         * docs/gst/gstreamer-sections.txt:
4537         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4538         (gst_pad_call_get_function):
4539         * gst/gstpad.h:
4540         * testsuite/pad/Makefile.am:
4541           Fix #150546, enable tests.
4542
4543 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4544
4545         * docs/pwg/advanced-types.xml:
4546           Fix description for buffer-frames=0.
4547         * docs/gst/tmpl/gstbin.sgml:
4548         * gst/gstbin.c: (gst_bin_child_state_change_func),
4549         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4550         * gst/gstbin.h:
4551         * testsuite/threads/Makefile.am:
4552         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4553         (cb_state), (cb_play), (main):
4554           Fix non-recursive state changes to *really* change the state
4555           of the object, and not just call parent_class->state_change.
4556           Fix a lot of lockups caused by this. Fixes #132775. Add test
4557           for the problem. Also enable test to show #142588 (fixed).
4558         * gst/gstthread.c: (gst_thread_change_state),
4559         (gst_thread_child_state_change):
4560           Don't exit the thread if we go to NULL and are inside thread
4561           context. Instead, return control to the main thread context
4562           and exit from there.
4563         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4564           Don't unset virtual functions, since those may still be used.
4565           That's not necessarily correct, but suffices for now.
4566         * configure.ac:
4567         * testsuite/Makefile.am:
4568         * testsuite/pad/Makefile.am:
4569         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4570         (gst_test_sink_base_init), (gst_test_sink_chain),
4571         (gst_test_sink_init), (main):
4572         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4573         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4574         (main):
4575         * testsuite/pad/link.c: (gst_test_element_class_init),
4576         (gst_test_element_base_init), (gst_test_src_get),
4577         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4578         (gst_test_filter_loop), (gst_test_filter_init),
4579         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4580         (cb_error), (main):
4581           Add tests to show #150546. Pass, but should fail (currently
4582           disabled from the testsuite).
4583         * gst/gstscheduler.c: (gst_scheduler_dispose):
4584           Dereference child schedulers on dispose (#94464).
4585         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4586           Fix typo.
4587         * testsuite/threads/thread.c: (main):
4588           Add more debug.
4589
4590 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4591
4592         * gst/gstpad.c: (gst_pad_push):
4593           Oops, revert previous commit, broke testsuite...
4594
4595 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4596
4597         * gst/gstpad.c: (gst_pad_push):
4598           Add check that the pad on which the push is performed is not a
4599           get-based pad (#150546).
4600
4601 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4602
4603         * gst/elements/gsttypefindelement.c:
4604         (gst_type_find_element_handle_event):
4605           Fix buffer pushing if stream EOSes during typefinding.
4606
4607 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4608
4609         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4610
4611         * gst/gstvalue.c: (gst_string_wrap):
4612           Allow NULL-strings as argument (#165365).
4613
4614 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4615
4616         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4617
4618         * gst/schedulers/faircothreads.c:
4619         (gst_fair_scheduler_cothread_queue_show):
4620           Fix build without debug enabled.
4621
4622 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4623
4624         * docs/gst/gstreamer-sections.txt:
4625         * docs/libs/gstreamer-libs-docs.sgml:
4626         * docs/libs/gstreamer-libs-sections.txt:
4627         * docs/libs/tmpl/gstcontrol.sgml:
4628         * docs/libs/tmpl/gstdparam.sgml:
4629         * docs/libs/tmpl/gstdplinint.sgml:
4630         * docs/libs/tmpl/gstdpman.sgml:
4631         * docs/libs/tmpl/gstdpsmooth.sgml:
4632         * docs/libs/tmpl/gstputbits.sgml:
4633         * docs/libs/tmpl/gstunitconvert.sgml:
4634         * libs/gst/control/dparam.c:
4635         * libs/gst/control/dparam.h:
4636         * libs/gst/control/dparammanager.c:
4637         (gst_dpman_add_required_dparam_callback),
4638         (gst_dpman_add_required_dparam_direct),
4639         (gst_dpman_add_required_dparam_array),
4640         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4641         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4642         (gst_dpman_get_manager)
4643           restructured DParam docs
4644
4645 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4646
4647         * gst-element-check.m4:
4648           Only check for gst-inspect if we haven't already
4649           found it in previous element check runs
4650
4651 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4652
4653         * docs/gst/Makefile.am:
4654         * docs/libs/Makefile.am:
4655           fixed install rules to treat style.css as optional
4656
4657 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4658
4659         * docs/gst/Makefile.am:
4660         * docs/libs/Makefile.am:
4661           install style.css along with docs
4662         * docs/gst/tmpl/gstbin.sgml:
4663         * docs/gst/tmpl/gstclock.sgml:
4664         * docs/gst/tmpl/gstdata.sgml:
4665         * docs/gst/tmpl/gstelement.sgml:
4666         * gst/gstbin.h:
4667         * gst/gstelement.c: (gst_element_class_init):
4668         * gst/gstelement.h:
4669           fixing incomplete docs
4670
4671 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4672
4673         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4674           Don't unref seek event twice when fflush() fails
4675           
4676 2005-01-22  David Schleef  <ds@schleef.org>
4677
4678         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4679
4680 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4681
4682         * docs/gst/Makefile.am:
4683         * docs/libs/Makefile.am:
4684           added params for deprecation guards
4685         * gst/gst.c:
4686         * gst/gst.h:
4687         * gst/gsterror.c: (_gst_resource_errors_init),
4688         (_gst_stream_errors_init):
4689         * gst/gsterror.h:
4690           documented some more enums
4691
4692 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4693         * gst/autoplug/gstspideridentity.c:
4694         Cosmetic fix - spider_find_peek should be static
4695         * gst/parse/parse.l:
4696         Applying fix for #164261
4697
4698 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4699
4700         * docs/gst/gstreamer-sections.txt:
4701         * docs/gst/tmpl/gstplugin.sgml:
4702         * docs/libs/gstreamer-libs-sections.txt:
4703         * docs/libs/tmpl/gstcontrol.sgml:
4704         * gst/gstbuffer.h:
4705         * gst/gsttag.h:
4706         * gst/gstvalue.c:
4707           added docs for the TAG defines
4708
4709 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4710
4711         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4712           Only unref entry if there is an entry.
4713
4714 2005-01-17  Wim Taymans  <wim@fluendo.com>
4715
4716         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4717         (remove_from_group), (schedule_group), (normalize_group),
4718         (gst_opt_scheduler_iterate):
4719         Also ref/unref decoupled elements before iterating the
4720         group since they are not added to the list of elements.
4721
4722 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4723
4724         * docs/manual/highlevel-components.xml:
4725           Add subtitle/streamselection as new features to playbin.
4726
4727 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4728
4729         * docs/manual/manual.xml:
4730           Re-enable dataaccess docs (oops).
4731
4732 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4733
4734         * docs/pwg/advanced-types.xml:
4735         * docs/random/mimetypes:
4736           Add documentation on libsndfile types (#163309), by Steve Baker
4737           <steve@stevebaker.org>.
4738         * gst/gstelement.c: (gst_element_release_request_pad):
4739           If an element has no explicit function, just remove the pad.
4740
4741 2005-01-17  Luca Ognibene  <luogni@tin.it>
4742
4743         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4744
4745         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
4746           Fix memleak (#163801).
4747
4748 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4749
4750         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
4751           I think this is actually more correct...
4752
4753 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4754
4755         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4756           Another workaround for memory access while destroyed in callback.
4757           Please, someone with refcount knowledge, have a look at this.
4758
4759 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4760
4761         * docs/faq/faq.xml:
4762         * docs/faq/legal.xml:
4763           move the legal Q&A here
4764
4765 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4766
4767         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
4768         (gst_tee_request_new_pad):
4769           Fix negotiation.
4770
4771 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4772
4773         * docs/random/omega/caps2:
4774         * testsuite/caps/caps_strings:
4775           replace framerate aproximations by their real value
4776           (24000/1001, 30000/1001, 60000/1001)
4777           Partially fixes bug #164049
4778
4779 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4780
4781         * docs/gst/Makefile.am:
4782           don't fail on the stupid GstPoptOption
4783
4784 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4785
4786         * gst/gstpad.h:
4787         * gst/gstprobe.c:
4788           allow probes to work on ghost pads by realizing the pad
4789           probe debugging
4790
4791 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4792
4793         * docs/gst/gstreamer-sections.txt:
4794         * docs/gst/tmpl/gstpad.sgml:
4795         * gst/gstpad.c: (gst_pad_set_active_recursive):
4796         * gst/gstpad.h:
4797           Add gst_pad_set_active_recursive().
4798
4799 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4800
4801         * docs/random/release:
4802           updates
4803         * gst/gst_private.h:
4804         * gst/gstinfo.c:
4805         * gst/gstobject.c:
4806           move deep_notify logging to a new category
4807         * gst/gstprobe.c:
4808         * gst/gstprobe.h:
4809           add stuff so bindings can wrap probes
4810
4811 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4812
4813         * gst/gstplugin.c: (gst_plugin_load):
4814           Fix plugin loading if plugin/lib was already loaded. Fixes
4815           #163383
4816
4817 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
4818
4819         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4820
4821         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
4822           Protect plugin loading by a mutex so it's threadsafe. Fixes
4823           #163234.
4824
4825 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4826
4827         * gst/gstevent.c: (_gst_event_copy):
4828           Reference source object when copying events, since it'll be
4829           dereferenced on event dereferencing as well.
4830
4831 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4832
4833         * docs/gst/gstreamer-sections.txt:
4834         * docs/gst/tmpl/gstevent.sgml:
4835         * gst/gstevent.c: (gst_event_new_filler_stamped),
4836         (gst_event_filler_get_duration):
4837         * gst/gstevent.h:
4838           Add two new functions for filler events (which are used to
4839           synchronize streams if one of them is not having any data
4840           for a while) without interrupting the actual data-stream.
4841           Basically a no-op.
4842         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4843         (gst_queue_link_sink), (gst_queue_link_src),
4844         (gst_queue_change_state):
4845           Allow for renegotiation while filled. Required for stream
4846           switching while playing.
4847
4848 2005-01-08  Benjamin Otte  <otte@gnome.org>
4849
4850         * gst/gstelement.c: (gst_element_link_many):
4851           fix up g_return_if_fail's
4852         * po/LINGUAS:
4853         * po/de.po:
4854           add German translation, that was somehow not included
4855
4856 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4857
4858         * docs/random/mimetypes:
4859           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
4860           do not add them to riff-lib as they are not common
4861
4862 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4863
4864         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4865           Check for existence of probe after performing the probe before
4866           re-accessing it to prevent segfaults caused by removal of the
4867           probe in the callback.
4868
4869 2005-01-05  David Schleef  <ds@schleef.org>
4870
4871         * testsuite/registry/Makefile.am:
4872         * testsuite/registry/gst-print-formats.c:
4873         (print_pad_templates_info), (print_element_list),
4874         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
4875         (g_list_uniqify), (get_pad_templates_info),
4876         (get_element_mime_list), (print_mime_list), (main): A little
4877         program that looks through the registry to find elements of
4878         a given type.  Not particularly interesting as a test, except
4879         that there's no other test covering the same area.
4880
4881 2005-01-05  David Schleef  <ds@schleef.org>
4882
4883         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
4884         (fault_handler_sigaction), (fault_spin),
4885         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
4886         in signal.h-type signal handlers by not calling forbidden functions,
4887         including gst_element_set_state().
4888
4889 2005-01-05  David Schleef  <ds@schleef.org>
4890
4891         * gst/gstvalue.h: Mark _gst_reserved[] as private
4892
4893 2005-01-05  David Schleef  <ds@schleef.org>
4894
4895         * gst/gstvalue.c: Fix doc build problem.
4896
4897 2005-01-05  David Schleef  <ds@schleef.org>
4898
4899         * gst/gstvalue.c: Add some documentation
4900
4901 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
4902
4903         * docs/README:
4904           another shell oneliner for empty return value docs
4905         * gst/gstcaps.c:
4906         * gst/gstvalue.c:
4907         * libs/gst/control/dparam.c:
4908           more doc fixes (parameters and return values)
4909
4910 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
4911
4912         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4913
4914         * gst/gstregistry.h:
4915         * gst/registries/gstxmlregistry.c:
4916           Fix macro's for Mingw (fixes #162276).
4917
4918 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
4919
4920         * docs/README:
4921           quick shell oneliner to find undocumented members
4922         * docs/gst/tmpl/gstplugin.sgml:
4923         * docs/gst/tmpl/gstscheduler.sgml:
4924         * docs/gst/tmpl/gstthread.sgml:
4925           more enumtypes cleanup
4926         * gst/gsterror.h:
4927           activated documentation comments, now someone needs to document
4928           the enums :(
4929
4930 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4931
4932         * docs/manual/manual.xml:
4933           Add dataaccess part (doh!).
4934
4935 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4936
4937         * docs/manual/advanced-autoplugging.xml:
4938           Fix typo (intiate -> initiate).
4939
4940 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4941
4942         * docs/random/bbb/streamselection:
4943           Add some notes on how to handle multi-subtitle/-audio streams.
4944
4945 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
4946
4947         * docs/gst/gstreamer-docs.sgml:
4948         * docs/gst/gstreamer-sections.txt:
4949         * docs/gst/tmpl/gstenumtypes.sgml:
4950         * docs/gst/tmpl/gsterror.sgml:
4951         * docs/gst/tmpl/gstevent.sgml:
4952         * docs/gst/tmpl/gstpad.sgml:
4953         * docs/gst/tmpl/gstpadtemplate.sgml:
4954         * docs/gst/tmpl/gstthread.sgml:
4955           removed gstenumtypes section from docs and put all the enums into
4956           their sections
4957
4958 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4959
4960         * gst/gstplugin.c:
4961           document gst_library_load a bit more (riff special case + return
4962           value if already loaded)
4963         * testsuite/bytestream/filepadsink.c:
4964           plugin name is 'gstbytestream', not 'bytestream'
4965
4966 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4967
4968         * docs/random/bbb/subtitles:
4969           Add some first mind rumblings on proper subtitle support.
4970
4971 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
4972
4973         * po/ca.po:
4974         * po/sv.po:
4975           updated translations
4976
4977 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4978
4979         * docs/manual/advanced-dataaccess.xml:
4980           Add section on how to use fakesrc/fakesink/identity in your
4981           application, plus section on how to embed plugins. Also mention
4982           probes.
4983         * docs/manual/appendix-checklist.xml:
4984         * docs/manual/appendix-debugging.xml:
4985         * docs/manual/appendix-gnome.xml:
4986         * docs/manual/appendix-integration.xml:
4987           Debug -> checklist, GNOME -> integration, add sections on Linux,
4988           KDE integration and add other things useful for application
4989           development.
4990         * docs/manual/manual.xml:
4991           Remove some fixmes, update some file pointers.
4992         * docs/pwg/appendix-checklist.xml:
4993           Fix typo.
4994         * docs/pwg/building-boiler.xml:
4995           Remove ugly header and add commented fixme.
4996         * docs/pwg/pwg.xml:
4997           Add fixme.
4998         * examples/manual/Makefile.am:
4999           Add example for added docs.
5000
5001 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5002
5003         * configure.ac:
5004           back to HEAD
5005
5006 === release 0.8.8 ===
5007
5008 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5009
5010         * NEWS:
5011         * RELEASE:
5012         * configure.ac:
5013           Releasing 0.8.8, "I'll Take Care Of You"
5014
5015 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5016
5017         * configure.ac:
5018           second prerelease
5019
5020 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5021
5022         patch by: Wim Taymans
5023
5024         * gst/gstbin.c:
5025           Fix for #159852 - make iterate emission threadsafe
5026
5027 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5028
5029         * docs/faq/cvs.xml:
5030           notes about new fdo account request
5031
5032 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5033
5034         * docs/gst/gstreamer-docs.sgml:
5035         * docs/gst/tmpl/gstenumtypes.sgml:
5036         * docs/gst/tmpl/gstplugin.sgml:
5037         * docs/libs/gstreamer-libs-docs.sgml:
5038           Added missing short docs. Added ids for navigation.
5039
5040 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5041
5042         * docs/manual/advanced-autoplugging.xml:
5043         * docs/manual/advanced-schedulers.xml:
5044         * docs/manual/advanced-threads.xml:
5045           Rewrites. Remove cothreads, go a bit into opt specifically,
5046           document threads and their gotchas, and do some technical stuff
5047           on autoplugging plus add some working examples. Fixes #157395.
5048         * examples/manual/Makefile.am:
5049           Add typefind/autoplugger example (one that actually works).
5050           Remove queue example since it's a duplicate of the thread one.
5051
5052 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5053
5054         * gst/gstvalue.c: (gst_value_deserialize_string):
5055           use deprecated g_value_set_string_take_ownership to keep compatible
5056           with glib 2.2
5057
5058 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5059
5060         * gst/gstvalue.c: (gst_value_deserialize_string):
5061           revert last patch, only dom a g_utf8_validate now before accepting
5062           the string - caps parsing strips " from strings so we can't rely on
5063           them
5064         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5065           disable a test that tested the above and comment it
5066
5067 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5068
5069         Patch reviewed by David Schleef  <ds@schleef.org>
5070
5071         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5072         bug #153882)
5073         * win32/gstenumtypes.h: same
5074
5075 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5076
5077         * gst/gstpad.c: (gst_pad_query):
5078           Do query on realized pad, similar to how convert/send_event handle
5079           this. Also makes sense, since this pad belongs to the function to
5080           which this query will be sent. Fixes #158163.
5081
5082 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5083
5084         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5085
5086 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5087
5088         * docs/faq/general.xml: fix pipeline to actually work
5089
5090 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5091
5092         * gst/gstvalue.c: (gst_value_deserialize_string):
5093           check that a simple string that gets deserialized does not contain
5094           invalid characters
5095         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5096           remove a test that tested a wring behaviour
5097
5098 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5099
5100         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5101
5102         * docs/manual/intro-motivation.xml:
5103           Fix typos.
5104
5105 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5106
5107         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5108
5109         * docs/gst/tmpl/gstprobe.sgml:
5110           Fix documentation of probe callback - it is supposed to return
5111           FALSE, not TRUE, to remove data from the stream (#159087).
5112
5113 2004-12-16  Daniel Gazard  <dany42@free.fr>
5114
5115         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5116
5117         * gst/gstelementfactory.c: (gst_element_factory_create):
5118           Fix compile failure if compiling without libxml2 support (#149936).
5119
5120 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5121
5122         * docs/manual/advanced-autoplugging.xml:
5123         * docs/manual/highlevel-components.xml:
5124           Move spider from autoplugging to components. Autoplugging is for
5125           internals, not for solutions. ;-).
5126
5127 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5128
5129         * docs/random/ds/0.9-suggested-changes:
5130           Make note on device/location/uri property names.
5131
5132 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5133
5134         * docs/manual/advanced-autoplugging.xml:
5135         * docs/manual/advanced-clocks.xml:
5136         * docs/manual/advanced-interfaces.xml:
5137         * docs/manual/advanced-metadata.xml:
5138         * docs/manual/advanced-position.xml:
5139         * docs/manual/advanced-schedulers.xml:
5140         * docs/manual/advanced-threads.xml:
5141         * docs/manual/appendix-gnome.xml:
5142         * docs/manual/appendix-programs.xml:
5143         * docs/manual/appendix-quotes.xml:
5144         * docs/manual/autoplugging.xml:
5145         * docs/manual/basics-bins.xml:
5146         * docs/manual/basics-data.xml:
5147         * docs/manual/basics-elements.xml:
5148         * docs/manual/basics-helloworld.xml:
5149         * docs/manual/basics-init.xml:
5150         * docs/manual/basics-pads.xml:
5151         * docs/manual/basics-plugins.xml:
5152         * docs/manual/bins-api.xml:
5153         * docs/manual/bins.xml:
5154         * docs/manual/buffers-api.xml:
5155         * docs/manual/buffers.xml:
5156         * docs/manual/clocks.xml:
5157         * docs/manual/components.xml:
5158         * docs/manual/cothreads.xml:
5159         * docs/manual/debugging.xml:
5160         * docs/manual/dparams-app.xml:
5161         * docs/manual/dynamic.xml:
5162         * docs/manual/elements-api.xml:
5163         * docs/manual/elements.xml:
5164         * docs/manual/factories.xml:
5165         * docs/manual/gnome.xml:
5166         * docs/manual/goals.xml:
5167         * docs/manual/helloworld.xml:
5168         * docs/manual/helloworld2.xml:
5169         * docs/manual/highlevel-components.xml:
5170         * docs/manual/highlevel-xml.xml:
5171         * docs/manual/init-api.xml:
5172         * docs/manual/intro-basics.xml:
5173         * docs/manual/intro-motivation.xml:
5174         * docs/manual/intro-preface.xml:
5175         * docs/manual/intro.xml:
5176         * docs/manual/links-api.xml:
5177         * docs/manual/links.xml:
5178         * docs/manual/manual.xml:
5179         * docs/manual/motivation.xml:
5180         * docs/manual/pads-api.xml:
5181         * docs/manual/pads.xml:
5182         * docs/manual/plugins-api.xml:
5183         * docs/manual/plugins.xml:
5184         * docs/manual/programs.xml:
5185         * docs/manual/queues.xml:
5186         * docs/manual/quotes.xml:
5187         * docs/manual/schedulers.xml:
5188         * docs/manual/states-api.xml:
5189         * docs/manual/states.xml:
5190         * docs/manual/threads.xml:
5191         * docs/manual/typedetection.xml:
5192         * docs/manual/win32.xml:
5193         * docs/manual/xml.xml:
5194           Try 2. This time, include a short preface as a "general
5195           introduction", also add code blocks around all code samples
5196           so they get compiled. We still need a way to tell readers
5197           the filename of the code sample. In some cases, don't show
5198           all code in the documentation, but do include it in the generated
5199           code. This allows for focussing on specific bits in the docs,
5200           while still having a full test application available.
5201         * examples/manual/Makefile.am:
5202           Fix up examples for new ADM. Add several of the new examples that
5203           were either added or were missing from the build system.
5204         * examples/manual/extract.pl:
5205           Allow nameless blocks.
5206
5207 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5208
5209         * docs/manual/elements-api.xml:
5210         * docs/manual/helloworld.xml:
5211         * examples/manual/extract.pl:
5212           fix last example.  Add example of adding code blocks that are not
5213           shown in docbook output.
5214
5215 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5216
5217         * docs/manual/dynamic.xml:
5218         * docs/manual/elements-api.xml:
5219         * docs/manual/gnome.xml:
5220         * docs/manual/helloworld2.xml:
5221         * docs/manual/init-api.xml:
5222         * docs/manual/queues.xml:
5223         * docs/manual/threads.xml:
5224         * docs/manual/xml.xml:
5225         * examples/manual/extract.pl:
5226           Make it possible to extract example code from separate blocks.
5227           Should make Ronald happy.
5228
5229 2004-12-15  Wim Taymans  <wim@fluendo.com>
5230
5231         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5232         (remove_from_group), (group_elements_set_visited),
5233         (normalize_group), (gst_opt_scheduler_iterate):
5234         Fix bug where a flag was not updated on a decoupled entry point 
5235         because we were just checking the group element list and decoupled
5236         elements are not in that list..
5237
5238 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5239
5240         * docs/manual/advanced-autoplugging.xml:
5241         * docs/manual/advanced-clocks.xml:
5242         * docs/manual/advanced-dparams.xml:
5243         * docs/manual/advanced-interfaces.xml:
5244         * docs/manual/advanced-metadata.xml:
5245         * docs/manual/advanced-position.xml:
5246         * docs/manual/advanced-schedulers.xml:
5247         * docs/manual/advanced-threads.xml:
5248         * docs/manual/appendix-debugging.xml:
5249         * docs/manual/appendix-gnome.xml:
5250         * docs/manual/appendix-programs.xml:
5251         * docs/manual/appendix-quotes.xml:
5252         * docs/manual/appendix-win32.xml:
5253         * docs/manual/autoplugging.xml:
5254         * docs/manual/basics-bins.xml:
5255         * docs/manual/basics-data.xml:
5256         * docs/manual/basics-elements.xml:
5257         * docs/manual/basics-helloworld.xml:
5258         * docs/manual/basics-init.xml:
5259         * docs/manual/basics-pads.xml:
5260         * docs/manual/basics-plugins.xml:
5261         * docs/manual/bins-api.xml:
5262         * docs/manual/bins.xml:
5263         * docs/manual/buffers-api.xml:
5264         * docs/manual/buffers.xml:
5265         * docs/manual/clocks.xml:
5266         * docs/manual/components.xml:
5267         * docs/manual/cothreads.xml:
5268         * docs/manual/debugging.xml:
5269         * docs/manual/dparams-app.xml:
5270         * docs/manual/dynamic.xml:
5271         * docs/manual/elements-api.xml:
5272         * docs/manual/elements.xml:
5273         * docs/manual/factories.xml:
5274         * docs/manual/gnome.xml:
5275         * docs/manual/goals.xml:
5276         * docs/manual/helloworld.xml:
5277         * docs/manual/helloworld2.xml:
5278         * docs/manual/highlevel-components.xml:
5279         * docs/manual/highlevel-xml.xml:
5280         * docs/manual/init-api.xml:
5281         * docs/manual/intro-motivation.xml:
5282         * docs/manual/intro-preface.xml:
5283         * docs/manual/intro.xml:
5284         * docs/manual/links-api.xml:
5285         * docs/manual/links.xml:
5286         * docs/manual/manual.xml:
5287         * docs/manual/motivation.xml:
5288         * docs/manual/pads-api.xml:
5289         * docs/manual/pads.xml:
5290         * docs/manual/plugins-api.xml:
5291         * docs/manual/plugins.xml:
5292         * docs/manual/programs.xml:
5293         * docs/manual/queues.xml:
5294         * docs/manual/quotes.xml:
5295         * docs/manual/schedulers.xml:
5296         * docs/manual/states-api.xml:
5297         * docs/manual/states.xml:
5298         * docs/manual/threads.xml:
5299         * docs/manual/typedetection.xml:
5300         * docs/manual/win32.xml:
5301         * docs/manual/xml.xml:
5302           First try at rewriting the ADM. Needs lotsamore work, but some
5303           parts might already be somewhat useful.
5304         * docs/pwg/advanced-interfaces.xml:
5305           Remove properties interface, it never actually existed (except for
5306           on my HD...).
5307
5308 2004-12-13  David Schleef  <ds@schleef.org>
5309
5310         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5311         be NULL (bug #160220).
5312
5313 2004-12-13  David Schleef  <ds@schleef.org>
5314
5315         * configure.ac: remove all mmx stuff, because it's not used.
5316         * docs/random/ds/0.9-suggested-changes: additional notes
5317         * include/Makefile.am: we don't use these anymore
5318         * include/mmx.h: remove
5319         * include/sse.h: remove
5320
5321 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5322
5323         * docs/random/mimetypes:
5324           Add FOURCC code for h264 codec (VSSH)
5325           Add alternate FOURCC codes for h263 related codecs
5326
5327 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5328
5329         * docs/manual/programs.xml:
5330           Added more gst-launch examples.
5331
5332 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5333
5334         * gst/gstqueue.c: (gst_queue_handle_src_query):
5335           Check for availability again.
5336
5337 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5338
5339         * gst/gstcaps.c: (gst_caps_compare_structures):
5340           Simple caps go first. This has the nice side-effect of fixing an
5341           obscure warning.
5342
5343 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5344
5345         * gst/gstversion.h.in:
5346           Protect header.
5347
5348 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5349
5350         * gst/schedulers/gstoptimalscheduler.c:
5351         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5352         (gst_opt_scheduler_get_wrapper):
5353           When we're recursing into a chain run, only run the directly
5354           related group, not all queued ones. This will fix a possible
5355           deadlock in chains with more than two groups.
5356
5357 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5358
5359         * autogen.sh:
5360           remove patch if autopoint fails
5361
5362 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5363
5364         * docs/gst/gstreamer-sections.txt:
5365           Document Thomas' addition, fix build, make Luis the sheriff happy.
5366
5367 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5368
5369         * gst/gstplugin.c:
5370         * gst/gstplugin.h:
5371           add accessor for version field
5372
5373 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5374
5375         submitted by: Luca Ferretti <elle.uca@infinito.it>
5376
5377         * po/LINGUAS:
5378         * po/it.po:
5379           New tranlation added: Italian
5380
5381 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5382
5383         * gst/gstpad.c: (gst_pad_is_negotiated),
5384         (gst_pad_get_negotiated_caps):
5385           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5386           it doesn't actually check the contents), so be sure to hand it
5387           a RealPad else we'll crash.
5388
5389 2004-12-03  Wim Taymans  <wim@fluendo.com>
5390
5391         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5392         (gst_queue_link), (gst_queue_handle_src_query):
5393         Reverted to 1.110 until this makes the testsuite and various
5394         apps work.
5395
5396 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5397
5398         * docs/upload.mak: fix included CVS conflict strings
5399
5400 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5401
5402         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5403
5404         * gst/gstelement.c: (gst_element_error_full):
5405           Use g_error_new_literal because error text may have
5406           percentage signs in it. Fixes #160019.
5407
5408 2004-12-01  Benjamin Otte  <otte@gnome.org>
5409
5410         * gst/elements/gstbufferstore.c:
5411         (gst_buffer_store_add_buffer_func):
5412           don't try to make subbuffers bigger than they can be. (fixes
5413           #159970)
5414
5415 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5416
5417         * docs/gst/gstreamer-sections.txt:
5418         * docs/gst/tmpl/gstvalue.sgml:
5419           Add new function to docs to fix build.
5420
5421 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5422
5423         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5424         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5425         (_gst_pad_default_fixate_foreach):
5426         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5427         * gst/gstvalue.h:
5428           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5429           in some cases (arrays), the fixedness depends on the content.
5430         * gst/gstqueue.c: (gst_queue_handle_src_query):
5431           Check for availability before doing something.
5432
5433 2004-11-29  Wim Taymans  <wim@fluendo.com>
5434
5435         * testsuite/threads/Makefile.am:
5436         * testsuite/threads/signals.c: (gst_test_get_type),
5437         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5438         (gst_test_set_property), (gst_test_get_property),
5439         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5440         (gst_test_do_prop), (run_thread), (main):
5441         Added a bunch of testcases that show threadsafety bugs in glib.
5442
5443 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5444
5445         * docs/manual/programs.xml:
5446           Added a first batch of gst-launch examples, as provided by Ronald
5447           and others from the devel-mlist
5448
5449 2004-11-28  Benjamin Otte  <otte@gnome.org>
5450
5451         * gst/gstelement.c: (gst_element_negotiate_pads):
5452           simplify
5453         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5454         (gst_value_serialize_string), (gst_value_deserialize_string):
5455           add unwrapping of previously wrapped strings. Fix bug in wrapping
5456           while at it.
5457         * testsuite/caps/value_serialize.c: (test1),
5458         (test_string_serialization), (test_string_deserialization), (main):
5459           add tests for string (de)serialization
5460
5461 2004-11-26  Wim Taymans  <wim@fluendo.com>
5462
5463         * testsuite/threads/159566.c: (object_deep_notify), (main):
5464         * testsuite/threads/Makefile.am:
5465         Added testsuite to show bug #159566
5466
5467 2004-11-25  Wim Taymans  <wim@fluendo.com>
5468
5469         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5470         (gst_thread_child_state_change), (gst_thread_main_loop):
5471         Ref the thread object in the GThread mainloop. Break out of the
5472         thread mainloop if it holds the last ref. This properly exits
5473         the threads when disposing the thread from its own context. It
5474         also avoids possible deadlocks in the dispose function.
5475
5476 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5477
5478         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5479         it is necessary to wait.
5480
5481 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5482
5483         * docs/pwg/building-boiler.xml:
5484           Make description somewhat clearer.
5485
5486 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5487
5488         * docs/upload.mak:
5489           Apparently docs changed location on FDO's server.
5490
5491 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5492
5493         * docs/pwg/appendix-checklist.xml:
5494           Add some random notes on things to check when writing an element.
5495           This list can be extended as people see fit.
5496
5497 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5498
5499         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5500         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5501         pad. The queue will now wait until it is empty and forward the new
5502         caps to the source.
5503         * gst/gstbin.c (gst_bin_set_element_sched)
5504         (gst_bin_unset_element_sched): Make sure that all elements and
5505         links are registered and unregistered with the scheduler exactly
5506         once. This elaborates on a fix by Benjamin Otte, but
5507         guarantees that decoupled elements are also registered.
5508
5509 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5510
5511         * docs/manual/quotes.xml:
5512           add a quote
5513         * configure.ac:
5514         * gst/gst.c:
5515         * gst/gstinfo.c:
5516           add LIBDIR and move init message higher up so it's at the start
5517
5518 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5519
5520         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5521         * gstreamer.spec.in: add fair
5522
5523 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5524
5525         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5526         * gst/elements/gstidentity.c: (gst_identity_class_init):
5527           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5528           <teuf@gnome.org> (#157263).
5529         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5530         (gst_type_find_handle_src_query):
5531           Subtract size of internally stored data from position queries.
5532
5533 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5534
5535         * gst/schedulers/fairscheduler.c:
5536         * gst/schedulers/faircothreads.c:
5537         * gst/schedulers/faircothreads.h:
5538         New cothread based scheduler: Fair scheduler.
5539         * gst/schedulers/gthread-cothreads.h: 
5540         Add the standard #if around the whole file.
5541         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5542         compilation of the functions defined in this file. This is
5543         necessary to be able to use this file as a normal header.
5544         * gst/schedulers/Makefile.am: Add compiling support for fair
5545         scheduler.
5546         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5547         scheduler cothreads layer from documentation generation.
5548
5549 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5550
5551         * gst/autoplug/gstspideridentity.c:
5552         (gst_spider_identity_sink_loop_type_finding):
5553           Don't crash if that function is not implemented.
5554
5555 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5556
5557         * docs/pwg/advanced-types.xml:
5558           Another typo.
5559
5560 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5561
5562         * docs/pwg/intro-preface.xml:
5563           Hm, ok, so the brackets weren't really useful...
5564         * docs/pwg/other-ntoone.xml:
5565           Fix embarassing typo.
5566
5567 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5568
5569         * docs/pwg/intro-preface.xml:
5570           Rewrite preface.
5571
5572 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5573
5574         * docs/pwg/advanced-scheduling.xml:
5575         * docs/pwg/advanced-tagging.xml:
5576         * docs/pwg/advanced-types.xml:
5577         * docs/pwg/building-boiler.xml:
5578         * docs/pwg/building-chainfn.xml:
5579         * docs/pwg/building-signals.xml:
5580         * docs/pwg/building-state.xml:
5581         * docs/pwg/building-testapp.xml:
5582         * docs/pwg/intro-basics.xml:
5583         * docs/pwg/other-manager.xml:
5584         * docs/pwg/other-source.xml:
5585           Typo fixes.
5586         * docs/pwg/other-manager.xml:
5587           Add some first content. No example code yet.
5588         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5589           Remove double newlines.
5590
5591 2004-11-04  Wim Taymans  <wim@fluendo.com>
5592
5593         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5594         (remove_from_group), (normalize_group), (group_migrate_connected),
5595         (gst_opt_scheduler_iterate):
5596         * testsuite/schedulers/.cvsignore:
5597         * testsuite/schedulers/Makefile.am:
5598         * testsuite/schedulers/queue_link.c: (main):
5599         Added testcase for scheduler segfault.
5600         Fix scheduler segfault when removing a decoupled
5601         entry point as the last element from a group.
5602
5603 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5604
5605         * gst/gstmarshal.list: add missing marshaller, fixes build
5606
5607 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5608
5609         * docs/random/signal: added notes about using BOXED for GstBuffer
5610         signal marshallers, not POINTER
5611
5612 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5613
5614         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5615         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5616         POINTER=>BOXED changes to marshal GstBuffers
5617
5618 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5619
5620         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5621         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5622
5623 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5624
5625         * docs/gst/gstreamer-sections.txt:
5626         * docs/gst/tmpl/gstcaps.sgml:
5627         * docs/gst/tmpl/gsterror.sgml:
5628         * docs/gst/tmpl/gstinfo.sgml:
5629         * docs/gst/tmpl/gstmacros.sgml:
5630         * docs/gst/tmpl/gstutils.sgml:
5631         * docs/random/ensonic/interfaces.txt:
5632         * gst/gstinfo.h:
5633           added some more docs, removed two obsolete defines
5634
5635 2004-11-02  Kjartan Maraas <as at gnome.org>
5636
5637         reviewed by: Wim Taymans, Ronald Bultje.
5638
5639         * gst/cothreads.c: (cothread_create):
5640         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5641         (gst_bin_child_state_change_func):
5642         * gst/gstbuffer.c: (gst_buffer_span):
5643         * gst/gstelement.c: (gst_element_get_index),
5644         (gst_element_get_event_masks), (gst_element_get_query_types),
5645         (gst_element_get_formats):
5646         * gst/gsterror.c: (_gst_core_errors_init),
5647         (_gst_library_errors_init), (_gst_resource_errors_init),
5648         (_gst_stream_errors_init):
5649         * gst/gstobject.c: (gst_object_default_deep_notify):
5650         * gst/gstpad.c: (gst_pad_get_event_masks),
5651         (gst_pad_get_internal_links_default):
5652         * gst/gstplugin.c: (gst_plugin_register_func),
5653         (gst_plugin_get_module):
5654         * gst/gststructure.c: (gst_structure_get_string),
5655         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5656         (gst_structure_to_abbr):
5657         * gst/gstutils.c: (gst_print_element_args):
5658         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5659         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5660         Aplied part of patch #157127: Cleanup of issues reported by 
5661         sparse.
5662         Also do not try to use cothreads when there is no cothread
5663         context yet.
5664
5665 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5666
5667         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5668         (gst_opt_scheduler_iterate):
5669         Applied patch #154061. Running a pipeline in which an element 
5670         calls GST_ELEMENT_ERROR in the chain function, the opt 
5671         scheduler doesn't unref the chain so it never gets freed.
5672
5673 2004-11-02  Wim Taymans  <wim@fluendo.com>
5674
5675         * gst/gststructure.c: (gst_structure_get_abbrs),
5676         (gst_structure_from_abbr), (gst_structure_to_abbr):
5677         Remove that ugly if-then thing in the code that converts
5678         between strings and types.
5679
5680 2004-11-02  Wim Taymans  <wim@fluendo.com>
5681
5682         * gst/gstscheduler.c: (gst_scheduler_add_element),
5683         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5684         Aplied clock distribution patch, this should fix bug
5685         #148787.
5686
5687 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5688
5689         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5690
5691         * po/LINGUAS:
5692         * po/nb.po:
5693           Added Norwegian Bokmaal translation
5694
5695 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5696
5697         * tools/gst-inspect.c: (print_signal_info):
5698           print signal arguments as pointers if they are
5699
5700 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5701
5702         * docs/pwg/building-boiler.xml:
5703           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5704
5705 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5706
5707         * gst/parse/parse.l:
5708         * testsuite/parse/parse1.c: (main):
5709         Since parse can do 'element name=a:b' make 'a:b.' work as
5710         well. 
5711         Added testcase to verify fix.
5712
5713 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5714
5715         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
5716         Use the realpad when printing the direction.
5717         Add extra \n when printing extensions of typefind factories.
5718
5719 2004-10-13  David Schleef  <ds@schleef.org>
5720
5721         * examples/manual/Makefile.am: $< isn't portable in Makefile
5722         rules.
5723
5724 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
5725
5726         * docs/gst/tmpl/gstobject.sgml:
5727         * docs/gst/tmpl/gstplugin.sgml:
5728         * docs/gst/tmpl/gstpluginfeature.sgml:
5729         * docs/gst/tmpl/gstregistry.sgml:
5730         * docs/gst/tmpl/gstversion.sgml:
5731         * gst/gstbin.c:
5732           more api documentation
5733         * gst/gstplugin.c: (gst_plugin_register_func),
5734         (gst_plugin_check_file), (gst_plugin_load_file):
5735           better error signaling and logging
5736
5737 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5738
5739         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
5740           Subtract current queue contents from position queries.
5741
5742 2004-10-11  Johan Dahlin  <johan@gnome.org>
5743
5744         * gst/gsturi.c (gst_uri_get_location): unescape string
5745         (gst_uri_construct): escape string.
5746
5747 2004-10-11  Benjamin Otte  <otte@gnome.org>
5748
5749         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
5750         (gst_pad_try_set_caps_nonfixed):
5751           allow renegotiation of unconnected pads (as inside spider). Simply
5752           return OK if unconnected - mimic try_set_caps there.
5753
5754 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5755
5756         * gst/gstbin.c: (gst_bin_sync_children_state):
5757           Add missing break.
5758
5759 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5760
5761         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
5762         Set element to EOS before sending EOS event
5763
5764 2004-10-08  Wim Taymans  <wim at fluendo dot com>
5765
5766         * gst/elements/gsttypefindelement.c:
5767         (gst_type_find_element_handle_event):
5768         Handle EOS events when doing the transition from
5769         typefind to data passing. This should fix the
5770         infinite loops in short files.
5771
5772 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5773
5774         * gst/gstthread.c: (gst_thread_change_state),
5775         (gst_thread_child_state_change):
5776         Make sure no iteration happens while performing
5777         the state change as it could mess up the internal
5778         consistency of the thread state.
5779
5780 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5781
5782         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
5783         (gst_thread_change_state), (gst_thread_child_state_change):
5784         Do not try to grab the iterate lock in the state change method
5785         when we are in the same thread as the iterate or else we
5786         could deadlock. Some other cleanups.
5787
5788 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5789
5790         * configure.ac:
5791           bump nano to cvs
5792
5793 === release 0.8.7 ===
5794
5795 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5796
5797         * configure.ac:
5798         * NEWS:
5799         * RELEASE:
5800         * configure.ac:
5801           releasing 0.8.7, "A Cruise"
5802
5803 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5804
5805         * docs/random/mimetypes:
5806         Add an entry for Sony ATRAC3 audio format with mime-type
5807         used by rmdemux et riff-read
5808
5809 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5810
5811         * gst/elements/gsttypefindelement.c: (stop_typefinding):
5812         Push the buffer store instead of clearing it in case that
5813         the stream is not seekable.
5814
5815 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5816
5817         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
5818         (gst_thread_main_loop):
5819         Lock the iteration and the state change so that automatic
5820         negotiation and fixation does not happen at the same time
5821         as the in stream negotiation.
5822
5823 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5824
5825         * configure.ac:
5826           bump nano to cvs
5827
5828 === release 0.8.6 ===
5829
5830 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5831
5832         * configure.ac:
5833         * NEWS:
5834         * RELEASE:
5835         * configure.ac:
5836           releasing 0.8.6, "Narc"
5837
5838 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5839
5840         * configure.ac:
5841           prerel bump
5842
5843 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5844
5845         patch by: Steve Lhomme
5846
5847         * gst/elements/gstfakesrc.c:
5848         * gst/elements/gstidentity.c:
5849         * gst/gstthread.c:
5850           Fix for #153881
5851
5852 2004-10-01  Wim Taymans  <wim at fluendo dot com>
5853
5854         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
5855         Fix threadsafety of the crc checking function.
5856
5857 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5858
5859         patch by: Ronald Bultje
5860
5861         * gst/elements/gsttypefindelement.c: (stop_typefinding),
5862         (gst_type_find_element_handle_event),
5863         (gst_type_find_element_chain):
5864         * gst/elements/gsttypefindelement.h:
5865          #153657.
5866          Filter out discont event from seekable sources when typefind
5867          asks them to seek.  Fixes typefind with demuxers for
5868          avi, asf and matroska.
5869
5870 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5871
5872         * docs/gst/gstreamer-sections.txt:
5873         * gst/gstcaps.c:
5874         * gst/gstcaps.h:
5875         * gst/gstpad.c:
5876           Revert preferred caps: (#147789)
5877
5878 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
5879
5880         * win32/dirent.c:
5881           fix a memory leak
5882
5883 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5884
5885         * configure.ac:
5886           bump for prerelease
5887
5888 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5889
5890         * docs/Makefile.am:
5891         * docs/manual/elements-api.xml:
5892           restructure so that common stuff is shown first
5893         * docs/manual/init-api.xml:
5894           convert to examples
5895         * docs/manual/manual.xml:
5896         * docs/manuals.mak:
5897         * docs/url.entities:
5898           link to API on the website, possibly override later in build
5899         * examples/manual/.cvsignore:
5900           ignore more
5901         * examples/manual/Makefile.am:
5902           add more examples
5903         * examples/manual/extract.pl:
5904           error out on failure
5905
5906 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5907
5908         * docs/gst/tmpl/gstthread.sgml:
5909         * docs/manual/init-api.xml:
5910         * examples/manual/Makefile.am:
5911           convert two code bits to examples
5912
5913 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5914
5915         * gst/gstelement.c: (gst_element_change_state):
5916           Well, actually, I was about to remove this insane assert when
5917           I noticed Wim already did that. A warning is nice so we can
5918           fix actual ugs (using --g-fatal-warnings and backtraces), so
5919           I added that instead.
5920
5921 2004-09-06  Wim Taymans  <wim@fluendo.com>
5922
5923         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
5924         (gst_element_threadsafe_properties_post_run),
5925         (gst_element_set_state), (gst_element_change_state):
5926         Added extra refcounting around various places. 
5927
5928 2004-09-06  Wim Taymans  <wim@fluendo.com>
5929
5930         * gst/gstpad.c: (gst_pad_link_call_link_functions):
5931         Fix debug info.
5932
5933 2004-09-06  Wim Taymans  <wim@fluendo.com>
5934
5935         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5936         (remove_from_group):
5937         Some more debug info.
5938
5939 2004-09-03  Wim Taymans  <wim@fluendo.com>
5940
5941         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5942         (gst_fakesrc_init), (gst_fakesrc_set_clock),
5943         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5944         (gst_fakesrc_get), (gst_fakesrc_change_state):
5945         * gst/elements/gstfakesrc.h:
5946         * gst/elements/gstidentity.c: (gst_identity_class_init),
5947         (gst_identity_init), (gst_identity_chain),
5948         (gst_identity_set_property), (gst_identity_get_property),
5949         (gst_identity_change_state):
5950         * gst/elements/gstidentity.h:
5951         Added datarate properties to limit the datarate.
5952
5953 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5954
5955         * gst/autoplug/gstspider.c: (plugin_init):
5956           don't set a rank. We don't want to autoplug by inserting spiders.
5957
5958 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5959
5960         * gst/autoplug/gstspider.c: (gst_spider_class_init),
5961         (gst_spider_identity_plug):
5962           add a template for spider's sink
5963         * gst/gst.c: (gst_register_core_elements):
5964           queue's rank should be NULL, we don't want spider to add it.
5965
5966 2004-08-18  David Schleef  <ds@schleef.org>
5967
5968         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
5969         * docs/libs/Makefile.am: same
5970         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
5971         * docs/random/ds/0.9-planning: random additions
5972         * docs/random/ds/0.9-suggested-changes: same
5973         * gst/gstxml.h: remove vestigal GstXMLNs definition
5974
5975         Preferred caps: (#147789)
5976         * docs/gst/gstreamer-sections.txt: Add symbols
5977         * docs/gst/tmpl/gstcaps.sgml: Add symbols
5978         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
5979         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
5980         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
5981         (gst_caps_get_preferred), (gst_caps_set_preferred),
5982         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
5983         (gst_caps_use_preferred): Handle caps preferences
5984         * gst/gstcaps.h: Add caps preferences
5985         * gst/gstpad.c: (gst_pad_link_get_preferred),
5986         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
5987         (gst_pad_renegotiate), (gst_pad_guess_preferred),
5988         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
5989         negotiation.
5990
5991 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5992
5993         * gst/autoplug/gstspideridentity.c:
5994         (gst_spider_identity_request_new_pad):
5995         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
5996         (gst_aggregator_init):
5997         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
5998         (gst_fakesink_init):
5999         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6000         (gst_fakesrc_init):
6001         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6002         (gst_fdsink_init):
6003         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6004         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6005         (gst_filesink_init):
6006         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6007         (gst_filesrc_init):
6008         * gst/elements/gstidentity.c: (gst_identity_base_init),
6009         (gst_identity_init):
6010         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6011         (gst_multifilesrc_init):
6012         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6013         (gst_pipefilter_init):
6014         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6015         (gst_statistics_init):
6016         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6017         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6018           s/gst_pad_new/&_from_template/
6019           register pad templates in the base_init function
6020           add static pad template definitions
6021
6022 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6023
6024         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6025         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6026         * testsuite/refcounting/pad.c: (main):
6027         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6028           s/gst_pad_new/&_from_template/
6029           prepare deprecation of gst_pad_new
6030
6031 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6032
6033         patch by: Luca Ognibene <skaboy81@virgilio.it>
6034
6035         * gst/gstcaps.c:
6036         * gst/gstelement.c:
6037         * gst/gstpad.c:
6038         * gst/gstxml.c:
6039           fix memleaks.  Fixes #150001
6040
6041 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6042
6043         * docs/random/ds/0.9-suggested-changes:
6044           add notes - mostly about pad templates
6045
6046 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6047
6048         * win32/GStreamer.vcproj:
6049           temporary locale files are .gmo not .mo
6050
6051 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6052
6053         * configure.ac: bump nano to cvs
6054
6055 === release 0.8.5 ===
6056
6057 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6058
6059         * configure.ac:
6060           releasing 0.8.5, "Stuttgart"
6061         * NEWS:
6062         * RELEASE:
6063         * configure.ac:
6064         * docs/random/release:
6065           updates for release
6066
6067 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6068
6069         patch by: Wim Taymans (wim@fluendo.com)
6070
6071         * gst/gstbuffer.c:
6072         * gst/gstindex.h:
6073         * libs/gst/dataprotocol/dataprotocol.c:
6074           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6075
6076 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6077
6078         * Makefile.am:
6079         * win32/MANIFEST:
6080           add win32 dir to the build.  Fixes #149981.
6081
6082 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6083
6084         * configure.ac:
6085           bump libtool versioning
6086         * gst/gststructure.c:
6087           mark function as static
6088         * po/af.po:
6089         * po/az.po:
6090         * po/ca.po:
6091         * po/cs.po:
6092         * po/en_GB.po:
6093         * po/fr.po:
6094         * po/nl.po:
6095         * po/sq.po:
6096         * po/sr.po:
6097         * po/sv.po:
6098         * po/tr.po:
6099         * po/uk.po:
6100           translations update
6101         * win32/README.txt:
6102           trademark protection
6103
6104 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6105
6106         * configure.ac:
6107           fix GST_ORIGIN
6108           set GST_PACKAGE to source, and distinguish between release and other
6109         * tools/gst-inspect.c:
6110           print out plugin an element factory is part of so we see this info
6111
6112 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6113
6114         * docs/gst/gstreamer-sections.txt:
6115         * docs/gst/tmpl/gstbuffer.sgml:
6116         * docs/gst/tmpl/gstschedulerfactory.sgml:
6117           reorder docs a little, make GstBuffer's more sensible.
6118         * gst/gstbuffer.h:
6119           API: added GST_BUFFER_FLAG_DELTA_UNIT
6120         * gst/gstscheduler.c:
6121           comment API addition
6122
6123 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6124
6125         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6126           work with non-regular files that can be mmapped (like /dev/zero)
6127         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6128           get rid of typefinds that require a seek when we can't seek instead
6129           of trying them over and over again
6130         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6131           return non-zero failure value when the pipeline was interrupted or
6132           an error occurred
6133
6134 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6135
6136         * win32/config.h:
6137         * win32/GStreamer.vcproj:
6138           compile and install the locales
6139
6140 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6141
6142         * gst/gstvalue.c:
6143           fix a possible memory leak under Windows
6144
6145 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6146
6147         * win32/GStreamer.vcproj:
6148           fix a memory leak that occured under Windows
6149         * win32/gstreamer.def:
6150           add gst_scheduler_register
6151
6152 2004-08-11  Benjamin Otte  <otte@gnome.org>
6153
6154         * docs/gst/gstreamer-sections.txt:
6155         * gst/gstscheduler.c: (gst_scheduler_register):
6156         * gst/gstscheduler.h:
6157           API:
6158           add gst_scheduler_register shortcut similar to gst_element_register
6159         * gst/schedulers/entryscheduler.c: (plugin_init):
6160         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6161         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6162           use it
6163
6164 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6165
6166         * gst/gstvalue.h:
6167           fix a memory leak that occured under Windows
6168
6169 2004-08-10  Colin Walters  <walters@redhat.com>
6170
6171         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6172         Don't use O_EXCL to open temporary registry.  It will prevent
6173         registry creation if a temporary one already exists, which
6174         is unnecessary.
6175
6176 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6177
6178         * docs/gst/gstreamer-sections.txt:
6179         * docs/gst/tmpl/gstvalue.sgml:
6180           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6181
6182 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6183
6184         * win32/gstbytestream.vcproj:
6185         * win32/gstelements.vcproj:
6186         * win32/gstgetbits.vcproj:
6187         * win32/gst-inspect.vcproj:
6188         * win32/gst-launch.vcproj:
6189         * win32/gstoptimalscheduler.vcproj:
6190         * win32/GStreamer.vcproj:
6191         * win32/gst-register.vcproj:
6192         * win32/gstspider.vcproj:
6193           update the include and lib dirs to fit standard libraries as
6194           described in the Win32 manual
6195
6196 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6197
6198         * win32/config.h:
6199         * win32/gstversion.h:
6200           enable NLS again, push the version number for the coming 0.8.5 release
6201
6202 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6203
6204         * gst/gstvalue.h:
6205           export gst_type_XXX for windows DLLs
6206
6207 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6208
6209         * docs/faq/gst-uninstalled:
6210           fix PKG_CONFIG_PATH and PYTHONPATH
6211         * gst/schedulers/Makefile.am:
6212           cleanup
6213         * libs/gst/bytestream/bytestream.c:
6214           remove newline
6215         * po/LINGUAS:
6216         * po/sq.po:
6217           adding Albanian translation (Laurent Dhima)
6218         * po/cs.po:
6219           updated
6220
6221 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6222
6223         * po/ca.po:
6224         * po/sv.po:
6225           updated translations
6226
6227 2004-08-04  Benjamin Otte  <otte@gnome.org>
6228
6229         * tests/mass_elements.c: (main):
6230           allow specifying src and sink element explicitly, so I can test
6231           videotestsrc instead of fakesrc
6232
6233 2004-08-04  Benjamin Otte  <otte@gnome.org>
6234
6235         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6236         (gst_structure_id_empty_new), (gst_structure_empty_new),
6237         (gst_structure_copy):
6238           add gst_structure_id_empty_new_with_size to allow preallocating
6239           value array sizes. Use this in gst_structure_copy to get rid of
6240           reallocs.
6241           don't do quark=>string=>quark when copying structures
6242
6243 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6244
6245         * docs/manual/win32.xml:
6246         * win32/README.txt:
6247           update documentation with the clean version of dependencies
6248
6249 2004-08-03  Benjamin Otte  <otte@gnome.org>
6250
6251         * gst/schedulers/entryscheduler.c:
6252         (gst_entry_scheduler_remove_element):
6253           fix for GST_DISABLE_DEBUG
6254         * tools/gst-launch.c: (print_tag):
6255           fixes for G_DISABLE_ASSERT
6256
6257 2004-08-03  Benjamin Otte  <otte@gnome.org>
6258
6259         * gst/gst.c: (gst_register_core_elements):
6260           fix for G_DISABLE_ASSERT
6261         * gst/gstinfo.c: (__gst_in_valgrind):
6262           add for GST_DISABLE_DEBUG
6263
6264 2004-08-03  Benjamin Otte  <otte@gnome.org>
6265
6266         * gst/parse/parse.l:
6267           fix for G_DISABLE_ASSERT
6268
6269 2004-08-03  Wim Taymans  <wim@fluendo.com>
6270
6271         * gst/gstbin.c: (gst_bin_get_type),
6272         (gst_bin_child_state_change_func):
6273         * gst/gstthread.c: (gst_thread_change_state):
6274         Backported some debug logging from a reverted patch
6275         Don't try to destroy the thread twice. Added some more
6276         debugging in GstThread. Unlock and signal even if we
6277         are in the thread context.
6278
6279 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6280
6281         * po/uk.po:
6282           updated translation
6283
6284 2004-07-30  David Schleef  <ds@schleef.org>
6285
6286         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6287
6288 2004-07-29  David Schleef  <ds@schleef.org>
6289
6290         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6291         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6292
6293 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6294
6295         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6296         (gst_bin_add_func), (gst_bin_remove_func),
6297         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6298         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6299         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6300         (gst_bin_sync_children_state):
6301         * gst/gstbin.h:
6302         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6303         (gst_thread_change_state):
6304         * testsuite/states/Makefile.am:
6305           revert state change patches as agreed so we can rework them
6306           gradually
6307
6308 2004-07-29  Benjamin Otte  <otte@gnome.org>
6309
6310         * libs/gst/control/Makefile.am:
6311           link to libgstreamer (fixes Debian bug 262019, see
6312           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6313
6314 2004-07-29  Wim Taymans  <wim@fluendo.com>
6315
6316         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6317         (check_from_fraction_convert), (transform_test), (main):
6318         Make the test less pedantic about float roundoff errors.
6319
6320 2004-07-29  Benjamin Otte  <otte@gnome.org>
6321
6322         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6323         (gst_filesrc_srcpad_event):
6324           make seek events to before start/after end of file not fail, but
6325           seek to start/end instead
6326         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6327           add more output
6328
6329 2004-07-29  Benjamin Otte  <otte@gnome.org>
6330
6331         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6332           check that caps are fixed
6333         * gst/gstpad.c: (gst_pad_template_new):
6334           don't try to simplify caps, costs too much time on gst_init
6335         * gst/gstplugin.c: (gst_plugin_add_feature):
6336           G_ERROR if features are added twice
6337         * gst/gsttypefind.c: (gst_type_find_register):
6338         * gst/gstelementfactory.c: (gst_element_register):
6339           don't add features twice
6340         * docs/random/ds/0.9-suggested-changes:
6341           add note about possible gst_init optimization
6342
6343 2004-07-28  David Schleef  <ds@schleef.org>
6344
6345         * testsuite/elements/Makefile.am:
6346         * testsuite/elements/struct_i386.h:
6347         * testsuite/elements/struct_size.c: (main):  A little test
6348         to keep distcheck from working if someone changes a structure
6349         size accidentally.
6350
6351 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6352
6353         * docs/libs/Makefile.am:
6354         * docs/libs/gstreamer-libs-docs.sgml:
6355         * docs/libs/gstreamer-libs-sections.txt:
6356         * docs/libs/tmpl/gstbytestream.sgml:
6357         * docs/libs/tmpl/gstcontrol.sgml:
6358         * docs/libs/tmpl/gstdataprotocol.sgml:
6359         * docs/libs/tmpl/gstgetbits.sgml:
6360         * libs/gst/bytestream/Makefile.am:
6361         * libs/gst/bytestream/bytestream.c:
6362         * libs/gst/bytestream/bytestream.h:
6363         * libs/gst/control/Makefile.am:
6364         * libs/gst/dataprotocol/Makefile.am:
6365         * libs/gst/getbits/Makefile.am:
6366         * libs/gst/getbits/getbits.h:
6367           various doc and style fixes, adding bytestream to libs docs.
6368
6369 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6370
6371         * docs/gst/gstreamer-docs.sgml:
6372         * docs/libs/Makefile.am:
6373         * docs/libs/gstreamer-libs-docs.sgml:
6374         * docs/libs/gstreamer-libs-sections.txt:
6375         * libs/gst/control/dparam.c:
6376           more doc fixes.  gst-libs docs now build the same way as gst.
6377
6378 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6379
6380         * configure.ac:
6381         * testsuite/Makefile.am:
6382         * testsuite/bins/Makefile.am:
6383         * testsuite/caps/Makefile.am:
6384         * testsuite/cleanup/Makefile.am:
6385         * testsuite/clock/Makefile.am:
6386         * testsuite/debug/Makefile.am:
6387         * testsuite/dlopen/Makefile.am:
6388         * testsuite/dynparams/Makefile.am:
6389         * testsuite/elements/.cvsignore:
6390         * testsuite/elements/Makefile.am:
6391         * testsuite/enumcaps/Makefile.am:
6392         * testsuite/enumcaps/enumcaps.c:
6393         * testsuite/ghostpads/Makefile.am:
6394         * testsuite/indexers/Makefile.am:
6395         * testsuite/negotiation/Makefile.am:
6396         * testsuite/parse/Makefile.am:
6397         * testsuite/plugin/Makefile.am:
6398         * testsuite/refcounting/Makefile.am:
6399         * testsuite/schedulers/.cvsignore:
6400         * testsuite/states/Makefile.am:
6401         * testsuite/tags/Makefile.am:
6402         * testsuite/threads/Makefile.am:
6403           fold enumcaps into caps dir
6404           clean up Makefile.am's for testsuite
6405
6406 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6407
6408         * docs/gst/Makefile.am:
6409         * docs/libs/Makefile.am:
6410           clean up docs build.  Fixes needless rebuilding of template files.
6411
6412 2004-07-28  Wim Taymans  <wim@fluendo.com>
6413
6414         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6415         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6416         Make sure that a bin state change tries to keep the children
6417         in sync. 
6418         Added debug logging to the thread.
6419
6420 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6421
6422         * win32/GStreamer.vcproj:
6423         * win32/gstreamer.def:
6424           more exports for the plugins
6425
6426 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6427
6428         * win32/gstgetbits.vcproj:
6429         * win32/gstgetbits.def:
6430         * win32/msvc71.sln:
6431           add support for the getbits plugin
6432
6433 2004-07-27  Wim Taymans  <wim@fluendo.com>
6434
6435         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6436         (gst_value_transform_fraction_double), (_gst_value_initialize):
6437         * testsuite/caps/Makefile.am:
6438         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6439         (check_from_fraction_convert), (transform_test), (main):
6440         Added transform functions between double and fraction.
6441         Added testcase to verify transforms
6442
6443 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6444
6445         * win32/GStreamer.vcproj:
6446           rename GStreamer-0.8.lib to libgstreamer.lib
6447
6448 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6449
6450         * win32/gstelements.vcproj:
6451         * win32/gstoptimalscheduler.vcproj:
6452           fixes for the Release build
6453
6454 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6455
6456         * win32/config.h:
6457           update the version number
6458
6459 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6460
6461         * win32/GStreamer.vcproj:
6462           add gstinterface to the build
6463
6464 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6465
6466         * win32/gstreamer.def:
6467           add many definitions needed by plugins,
6468           GST_CAT_DEFAULT only available in the Debug build ?
6469
6470 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6471
6472         * gst/gstelement.c: (gst_element_set_eos_recursive):
6473           various whitespace fixes.
6474           doc fix, fixes #148497
6475
6476 2004-07-25  Benjamin Otte  <otte@gnome.org>
6477
6478         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6479           don't delay links on the sink elements, it causes unnegotiated
6480           links.
6481         * gst/elements/gsttypefindelement.c:
6482         (gst_type_find_element_base_init):
6483           add our padtemplates, we indeed do have some.
6484         * gst/elements/gsttypefindelement.c:
6485         (gst_type_find_element_handle_event),
6486         (gst_type_find_element_chain):
6487           don't push data when typefinding failed.
6488         * gst/gstpad.c: (gst_pad_link_fixate):
6489           check that no fixate function returns empty caps.
6490         * gst/gstpad.c: (gst_pad_push):
6491           check that the link is negotiated before data gets pushed.
6492         * tools/gst-register.c: (main):
6493           don't assert (fixes #148283)
6494
6495 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6496
6497         * docs/gst/gstreamer-sections.txt:
6498         * docs/gst/tmpl/gstconfig.sgml:
6499           add GST_PLUGIN_EXPORT definition
6500
6501 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6502
6503         * gst/gstplugin.h:
6504         * gst/gstconfig.h.in:
6505         * win32/gstconfig.h:
6506         * win32/gstelements.def:
6507         * win32/gstelements.vcproj:
6508         * win32/gstoptimalscheduler.def:
6509         * win32/gstoptimalscheduler.vcproj:
6510         * win32/gstspider.def:
6511         * win32/gstspider.vcproj:
6512           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6513
6514 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6515
6516         * docs/gst/gstreamer-sections.txt:
6517           remove GST_CAT_DEFAULT because the type has changed
6518
6519 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6520
6521         * win32/gstbytestream.vcproj:
6522         * win32/gstelements.vcproj:
6523         * win32/gst-inspect.vcproj:
6524         * win32/gst-launch.vcproj:
6525         * win32/gstoptimalscheduler.vcproj:
6526         * win32/GStreamer.vcproj:
6527         * win32/gst-register.vcproj:
6528         * win32/gstspider.vcproj:
6529         * win32/msvc71.sln:
6530           Copy the files where needed after building, The testsuite will be
6531           built separately
6532
6533 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6534
6535         * win32/config.h:
6536         * win32/README.txt:
6537         * docs/manual/win32.xml:
6538         Fixed the plugin and GStreamer location
6539
6540 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6541
6542         * win32/gstreamer.def:
6543         More exports for the plugins
6544
6545 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6546
6547         * gst/gstinfo.h:
6548         Marc was right, we need to export literally GST_CAT_DEFAULT
6549
6550 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6551
6552         * win32/config.h:
6553         NLS crashes in gettext, disabled until this is solved
6554
6555 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6556
6557         * win32/gst-inspect.vcproj:
6558         * win32/gst-launch.vcproj:
6559         Should use NLS when available
6560
6561 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6562
6563         * gst/registries/gstxmlregistry.c:
6564         removing the file doesn't seem to be a good idea on Linux
6565
6566 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6567
6568         * gst/registries/gstxmlregistry.c:
6569         Remove the registry before renaming the tempfile (needed for Windows)
6570
6571 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6572
6573         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6574         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6575         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6576         * gst/elements/gstmultifilesrc.h:
6577         Added newmedia property so it generates newmedia events between each
6578         file when property is set, as well as fixed eos handling
6579
6580 2004-07-22  David Schleef  <ds@schleef.org>
6581
6582         * gst/gststructure.c: (gst_structure_id_empty_new),
6583         (gst_structure_empty_new):  Set type field correctly.
6584         * gst/gststructure.h: Check type field correctly.
6585         * testsuite/caps/Makefile.am:
6586         * testsuite/caps/structure.c: (test1), (main): Add a very small
6587         test for structures.
6588
6589 2004-07-22  David Schleef  <ds@schleef.org>
6590
6591         * docs/random/ds/0.9-suggested-changes: more comments
6592         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6593
6594 2004-07-22  Benjamin Otte  <otte@gnome.org>
6595
6596         * gst/gstelementfactory.c: (gst_element_register):
6597           set the factory in the class struct, so gst_element_get_factory
6598           actually works
6599         * gst/parse/grammar.y:
6600           set element to playing when it gets unlocked as we can't rely on the
6601           bin state - all elements in the bin state might still be locked in
6602           NULL)
6603
6604 2004-07-22  Benjamin Otte  <otte@gnome.org>
6605
6606         * gst/gstelement.c: (gst_element_set_state_func):
6607           make this a static function
6608
6609 2004-07-22  Wim Taymans  <wim@fluendo.com>
6610
6611         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6612         (gst_opt_scheduler_pad_link):
6613         fix 147894-2 and the group_link problem.
6614
6615 2004-07-22  Wim Taymans  <wim@fluendo.com>
6616
6617         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6618         (handoff_identity), (main):
6619         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6620         (handoff_identity), (main):
6621         * testsuite/schedulers/Makefile.am:
6622         * testsuite/schedulers/group_link.c: (main):
6623         Show bug in scheduler when linking chain and loop based element 
6624         where the chain based element was not yet in a group.
6625
6626 2004-07-21  Benjamin Otte  <otte@gnome.org>
6627
6628         * gst/.cvsignore:
6629         * gst/autoplug/.cvsignore:
6630         * gst/elements/.cvsignore:
6631         * gst/indexers/.cvsignore:
6632         * libs/gst/bytestream/.cvsignore:
6633         * libs/gst/control/.cvsignore:
6634         * libs/gst/getbits/.cvsignore:
6635         * testsuite/states/.cvsignore:
6636         * testsuite/threads/.cvsignore:
6637           keep this up to date, since I seem to be the only one who cares
6638           about not missing files on commits (editor's note: no you don't,
6639           but feel free to change them at the time you add stuff instead
6640           of later on)
6641
6642 2004-07-21  Benjamin Otte  <otte@gnome.org>
6643
6644         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6645         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6646         (gst_bin_child_state_change_func), (set_kid_state_func),
6647         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6648           make state changes work correctly and reentrant (so removing
6649           elements from bins during state changes of bins doesn't cause
6650           segfaults or even wrong states)
6651           add debugging category and debugging output to print children states
6652         * gst/gstbin.c: (gst_bin_dispose): 
6653           add some assertion checks
6654         * gst/gstbin.h:
6655         * gst/gstbin.c: (gst_bin_sync_children_state):
6656           deprecate this function - it just does gst_bin_set_state (bin,
6657           GST_STATE (bin)) 
6658         * testsuite/threads/queue.c: (main):
6659           don't use gst_bin_sync_children_state anymore
6660         * testsuite/states/Makefile.am:
6661         * testsuite/states/bin.c:
6662           test that the state changes of bins work as expected
6663         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6664           some adjustments to change states correctly, too
6665         * gst/gstthread.c: (gst_thread_change_state):
6666           don't enable/disable "threadsafe" properties, they're unused and
6667           cause random segfaults
6668         * testsuite/threads/Makefile.am:
6669           the queue check randomly passes now, ignore it
6670
6671 2004-07-21  Benjamin Otte  <otte@gnome.org>
6672
6673         * gst/gstpad.c:
6674           check if data is NULL before outputting debug info. (fixes #145100)
6675
6676 2004-07-21  Benjamin Otte  <otte@gnome.org>
6677
6678         * gst/schedulers/entryscheduler.c:
6679         (gst_entry_scheduler_loop_wrapper),
6680         (gst_entry_scheduler_chain_wrapper),
6681         (gst_entry_scheduler_get_wrapper):
6682           reset the state when the cothread starts, so we don't get assertion
6683           failures on restarting of cothreads
6684
6685 2004-07-20  Benjamin Otte  <otte@gnome.org>
6686
6687         * gst/gstelement.c: (gst_element_link_pads_filtered):
6688           use correct sinkpad, if only sinkpad is specified, but not srcpad
6689           (fixes #147889)
6690         * gst/gstelement.c: (gst_element_set_state_func),
6691         (gst_element_change_state): ref/unref the element, signal handlers
6692         could get rid of the element otherwise
6693
6694 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6695
6696         * docs/random/ds/0.9-suggested-changes:
6697           Make note about renaming fixed-list to array.
6698         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6699         (_gst_value_initialize):
6700           Add array intersections.
6701         * testsuite/caps/intersect2.c: (main):
6702           Add test for array intersections.
6703
6704 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6705
6706         * configure.ac: back to cvs
6707
6708 === release 0.8.4 ===
6709
6710 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6711
6712         * configure.ac:
6713           releasing 0.8.4, "Paella"
6714           bump libtool versioning
6715
6716 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6717
6718         * po/LINGUAS:
6719         * po/ca.po:
6720           adding Catalan translation (Jordi Mallach)
6721
6722 2004-07-20  Wim Taymans  <wim@fluendo.com>
6723
6724         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6725         (handoff_identity), (main):
6726         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6727         (handoff_identity), (main):
6728         * testsuite/schedulers/Makefile.am:
6729         Added failing testcase for variant of #147894
6730
6731 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6732
6733         patch by: David Moore
6734
6735         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6736         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
6737         (group_migrate_connected):
6738         * testsuite/schedulers/Makefile.am:
6739           fix for #142813 (Deadlock in optimal scheduler)
6740
6741 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6742
6743         patch by: Wim Taymans
6744
6745         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6746         (gst_opt_scheduler_schedule_run_queue),
6747         (gst_opt_scheduler_get_wrapper), (get_group),
6748         (group_migrate_connected):
6749         * testsuite/schedulers/Makefile.am:
6750           fix for #147819 (Add some checks in the opt scheduler)
6751
6752 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6753
6754         patch by: Benjamin Otte
6755
6756         * gst/gstelementfactory.c: (__gst_element_details_set):
6757           fix for #147929: running gst-register in non-utf8 locale can cause
6758           invalid registry
6759
6760 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6761
6762         patch by: Wim Taymans
6763
6764         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
6765         (group_has_element), (element_get_reachables_func),
6766         (group_migrate_connected):
6767           fix for #147894 (opt scheduler decoupled elements mismanagement)
6768         * testsuite/schedulers/Makefile.am:
6769           testsuite app now passes
6770
6771 2004-07-19  Wim Taymans  <wim@fluendo.com>
6772
6773         * testsuite/schedulers/147819.c: (handoff_identity1),
6774         (handoff_identity2), (main):
6775         * testsuite/schedulers/Makefile.am:
6776         Added testcase for bug 147819
6777
6778 2004-07-19  Wim Taymans  <wim@fluendo.com>
6779
6780         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6781         (handoff_identity), (main):
6782         * testsuite/schedulers/Makefile.am:
6783         Added testcase for bug 147894
6784
6785 2004-07-16  Wim Taymans  <wim@fluendo.com>
6786
6787         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
6788         * testsuite/schedulers/142183.c: (handoff_identity), (main):
6789         * testsuite/schedulers/Makefile.am:
6790         Added testsuite for bug 142183 in its two incarnations. Refcount
6791         is not increased for scheduled elements and threadsafe properties
6792         mutexes are not properly unlocked.
6793
6794 2004-07-16  Wim Taymans  <wim@fluendo.com>
6795
6796         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
6797         (create_chain), (destroy_chain), (create_group), (destroy_group),
6798         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
6799         (group_dec_link), (gst_opt_scheduler_pad_link),
6800         (group_inc_links_for_element), (group_migrate_connected):
6801         Call group_inc_link with the proper src->sink ordering -- 
6802         break this, and we break sort_chain. patch from wingo for bug
6803         147713.
6804         Partially revert patch 1.89. When adding a loop based element to 
6805         the scheduler, the links to other groups are automatically followed
6806         and incremented. This should not happen because the bin will call
6807         pad_link explicitly for those connection, resulting in them counted 
6808         twice. Results in assertion failure on pipeline cleanup.
6809
6810 2004-07-16  Wim Taymans  <wim@fluendo.com>
6811
6812         * testsuite/schedulers/143777-2.c: (main):
6813         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
6814         (main):
6815         * testsuite/schedulers/Makefile.am:
6816         Added cleanup code to testcase 143777-2.
6817         Added testcase to show bug 147713, does not really show the
6818         deadlock as I can't figure out how to trigger it, but it does
6819         demonstrate bad ordering in the scheduler.
6820
6821 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6822
6823         * gst/gstvalue.c: (gst_value_deserialize_fraction):
6824           change strndup to g_strndup.  Fixes #147707
6825
6826 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6827
6828         * po/af.po:
6829         * po/az.po:
6830         * po/cs.po:
6831         * po/en_GB.po:
6832         * po/fr.po:
6833         * po/nl.po:
6834         * po/sr.po:
6835         * po/sv.po:
6836         * po/tr.po:
6837         * po/uk.po:
6838           updated translations
6839
6840 2004-07-16  Benjamin Otte  <otte@gnome.org>
6841
6842         * gst/gstvalue.c: (gst_greatest_common_divisor):
6843           use ints and return ints, fractions only use ints, too, so this
6844           avoids accidently casting multiplications to unsigned
6845         (gst_value_lcopy_fraction): it's ints, not uint32
6846         (gst_value_set_fraction): disallow minint, multiplying and negation
6847           are broken with it
6848         (gst_value_fraction_multiply): fix to make large numbers work and get
6849         rid of the assumption that the multiplication of two ints fits an
6850         int64 - dunno if that's true for all systems
6851         * testsuite/caps/Makefile.am:
6852         * testsuite/caps/fraction-multiply-and-zero.c:
6853         (check_multiplication), (check_equal), (zero_test), (main):
6854           add tests for all the stuff above
6855         * testsuite/caps/value_compare.c: (test1):
6856           fix comment
6857         * tests/.cvsignore:
6858         * testsuite/caps/.cvsignore:
6859         * testsuite/debug/.cvsignore:
6860         * testsuite/dlopen/.cvsignore:
6861         * testsuite/states/.cvsignore:
6862           get up to date
6863
6864 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6865
6866         * docs/manual/bins-api.xml:
6867         * docs/manual/factories.xml:
6868         * docs/manual/helloworld.xml:
6869         * docs/manual/links-api.xml: 
6870           fixes for out of date info, incorrect info and grammar
6871
6872 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6873
6874         * docs/manual/pads.xml:
6875         * docs/manual/pads-api.xml: grammar fix
6876
6877 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6878
6879         * docs/manual/pads-api.xml: typo + grammar fix
6880
6881 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6882
6883         * docs/gst/gstreamer-sections.txt:
6884           add new symbols
6885         * docs/gst/tmpl/gstelement.sgml:
6886         * docs/gst/tmpl/gstpad.sgml:
6887         * docs/gst/tmpl/gsttypes.sgml:
6888         * docs/gst/tmpl/gstvalue.sgml:
6889           update docs
6890         * gst/gststructure.c: (gst_structure_set_valist),
6891         (gst_structure_from_abbr), (gst_structure_to_abbr):
6892         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
6893         (gst_greatest_common_divisor), (gst_value_init_fraction),
6894         (gst_value_copy_fraction), (gst_value_collect_fraction),
6895         (gst_value_lcopy_fraction), (gst_value_set_fraction),
6896         (gst_value_get_fraction_numerator),
6897         (gst_value_get_fraction_denominator),
6898         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
6899         (gst_value_deserialize_fraction),
6900         (gst_value_transform_fraction_string),
6901         (gst_value_transform_string_fraction),
6902         (gst_value_compare_fraction), (_gst_value_initialize):
6903         * gst/gstvalue.h:
6904           adding GstFraction GValue type, get/set, and multiply
6905         * testsuite/caps/Makefile.am:
6906         * testsuite/caps/fraction.c: (test), (main):
6907         * testsuite/caps/string-conversions.c: (main):
6908         * testsuite/caps/value_compare.c: (test1), (main):
6909           add regression tests for GstFraction
6910
6911 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6912         
6913         * docs/manual/init-api.xml: Grammar fix
6914
6915 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6916
6917         * docs/manual/states.xml: Fix inconsistent information
6918
6919 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6920
6921         * gst/gstelement.c: (gst_element_set_state):
6922         * gst/gstpad.c: (gst_pad_try_set_caps):
6923         * gst/gststructure.c:
6924         * gst/gstthread.c: (gst_thread_child_state_change):
6925         * gst/gstvalue.c: (gst_value_compare_double):
6926         * gst/gstvalue.h:
6927         * testsuite/parse/parse1.c: (main):
6928           debugging additions and style cleanups
6929
6930 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6931
6932         * docs/manual/states.xml: Grammar fix
6933
6934 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6935
6936         * docs/manual/pads.xml: Grammar fix
6937
6938 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6939
6940         * docs/manual/elements.xml: Fixed image reference
6941
6942 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6943
6944         * docs/manual/goals.xml: Grammar fix
6945
6946 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6947
6948         * docs/manual/motivation.xml:
6949         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
6950
6951 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6952
6953         * docs/manual/motivation.xml: Fix spelling
6954
6955 2004-07-15  Benjamin Otte  <otte@gnome.org>
6956
6957         * gst/gstelement.h: 
6958           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
6959           strings.
6960         * gst/gstelement.c (gst_element_class_init):
6961           GError's are boxed, not objects
6962         * gst/gstmarshal.list:
6963           update list for the fixed error signal
6964
6965 2004-07-14  Andy Wingo  <wingo@pobox.com>
6966
6967         * gst/gsttag.c: Add a tag merge func for pointers. The header was
6968         there all along, but the function wasn't. (guile-gstreamer's build
6969         system uses the address of the function -- I wasn't actually
6970         trying to use this.)
6971
6972 2004-07-14  Andy Wingo  <wingo@pobox.com>
6973
6974         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
6975         as gst_pad_proxy_pad_link) just link to every other pad when they
6976         are called. In the case where the graph has cycles, this will mean
6977         that a call to try_set_caps will recurse. Allow this recursion
6978         and return OK, while we wait for the first try_set_caps to give a
6979         proper return value.
6980         (gst_pad_link_call_link_functions): Since this function is the
6981         only one to set the NEGOTIATING flag on a pad, if the flag is set
6982         it means that the link functions have indirectly recursed. If this
6983         happens, error out to avoid infinite recursion and an eventual
6984         SEGV.
6985         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
6986         (gst_pad_proxy_getcaps): Intersect the result with the template
6987         caps to ensure that the return value is valid.
6988
6989 2004-07-14  Andy Wingo  <wingo@pobox.com>
6990
6991         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
6992         one refcount, the calling function is the owner of the buffer.
6993
6994 2004-07-14  Wim Taymans  <wim@fluendo.com>
6995
6996         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
6997         (gst_opt_scheduler_pad_link), (group_migrate_connected):
6998         Fix stupid warning when an element is to be migrated but
6999         is already migrated.
7000
7001 2004-07-14  Wim Taymans  <wim@fluendo.com>
7002
7003         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7004         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7005         Make sure that a single non-loop-based element does not 
7006         end up in a group. This fixes the testsuite again.
7007
7008 2004-07-14  Wim Taymans  <wim@fluendo.com>
7009
7010         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7011         (add_to_group), (merge_groups), (schedule_group),
7012         (gst_opt_scheduler_get_wrapper), (group_elements),
7013         (group_dec_link), (gst_opt_scheduler_pad_link),
7014         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7015         (gst_opt_scheduler_iterate):
7016         move isolated groups to a new chain.
7017         Emit a warning instead of segfaulting in some error cases.
7018         Fix a bug where the link count between groups was not calculated 
7019         correctly. Fixes #144510.
7020
7021 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7022         * gst/elements/gstfilesrc.c:
7023           Binary files support under Windows now OK
7024       
7025 2004-07-13  Benjamin Otte  <otte@gnome.org>
7026
7027           compatibility fixes for Solaris 8/gcc 2.95
7028         * configure.ac:
7029           include libintl libs in LDFLAGS
7030         * gstvalue.c (gst_value_deserialize_buffer):
7031           cast isxdigit stuff to int to silence compiler warning
7032
7033 2004-07-12  Benjamin Otte  <otte@gnome.org>
7034
7035         * gst/gsttypes.h:
7036           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7037           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7038           just causes support madness
7039         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7040           make it work without this
7041         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7042         (gst_file_index_commit):
7043           glib IO channels don't want binary mode
7044         * testsuite/bytestream/filepadsink.c: (main):
7045         * testsuite/bytestream/test1.c: (read_param_file):
7046           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7047
7048 2004-07-12  Benjamin Otte  <otte@gnome.org>
7049
7050         * gst/gstelement.c: (gst_element_class_init),
7051         (gst_element_set_state), (gst_element_set_state_func):
7052           virutalize gst_element_set_state, use set_state member in class
7053           struct that was already added in 0.7 for this.
7054         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7055         (gst_bin_change_state):
7056           make gst_bin_foreach works similar to other foreach functions, plug
7057           memleaks in it. Make functions using it work with the new approach.
7058           Document gst_bin_foreach, so it can be exported if we want to
7059         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7060           use virtualized set_state to make set_state on bins set the state of
7061           all its children.
7062
7063 2004-07-12  Benjamin Otte  <otte@gnome.org>
7064
7065         * configure.ac:
7066           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7067           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7068         * gst/gstpad.c: (gst_pad_alloc_buffer):
7069           allow buffer_alloc functions to return NULL and allocate a normal
7070           buffer in that case
7071
7072 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7073         * gst/elements/gstfilesink.c:
7074         * gst/elements/gstfilesrc.c:
7075         * gst/indexers/gstfileindex.c:
7076         * gst/gsttypes.h:
7077         * testsuite/bytestream/filepadsink.c:
7078         * testsuite/bytestream/test1.c:
7079           Handle binary files under Windows
7080
7081 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7082         * docs/manual/win32.xml:
7083         * win32/config.h:
7084         * win32/gst-register.vcproj:
7085         * win32/gstreamer.def:
7086           Update to another gettext public build
7087
7088 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7089         * gst/gstplugin.c:
7090           Fix an impossible C syntax
7091         * win32/config.h:
7092           Disable i18n under Windows for the moment
7093         * win32/gst-register.vcproj:
7094           Use this configuration
7095
7096 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7097         * docs/manual/quotes.xml:
7098           Keep the quotes file alive
7099         * docs/random/ds/0.9-suggested-changes:
7100           Add the suggestion of including a 'rowstride' as part of video
7101           format caps
7102
7103 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7104
7105         * gst/gstelement.c: (gst_element_set_state),
7106         (gst_element_change_state):
7107           d'oh.  Set PENDING state correctly before forcing bin to change.
7108         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7109         (gst_structure_parse_fixed_list):
7110         * gst/schedulers/gstoptimalscheduler.c:
7111         (gst_opt_scheduler_state_transition):
7112         * testsuite/states/parent.c: (main):
7113           remove comment now that it's fixed.
7114
7115 2004-07-11  Benjamin Otte  <otte@gnome.org>
7116
7117         * gst/gstclock.h:
7118           GST_SECOND shouldn't cause a conversion to unsigned.
7119         * testsuite/clock/.cvsignore:
7120         * testsuite/clock/Makefile.am:
7121         * testsuite/clock/signedness.c: (main):
7122           make sure it never will again
7123
7124 2004-07-11  Andy Wingo  <wingo@pobox.com>
7125
7126         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7127         whose state is higher than the bin state, raise the bin state to
7128         ensure that bin state := highest child state.
7129         
7130 2004-07-11  Andy Wingo  <wingo@pobox.com>
7131
7132         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7133         procedure on the children of a bin. Assumes that the procedure can
7134         change the set of children.
7135         (set_kid_state_func): New static function.
7136         (gst_bin_change_state): Use gst_bin_foreach to call
7137         set_kid_state_func. Fixes a bug: if a child had a state-change
7138         handler that removes it from the bin, there would be a segfault.
7139         Hopefully it should also work in the case where the state-change
7140         handler on one child adds or removes other children. In any case,
7141         fixes should go to gst_bin_foreach.
7142
7143 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7144
7145         * gst/gstelement.c: (gst_element_set_state):
7146           compatibility fix for latest plugins release.  Change loop back
7147           to while {}
7148
7149 2004-07-09  Wim Taymans  <wim@fluendo.com>
7150
7151         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7152         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7153         (gst_thread_main_loop):
7154         Since remove is virtual in GstBin we must not assume the 
7155         elements GList to have anothing useful.
7156         Add some more logging to GstThread and be a bit more paranoid
7157         when resetting the scheduler.
7158         Set the state of the bin to NULL before removing the children.
7159
7160 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7161
7162         * testsuite/threads/Makefile.am:
7163         * testsuite/threads/threadg.c:
7164           added test to check if problem when removing all elements from a
7165           GstThread before setting GstThread state to NULL
7166
7167 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7168
7169         * docs/gst/tmpl/gstelement.sgml:
7170         * docs/gst/tmpl/gsttypes.sgml:
7171         * gst/gstbin.c: (gst_bin_change_state):
7172         * gst/gstelement.c: (gst_element_set_state),
7173         (gst_element_change_state):
7174           rework so that for bins we try to set the state on all children
7175           as well even if the bin is in the correct state already.
7176           change while to do so at least one iteration is done.
7177           For regular elements, we fall back to the previous behaviour for
7178           now since we first need a new plugins release.
7179         * testsuite/states/parent.c: (main):
7180           test for this case
7181           Fixes #123774
7182
7183 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7184
7185         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7186         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7187         (gst_queue_release_locks), (gst_queue_change_state),
7188         (gst_queue_set_property):
7189           add proper lock debugging.  Change dispose to finalize, since
7190           we're freeing mutexes and other stuff which should happen only once.
7191
7192 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7193
7194         * docs/gst/tmpl/gstelement.sgml:
7195         * docs/gst/tmpl/gstplugin.sgml:
7196         * docs/gst/tmpl/gsttypes.sgml:
7197         * docs/pwg/building-state.xml:
7198         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7199         * gst/gstelement.c: (gst_element_change_state):
7200         * gst/gstthread.c: (gst_thread_change_state):
7201           catch wrong state changes in element base class.
7202
7203 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7204
7205         * gst/gstinfo.h:
7206           clean up layout a little.
7207
7208 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7209
7210         * configure.ac:
7211         * testsuite/Makefile.am:
7212         * testsuite/states/Makefile.am:
7213         * testsuite/states/parent.c: (main):
7214           re-enable states testsuite dir.  Add test for state changes and
7215           parent behaviour
7216
7217 2004-07-09  Wim Taymans  <wim@fluendo.com>
7218
7219         * gst/schedulers/gstoptimalscheduler.c:
7220         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7221         (element_get_reachables_func), (element_get_reachables),
7222         (debug_element), (rechain_group), (group_migrate_connected),
7223         (gst_opt_scheduler_pad_unlink):
7224         Do not try to migrate decoupled elements to a new group since
7225         they are not added to groups.
7226
7227 2004-07-08  Benjamin Otte  <otte@gnome.org>
7228
7229         * gst/gstelement.c: (gst_element_error_func):
7230           make reentrant (= allow removing elements in error handler)
7231
7232 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7233
7234         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7235         (gst_pad_send_event), (gst_pad_call_chain_function):
7236           events sent to elements below PAUSED cannot be handled, so
7237           don't try to
7238
7239 2004-07-08  Wim Taymans  <wim@fluendo.com>
7240
7241         * gst/schedulers/gstoptimalscheduler.c:
7242         (chain_recursively_migrate_group), (create_group),
7243         (schedule_group), (gst_opt_scheduler_pad_link),
7244         (group_elements_set_visited), (element_get_reachables_func),
7245         (element_get_reachables), (group_can_reach_group), (debug_element),
7246         (rechain_group), (group_migrate_connected),
7247         (gst_opt_scheduler_pad_unlink):
7248         * testsuite/schedulers/Makefile.am:
7249         Implemented group splitting and rechaining.
7250         Fixes 143777 and 143777-2 in the testsuite.
7251
7252 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7253
7254         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7255           extra debugging
7256         * gst/gstevent.h:
7257         * gst/gstinfo.c: (gst_debug_log_default):
7258           print time nicely.  add thread pointer until someone figures out
7259           a completely portable way of getting at thread id's.
7260         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7261         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7262         (gst_pad_call_chain_function):
7263           extra debugging
7264         * gst/schedulers/gstoptimalscheduler.c:
7265         (get_group_schedule_function), (loop_group_schedule_function),
7266         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7267         (pad_clear_queued), (gst_opt_scheduler_iterate):
7268           rename BUFPEN and friends to DATAPEN since that's what they are.
7269
7270 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7271
7272         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7273         * gst/gstbuffer.h:
7274         * gst/gstpad.c:
7275           cleanups and debugging
7276
7277 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7278
7279         * configure.ac:
7280         * gst/gstvalue.c: (gst_value_compare_enum),
7281         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7282         (gst_value_can_compare), (gst_value_compare):
7283         * testsuite/Makefile.am:
7284         * testsuite/enumcaps/Makefile.am:
7285         * testsuite/enumcaps/enumcaps.c:
7286           Fix enum serialization, deserialization, comparison in caps, add
7287           a test to ensure that this continues working in the future.
7288
7289 2004-07-06  David Schleef  <ds@schleef.org>
7290
7291         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7292         Fix memleak.
7293
7294 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7295
7296         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7297         * gst/gstplugin.h:
7298         * gst/registries/gstxmlregistry.c:
7299         (plugin_times_older_than_recurse), (plugin_times_older_than),
7300         (gst_xml_registry_parse_padtemplate):
7301           only rebuild registry when actual plugins have a newer time than
7302           the registry.  Fixes #145520
7303
7304 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7305
7306         * docs/manual/manual.xml:
7307         * docs/manual/win32.xml:
7308           add chapter on win32 building.  fixes #142422
7309
7310 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7311
7312         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7313
7314         * gst/autoplug/gstspider.c: (gst_spider_init),
7315         (gst_spider_dispose):
7316           fix spider memleaks.  fixes #137863
7317
7318 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7319
7320         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7321
7322         * gst/schedulers/gstoptimalscheduler.c:
7323         (gst_opt_scheduler_pad_unlink):
7324           fix SIGBUS error, fixes #145338
7325
7326 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7327
7328         * gst/gstobject.c: (gst_object_replace):
7329         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7330         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7331           clean up clock lifecycle.  Fixes #109831
7332
7333 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7334
7335         * po/LINGUAS:
7336         * po/cs.po:
7337           added Czech translation (Miloslav Trmac)
7338
7339 2004-07-04  David Schleef  <ds@schleef.org>
7340
7341         * tools/Makefile.am:
7342         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7343
7344 2004-07-04  David Schleef  <ds@schleef.org>
7345
7346         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7347
7348 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7349
7350         * gst/gstbin.c: (gst_bin_restore_thyself):
7351           chain to parent restore so the bins get restored correctly
7352           in the editor
7353
7354 2004-07-03  David Schleef  <ds@schleef.org>
7355
7356         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7357         Actually do something in these functions, like before the big
7358         caps change.  (bug #145137)
7359
7360 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7361
7362         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7363         (gst_element_get_compatible_pad_filtered):
7364         * gst/gstthread.c: (gst_thread_main_loop):
7365           more debugging
7366
7367 2004-07-02  David Schleef  <ds@schleef.org>
7368
7369         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7370         * gst/gstobject.h:
7371         * gst/gstparse.h:
7372         * gst/gsttrace.h:
7373         * gst/gstxml.h:
7374
7375 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7376
7377         * gst/gstpad.c: (gst_pad_check_schedulers),
7378         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7379         (gst_pad_link_prepare):
7380           revert until testsuite is fixed
7381
7382 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7383
7384         * testsuite/Makefile.am:
7385         * testsuite/caps/filtercaps.c: (main):
7386         * testsuite/clock/clock1.c: (main):
7387         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7388           fix some more tests
7389
7390 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7391
7392         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7393         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7394         * testsuite/cleanup/cleanup4.c: (main):
7395           fix testsuite
7396
7397 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7398
7399         * libs/gst/control/control.c:
7400         * libs/gst/control/dparam.c:
7401         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7402         * libs/gst/control/dparammanager.c:
7403         * libs/gst/control/dparammanager.h:
7404         * testsuite/dynparams/Makefile.am:
7405         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7406         (gst_dptest_change_state), (gst_dptest_chain), (main):
7407           fix testcase for dparams
7408           add debugging category
7409
7410 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7411
7412         * testsuite/Rules:
7413           change path
7414
7415 2004-07-02  Benjamin Otte  <otte@gnome.org>
7416
7417         * tests/.cvsignore:
7418         * tests/Makefile.am:
7419         * tests/mass_elements.c: (gst_get_current_time), (main):
7420           add simple benchmark to test various speeds of fakesrc ! identity !
7421           identity ! ... ! fakesink.
7422           Usage: mass_elements [num_identities] [num_buffers]
7423           If not specified they default to 1000.
7424
7425 2004-07-02  Benjamin Otte  <otte@gnome.org>
7426
7427         * gst/gstpad.c: (gst_pad_check_schedulers),
7428         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7429         (gst_pad_link_prepare):
7430           check that pads that get linked belong to the same manager. The old
7431           code allowed linking elements before putting them into bins, so it
7432           worked to link them and then put them in different threads, which
7433           lead to weird behaviour.
7434           Since this effectively disallows linking elements before putting
7435           them in a bin, some applications might not work after this and error
7436           out. If these applications are too critical, we might need to revert
7437           that patch. Please test this before the next release...
7438
7439 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7440
7441         * gst/gstpad.c: (gst_pad_get_caps):
7442           throw an error if the getcaps function does not return a subset of
7443           the template caps.
7444         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7445           make disconts without position info an error in debugging
7446         * tests/spidey_bench.c: (handoff), (main):
7447           don't count first try when averaging
7448
7449 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7450
7451         * gst/gstplugin.c: (gst_plugin_load_file):
7452           figure out problem with dynamic test
7453
7454 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7455
7456         * docs/gst/Makefile.am:
7457           fix docs build
7458
7459 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7460
7461         * po/POTFILES.in:
7462         * po/af.po:
7463         * po/az.po:
7464         * po/en_GB.po:
7465         * po/fr.po:
7466         * po/nl.po:
7467         * po/sr.po:
7468         * po/sv.po:
7469         * po/tr.po:
7470         * po/uk.po:
7471         * tools/gst-register.c: (plugin_added_func), (main):
7472           i18n-ize -register, fix plural
7473
7474 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7475
7476         * gst/elements/gstidentity.c: (gst_identity_class_init),
7477         (gst_identity_init), (gst_identity_chain),
7478         (gst_identity_set_property), (gst_identity_get_property):
7479         * gst/elements/gstidentity.h:
7480           check for perfect stream
7481
7482 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7483
7484         * gst/elements/gstidentity.c: (gst_identity_chain):
7485           print offset_end
7486
7487 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7488
7489         * docs/gst/Makefile.am:
7490         * docs/gst/gstreamer-docs.sgml:
7491           doc fixes
7492
7493 2004-06-24  David Schleef  <ds@schleef.org>
7494
7495         * autogen.sh:  Remove call to env, since the buildbot isn't
7496         broken anymore.
7497
7498 2004-06-24  Wim Taymans  <wim@fluendo.com>
7499
7500         * gst/elements/Makefile.am:
7501         * gst/elements/gstelements.c:
7502         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7503         (gst_multifdsink_class_init), (gst_multifdsink_init),
7504         (gst_multifdsink_add), (gst_multifdsink_remove),
7505         (gst_multifdsink_clear), (gst_multifdsink_chain),
7506         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7507         * gst/elements/gstmultifdsink.h:
7508         Added an element that writes to multiple filedescriptors at once.
7509
7510 2004-06-24  Benjamin Otte  <otte@gnome.org>
7511
7512         * gst/parse/grammar.y:
7513           don't try to link elements before they have been added to bins
7514
7515 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7516
7517         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7518         (gst_file_pad_get_length):
7519         * libs/gst/bytestream/filepad.h:
7520           add 2 new functions
7521
7522 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7523
7524         * docs/gst/gstreamer-sections.txt:
7525         remove from docs, the define that Benjamin removed from gstelement.h
7526
7527 2004-06-22  Benjamin Otte  <otte@gnome.org>
7528
7529         * gst/gstelement.h:
7530           remove define that referenced a nonexisting GstElement struct member
7531
7532 2004-06-20  Benjamin Otte  <otte@gnome.org>
7533
7534         * gst/gstdata.c: (gst_data_is_writable):
7535           whoops, return values were wrong, so writable data was marked as
7536           non-writable and vice versa. (fixes #143953, spotted by Francis
7537           Labonte)
7538           Shows how rarely we need to copy data ;)
7539
7540 2004-06-20  Benjamin Otte  <otte@gnome.org>
7541
7542         * testsuite/schedulers/.cvsignore:
7543         * testsuite/schedulers/Makefile.am:
7544         * testsuite/schedulers/143777-2.c: (main):
7545           add test for opt breakage in bug #143777
7546
7547 2004-06-20  Benjamin Otte  <otte@gnome.org>
7548
7549         * gst/gstpad.c: (gst_pad_call_chain_function):
7550           check for if we were unlinked while inside the chainfunction (fixes
7551           entrygthread having issues with #143777)
7552         * testsuite/schedulers/143777.c: (main):
7553         * testsuite/schedulers/Makefile.am:
7554           add a test for that fix
7555
7556 2004-06-20  Benjamin Otte  <otte@gnome.org>
7557
7558         * gst/gstvalue.c: (gst_value_set_int_range):
7559           test that start is smaller then end
7560         * libs/gst/bytestream/Makefile.am:
7561         * libs/gst/bytestream/filepad.c: 
7562         * libs/gst/bytestream/filepad.h:
7563           add GstFilePad - a pad that behaves like a FILE*
7564         * testsuite/bytestream/.cvsignore:
7565         * testsuite/bytestream/Makefile.am:
7566         * testsuite/bytestream/filepadsink.c: 
7567           test for the GstFilePad
7568
7569 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7570
7571         * gst/elements/gstidentity.c: (gst_identity_class_init),
7572         (gst_identity_init), (gst_identity_set_clock),
7573         (gst_identity_chain), (gst_identity_set_property),
7574         (gst_identity_get_property):
7575         * gst/elements/gstidentity.h:
7576         * gst/gstclock.c: (gst_clock_id_wait):
7577           add a "sync" property to sync to the clock
7578
7579 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7580
7581         * gst/gstelementfactory.c: (gst_element_factory_create):
7582           make the freakin "elementfactory bla has no type" message more
7583           useful. So we actually can do something when someone shows up
7584           complaining about it.
7585
7586 2004-06-15  Johan Dahlin  <johan@gnome.org>
7587
7588         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7589         found. This matches the old behavior better. Thanks to Thomas for
7590         pointing out.
7591
7592 2004-06-14  David Schleef  <ds@schleef.org>
7593
7594         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7595         -fomit-frame-pointer.  Appears to generate correct code in
7596         other cases as well.
7597
7598 2004-06-14  Johan Dahlin  <johan@gnome.org>
7599
7600         * tools/gst-inspect.c (main): Add two new command line options: -a
7601         to print all elements and -n to print the name on each line. Also
7602         fix some error reporting.
7603         (main): Simplify, remove -n and always print names if -a is specified
7604
7605 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7606
7607         * win32/gstconfig.h:
7608         * win32/GSTreamer.vcproj:
7609         * win32/Makefile:
7610         * gst/gstconfig.h.in:
7611         * gst/gst.h:
7612         * gst/gstbin.h:
7613         * gst/gstelement.h:
7614         * gst/gstevent.h:
7615         * gst/gstobject.h:
7616         * gst/gstpad.h:
7617         * docs/gst/gstreamer-sections.txt:
7618         * docs/gst/tmpl/gstconfig.sgml:
7619           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7620
7621 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7622         * docs/gst/gstreamer-sections.txt:
7623         * docs/gst/tmpl/gstconfig.sgml:
7624         Add the GSTREAMER_EXPORT macro to the docs
7625
7626 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7627
7628         * tools/gst-compprep.c: (handle_xmlerror), (main):
7629         Add a check for the version that introduced SetStructuredError to fix
7630         the build on FC1
7631
7632 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7633
7634         * win32/msvc71.sln:
7635         * win32/testsuite/:
7636           prepare to compile the testsuite with MSVC
7637
7638 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7639
7640         * docs/manual/win32.xml:
7641           attempt to transform the Win32 README into an XML doc
7642
7643 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7644
7645         * gst/gst.c:
7646         * gst/gstbin.*:
7647         * gst/config.h.in:
7648         * gst/gstelement.*:
7649         * gst/gstevent.h:
7650         * gst/gstobject.*:
7651         * gst/gstpad.h:
7652         * tools/gst-register.c:
7653         * win32/gstreamer.def:
7654           extern symbols are now exported for the Windows DLL
7655
7656 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7657
7658         * gst/gstinfo.h:
7659           fix a problem to enable/disable DEBUG under MSVC
7660
7661 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7662
7663         * win32/:
7664           enable more debug code in DEBUG build
7665
7666 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7667
7668         * win32/config.h:
7669         * gst/gst-i18n-app.h:
7670           enable NLS under Windows
7671
7672 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7673         * tools/gst-compprep.c: (handle_xmlerror), (main):
7674           Make an error that baffled me a bit clearer
7675
7676 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7677
7678         * gst/gstqueue.c:
7679           don't use g_queue_get_length () because it's 2.4, use ->length
7680
7681 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7682
7683         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7684
7685         * tools/gst-inspect.c: (print_signal_info):
7686           don't free random data twice. (fixes #144185)
7687
7688 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7689
7690         * gst/gstqueue.c:
7691         * gst/gstqueue.h:
7692           fix removing from the wrong queue on event timeout
7693           fix disposing of the event queue by casting correctly
7694           add mutexes for handling the event queue
7695           someone was sleeping when fixing queue last time around :)
7696
7697 2004-06-10  Johan Dahlin  <johan@gnome.org>
7698
7699         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7700         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7701
7702 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7703
7704         * docs/random/gdp:
7705         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7706         * libs/gst/dataprotocol/dataprotocol.c:
7707         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7708         (gst_dp_buffer_from_header):
7709         * libs/gst/dataprotocol/dataprotocol.h:
7710         * libs/gst/dataprotocol/dp-private.h:
7711           rev version to 0.1, add buffer flags and copy them
7712
7713 2004-06-09  Johan Dahlin  <johan@gnome.org>
7714
7715         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
7716         the flags from the buffer we're copying.
7717
7718 2004-06-09  Wim Taymans  <wim@fluendo.com>
7719
7720         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
7721         * gst/elements/gstidentity.c: (gst_identity_init),
7722         (gst_identity_chain):
7723         Print more buffer info in fakesink.
7724         Make identity output similar to fakesink.
7725
7726 2004-06-07  Daniel Gazard  <dany42@free.fr>
7727
7728         reviewed by Benjamin Otte  <otte@gnome.org>
7729
7730         * configure.ac:
7731           fix cross compiling not working. (fixes #143741)
7732
7733 2004-06-07  Benjamin Otte  <otte@gnome.org>
7734
7735         * gst/gstelement.c: (gst_element_set_time_delay):
7736           add failure check
7737         * gst/gstinfo.h:
7738           put brackets around macro arguments of GST_TIME_ARGS, add note to
7739           move it to correct header in 0.9
7740
7741 2004-06-07  Benjamin Otte  <otte@gnome.org>
7742
7743         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
7744         (gst_file_index_load), (_file_index_id_save_entries),
7745         (gst_file_index_commit), (gst_file_index_add_association),
7746         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
7747         (gst_file_index_plugin_init):
7748           make debugging use a default category
7749
7750 2004-06-06  David Moore  <dcm@acm.org>
7751
7752         reviewed by Benjamin Otte  <otte@gnome.org>
7753
7754         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
7755         (gst_fdsrc_change_state):
7756           reset offset counter when going READY => PAUSED. (fixes #142903)
7757
7758 2004-06-06  ed@catmur.co.uk
7759
7760         reviewed by Benjamin Otte  <otte@gnome.org>
7761
7762         * gst/registries/gstxmlregistry.c:
7763         (gst_xml_registry_rebuild_recurse):
7764           don't rely on g_dir_open to figure out if a file is a directory, use
7765           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
7766           directories. (fixes #142850)
7767
7768 2004-06-06  Benjamin Otte  <otte@gnome.org>
7769
7770         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
7771           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
7772         * libs/gst/bytestream/adapter.c:
7773         * libs/gst/bytestream/adapter.h:
7774           fix copyright in header and typo in debugging category name
7775
7776 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7777
7778         * configure.ac:
7779           bump nano to cvs
7780
7781 === release 0.8.3 ===
7782
7783 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7784
7785         * configure.ac:
7786           update libtool versioning
7787           do a new release
7788         * docs/gst/tmpl/gstelement.sgml:
7789         * docs/gst/tmpl/gsttypes.sgml:
7790         * gst/gstinfo.c: (_gst_debug_init):
7791           put back GST_CAT_DATAFLOW to fix API breakage
7792
7793 2004-06-04  David Schleef  <ds@schleef.org>
7794
7795         * autogen.sh: Add a temporary 'env' to test buildbot problems.
7796
7797 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7798
7799         * configure.ac:
7800           bump nano to cvs
7801
7802 === release 0.8.2 ===
7803
7804 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7805
7806         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
7807           check GST_DEBUG environment variable which is parsed the same way
7808           as --gst-debug=
7809
7810 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7811
7812         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
7813                             gstmd5sink.c gstshaper.c gsttee.c
7814                             gsttypefindelement.c
7815         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
7816
7817           - removing trailing commas at end of enums
7818             it is correct C99 code but C90 compilers would complain
7819             (AIX, Forte, ...)
7820             ('should' fix #143290, at least partially)
7821
7822 2004-05-27  Wim Taymans  <wim@fluendo.com>
7823
7824         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
7825         (chain_group_set_enabled), (create_group), (add_to_group),
7826         (merge_groups), (setup_group_scheduler), (group_elements),
7827         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
7828         Don't try to follow the pad connections with other groups
7829         when a loop based element is added to the scheduler because
7830         the bin will inform the scheduler about the pad links a little
7831         later.
7832
7833 2004-05-27  Wim Taymans  <wim@fluendo.com>
7834
7835         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7836         (remove_from_chain), (chain_group_set_enabled),
7837         (setup_group_scheduler), (group_element_set_enabled),
7838         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
7839         (gst_opt_scheduler_show):
7840         Elements without a group can do a state change as well, just wait
7841         with the setup of the scheduling function when it is added to a
7842         chain.
7843
7844 2004-05-27  Wim Taymans  <wim@fluendo.com>
7845
7846         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7847         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
7848         (merge_groups), (setup_group_scheduler),
7849         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
7850         (gst_opt_scheduler_show):
7851         Fixes to maintain internal consistency of the scheduler data
7852         structures. 
7853          - adding an enabled group to a chain should increment the
7854            number of enabled elements in that chain.
7855          - removing an enabled group from a chain could disable the
7856            chain.
7857          - removing a disabled group from a chain could enable the
7858            chain.
7859          - add g_assert when internal inconsistency is detected.
7860          - adding an element to a group could increase the number of
7861            links this group has with other groups.
7862          - merging two groups also merges the chains.
7863          - also show group links in the _show method.
7864            
7865
7866 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7867
7868         * gst/gstcaps.c: (gst_caps_structure_simplify):
7869           don't print error messages when there is no error
7870         * gst/gstvalue.c: (gst_value_compare_int_range):
7871           compare the second value, too
7872         * testsuite/caps/Makefile.am:
7873         * testsuite/caps/random.c: (assert_on_error), (main):
7874           add tests to make sure the two things above are checked for
7875
7876 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
7877
7878         * configure.ac:
7879         * libs/gst/dataprotocol/Makefile.am:
7880         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
7881         * libs/gst/dataprotocol/dataprotocol.h:
7882           wrap header in GST_ENABLE_NEW.  make code use it
7883
7884 2004-05-23  Johan Dahlin  <johan@gnome.org>
7885
7886         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
7887         so verbose and print GstElement signal names all the time.
7888
7889 2004-05-22  David Schleef  <ds@schleef.org>
7890
7891         * gst/registries/gstxmlregistry.c:
7892         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
7893         (bug #142957)
7894
7895 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
7896
7897         * configure.ac:
7898           scrub cflags for glib2 so gcc doesn't complain when glib is in
7899           /usr/local
7900
7901 2004-05-21  Johan Dahlin  <johan@gnome.org>
7902
7903         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
7904         __GNUC__, patch from Brian Cameron, fixes bug #142804
7905
7906 2004-05-20  David Schleef  <ds@schleef.org>
7907
7908         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
7909         comparison code.  (bug #142819)
7910
7911 2004-05-20  Wim Taymans  <wim@fluendo.com>
7912
7913         * gst/gstbuffer.c: (gst_buffer_default_copy):
7914         * gst/gstbuffer.h:
7915         Added Comment to a flag.
7916         copy relevant flags in _buffer_copy.
7917
7918 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7919
7920         reviewed by: Wim Taymans <wim at fluendo dot com>
7921
7922         * gst/gstbuffer.h:
7923           add GST_BUFFER_IN_CAPS buffer flag
7924         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7925         (gst_structure_parse_any_list), (gst_structure_parse_list),
7926         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
7927         * gst/gstvalue.c: (gst_value_serialize_any_list),
7928         (gst_value_transform_any_list_string),
7929         (gst_value_list_prepend_value), (gst_value_list_append_value),
7930         (gst_value_list_get_size), (gst_value_list_get_value),
7931         (gst_value_transform_list_string),
7932         (gst_value_transform_fixed_list_string),
7933         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
7934         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
7935         (_gst_value_initialize):
7936         * gst/gstvalue.h:
7937           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
7938           < , > as a format.
7939         * testsuite/caps/string-conversions.c: (main):
7940           add regression tests for < >
7941
7942 2004-05-20  Johan Dahlin  <johan@gnome.org>
7943
7944         * docs/gst/Makefile.am (all-local): Re-add
7945
7946 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7947
7948         * docs/gst/Makefile.am:
7949         * docs/gst/gstreamer-docs.sgml:
7950         * docs/libs/Makefile.am:
7951         * docs/libs/gstreamer-libs-docs.sgml:
7952           fix distcheck issues
7953
7954 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7955
7956         * libs/gst/dataprotocol/Makefile.am:
7957           add to autotest
7958
7959 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7960
7961         * libs/gst/dataprotocol/Makefile.am:
7962         * libs/gst/dataprotocol/dataprotocol.c:
7963         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7964         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
7965         * libs/gst/dataprotocol/dp-private.h:
7966           use GST macros to read/write fixed length ints
7967           add some more asserts
7968
7969 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7970
7971         * docs/libs/gstreamer-libs-docs.sgml:
7972         * docs/libs/gstreamer-libs-sections.txt:
7973           remove idct and putbits
7974         * configure.ac:
7975         * docs/libs/tmpl/gstdataprotocol.sgml:
7976         * libs/gst/Makefile.am:
7977         * libs/gst/dataprotocol/Makefile.am:
7978         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
7979         (buffer_test), (caps_test), (event_test), (main):
7980         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
7981         (gst_dp_dump_byte_array), (gst_dp_init),
7982         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
7983         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7984         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
7985         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
7986         (gst_dp_validate_header), (gst_dp_validate_payload),
7987         (gst_dp_validate_packet), (plugin_init):
7988         * libs/gst/dataprotocol/dataprotocol.h:
7989         * libs/gst/dataprotocol/dp-private.h:
7990           add dataprotocol
7991
7992 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7993
7994         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
7995           fix int variable deserialization and add a helper so we can actually
7996           debug this.
7997
7998 2004-05-18  David Schleef  <ds@schleef.org>
7999
8000         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8001           argv[0].  Calling yourself is probably not the best way to
8002           construct a test like this, btw.
8003
8004 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8005
8006         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8007           don't claim to be more intelligent than a scheduler when the
8008           scheduler claims the pipeline is stopped
8009         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8010         (safe_cothread_destroy),
8011         (gst_entry_scheduler_remove_all_cothreads),
8012         (gst_entry_scheduler_reset), (_remove_cothread),
8013         (gst_entry_scheduler_state_transition):
8014           hold off cothread destruction if we're not in main cothread
8015         * configure.ac:
8016         * testsuite/Makefile.am:
8017           add new test dir
8018         * testsuite/schedulers/.cvsignore:
8019         * testsuite/schedulers/Makefile.am:
8020           add tests
8021         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8022           check relinking and adding/removing elements from a running pipeline
8023         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8024           check unlinking in a running pipeline
8025         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8026           check unreffing a running pipeline
8027         * testsuite/schedulers/useless_iteration.c: (main):
8028           check iterating a pipeline that contains running threads works
8029
8030 2004-05-18  David Schleef  <ds@schleef.org>
8031
8032         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8033           is false.
8034
8035 2004-05-18  Wim Taymans  <wim@fluendo.com>
8036
8037         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8038         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8039         Fixed an error introduced with patch for 1.63. When setting
8040         a get based element as the entry point in a group, make sure
8041         to mark the group as GET based.
8042
8043 2004-05-18  Wim Taymans  <wim@fluendo.com>
8044
8045         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8046         (setup_group_scheduler), (loop_group_schedule_function),
8047         (gst_opt_scheduler_pad_link):
8048         Added some more debug info and fixed a bug where the group
8049         type was set to LOOP but it was in fact unknown.
8050
8051 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8052
8053         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8054           make resetting scheduler work twice in a row
8055
8056 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8057
8058         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8059         (CREATE_USERIALIZATION), (_gst_value_initialize),
8060         (gst_value_compare_float), (gst_value_serialize_float),
8061         (gst_value_deserialize_float), (gst_value_compare_enum),
8062         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8063           add serialization and comparison functions for long, int64, enum and
8064           float values
8065         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8066           use best serialization function in type hierarchy instead of only a
8067           matching one. This is required for enums to work.
8068         * gst/parse/grammar.y:
8069           use gst_caps_deserialize
8070         * testsuite/parse/Makefile.am:
8071           parse1 now works
8072         * testsuite/parse/parse1.c: (main):
8073           remove aggregator check, aggregator is broken, this test works now
8074           but fails because of bug #138012
8075         * testsuite/parse/parse2.c: (main):
8076           s/xvideosink/xvimagesink - this test looks a lot like we should
8077           disable it
8078
8079 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8080
8081         * gst/gstelement.c: (gst_element_class_init):
8082           whoops, store the signal id correctly
8083         * gst/schedulers/gstbasicscheduler.c:
8084         (gst_basic_scheduler_chain_wrapper):
8085           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8086           chain function isn't linked
8087
8088 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8089         * configure.ac:
8090         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8091         support until we decide where the flags should be used
8092         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8093         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8094         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8095         Output refused caps in the debug info
8096
8097 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8098
8099         * gst/elements/gstidentity.c: (gst_identity_chain):
8100           add duration debug
8101         * gst/gstinfo.c: (gst_debug_log_default):
8102           add timestamp
8103
8104 2004-05-13  Benjamin Otte  <otte@gnome.org>
8105
8106         * gst/gstpipeline.c: (gst_pipeline_dispose),
8107         (gst_pipeline_change_state):
8108           call gst_scheduler_reset on dispose (fixes #141416)
8109
8110 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8111
8112         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8113           compute mapsize correctly
8114         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8115           use correct datatypes when calling a varargs function
8116         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8117           push a DISCONT event as first thing
8118         * gst/gst_private.h:
8119         * gst/gstinfo.c: (_gst_debug_init):
8120           remove GST_DATAFLOW debugging category
8121         * gst/gstbin.c: (gst_bin_iterate):
8122           use GST_SCHEDULING category
8123         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8124         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8125         (gst_pad_call_get_function):
8126           add GST_DATAFLOW to easily track flow of buffers or events.
8127         * gst/gstqueue.c: (gst_queue_get_type),
8128         (gst_queue_handle_pending_events), (gst_queue_chain),
8129         (gst_queue_get), (gst_queue_handle_src_event):
8130           use own static debugging category GST_DATAFLOW for dataflow,
8131           use DEBUG category for showing which path events go, use LOG
8132           category for buffers.
8133
8134 2004-05-10  David Schleef  <ds@schleef.org>
8135
8136         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8137
8138 2004-05-10  David Schleef  <ds@schleef.org>
8139
8140         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8141         symbols, because otherwise we don't know what they are.  Thanks,
8142         the GStreamer team.
8143         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8144
8145 2004-05-10  David Schleef  <ds@schleef.org>
8146
8147         (from Steve Lhomme)
8148         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8149         are deleted.  Fix.
8150         * win32/Makefile.inspect:
8151         * win32/Makefile.launch:
8152         * win32/Makefile.register:
8153
8154 2004-05-10  David Schleef  <ds@schleef.org>
8155
8156         * gst/gstinfo.h: Add missing inline function.
8157         * gst/gsttrace.c: add include
8158         * gst/parse/grammar.y: remove unused code
8159         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8160         more portable.
8161         * tools/gst-register.c: wrap unistd.h
8162         
8163         More additions/fixes from Steve for the MSVC build.
8164         * win32/GStreamer.vcproj:
8165         * win32/Makefile:
8166         * win32/Makefile.inspect:
8167         * win32/Makefile.launch:
8168         * win32/Makefile.register:
8169         * win32/README.txt:
8170         * win32/gst-inspect.vcproj:
8171         * win32/gst-launch.vcproj:
8172         * win32/gst-register.vcproj:
8173         * win32/gstbytestream.def:
8174         * win32/gstbytestream.vcproj:
8175         * win32/gstconfig.h:
8176         * win32/gstelements.def:
8177         * win32/gstelements.vcproj:
8178         * win32/gstenumtypes.c:
8179         * win32/gstenumtypes.h:
8180         * win32/gstoptimalscheduler.def:
8181         * win32/gstoptimalscheduler.vcproj:
8182         * win32/gstreamer.def:
8183         * win32/gstspider.def:
8184         * win32/gstspider.vcproj:
8185         * win32/gstversion.h:
8186         * win32/msvc71.sln:
8187
8188 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8189
8190         * gst/gstelement.c: (gst_element_class_init),
8191         (gst_element_no_more_pads):
8192         * gst/gstelement.h:
8193           add gst_element_no_more_pads and the "no-more-pads" signal
8194
8195 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8196
8197         * gst/gstregistry.c: (gst_registry_add_plugin):
8198           refuse to add plugins when a plugin with same name is already
8199           registered. Fixes a bunch of "How to remove plugins?" issues.
8200           May lead to other problems though, let's test
8201
8202 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8203
8204         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8205         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8206         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8207
8208 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8209
8210         * tests/Makefile.am: fix am16 issue
8211
8212 2004-05-09  Benjamin Otte  <otte@gnome.org>
8213
8214         * libs/gst/bytestream/Makefile.am:
8215           we should indeed add .c files to makefiles or they won't be built
8216           (d'oh)
8217
8218 2004-05-08  Benjamin Otte  <otte@gnome.org>
8219
8220         * gst/gstpad.c: (gst_pad_proxy_fixate):
8221           really reduce the set of caps
8222
8223 2004-05-08  Benjamin Otte  <otte@gnome.org>
8224
8225         * tests/Makefile.am:
8226         * tests/spidey_bench.c: (handoff), (main):
8227           add benchmark to test how long spider needs to create a pipeline
8228
8229 2004-05-08  Benjamin Otte  <otte@gnome.org>
8230
8231         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8232           mark links as unengaged when unnegotiating instead of deactivating.
8233           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8234
8235 2004-05-08  Benjamin Otte  <otte@gnome.org>
8236
8237         * docs/manual/helloworld.xml:
8238           s/audiosink/osssink (patch by Patrick Guimond)
8239
8240 2004-05-07  David Schleef  <ds@schleef.org>
8241
8242         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8243         since it contains important stuff.
8244
8245 2004-05-07  David Schleef  <ds@schleef.org>
8246
8247         * testsuite/caps/caps.c: (test3), (main): A check for appending
8248         ANY caps.
8249
8250 2004-05-07  David Schleef  <ds@schleef.org>
8251
8252         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8253         which may contain commas.  Fixes detection of -Wa,-mregnames
8254
8255 2004-05-06  David Schleef  <ds@schleef.org>
8256
8257         Changes to handle compilers that don't have variadic macro
8258         support.  In particular, glib headers define some inlines
8259         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8260         builds.
8261         * gst/Makefile.am:
8262         * gst/cothreads.c:
8263         * gst/elements/gstfdsink.c:
8264         * gst/elements/gstfdsrc.c:
8265         * gst/elements/gstfilesink.c:
8266         * gst/elements/gstfilesrc.c:
8267         * gst/gst_private.h:
8268         * gst/gstatomic.c:
8269         * gst/gstcaps.c: (gst_caps_append):
8270         * gst/gstcpu.c: (gst_cpuid_i386):
8271         * gst/gstelement.c:
8272         * gst/gsterror.c:
8273         * gst/gstfilter.c:
8274         * gst/gstinfo.h:
8275         * gst/gstprobe.c:
8276         * gst/gstquery.c:
8277         * gst/gstregistry.c:
8278         * gst/gststructure.c:
8279         * gst/gsttaginterface.c:
8280         * gst/gsttrace.c: (gst_trace_new):
8281         * gst/gsttrashstack.c:
8282         * gst/gsturi.c:
8283         * gst/gstvalue.c:
8284         * gst/parse/grammar.y:
8285         * gst/parse/parse.l:
8286         * tools/gst-inspect.c: (main):
8287         * tools/gst-launch.c: (main):
8288         * tools/gst-xmlinspect.c: (PUT_STRING):
8289
8290 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8291
8292         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8293         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8294         * gst/elements/gstfilesrc.h:
8295           send NEW_MEDIA events correctly
8296         * gst/elements/gsttypefindelement.c: (start_typefinding),
8297         (gst_type_find_element_handle_event):
8298           restart typefinding when we get a NEW_MEDIA event
8299         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8300         (gst_bin_dispose):
8301           don't die when someone removes elements in callbacks
8302         * gst/gstelement.c: (gst_element_change_state):
8303           improve debugging
8304         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8305           we need a NEW_MEDIA event to engage a link
8306         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8307           don't g_print debugging stuff
8308         * testsuite/caps/simplify.c: (check_caps):
8309
8310 2004-05-04  Benjamin Otte  <otte@gnome.org>
8311
8312         * gst/parse/grammar.y:
8313           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8314
8315 2004-05-04  Benjamin Otte  <otte@gnome.org>
8316
8317         * testsuite/caps/renegotiate.c: (main):
8318           improve output in error case
8319
8320 2004-05-04  Benjamin Otte  <otte@gnome.org>
8321
8322         * gst/parse/grammar.y:
8323           fix assert to not trigger when there's no error argument
8324         * gst/parse/parse.l:
8325           fix definition of caps to allow more than two structures
8326         * testsuite/caps/Makefile.am:
8327         * testsuite/caps/renegotiate.c: (main):
8328           it's sinesrc and works in that case
8329
8330 2004-05-04  Wim Taymans  <wim@fluendo.com>
8331
8332         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8333         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8334         when removing an element from a group, we always need to
8335         decrement the link count that this group had with other 
8336         groups through the element.
8337         added an extra assert to catch inconsistencies when decrementing
8338         the link count.
8339
8340 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8341
8342         * configure.ac:
8343         * docs/gst/Makefile.am:
8344         * docs/gst/gstreamer-sections.txt:
8345         * docs/gst/tmpl/gstcompat.sgml:
8346         * examples/appreader/Makefile.am:
8347         * examples/cutter/Makefile.am:
8348         * examples/events/Makefile.am:
8349         * examples/helloworld/Makefile.am:
8350         * examples/helloworld2/Makefile.am:
8351         * examples/launch/Makefile.am:
8352         * examples/manual/Makefile.am:
8353         * examples/mixer/Makefile.am:
8354         * examples/pingpong/Makefile.am:
8355         * examples/plugins/Makefile.am:
8356         * examples/queue/Makefile.am:
8357         * examples/queue2/Makefile.am:
8358         * examples/queue3/Makefile.am:
8359         * examples/queue4/Makefile.am:
8360         * examples/retag/Makefile.am:
8361         * examples/thread/Makefile.am:
8362         * examples/typefind/Makefile.am:
8363         * examples/xml/Makefile.am:
8364         * gst/Makefile.am:
8365         * gst/autoplug/Makefile.am:
8366         * gst/elements/Makefile.am:
8367         * gst/gstcompat.h:
8368         * gst/indexers/Makefile.am:
8369         * gst/parse/Makefile.am:
8370         * gst/registries/Makefile.am:
8371         * gst/schedulers/Makefile.am:
8372         * libs/gst/bytestream/Makefile.am:
8373         * libs/gst/control/Makefile.am:
8374         * libs/gst/getbits/Makefile.am:
8375         * po/af.po:
8376         * po/az.po:
8377         * po/en_GB.po:
8378         * po/fr.po:
8379         * po/nl.po:
8380         * po/sr.po:
8381         * po/sv.po:
8382         * po/tr.po:
8383         * po/uk.po:
8384         * tests/Makefile.am:
8385         * tests/bufspeed/Makefile.am:
8386         * tests/instantiate/Makefile.am:
8387         * tests/memchunk/Makefile.am:
8388         * tests/muxing/Makefile.am:
8389         * tests/negotiation/Makefile.am:
8390         * tests/probes/Makefile.am:
8391         * tests/sched/Makefile.am:
8392         * tests/seeking/Makefile.am:
8393         * tests/threadstate/Makefile.am:
8394         * testsuite/caps/Makefile.am:
8395         * testsuite/cleanup/Makefile.am:
8396         * testsuite/dlopen/Makefile.am:
8397         * testsuite/dynparams/Makefile.am:
8398         * testsuite/plugin/Makefile.am:
8399         * testsuite/states/Makefile.am:
8400         * tools/Makefile.am:
8401           reorganize compile/link flags to be consistent
8402           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8403
8404 2004-05-04  David Schleef  <ds@schleef.org>
8405
8406         The "once more, with feeling" check-in.
8407         * testsuite/caps/Makefile.am: dist caps_strings
8408         * testsuite/caps/renegotiate.c: (main): This test triggers a
8409           segfault in the core.  Marking as failing.
8410
8411 2004-05-03  David Schleef  <ds@schleef.org>
8412
8413         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8414           by the build bots.
8415         * testsuite/caps/renegotiate.c: (main): Same.
8416
8417 2004-05-03  David Schleef  <ds@schleef.org>
8418
8419         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8420
8421 2004-05-03  David Schleef  <ds@schleef.org>
8422
8423         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8424           variable to find our source file.
8425
8426 2004-05-03  David Schleef  <ds@schleef.org>
8427
8428         * configure.ac:  Link plugins with libgstreamer and dependent
8429           libraries
8430         * testsuite/caps/Makefile.am:
8431         * testsuite/caps/caps_strings:
8432         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8433           through a file of caps strings and test each one
8434
8435 2004-05-04  Benjamin Otte  <otte@gnome.org>
8436
8437         * libs/gst/bytestream/Makefile.am:
8438         * libs/gst/bytestream/adapter.c: 
8439         * libs/gst/bytestream/adapter.h:
8440           add GstAdapter, similar to bytestream, but doesn't require ugly event
8441           handling or uglier loopbased elements
8442
8443 2004-05-03  David Schleef  <ds@schleef.org>
8444
8445         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8446         * testsuite/caps/erathostenes.c:
8447         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8448
8449 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8450
8451         * docs/pwg/pwg.xml:
8452           remove hardcoded stylesheet path (duh)
8453         * docs/random/release:
8454         * docs/gst/gstreamer-sections.txt:
8455         * gst/Makefile.am:
8456         * gst/gst.h:
8457         * gst/gst_private.h:
8458         * gst/gstcaps.c:
8459         * gst/gstevent.c:
8460         * gst/gstformat.c:
8461         * gst/gstinfo.c:
8462         * gst/gstinfo.h:
8463         * gst/gstinterface.c:
8464         * gst/gstmemchunk.c:
8465         * gst/gstprobe.c:
8466         * gst/gstquery.c:
8467         * gst/gstregistry.c:
8468         * gst/gstregistrypool.c:
8469         * gst/gststructure.c:
8470         * gst/gsttaginterface.c:
8471         * gst/gstthread.c:
8472         * gst/gsttrace.c:
8473         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8474         * gst/gsturi.c:
8475         * gst/gstvalue.c:
8476           deprecate gst_info; remove gstlog.h
8477    
8478
8479 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8480
8481         * Makefile.am:
8482         * po/en_GB.po:
8483         * po/sv.po:
8484         * po/uk.po:
8485           updated translations
8486
8487 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8488
8489         * gst/gstbin.c: (gst_bin_dispose):
8490           better debugging
8491
8492 2004-05-03  Johan Dahlin  <johan@gnome.org>
8493
8494         * gst/schedulers/gstoptimalscheduler.c
8495         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8496         really is a GstElement. Avoids critical when running gst-launch -v
8497         and a oggdemux/decoding pipeline.
8498
8499 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8500
8501         * docs/gst/tmpl/gstpipeline.sgml :
8502         * docs/manual/elements-api.xml :
8503                 doc fix by Patrick Guimond (Protector) from devel ML
8504                 reviewed by ronald
8505
8506 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8507
8508         * docs/gst/Makefile.am :
8509         * docs/libs/Makefile.am :
8510                 apply a patch from Arwed v. Merkatz so that gtk-doc
8511                 generated docs install (same for .devhelp file)
8512                 (fixes part 1 of #138836)
8513
8514 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8515
8516         * docs/faq/dependencies.xml: typo
8517         * docs/faq/getting.xml :
8518             - fix download URL for new gstreamer site
8519             - hide sf.net download page as latest version aren't there
8520             - fix apt URLs
8521             - fill "get via CVS" paragraph (link to dev page on the site)
8522         * docs/faq/general.xml:
8523             hide status tables as they no more exists
8524             change case on plugins license file to reflect reality
8525         * docs/faq/troubleshooting.xml:
8526             remove the wiki question/answer as there is no more wiki
8527
8528 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8529
8530         * gst/gsterror.h:
8531           include the headers needed for declarations used in this header
8532
8533 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8534
8535         * docs/random/uraeus/gstreamer_and_midi.txt :
8536           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8537           (fixes #132288)
8538
8539 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8540
8541         reviewed by Benjamin Otte  <otte@gnome.org>
8542
8543         * gst/schedulers/gthread-cothreads.h:
8544           free allocated data for main cothread, too when destroying context
8545           (fixes #141417)
8546
8547 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8548
8549         * docs/manual/goals.xml : remove duplicated paragraph at end 
8550         of doc page (fixes #141448)
8551
8552 2004-04-29  David Schleef  <ds@schleef.org>
8553
8554         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8555         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8556
8557 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8558
8559         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8560           fix property
8561         * gst/gstcaps.c:
8562           fix doc string
8563         * po/POTFILES.in:
8564           rename typefind source file
8565
8566 2004-04-28  David Schleef  <ds@schleef.org>
8567
8568         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8569         * win32/GStreamer.vcproj:
8570         * win32/Makefile:
8571         * win32/config.h:
8572         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8573         (_trewinddir), (_ttelldir), (_tseekdir):
8574         * win32/dirent.h:
8575         * win32/gst-inspect.vcproj:
8576         * win32/gst-launch.vcproj:
8577         * win32/gst-register.vcproj:
8578         * win32/gstbytestream.vcproj:
8579         * win32/gstelements.vcproj:
8580         * win32/gstoptimalscheduler.vcproj:
8581         * win32/gstspider.vcproj:
8582         * win32/gtchar.h:
8583         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8584         * win32/mman.h:
8585         * win32/mman.inl:
8586         * win32/msvc71.sln:
8587
8588 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8589
8590         * gst/gst.c: (init_post):
8591         * gst/gstinfo.c:
8592           remove useless _gst_progname stuff
8593         * tools/gst-inspect.c: (print_field), (print_caps):
8594           improve caps output
8595
8596 2004-04-28  David Schleef  <ds@schleef.org>
8597
8598         Disable parsing of a lot of files that aren't part of the
8599         exported API.  Move corresponding template files to old/,
8600         waiting for removal when they don't contain anything
8601         interesting.
8602         * docs/gst/Makefile.am:
8603         * docs/gst/gstreamer-sections.txt:
8604         * docs/gst/tmpl/cothreads.sgml:
8605         * docs/gst/tmpl/cothreads_compat.sgml:
8606         * docs/gst/tmpl/gettext.sgml:
8607         * docs/gst/tmpl/gobject2gtk.sgml:
8608         * docs/gst/tmpl/grammar.tab.sgml:
8609         * docs/gst/tmpl/gst-i18n-app.sgml:
8610         * docs/gst/tmpl/gst-i18n-lib.sgml:
8611         * docs/gst/tmpl/gst_private.sgml:
8612         * docs/gst/tmpl/gstaggregator.sgml:
8613         * docs/gst/tmpl/gstarch.sgml:
8614         * docs/gst/tmpl/gstatomic_impl.sgml:
8615         * docs/gst/tmpl/gstbufferstore.sgml:
8616         * docs/gst/tmpl/gstdata_private.sgml:
8617         * docs/gst/tmpl/gstdisksink.sgml:
8618         * docs/gst/tmpl/gstdisksrc.sgml:
8619         * docs/gst/tmpl/gstelementfactory.sgml:
8620         * docs/gst/tmpl/gstextratypes.sgml:
8621         * docs/gst/tmpl/gstfakesink.sgml:
8622         * docs/gst/tmpl/gstfakesrc.sgml:
8623         * docs/gst/tmpl/gstfdsink.sgml:
8624         * docs/gst/tmpl/gstfdsrc.sgml:
8625         * docs/gst/tmpl/gstfilesink.sgml:
8626         * docs/gst/tmpl/gstfilesrc.sgml:
8627         * docs/gst/tmpl/gsthttpsrc.sgml:
8628         * docs/gst/tmpl/gstidentity.sgml:
8629         * docs/gst/tmpl/gstindexfactory.sgml:
8630         * docs/gst/tmpl/gstmarshal.sgml:
8631         * docs/gst/tmpl/gstmd5sink.sgml:
8632         * docs/gst/tmpl/gstmultidisksrc.sgml:
8633         * docs/gst/tmpl/gstmultifilesrc.sgml:
8634         * docs/gst/tmpl/gstpadtemplate.sgml:
8635         * docs/gst/tmpl/gstpipefilter.sgml:
8636         * docs/gst/tmpl/gstschedulerfactory.sgml:
8637         * docs/gst/tmpl/gstsearchfuncs.sgml:
8638         * docs/gst/tmpl/gstshaper.sgml:
8639         * docs/gst/tmpl/gstspider.sgml:
8640         * docs/gst/tmpl/gstspideridentity.sgml:
8641         * docs/gst/tmpl/gststatistics.sgml:
8642         * docs/gst/tmpl/gsttee.sgml:
8643         * docs/gst/tmpl/gsttimecache.sgml:
8644         * docs/gst/tmpl/gsttypefind.sgml:
8645         * docs/gst/tmpl/gsttypefindfactory.sgml:
8646         * docs/gst/tmpl/gstxmlregistry.sgml:
8647         * docs/gst/tmpl/gthread-cothreads.sgml:
8648         * docs/gst/tmpl/old/cothreads.sgml:
8649         * docs/gst/tmpl/old/cothreads_compat.sgml:
8650         * docs/gst/tmpl/old/gettext.sgml:
8651         * docs/gst/tmpl/old/gobject2gtk.sgml:
8652         * docs/gst/tmpl/old/grammar.tab.sgml:
8653         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8654         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8655         * docs/gst/tmpl/old/gst_private.sgml:
8656         * docs/gst/tmpl/old/gstaggregator.sgml:
8657         * docs/gst/tmpl/old/gstarch.sgml:
8658         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8659         * docs/gst/tmpl/old/gstbufferstore.sgml:
8660         * docs/gst/tmpl/old/gstdata_private.sgml:
8661         * docs/gst/tmpl/old/gstdisksink.sgml:
8662         * docs/gst/tmpl/old/gstdisksrc.sgml:
8663         * docs/gst/tmpl/old/gstelementfactory.sgml:
8664         * docs/gst/tmpl/old/gstextratypes.sgml:
8665         * docs/gst/tmpl/old/gstfakesink.sgml:
8666         * docs/gst/tmpl/old/gstfakesrc.sgml:
8667         * docs/gst/tmpl/old/gstfdsink.sgml:
8668         * docs/gst/tmpl/old/gstfdsrc.sgml:
8669         * docs/gst/tmpl/old/gstfilesink.sgml:
8670         * docs/gst/tmpl/old/gstfilesrc.sgml:
8671         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8672         * docs/gst/tmpl/old/gstidentity.sgml:
8673         * docs/gst/tmpl/old/gstindexfactory.sgml:
8674         * docs/gst/tmpl/old/gstmarshal.sgml:
8675         * docs/gst/tmpl/old/gstmd5sink.sgml:
8676         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8677         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8678         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8679         * docs/gst/tmpl/old/gstpipefilter.sgml:
8680         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8681         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8682         * docs/gst/tmpl/old/gstshaper.sgml:
8683         * docs/gst/tmpl/old/gstspider.sgml:
8684         * docs/gst/tmpl/old/gstspideridentity.sgml:
8685         * docs/gst/tmpl/old/gststatistics.sgml:
8686         * docs/gst/tmpl/old/gsttee.sgml:
8687         * docs/gst/tmpl/old/gsttimecache.sgml:
8688         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8689         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8690         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8691         * docs/gst/tmpl/old/types.sgml:
8692         * docs/gst/tmpl/types.sgml:
8693
8694         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8695         gtkdoc-scan doesn't like files with the same name in different
8696         directories.
8697         * gst/elements/Makefile.am:
8698         * gst/elements/gstelements.c:
8699         * gst/elements/gsttypefind.c: 
8700         * gst/elements/gsttypefind.h:
8701         * gst/elements/gsttypefindelement.c:
8702         * gst/elements/gsttypefindelement.h:
8703
8704 2004-04-28  David Schleef  <ds@schleef.org>
8705
8706         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8707         patch (bug #141317):
8708         * gst/gst-i18n-lib.h: Allow disabling gettext.
8709         * gst/gstatomic_impl.h: disable warning when it's dumb.
8710         * gst/gstclock.c: fix include
8711         * gst/gstcompat.h: fix variadic macro
8712         * gst/gstinfo.c: fix include
8713         * gst/gstmacros.h: add defines for inlines on MSVC
8714         * gst/gstplugin.c: fix includes
8715         * gst/gstregistry.c: fix includes
8716         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
8717         * gst/gstsystemclock.c: fix include
8718         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
8719         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
8720         * gst/registries/gstxmlregistry.c:
8721         (gst_xml_registry_parse_element_factory): fix use of non-portable
8722         functions
8723         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
8724         * libs/gst/control/dparammanager.h: same
8725
8726 2004-04-28  David Schleef  <ds@schleef.org>
8727
8728         Move a bunch of unused files to old/ with names that are
8729         not case-insensitive-unique.  These files still contain some
8730         useful information that needs to be merged into gstbin.sgml,
8731         etc., so they shouldn't be deleted yet.
8732         * docs/gst/tmpl/GstBin.sgml:
8733         * docs/gst/tmpl/GstBuffer.sgml:
8734         * docs/gst/tmpl/GstCaps.sgml:
8735         * docs/gst/tmpl/GstClock.sgml:
8736         * docs/gst/tmpl/GstCompat.sgml:
8737         * docs/gst/tmpl/GstData.sgml:
8738         * docs/gst/tmpl/GstElement.sgml:
8739         * docs/gst/tmpl/GstEvent.sgml:
8740         * docs/gst/tmpl/GstIndex.sgml:
8741         * docs/gst/tmpl/GstStructure.sgml:
8742         * docs/gst/tmpl/GstTag.sgml:
8743         * docs/gst/tmpl/old/GstBin.sgml:
8744         * docs/gst/tmpl/old/GstBuffer.sgml:
8745         * docs/gst/tmpl/old/GstCaps.sgml:
8746         * docs/gst/tmpl/old/GstClock.sgml:
8747         * docs/gst/tmpl/old/GstCompat.sgml:
8748         * docs/gst/tmpl/old/GstData.sgml:
8749         * docs/gst/tmpl/old/GstElement.sgml:
8750         * docs/gst/tmpl/old/GstEvent.sgml:
8751         * docs/gst/tmpl/old/GstIndex.sgml:
8752         * docs/gst/tmpl/old/GstStructure.sgml:
8753         * docs/gst/tmpl/old/GstTag.sgml:
8754
8755 2004-04-28  David Schleef  <ds@schleef.org>
8756
8757         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
8758         (gst_caps_append), (gst_caps_append_structure),
8759         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
8760         (gst_caps_set_simple), (gst_caps_set_simple_valist),
8761         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
8762         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
8763         (gst_caps_intersect), (gst_caps_normalize),
8764         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
8765         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
8766         * gst/gstcaps.h: use GST_IS_CAPS().
8767
8768 2004-04-26  David Schleef  <ds@schleef.org>
8769
8770         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
8771         assembly.  gcc doesn't handle it correctly. (bug #141083)
8772         * gst/gsttrashstack.h: same
8773
8774 2004-04-25  Benjamin Otte  <otte@gnome.org>
8775
8776         * gst/gstelement.c: (gst_element_change_state):
8777           fix assertion to do an int comparison
8778
8779 2004-04-25  Benjamin Otte  <otte@gnome.org>
8780
8781         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8782           better debugging output on error
8783
8784 2004-04-25  Benjamin Otte  <otte@gnome.org>
8785
8786         * gst/gstcaps.c: (gst_caps_subtract):
8787           fix memleak
8788
8789 2004-04-23  Benjamin Otte  <otte@gnome.org>
8790
8791         * gst/gstvalue.c: (gst_value_compare_buffer),
8792         (_gst_value_initialize):
8793           add comparison function for buffers
8794
8795 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8796
8797         * docs/pwg/pwg.xml:
8798           Just found out that this so-called "ima-wav" format is really
8799           just "dvi adpcm" (according to the MS WAV documentation). So
8800           renaming it. We didn't use it yet anyway.
8801
8802 2004-04-23  Benjamin Otte  <otte@gnome.org>
8803
8804         * gst/gstcaps.c: (gst_caps_is_always_compatible):
8805           call gst_caps_is_subset
8806
8807 2004-04-23  Benjamin Otte  <otte@gnome.org>
8808
8809         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
8810         (gst_caps_is_subset):
8811           add documentation
8812
8813 2004-04-23  Benjamin Otte  <otte@gnome.org>
8814           
8815         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
8816         (gst_caps_structure_subtract), (gst_caps_subtract),
8817         (gst_caps_structure_figure_out_union),
8818         (gst_caps_structure_simplify), (gst_caps_do_simplify):
8819           fix simplifying and subtracting not working correctly with optional
8820           properties
8821           solve assorted problems that make it now simplify ebven more
8822         * docs/gst/tmpl/gstcaps.sgml:
8823         * gst/gstcaps.h:
8824           make gst_caps_do_simplify return a bool to indicate if it simplified
8825         * testsuite/caps/simplify.c: (main):
8826           add more checks. The tests is quite a bit useless right now because
8827           the core is heavily simplifying itself.
8828         * testsuite/caps/caps.h:
8829           fix caps to contain all optional properties
8830
8831 2004-04-22  Benjamin Otte  <otte@gnome.org>
8832
8833         * docs/gst/tmpl/gstcaps.sgml:
8834         * docs/gst/tmpl/gstfilesrc.sgml:
8835         * docs/gst/tmpl/gststructure.sgml:
8836         * docs/gst/tmpl/gstvalue.sgml:
8837           update for recent API changes
8838         * gst/gstcaps.c: (gst_caps_do_simplify):
8839           fix to stop trying with a freed structure
8840         * gst/gstpad.c: (gst_pad_link_fixate):
8841           simplify caps
8842         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
8843           remove C++ comment
8844         * gst/gstpad.h:
8845           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
8846         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8847         (gst_structure_to_string):
8848           keep the correct type when using lists of ranges
8849         * gst/gstvalue.c: (gst_value_list_prepend_value),
8850         (gst_value_list_append_value):
8851           copy the value before adding to the list (d'oh)
8852         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
8853         (gst_value_subtract_int_range_int_range):
8854           handle overflows correctly
8855         * gst/gstvalue.c: (gst_value_subtract_from_list):
8856           fix memleak
8857         * testsuite/caps/caps.h:
8858           add a caps that caused segfaults
8859
8860 2004-04-22  Benjamin Otte  <otte@gnome.org>
8861
8862         * testsuite/refcounting/pad.c: (main):
8863           fix test
8864
8865 2004-04-22  Benjamin Otte  <otte@gnome.org>
8866
8867         * gst/gstcaps.c: (gst_caps_subtract):
8868           allow subtracting ANY and EMPTY from ANY caps
8869
8870 2004-04-22  Benjamin Otte  <otte@gnome.org>
8871
8872         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
8873         (gst_caps_union):
8874           only simplify in functions that create new caps. Simplifying in
8875           gst_caps_append breaks tests.
8876
8877 2004-04-22  Benjamin Otte  <otte@gnome.org>
8878
8879         * gst/gstcaps.c: (gst_caps_structure_simplify):
8880           unset GValue after use
8881         * gst/gstcaps.c: (gst_caps_append), 
8882         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
8883           use gst_caps_simplify (reduces registry size by 30%)
8884         * gst/gstpad.c: (gst_pad_template_new):
8885           don't allow NULL caps
8886
8887 2004-04-22  Benjamin Otte  <otte@gnome.org>
8888
8889         * docs/gst/gstreamer-sections.txt:
8890           add gst_caps_do_simplify
8891         * gst/gstcaps.c:
8892           add documentation for gst_caps_do_simplify
8893         * gst/gstvalue.h:
8894           fix typo in gst_value_register_subtract_func declaration for gst-doc
8895
8896 2004-04-22  Benjamin Otte  <otte@gnome.org>
8897
8898         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8899           fix bug when converting from empty string.
8900         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
8901         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
8902           use gst_caps_new_empty to allocate a new caps. Only that function
8903           allocates memory for caps now.
8904         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
8905         (gst_caps_remove_structure):
8906           add ability to remove one structure (but not to header yet)
8907         * gst/gstcaps.c: (gst_caps_compare_structures),
8908         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
8909         (gst_caps_structure_simplify), (gst_caps_do_simplify),
8910         * gst/gstcaps.h:
8911           add gst_caps_do_simplify that tries to simplify a caps in place.
8912           Deprecate old gst_caps_simplify function.
8913         * testsuite/caps/caps.h:
8914           add caps.h containing a common set of caps to test against.
8915         * testsuite/caps/sets.c: (check_caps), (main):
8916           use it.
8917         * testsuite/caps/.cvsignore:
8918         * testsuite/caps/Makefile.am:
8919         * testsuite/caps/simplify.c: (check_caps), (main):
8920           add test to check correctness and efficency of caps simplification.
8921
8922 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
8923
8924         reviewed by Benjamin Otte  <otte@gnome.org>
8925
8926         * gst/gstparse.c: (_gst_parse_escape):
8927           Free the GString used in _gst_parse_escape()
8928
8929 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8930
8931         * gst/gstpad.c: (gst_pad_link_negotiate):
8932           refuse to link if the link is not possible
8933         * configure.ac:
8934         * testsuite/Makefile.am:
8935         * testsuite/negotiation/.cvsignore:
8936         * testsuite/negotiation/Makefile.am:
8937         * testsuite/negotiation/pad_link.c: (main):
8938           add test that checks the above behaviour
8939
8940 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8941
8942         * docs/gst/gstreamer-sections.txt:
8943           add newly added API
8944
8945 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8946
8947         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8948         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
8949         (gst_filesrc_open_file), (gst_filesrc_close_file),
8950         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
8951         * gst/elements/gstfilesrc.h:
8952           add support for non-regular files (#140734)
8953
8954 2004-04-21  Benjamin Otte  <otte@gnome.org>
8955
8956         * gst/gstpad.c: (gst_pad_link_fixate):
8957           add sophisticated error checking code to see if fixation functions
8958           did their fixation right
8959
8960 2004-04-21  Benjamin Otte  <otte@gnome.org>
8961
8962         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
8963           check for ANY caps before appending/unioning
8964         * gst/gstcaps.c: (gst_caps_is_subset),
8965         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
8966         (gst_caps_structure_subtract), (gst_caps_subtract):
8967         * gst/gstcaps.h:
8968           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
8969           the API. deprecate gst_caps_is_equal_fixed
8970         * gst/gstpad.c: (gst_pad_try_set_caps):
8971         * gst/gstqueue.c: (gst_queue_link):
8972           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
8973         * gst/gststructure.c: (gst_structure_get_name_id):
8974         * gst/gststructure.h:
8975           add function gst_structure_get_name_id
8976         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
8977         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
8978         (gst_value_subtract_int_range_int_range),
8979         (gst_value_subtract_double_double_range),
8980         (gst_value_subtract_double_range_double),
8981         (gst_value_subtract_double_range_double_range),
8982         (gst_value_subtract_from_list), (gst_value_subtract_list),
8983         (gst_value_can_intersect), (gst_value_subtract),
8984         (gst_value_can_subtract), (gst_value_register_subtract_func),
8985         (_gst_value_initialize):
8986         * gst/gstvalue.h:
8987           add support for subtracting values from each other. Note that
8988           subtracting means subtracting as in set theory. Required for caps
8989           stuff above.
8990         * testsuite/caps/.cvsignore:
8991         * testsuite/caps/Makefile.am:
8992         * testsuite/caps/erathostenes.c: (erathostenes), (main):
8993         * testsuite/caps/sets.c: (check_caps), (main):
8994         * testsuite/caps/subtract.c: (check_caps), (main):
8995           add tests for subtraction and equality code.
8996
8997 2004-04-20  David Schleef  <ds@schleef.org>
8998
8999         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9000         * gst/indexers/Makefile.am:
9001         * gst/schedulers/Makefile.am:
9002         * libs/gst/bytestream/Makefile.am:
9003         * libs/gst/control/Makefile.am:
9004         * libs/gst/getbits/Makefile.am:
9005
9006 2004-04-20  David Schleef  <ds@schleef.org>
9007
9008         * common/as-libtool.mak: Fine-tune DLL building.
9009         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9010         (like gst-plugins)
9011         * examples/plugins/Makefile.am: remove plugindir
9012         * gst/autoplug/Makefile.am: DLL building fixes
9013         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9014         Windows.
9015         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9016         * gst/indexers/Makefile.am: DLL building fixes
9017         * gst/schedulers/Makefile.am: DLL building fixes.
9018         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9019         * libs/gst/control/Makefile.am: same
9020         * libs/gst/getbits/Makefile.am: same
9021         * testsuite/Makefile.am: New dlopen directory
9022         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9023         when dlopened.
9024         * testsuite/dlopen/dlopen_gst.c: (main): same
9025         * testsuite/dlopen/loadgst.c: (do_test): same
9026
9027 2004-04-20  David Schleef  <ds@schleef.org>
9028
9029         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9030         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9031
9032 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9033
9034         * gst/gstelement.c: (gst_element_wait),
9035         (gst_element_set_time_delay), (gst_element_change_state):
9036           Use GST_TIME_*
9037
9038 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9039
9040         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9041         (gst_spider_identity_plug):
9042           improve debugging messages
9043         * gst/gstbin.c: (gst_bin_remove_func):
9044           make sure the state_change function is only called with simple state
9045           transitions
9046
9047 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9048
9049         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9050         (gst_fakesink_set_property), (gst_fakesink_chain):
9051         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9052         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9053         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9054         * gst/elements/gstidentity.c: (gst_identity_chain),
9055         (gst_identity_set_property):
9056         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9057         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9058           add warnings to _set_property for unknown arguments
9059           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9060
9061 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9062
9063         * Makefile.am:
9064         * docs/manuals.mak:
9065           add .po file download snippet
9066           fix a bug in the doc makefile
9067
9068 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9069
9070         * Makefile.am:
9071         * po/LINGUAS:
9072         * po/en_GB.po:
9073           Added en_GB translation (Gareth Owen)
9074
9075 2004-04-20  Johan Dahlin  <johan@gnome.org>
9076
9077         * gst/gstpad.c (_invent_event): Clean up
9078
9079 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9080
9081         * testsuite/caps/filtercaps.c: (main):
9082           fix test to test things correctly (caps are complicated)
9083
9084 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9085
9086         * testsuite/caps/Makefile.am:
9087         * testsuite/caps/filtercaps.c: (main):
9088           add test (that doesn't work right now, but should)
9089
9090 2004-04-19  David Schleef  <ds@schleef.org>
9091
9092         * configure.ac: Add test for allowing unaligned access.  Add define
9093         to put in gstconfig.h.
9094         * docs/gst/gstreamer-sections.txt: New symbols
9095         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9096         * docs/gst/tmpl/gstfilesrc.sgml:
9097         * docs/gst/tmpl/gstparse.sgml:
9098         * docs/gst/tmpl/gsttypes.sgml:
9099         * docs/gst/tmpl/gstutils.sgml:
9100         * docs/gst/tmpl/gstvalue.sgml:
9101         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9102         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9103         on most !i386/!powerpc architectures.  From Daniel Gazard
9104         <daniel.gazard@free.fr>.  (bug #140156)
9105         * po/af.po: Check in changes made by gettext.
9106         * po/az.po:
9107         * po/fr.po:
9108         * po/nl.po:
9109         * po/sr.po:
9110         * po/sv.po:
9111
9112 2004-04-20  Benjamin Otte  <otte@gnome.org>
9113
9114         * gst/schedulers/entryscheduler.c: 
9115         (gst_entry_scheduler_yield):
9116           refuse to yield when decoupled elements insist on doing that.
9117           At least it's better than crashing
9118
9119 2004-04-19  David Schleef  <ds@schleef.org>
9120
9121         * docs/libs/Makefile.am: Change sinclude to include
9122         * docs/gst/Makefile.am: same
9123         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9124
9125 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9126
9127         * po/LINGUAS:
9128         * po/uk.po:
9129           Added Ukrainian translation (Maxim V. Dziumanenko)
9130
9131 2004-04-19  Johan Dahlin  <johan@gnome.org>
9132
9133         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9134         checking here, do it before calling the function.
9135         Clean up, use for loops instead of while loops while iterating
9136         over lists.
9137
9138         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9139         in debug message.
9140         (gst_spider_create_and_plug): Improve debug message.
9141         General: Replace while loops which iterates over GLists with for
9142         loops. Which are much cleaner, improves readability, especially
9143         for gst_spider_identity_plug
9144
9145         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9146         fixes bug 140477
9147
9148 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9149
9150         * po/LINGUAS:
9151         * po/tr.po:
9152           Added Turkish translation (Baris Cicek)
9153
9154 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9155
9156         * docs/faq/troubleshooting.xml:
9157           Mention gst-register in the FAQ (fixes 139045).
9158
9159 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9160
9161         * docs/gst/gstreamer-sections.txt:
9162
9163 2004-04-17  Benjamin Otte  <otte@gnome.org>
9164
9165         * gst/gstelement.c: (gst_element_dispose):
9166           simplify
9167         * gst/gstpad.c: (gst_pad_call_chain_function):
9168           don't create loads of events due to bad macro usage
9169
9170 2004-04-16  David Schleef  <ds@schleef.org>
9171
9172         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9173         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9174         * gst/gstvalue.c: (gst_value_serialize_buffer),
9175         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9176         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9177         to indicate types that are fixed wrt caps or not.  Switching to
9178         this function fixes (bug #140298).
9179         * gst/gstvalue.h:
9180
9181 2004-04-16  David Schleef  <ds@schleef.org>
9182
9183         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9184         for GST_UNALIGNED_ACESS, since we essentially know which archs
9185         are ok.
9186
9187 2004-04-17  Benjamin Otte  <otte@gnome.org>
9188
9189         * docs/gst/Makefile.am:
9190           ignore gst/parse directory when building docs (fixes #140205)
9191
9192 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9193
9194         * testsuite/refcounting/mem.c: (vmsize):
9195           do error checking
9196
9197 2004-04-16  Johan Dahlin  <johan@gnome.org>
9198
9199         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9200         and gst_pad_call_get_function.
9201
9202 2004-04-15  David Schleef  <ds@schleef.org>
9203
9204         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9205         checks if we can access unaligned memory.
9206         * configure.ac: Use it.
9207
9208 2004-04-16  Benjamin Otte  <otte@gnome.org>
9209
9210         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9211         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9212         * gst/elements/gstfilesrc.h:
9213           s/seek_happened/need_discont/ and require discont before sending any
9214           data
9215
9216 2004-04-15  David Schleef  <ds@schleef.org>
9217
9218         * gst/gstvalue.c: (gst_value_serialize_buffer),
9219         (gst_value_deserialize_buffer), (_gst_value_initialize):
9220         Register these types as fundamental types. (bug #140015)
9221
9222 2004-04-16  Benjamin Otte  <otte@gnome.org>
9223
9224         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9225         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9226         (gst_pad_pull):
9227           implement enforcing discont events before buffers are passed. This
9228           allows state changes of only some elements and later correctly going
9229           on where they left off (or in short: you can now set audio sinks to
9230           NULL to release the device when the pipeline is paused)
9231         * gst/gstpad.c: (gst_pad_call_chain_function),
9232         (gst_pad_call_get_function):
9233         * gst/gstpad.h:
9234           add gst_pad_call_chain_function and gst_pad_call_get_function for
9235           scheduler interaction. They are required because of the changes
9236           above.
9237         * gst/schedulers/entryscheduler.c: (get_buffer),
9238         (gst_entry_scheduler_chain_wrapper),
9239         (gst_entry_scheduler_get_wrapper),
9240         (gst_entry_scheduler_state_transition),
9241         (gst_entry_scheduler_pad_link):
9242         * gst/schedulers/gstbasicscheduler.c:
9243         (gst_basic_scheduler_chain_wrapper),
9244         (gst_basic_scheduler_src_wrapper),
9245         (gst_basic_scheduler_chainhandler_proxy),
9246         (gst_basic_scheduler_gethandler_proxy),
9247         (gst_basic_scheduler_cothreaded_chain),
9248         (gst_basic_scheduler_chain_elements):
9249         * gst/schedulers/gstoptimalscheduler.c:
9250         (get_group_schedule_function), (pad_clear_queued),
9251         (gst_opt_scheduler_pad_link):
9252           use the new functions instead of calling get/chain-functions
9253           directly.
9254
9255 2004-04-15  David Schleef  <ds@schleef.org>
9256
9257         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9258         * docs/gst/tmpl/gstinfo.sgml: same
9259         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9260         gtk-doc put here.
9261         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9262         * examples/queue/queue.c: (main):  We iterate pipelines, not
9263         bins.  (bug #139996)
9264
9265 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9266
9267         * docs/pwg/advanced-types.xml:
9268           Add MS RLE support. Also document Qt RLE although I have no sample
9269           files for that yet. And document an extra property for ADPCM.
9270
9271 2004-04-15  David Schleef  <ds@schleef.org>
9272
9273         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9274         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9275         Windows.
9276
9277 2004-04-15  David Schleef  <ds@schleef.org>
9278
9279         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9280         symbol names to not conflict with new gstinfo.h symbols.
9281         * gst/gstinfo.h: Add inline functions for all those crazy
9282         compilers that don't know how to handle variadic macros (MSVC).
9283
9284 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9285
9286         * configure.ac: bump nano to 1
9287
9288 === release 0.8.1 ===
9289
9290 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9291
9292         * NEWS:
9293         * RELEASE:
9294         * configure.ac:
9295           releasing 0.8.1, "Snow Brigade"
9296
9297 2004-04-14  David Schleef  <ds@schleef.org>
9298
9299         * testsuite/Makefile.am: define tests_ignore
9300         * testsuite/Rules: Added new tests_ignore, which get compiled,
9301         but not run (generally because they're inconsistent or have
9302         heisenbugs).  Now we can ensure all the .c files compile in
9303         testsuite/.
9304         * testsuite/bins/Makefile.am: define tests_ignore
9305         * testsuite/bytestream/Makefile.am:
9306         * testsuite/caps/Makefile.am:
9307         * testsuite/clock/Makefile.am:
9308         * testsuite/debug/Makefile.am:
9309         * testsuite/debug/global.c: (gst_debug_log_one),
9310         (gst_debug_log_two): Fix compilation problem.
9311         * testsuite/dynparams/Makefile.am:
9312         * testsuite/elements/Makefile.am:
9313         * testsuite/ghostpads/Makefile.am:
9314         * testsuite/indexers/Makefile.am:
9315         * testsuite/parse/Makefile.am:
9316         * testsuite/plugin/Makefile.am:
9317         * testsuite/refcounting/Makefile.am:
9318         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9319         results, because it's not calculated correctly.
9320         * testsuite/refcounting/pad.c: (main): same
9321         * testsuite/states/Makefile.am:
9322         * testsuite/tags/Makefile.am:
9323         * testsuite/threads/Makefile.am:
9324
9325 2004-04-14  David Schleef  <ds@schleef.org>
9326
9327         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9328         generating bad code around the cpu detection asm code.
9329
9330 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9331
9332         * tools/gst-inspect.c: (print_element_info):
9333           print numeric version of rank as well, since we added some - 1
9334           rank values to elements
9335
9336 2004-04-13  David Schleef  <ds@schleef.org>
9337
9338         * configure.ac:  Disable various code when compiling for MinGW.
9339         * gst/elements/Makefile.am:
9340         * gst/elements/gstelements.c:
9341         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9342         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9343         * gst/registries/gstxmlregistry.c: (make_dir):
9344
9345 2004-04-13  David Schleef  <ds@schleef.org>
9346
9347         * gst/Makefile.am:
9348         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9349         assembly.
9350         * gst/gstcpuid_i386.s: remove
9351
9352 2004-04-13  David Schleef  <ds@schleef.org>
9353
9354         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9355         seems to think it needs to be done.
9356         * docs/gst/tmpl/gstfakesink.sgml:
9357         * docs/gst/tmpl/gstfakesrc.sgml:
9358         * docs/gst/tmpl/gstfdsink.sgml:
9359         * docs/gst/tmpl/gstfdsrc.sgml:
9360         * docs/gst/tmpl/gstfilesink.sgml:
9361         * docs/gst/tmpl/gstfilesrc.sgml:
9362         * docs/gst/tmpl/gstidentity.sgml:
9363         * docs/gst/tmpl/gstmd5sink.sgml:
9364         * docs/gst/tmpl/gstmultifilesrc.sgml:
9365         * docs/gst/tmpl/gstpipefilter.sgml:
9366         * docs/gst/tmpl/gstshaper.sgml:
9367         * docs/gst/tmpl/gstspider.sgml:
9368         * docs/gst/tmpl/gstspideridentity.sgml:
9369         * docs/gst/tmpl/gststatistics.sgml:
9370         * docs/gst/tmpl/gsttee.sgml:
9371         * docs/gst/tmpl/gsttypefind.sgml:
9372         * docs/gst/tmpl/gstutils.sgml:
9373
9374 2004-04-13  David Schleef  <ds@schleef.org>
9375
9376         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9377         and to build DLLs on Windows.
9378         * gst/Makefile.am:
9379         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9380         (gst_filesrc_open_file):
9381         * gst/schedulers/Makefile.am:
9382
9383 2004-04-13  David Schleef  <ds@schleef.org>
9384
9385         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9386         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9387         fixating lists.
9388
9389 2004-04-12  David Schleef  <ds@schleef.org>
9390
9391         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9392         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9393         to using it.
9394         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9395         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9396         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9397         * gst/gststructure.c: (gst_structure_set_valist),
9398         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9399         support for buffers.
9400         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9401         intended to be const.
9402         * gst/gsttag.h: same
9403         * gst/gstvalue.c: (gst_value_serialize_buffer),
9404         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9405         to (de)serialize buffers.
9406         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9407         * testsuite/caps/string-conversions.c: (main):
9408         * testsuite/caps/value_serialize.c: add new test
9409
9410 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9411
9412         * docs/pwg/advanced-types.xml:
9413           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9414
9415 2004-04-11  Benjamin Otte  <otte@gnome.org>
9416
9417         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9418           rename categories to basic_*
9419         * gst/schedulers/gstbasicscheduler.c: 
9420         (gst_basic_scheduler_chain_wrapper),
9421         (gst_basic_scheduler_chainhandler_proxy),
9422         (gst_basic_scheduler_gethandler_proxy),
9423         (gst_basic_scheduler_eventhandler_proxy):
9424           debugging category fixes - put common stuff in log category
9425         * gst/schedulers/gstbasicscheduler.c: 
9426         (gst_basic_scheduler_chain_elements):
9427           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9428           active and linking two active chains
9429
9430 2004-04-10  Benjamin Otte  <otte@gnome.org>
9431
9432         * docs/pwg/intro-preface.xml:
9433           fix dead links and remove reference to Wiki
9434
9435 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9436
9437         * gst/schedulers/gstbasicscheduler.c:
9438           make sure we can switch back to the main function if we're still in
9439           the main function (supposed to fix #139617)
9440         * gst/schedulers/gthread-cothreads.h:
9441           don't throw an error when switching to the same cothread
9442
9443 2004-04-09  Benjamin Otte  <otte@gnome.org>
9444
9445         * gst/gstbin.c: (gst_bin_get_type):
9446         * gst/gstclock.c: (gst_clock_get_type):
9447         * gst/gstindex.c: (gst_index_get_type):
9448         * gst/gstobject.c: (gst_object_get_type),
9449         (gst_signal_object_get_type):
9450         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9451         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9452         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9453         * gst/gstqueue.c: (gst_queue_get_type):
9454         * gst/gstregistry.c: (gst_registry_get_type):
9455         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9456         * gst/gstthread.c: (gst_thread_get_type):
9457           don't use memchunks for these objects, use malloc instead
9458
9459 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9460
9461         * docs/gst/.cvsignore:
9462         * docs/gst/Makefile.am:
9463         * docs/gst/gstreamer-sections.txt:
9464         * docs/gst/tmpl/gstaggregator.sgml:
9465         * docs/gst/tmpl/gstbuffer.sgml:
9466         * docs/gst/tmpl/gstclock.sgml:
9467         * docs/gst/tmpl/gstelement.sgml:
9468         * docs/gst/tmpl/gstfakesink.sgml:
9469         * docs/gst/tmpl/gstfakesrc.sgml:
9470         * docs/gst/tmpl/gstfdsink.sgml:
9471         * docs/gst/tmpl/gstfdsrc.sgml:
9472         * docs/gst/tmpl/gstfilesink.sgml:
9473         * docs/gst/tmpl/gstfilesrc.sgml:
9474         * docs/gst/tmpl/gstidentity.sgml:
9475         * docs/gst/tmpl/gstindex.sgml:
9476         * docs/gst/tmpl/gstinfo.sgml:
9477         * docs/gst/tmpl/gstmd5sink.sgml:
9478         * docs/gst/tmpl/gstmultifilesrc.sgml:
9479         * docs/gst/tmpl/gstpad.sgml:
9480         * docs/gst/tmpl/gstpipefilter.sgml:
9481         * docs/gst/tmpl/gstpipeline.sgml:
9482         * docs/gst/tmpl/gstpluginfeature.sgml:
9483         * docs/gst/tmpl/gstqueue.sgml:
9484         * docs/gst/tmpl/gstregistry.sgml:
9485         * docs/gst/tmpl/gstscheduler.sgml:
9486         * docs/gst/tmpl/gstshaper.sgml:
9487         * docs/gst/tmpl/gstspider.sgml:
9488         * docs/gst/tmpl/gstspideridentity.sgml:
9489         * docs/gst/tmpl/gststatistics.sgml:
9490         * docs/gst/tmpl/gstsystemclock.sgml:
9491         * docs/gst/tmpl/gsttee.sgml:
9492         * docs/gst/tmpl/gstthread.sgml:
9493         * docs/gst/tmpl/gsttypefind.sgml:
9494         * docs/gst/tmpl/gstutils.sgml:
9495           further doc build fixes
9496
9497 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9498
9499         * docs/gst/Makefile.am:
9500           make docs exit on scanning problems
9501           fix nonsrcdir build issues
9502         * docs/gst/gstreamer-sections.txt:
9503           adding stuff from -unused
9504         * gst/gstqueue.h:
9505           create GstQueueSize
9506         * gst/schedulers/cothreads_compat.h:
9507           fix cothread warnings
9508
9509 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9510
9511         * docs/gst/gstreamer-sections.txt:
9512           remove defines deprecated by Benjamin
9513
9514 2004-04-07  Benjamin Otte  <otte@gnome.org>
9515
9516         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9517           when the buffer is complete, don't check if other buffers are needed
9518         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9519           check that the offset is >0 so we don't try to read before the
9520           beginning of the file
9521         * gst/gstpad.c: (gst_pad_set_pad_template):
9522           sink the template, so we don't end up with 130k pad templates
9523
9524 2004-04-06  Benjamin Otte  <otte@gnome.org>
9525
9526         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9527           don't ref the element, adding already reffed it. And we didn't unref
9528           it later anyway... (huge memleak when you used many spider elements)
9529         * gst/gstelement.c: (gst_element_base_class_finalize):
9530         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9531         (gst_element_register):
9532         * gst/gsturi.c: (gst_element_make_from_uri):
9533           use gst_object_(un)ref instead of g_object(un)ref
9534
9535 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9536
9537         * gst/gstbuffer.h:
9538           remove macro that wouldn't work anymore because struct member has
9539           been removed.
9540         * gst/schedulers/entryscheduler.c: (schedule_forward):
9541           fix segfault for unconnected pads
9542         
9543 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9544
9545         reviewed by David Schleef <ds@schleef.org>
9546
9547         * gst/gstinfo.h:
9548           *_FORMAT modifiers should require putting a % in front of them for
9549           consistency reasons.
9550
9551 2004-04-05  Colin Walters  <walters@redhat.com>
9552
9553         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9554         space.
9555
9556 2004-04-05  Benjamin Otte  <otte@gnome.org>
9557
9558         * configure.ac:
9559         * gst/Makefile.am:
9560         * gst/gst_private.h:
9561         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9562           add support for detecting if GStreamer runs inside valgrind.
9563           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9564           print a big message in valgrind that GStreamer has detected it's
9565           running inside and might now use different code.
9566         * gst/gstmemchunk.c: (populate), (free_area),
9567         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9568         (gst_mem_chunk_free):
9569           flag memchunks for valgrind, so it can detect leaking of chunks.
9570           This allows detecting leaks of GstBuffer and GstEvent correctly
9571           inside valgrind.
9572
9573 2004-04-05  David Schleef  <ds@schleef.org>
9574
9575         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9576           jensgr@gmx.net (Jens Granseuer)
9577
9578 2004-04-05  David Schleef  <ds@schleef.org>
9579
9580         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9581         (gst_buffer_default_free), (gst_buffer_default_copy),
9582         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9583         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9584         structures in one place.
9585
9586 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9587
9588         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9589           (GST_TIME_FORMAT, GST_TIME_ARGS)
9590
9591 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9592
9593         * testsuite/elements/Makefile.am:
9594           disable test until it stops breaking make distcheck
9595
9596 2004-04-05  Johan Dahlin  <johan@gnome.org>
9597
9598         * po/sv.po: Updated translation
9599
9600 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9601
9602         * gst/gstplugin.c: (gst_plugin_load_file):
9603           fix segfault for when original plugin was loaded statically
9604
9605 2004-04-05  Benjamin Otte  <otte@gnome.org>
9606
9607         * testsuite/debug/category.c: (main):
9608         * testsuite/debug/commandline.c: (main):
9609         * testsuite/debug/output.c: (main):
9610           fix tests to work again with debugging enabled
9611
9612 2004-04-05  Benjamin Otte  <otte@gnome.org>
9613
9614         * gst/schedulers/gstbasicscheduler.c:
9615         (gst_basic_scheduler_pad_link):
9616           fix to work with recent scheduling changes
9617
9618 2004-04-05  Benjamin Otte  <otte@gnome.org>
9619
9620         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9621         prepareChangeLog doesn't work when cvs indents):
9622           don't throw an error when no element can be scheduled, there's too
9623           many weird reasons why it doesn't work. Return STOPPED instead.
9624           decoupled elemts' schedulability doesn't depend on bufpens.
9625
9626 2004-04-04  Benjamin Otte  <otte@gnome.org>
9627
9628         * gst/schedulers/gstbasicscheduler.c:
9629         (gst_basic_scheduler_pad_select):
9630           fix uninitialized variable warnings
9631
9632 2004-04-04  Benjamin Otte  <otte@gnome.org>
9633
9634         * gst/gstpad.c: (gst_pad_collect_valist):
9635           fix uninitialized variable warning
9636         * gst/schedulers/entryscheduler.c: (schedule_forward):
9637           fix shadowed variable
9638
9639 2004-04-04  Benjamin Otte  <otte@gnome.org>
9640
9641         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9642         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9643         (gst_pad_select):
9644         * gst/gstpad.h:
9645         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9646         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9647         * gst/gstscheduler.h:
9648           implement gst_pad_collect as replacement for gst_pad_select.
9649           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9650           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9651           new pad_select, lock and unlock calls.
9652         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9653         * gst/cothreads.h:
9654         * gst/schedulers/cothreads_compat.h:
9655         * gst/schedulers/gthread-cothreads.h:
9656           remove unused cothread_lock and cothread_unlock calls
9657         * gst/schedulers/entryscheduler.c:
9658         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9659         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9660         (gst_entry_scheduler_pad_select):
9661           update to new API
9662         * gst/schedulers/gstbasicscheduler.c:
9663         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9664         (gst_basic_scheduler_pad_select):
9665           remove useless lock and unlock calls, update pad_select to new API
9666           (untested)
9667         * gst/schedulers/gstoptimalscheduler.c:
9668         (gst_opt_scheduler_class_init):
9669           remove useless select, lock and unlock function calls
9670         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9671           use gst_pad_collect instead of gst_pad_select
9672
9673 2004-04-04  Benjamin Otte  <otte@gnome.org>
9674
9675         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9676         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9677         (schedule_next_element), (print_entry):
9678           add can_schedule_pad to handle element states.
9679           add schedule_forward to select the correct entry to schedule next
9680
9681 2004-04-03  Benjamin Otte  <otte@gnome.org>
9682
9683         * gst/schedulers/entryscheduler.c: 
9684           remove unused variable, fix error inside Rb, fix compile warning in
9685           unreachable code
9686
9687 2004-04-03  Benjamin Otte  <otte@gnome.org>
9688
9689         * gst/schedulers/entryscheduler.c:
9690           completely revamp the inner workings, so it's a lot easier to
9691           understand and extend
9692
9693 2004-04-03  Andy Wingo  <wingo@pobox.com>
9694
9695         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9696         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9697         This allows better introspection of pipeline topology.
9698         (add_to_chain): Don't do trickery to put loop elements first;
9699         rather, queue a chain sort by marking the chain as dirty.
9700         (remove_from_chain): Mark the chain dirty.
9701         (sort_chain): New function. Sorts the group list so that terminal
9702         sinks are first. This means elements on the sink side will be
9703         preferentially sscheduled before elements on the src side of the
9704         pipeline.
9705         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9706         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9707         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9708         (group_inc_link): Change argument and variable names to match the
9709         new link structure member names (src and sink).
9710         (group_dec_link): Add some description
9711
9712 2004-04-03  Benjamin Otte  <otte@gnome.org>
9713
9714         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9715         * gst/gstinfo.h:
9716         * testsuite/debug/category.c: (main):
9717         * testsuite/debug/commandline.c: (main):
9718         * testsuite/debug/output.c: (main):
9719         * testsuite/debug/printf_extension.c: (main):
9720           fix to successfully build and test with --disable-gst-debug
9721           configure switch (fixes #138705)
9722
9723 2004-04-03  Benjamin Otte  <otte@gnome.org>
9724
9725         * docs/pwg/building-boiler.xml:
9726           add cvs login line and s/anonymous/anoncvs/
9727
9728 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
9729
9730         reviewed by Benjamin Otte  <otte@gnome.org>
9731
9732         * gst/gststructure.c: (gst_structure_free):
9733           memleak fix: free fields array (partial fix for #134839)
9734
9735 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9736
9737         * docs/random/ds/0.9-suggested-changes:
9738           Add a note to change handoff use in fakesrc to be usable in
9739           a more generic way (fakesrc should be renamed to appsrc or so).
9740         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9741           Change signal type to scope, so we can fill the buffer in the
9742           handoff handler (that's the whole use of this signal...).
9743
9744 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9745
9746         * docs/pwg/other-ntoone.xml:
9747           Document muxers and n-to-1 elements.
9748
9749 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
9750
9751         * gst/registries/gstxmlregistry.c
9752         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
9753         determine if a file is a G_MODULE. The old one discards paths
9754         containing "so" somewhere in the middle. My home directory is
9755         called "soto". Go figure...
9756
9757 2004-03-31  David Schleef  <ds@schleef.org>
9758
9759         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
9760         to eventually deprecate gst_buffer_merge().  (bug: #136408)
9761         * gst/gstbuffer.h:
9762
9763 2004-03-31  David Schleef  <ds@schleef.org>
9764
9765         * gst/gstvalue.c: (gst_value_union_int_int_range),
9766         (gst_value_union_int_range_int_range), (gst_value_can_union),
9767         (gst_value_union), (_gst_value_initialize):  Add some union
9768         implementations.  We didn't have any previously.
9769         * testsuite/caps/Makefile.am:
9770         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
9771         (gst_audioscale_getcaps), (test_caps), (main): A little test
9772         that is the same as the caps manipulation in audioscale.
9773
9774 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9775
9776         * docs/faq/general.xml:
9777           add entry about "does gst support format X?"
9778
9779 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9780
9781         * gst/gstthread.c:
9782           fix docs
9783         * gst/gstutils.h:
9784           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
9785
9786 2004-03-30  Benjamin Otte  <otte@gnome.org>
9787
9788         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9789           set the offset of the buffer to the requested offset
9790         * gst/elements/gsttypefind.c: (stop_typefinding):
9791           revert patch 1.18 (which I unfortunately don't know the reason for).
9792           This is needed to allow downstream elements to seek. Otherwise
9793           typefind might overwrite a previous seek by downstream elements.
9794           This lead to errors with id3tag and typefind on some mp3s.
9795         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9796         (gst_entry_scheduler_iterate):
9797           be more verbose when debugging
9798
9799 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9800
9801         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9802           make sure we don't get NULL strings
9803
9804 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9805
9806         * gst/gstcaps.c:
9807         * gst/gstelement.c:
9808         * gst/gstelementfactory.c: (gst_element_factory_get_type):
9809         * gst/gstindex.c: (gst_index_resolver_get_type),
9810         (gst_index_get_type), (gst_index_factory_get_type):
9811         * gst/gstinfo.c:
9812         * gst/gstpad.c:
9813         * gst/gstplugin.c:
9814         * gst/gsturi.c: (gst_uri_handler_get_type):
9815         * gst/gstvalue.c:
9816           first batch of documentation fixes
9817
9818 2004-03-29  David Schleef  <ds@schleef.org>
9819
9820         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
9821         * docs/gst/gstreamer-docs.sgml:  More hacking
9822         * docs/gst/gstreamer-sections.txt:
9823         * docs/gst/tmpl/cothreads_compat.sgml:
9824         * docs/gst/tmpl/gstcaps.sgml:
9825         * docs/gst/tmpl/gstclock.sgml:
9826         * docs/gst/tmpl/gstelement.sgml:
9827         * docs/gst/tmpl/gstevent.sgml:
9828         * docs/gst/tmpl/gstpad.sgml:
9829         * docs/gst/tmpl/gstutils.sgml:
9830         * docs/gst/tmpl/gstxml.sgml:
9831         * docs/gst/tmpl/gthread-cothreads.sgml:
9832         * docs/random/ds/0.9-suggested-changes:
9833         * gst/elements/gstfakesink.h: doc fixes
9834         * gst/elements/gstfakesrc.h: doc fixes
9835         * gst/gstcaps.c: doc fixes
9836         * gst/gstcaps.h: doc fixes
9837         * gst/gstelement.c: doc fixes
9838         * gst/gstelement.h: doc fixes
9839         * gst/gstindex.c: doc fixes
9840         * gst/gstinfo.c: doc fixes
9841         * gst/gstpad.c: doc fixes
9842         * gst/gstpad.h: doc fixes
9843         * gst/gstplugin.c: doc fixes
9844         * gst/gsttypefind.h: doc fixes
9845         * gst/gsturi.c: doc fixes
9846         * gst/gstvalue.c: doc fixes
9847
9848 2004-03-29  Colin Walters  <walters@redhat.com>
9849
9850         * gst/registries/gstxmlregistry.c (get_time)
9851         (plugin_times_older_than_recurse):
9852         Use the result of stat to determine whether a path is a file,
9853         so we don't attempt to opendir() files.
9854
9855 2004-03-29  Benjamin Otte  <otte@gnome.org>
9856
9857         * gst/gstpad.c: (gst_pad_set_explicit_caps):
9858           print caps in debugging output when setting caps failed
9859         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9860         (schedule_next_element), (get_buffer), (run_chainhandler),
9861         (element_may_start), (gst_entry_scheduler_chain_handler),
9862         (gst_entry_scheduler_get_handler),
9863         (gst_entry_scheduler_state_transition),
9864         (gst_entry_scheduler_pad_link):
9865           make this scheduler a testcase for mandatory
9866           discont-before-first-buffer which is needed if we want to allow apps
9867           to release the sound device.
9868           add SCHED_ASSERT macro to print scheduler state before an assertion
9869           triggers.
9870
9871 2004-03-29  Benjamin Otte  <otte@gnome.org>
9872
9873         * COPYING:
9874           replace by LGPL (former COPYING.LIB). The core is completely
9875           licensed LGPL.
9876         * COPYING.LIB:
9877           remove
9878
9879 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9880
9881         * po/af.po:
9882         * po/sv.po:
9883           updated Afrikaans and Swedish
9884
9885 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9886
9887         * po/LINGUAS:
9888         * po/az.po:
9889           adding Azerbaijani (Mətin Əmirov)
9890
9891 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
9892
9893         * gst/gstelement.h: 
9894         * gst/gstelement.c (gst_element_set_time_delay): New function for
9895         setting element time taking into account a hardware buffering
9896         delay.
9897         (gst_element_set_time): Now just an invocation of
9898         gst_element_set_time_delay.
9899         * gst/gstclock.h: 
9900         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
9901         allowing to set event times in the future.
9902         (gst_clock_get_event_time): Now just an invocation of
9903         gst_clock_get_event_time_delay.
9904
9905 2004-03-28  Benjamin Otte  <otte@gnome.org>
9906
9907         * gst/gstbin.c: (gst_bin_set_element_sched),
9908         (gst_bin_unset_element_sched):
9909           don't add decoupled elements to schedulers - otherwise it's
9910           impossible to control if a link to a decoupled element was already
9911           removed from a scheduler or not.
9912         * gst/schedulers/cothreads_compat.h:
9913         * gst/schedulers/gthread-cothreads.h:
9914           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
9915           is no "unused" warning.
9916         * gst/schedulers/Makefile.am:
9917         * gst/schedulers/entryscheduler.c:
9918           add new scheduler, based on ideas from talking to David and Martin.
9919           It's supposed to be small and correct. Currently it's also slow (but
9920           it's not noticable)
9921         * examples/retag/retag.c: (main):
9922         * testsuite/bytestream/test1.c: (main):
9923           fix missing NULLs at end of variadic functions
9924         * testsuite/elements/.cvsignore:
9925           update
9926
9927 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
9928
9929         * gst/gstevent.h:
9930         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
9931
9932 2004-03-25  David Schleef  <ds@schleef.org>
9933
9934         * docs/gst/gstreamer-sections.txt:  More doc hacking.
9935         * docs/gst/tmpl/gstaggregator.sgml:
9936         * docs/gst/tmpl/gstautoplugfactory.sgml:
9937         * docs/gst/tmpl/gstbin.sgml:
9938         * docs/gst/tmpl/gstbuffer.sgml:
9939         * docs/gst/tmpl/gstbufferstore.sgml:
9940         * docs/gst/tmpl/gstfakesink.sgml:
9941         * docs/gst/tmpl/gstfakesrc.sgml:
9942         * docs/gst/tmpl/gstmd5sink.sgml:
9943         * docs/gst/tmpl/gstreamer-unused.sgml:
9944         * docs/gst/tmpl/gstsearchfuncs.sgml:
9945         * docs/gst/tmpl/gstshaper.sgml:
9946         * docs/gst/tmpl/gstspider.sgml:
9947         * docs/gst/tmpl/gsttee.sgml:
9948         * docs/gst/tmpl/gstutils.sgml:
9949         * docs/gst/tmpl/gstvalue.sgml:
9950         * docs/gst/tmpl/gstxml.sgml:
9951         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
9952         and we don't support it.
9953         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
9954         (gst_use_threads), (gst_has_threads): same
9955         * gst/gstthreaddummy.c: same
9956         * gst/autoplug/gstspider.c: Make gst_spider_details static.
9957         * gst/autoplug/gstspider.h: same
9958         * gst/elements/gstaggregator.h: Remove bogus function from header
9959         * gst/elements/gstfakesink.h: same
9960         * gst/elements/gstfakesrc.h: same
9961         * gst/elements/gstmd5sink.h: same
9962         * gst/elements/gstshaper.h: same
9963         * gst/elements/gsttee.h: same
9964         * gst/gstbin.c: doc fixes
9965         * gst/gstbin.h: Remove unused definition.
9966         * gst/gstbuffer.c: doc fixes
9967         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
9968         * gst/gstfilter.c: doc fixes
9969         * gst/gsttag.c: doc fixes
9970         * gst/gstvalue.c: doc fixes
9971
9972 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9973
9974         * docs/pwg/advanced-types.xml:
9975           Document typefinding.
9976         * docs/pwg/other-oneton.xml:
9977           Document one-to-n elements, demuxers and parsers.
9978
9979 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
9980
9981         reviewed by: David Schleef  <ds@schleef.org>
9982
9983         * configure.ac: Check bison version (bug #127838)
9984
9985 2004-03-25  David Schleef  <ds@schleef.org>
9986
9987         * docs/gst/gstreamer-docs.sgml: More fine tuning.
9988         * docs/gst/gstreamer-sections.txt:
9989         * docs/gst/tmpl/gstautoplug.sgml:
9990         * docs/gst/tmpl/gststaticautoplug.sgml:
9991         * docs/gst/tmpl/gststaticautoplugrender.sgml:
9992         * docs/gst/tmpl/gstutils.sgml:
9993         * docs/gst/tmpl/gstxml.sgml:
9994
9995 2004-03-24  David Schleef  <ds@schleef.org>
9996
9997         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
9998         manual being such complete crap, that I decided to do major
9999         hacking of it.  This checkin replaces any fine tuning that
10000         may have been done previously, with the benefit of actually
10001         being complete for much of the API that was changed since
10002         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10003         * docs/gst/gstreamer-sections.txt:
10004         * docs/gst/tmpl/GstBin.sgml:
10005         * docs/gst/tmpl/GstBuffer.sgml:
10006         * docs/gst/tmpl/GstCaps.sgml:
10007         * docs/gst/tmpl/GstClock.sgml:
10008         * docs/gst/tmpl/GstCompat.sgml:
10009         * docs/gst/tmpl/GstData.sgml:
10010         * docs/gst/tmpl/GstElement.sgml:
10011         * docs/gst/tmpl/GstEvent.sgml:
10012         * docs/gst/tmpl/GstIndex.sgml:
10013         * docs/gst/tmpl/GstStructure.sgml:
10014         * docs/gst/tmpl/GstTag.sgml:
10015         * docs/gst/tmpl/cothreads.sgml:
10016         * docs/gst/tmpl/cothreads_compat.sgml:
10017         * docs/gst/tmpl/gettext.sgml:
10018         * docs/gst/tmpl/grammar.tab.sgml:
10019         * docs/gst/tmpl/gst-i18n-app.sgml:
10020         * docs/gst/tmpl/gst-i18n-lib.sgml:
10021         * docs/gst/tmpl/gst.sgml:
10022         * docs/gst/tmpl/gst_private.sgml:
10023         * docs/gst/tmpl/gstaggregator.sgml:
10024         * docs/gst/tmpl/gstarch.sgml:
10025         * docs/gst/tmpl/gstatomic.sgml:
10026         * docs/gst/tmpl/gstatomic_impl.sgml:
10027         * docs/gst/tmpl/gstbin.sgml:
10028         * docs/gst/tmpl/gstbuffer.sgml:
10029         * docs/gst/tmpl/gstbufferstore.sgml:
10030         * docs/gst/tmpl/gstcaps.sgml:
10031         * docs/gst/tmpl/gstclock.sgml:
10032         * docs/gst/tmpl/gstcompat.sgml:
10033         * docs/gst/tmpl/gstconfig.sgml:
10034         * docs/gst/tmpl/gstcpu.sgml:
10035         * docs/gst/tmpl/gstdata.sgml:
10036         * docs/gst/tmpl/gstdata_private.sgml:
10037         * docs/gst/tmpl/gstelement.sgml:
10038         * docs/gst/tmpl/gstenumtypes.sgml:
10039         * docs/gst/tmpl/gsterror.sgml:
10040         * docs/gst/tmpl/gstevent.sgml:
10041         * docs/gst/tmpl/gstfakesink.sgml:
10042         * docs/gst/tmpl/gstfakesrc.sgml:
10043         * docs/gst/tmpl/gstfilesink.sgml:
10044         * docs/gst/tmpl/gstfilter.sgml:
10045         * docs/gst/tmpl/gstindex.sgml:
10046         * docs/gst/tmpl/gstinfo.sgml:
10047         * docs/gst/tmpl/gstinterface.sgml:
10048         * docs/gst/tmpl/gstlog.sgml:
10049         * docs/gst/tmpl/gstmacros.sgml:
10050         * docs/gst/tmpl/gstmarshal.sgml:
10051         * docs/gst/tmpl/gstmd5sink.sgml:
10052         * docs/gst/tmpl/gstmultifilesrc.sgml:
10053         * docs/gst/tmpl/gstobject.sgml:
10054         * docs/gst/tmpl/gstpad.sgml:
10055         * docs/gst/tmpl/gstparse.sgml:
10056         * docs/gst/tmpl/gstpipeline.sgml:
10057         * docs/gst/tmpl/gstplugin.sgml:
10058         * docs/gst/tmpl/gstpluginfeature.sgml:
10059         * docs/gst/tmpl/gstqueue.sgml:
10060         * docs/gst/tmpl/gstreamer-unused.sgml:
10061         * docs/gst/tmpl/gstregistry.sgml:
10062         * docs/gst/tmpl/gstregistrypool.sgml:
10063         * docs/gst/tmpl/gstscheduler.sgml:
10064         * docs/gst/tmpl/gstsearchfuncs.sgml:
10065         * docs/gst/tmpl/gstshaper.sgml:
10066         * docs/gst/tmpl/gstspider.sgml:
10067         * docs/gst/tmpl/gstspideridentity.sgml:
10068         * docs/gst/tmpl/gststructure.sgml:
10069         * docs/gst/tmpl/gstsystemclock.sgml:
10070         * docs/gst/tmpl/gsttag.sgml:
10071         * docs/gst/tmpl/gsttaginterface.sgml:
10072         * docs/gst/tmpl/gsttee.sgml:
10073         * docs/gst/tmpl/gstthread.sgml:
10074         * docs/gst/tmpl/gsttrace.sgml:
10075         * docs/gst/tmpl/gsttrashstack.sgml:
10076         * docs/gst/tmpl/gsttypefind.sgml:
10077         * docs/gst/tmpl/gsttypes.sgml:
10078         * docs/gst/tmpl/gsturi.sgml:
10079         * docs/gst/tmpl/gsturitype.sgml:
10080         * docs/gst/tmpl/gstutils.sgml:
10081         * docs/gst/tmpl/gstvalue.sgml:
10082         * docs/gst/tmpl/gstversion.sgml:
10083         * docs/gst/tmpl/gstxml.sgml:
10084         * docs/gst/tmpl/gstxmlregistry.sgml:
10085         * docs/gst/tmpl/gthread-cothreads.sgml:
10086         * docs/gst/tmpl/types.sgml:
10087
10088 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10089
10090         * docs/pwg/other-sink.xml:
10091         * docs/pwg/other-source.xml:
10092           Documentation on how to write source and sink elements. Other
10093           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10094           manager, autoplugger) are all still pending.
10095
10096 2004-03-25  Benjamin Otte  <otte@gnome.org>
10097
10098         * testsuite/elements/Makefile.am:
10099         * testsuite/elements/gst-compprep-check:
10100           add check to make sure gst-compprep works
10101         * testsuite/elements/gst-inspect-check.in:
10102           improve initialization output
10103         * testsuite/Makefile.am:
10104         * testsuite/gst-inspect-check:
10105           remove old file
10106
10107 2004-03-24  David Schleef  <ds@schleef.org>
10108
10109         * testsuite/elements/Makefile.am:
10110         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10111         to the testsuite.
10112
10113 2004-03-24  Benjamin Otte  <otte@gnome.org>
10114
10115         * libs/gst/control/dparam.c: (gst_dparam_attach),
10116         (gst_dparam_detach):
10117         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10118           fix lvalue casts for real
10119
10120 2004-03-24  Benjamin Otte  <otte@gnome.org>
10121
10122         * gst/schedulers/gstbasicscheduler.c:
10123         (gst_basic_scheduler_src_wrapper):
10124         * gst/schedulers/gstoptimalscheduler.c:
10125         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10126         (pad_clear_queued), (gst_opt_scheduler_add_element),
10127         (gst_opt_scheduler_remove_element):
10128           fix GStreamer to not have issues with lvalue casts anymore (fixes
10129           #136841)
10130
10131 2004-03-24  Benjamin Otte  <otte@gnome.org>
10132
10133         * gst/gstelement.c:
10134           add documentation about a gobject quirk where the object hasn't the
10135           correct class pointer set on initialization
10136         * gst/schedulers/gstbasicscheduler.c:
10137         (gst_basic_scheduler_src_wrapper):
10138           make sure to not run into an infinite loop
10139
10140 2004-03-22  Benjamin Otte  <otte@gnome.org>
10141
10142         * gst/gstutils.c: (gst_util_dump_mem):
10143         * gst/gstutils.h:
10144           first argument of gst_util_dump_mem should be const
10145
10146 2004-03-22  Johan Dahlin  <johan@gnome.org>
10147
10148         * gst/gstvalue.h: Clean up a little bit.
10149
10150 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10151
10152         reviewed by Benjamin Otte  <otte@gnome.org>
10153
10154         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10155         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10156         (gst_aggregator_class_init), (gst_aggregator_init):
10157         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10158         (gst_filesrc_dispose), (gst_filesrc_set_location):
10159         * gst/elements/gstidentity.c: (gst_identity_finalize),
10160         (gst_identity_class_init), (gst_identity_chain):
10161         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10162         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10163         (gst_statistics_class_init):
10164         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10165         (gst_tee_get_property):
10166           clean up used memory in this elements correctly on teardown (closes
10167           #137279)
10168
10169 2004-03-20  Colin Walters  <walters@redhat.com>
10170
10171         * gst/registries/gstxmlregistry.c:
10172         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10173         registry saving atomic.
10174
10175 2004-03-20  Colin Walters  <walters@redhat.com>
10176
10177         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10178         Just use
10179         access() instead of actually creating and deleting files.
10180
10181 2004-03-18  David Schleef  <ds@schleef.org>
10182
10183         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10184         (bug #137625)
10185
10186 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10187
10188         * po/sv.po: updated translation (Christian Rose)
10189
10190 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10191
10192         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10193         (gst_filesink_get_query_types), (_do_init),
10194         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10195           return FALSE silently
10196         * po/af.po: updated translation (Petri Jooste)
10197
10198 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10199
10200         * Makefile.am:
10201         * configure.ac:
10202           dist common properly
10203         * po/af.po:
10204         * po/fr.po:
10205         * po/nl.po:
10206         * po/sr.po:
10207         * po/sv.po:
10208           refreshing translations
10209
10210 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10211
10212         * po/LINGUAS:
10213         * po/sv.po:
10214         * po/af.po:
10215           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10216
10217 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10218
10219         * Makefile.am: use common/release.mak
10220
10221 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10222
10223         * docs/faq/gst-uninstalled:
10224           adding gst-monkeysaudio to the list of possible plugin dirs
10225
10226 2004-03-16  David Schleef  <ds@schleef.org>
10227
10228         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10229         (gst_init_check_with_popt_table):  Fix some gettext strings to
10230         make them easier to translate.  Required making the strings
10231         non-const.
10232
10233 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10234
10235         * configure.ac: bump nano to 1
10236
10237 === release 0.8.0 ===
10238
10239 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10240
10241         * configure.ac: release 0.8.0, "Executive Slacks"
10242
10243 2004-03-16  Johan Dahlin  <johan@gnome.org>
10244
10245         * gst/schedulers/gstoptimalscheduler.c
10246         (gst_opt_scheduler_pad_unlink): Remove double ;,
10247         spotted by Scott Wheeler
10248
10249 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10250
10251         * configure.ac: bump libtool version
10252
10253 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10254
10255         * gst/gstcaps.h:
10256         * gst/gststructure.h:
10257           add reserved padding
10258
10259 2004-03-15  Benjamin Otte  <otte@gnome.org>
10260
10261         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10262           set the first parameter for select call correctly.
10263           (fixes #137230)
10264
10265 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10266
10267         * *.c,*.h: don't mix tabs and spaces
10268
10269 2004-03-15  Johan Dahlin  <johan@gnome.org>
10270
10271         * gst/schedulers/gstoptimalscheduler.c
10272         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10273         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10274
10275         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10276         
10277 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10278
10279         * testsuite/Rules:
10280           fix gst-register rules
10281
10282 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10283
10284         * testsuite/Rules:
10285           use versioned gst-register
10286
10287 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10288
10289         * docs/libs/gstreamer-libs-sections.txt:
10290           remove </SUBSECTION>
10291         * gst/gstplugin.c:
10292         * gst/gstregistry.c: (gst_registry_add_plugin):
10293         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10294         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10295           add debugging and fix some comment blocks
10296
10297 2004-03-15  Johan Dahlin  <johan@gnome.org>
10298
10299         * *.h: Revert indent changes.
10300         
10301 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10302
10303         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10304           g_error_free the g_error
10305         * tools/gst-feedback-m.m:
10306           check for other versions of gstreamer
10307         * tools/gst-indent:
10308           use sh, not bash
10309
10310 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10311
10312         * tools/gst-register.c: do not spill paths when registries are not
10313           writable, until we fix the "user running gst-register" case.
10314
10315 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10316
10317         * *.c, *.h: commit of gst-indent run on core
10318
10319 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10320
10321         * tools/gst-indent:
10322         * tools/Makefile.am:
10323           add our indentation style as a script
10324
10325 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10326
10327         * po/sr.po:
10328         * po/LINGUAS:
10329           added Serbian translation
10330
10331 2004-03-13  Benjamin Otte  <otte@gnome.org>
10332
10333         * gst/gstelement.c:
10334           add documentation note about gst_element_found_tags_for_pad not
10335           being usable in getfunctions. (see #137042)
10336
10337 2004-03-12  David Schleef  <ds@schleef.org>
10338
10339         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10340         change API right now!  Readd gst_caps_is_simple() macro.
10341         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10342         uninitialized variable.  I'd bet this caused crashes.
10343         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10344
10345 2004-03-12  Johan Dahlin  <johan@gnome.org>
10346
10347         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10348         * gst/gstcaps.h: Clean up
10349
10350         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10351         _gst_caps_initalize()
10352
10353         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10354         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10355
10356         * gst/gststructure.c (gst_structure_get_type): Ditto
10357
10358         * gst/gststructure.h: Ditto
10359         
10360 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10361
10362         * gst/gstqueue.c: (gst_queue_init):
10363           Reset default max. values in queues. Reason is simply to avoid
10364           braindead use. If you want wider values, use the properties. The
10365           default is supposed to always work. Wider values would make this
10366           beast a memory hog by default (250 full-PAL RGB32 video frames?
10367           That's 440 MB! No thank you).
10368
10369 2004-03-10  David Schleef  <ds@schleef.org>
10370
10371         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10372         were found.  (bug #136793)
10373
10374 2004-03-10  Johan Dahlin  <johan@gnome.org>
10375
10376         * gst/schedulers/gstoptimalscheduler.c
10377         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10378         links to elements within the same group, so we can finally remove
10379         that annoying warning. Refactor the code a little bit
10380         (group_dec_links_for_element): Split out
10381
10382 2004-03-09  David Schleef  <ds@schleef.org>
10383
10384         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10385         (bug #134863)
10386
10387 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10388
10389         * configure.ac: first bug fix due to major/minor bump
10390
10391 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10392
10393         * configure.ac: bump nano to 1
10394
10395 === release 0.7.6 ===
10396
10397 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10398
10399         * NEWS:
10400         * RELEASE:
10401         * configure.ac:
10402           releasing 0.7.6, "Almost"
10403         * po/fr.po:
10404         * po/nl.po:
10405         * tools/Makefile.am:
10406         * tools/gst-feedback-m.m:
10407           unversioned source
10408
10409 2004-03-09  Johan Dahlin  <johan@gnome.org>
10410
10411         Reviewed by: Thomas Vander Stichele
10412
10413         * gst/gstelement.c (gst_element_class_init): register second
10414         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10415         language bindings can (de)marshall correctly.
10416
10417         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10418
10419         * gst/gsterror.c (gst_g_error_get_type): New function
10420
10421         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10422         with VOID:OBJECT,OBJECT,STRING 
10423
10424 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10425
10426         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10427         Free a leaked g_timer on early returns.
10428
10429 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10430
10431         * docs/pwg/advanced-types.xml:
10432           Add cinepak description.
10433
10434 2004-03-07  David Schleef  <ds@schleef.org>
10435
10436         * docs/random/mimetypes:  Added cinepak description
10437
10438 2004-03-07  Andy Wingo  <wingo@pobox.com>
10439
10440         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10441
10442         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10443         there are no links to other groups when a group is destroyed.
10444         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10445         removed from a group, make sure the link count to elements linked
10446         to other pads is appropriately decremented. This really fixes
10447         #135672.
10448
10449         The 1.60->1.61 patch has been reapplied in light of this fix.
10450
10451         * gst/gstelement.c (gst_element_dispose): Really protect against
10452         multiple invocations this time.
10453
10454 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10455
10456         * docs/gst/gstreamer-sections.txt:
10457         * docs/gst/tmpl/gsttag.sgml:
10458           remove some deprecated functions, document some existing ones
10459         * gst/gsttag.c: (gst_tag_get_flag):
10460         * gst/gsttag.h:
10461           add accessor function
10462
10463 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10464
10465         * docs/gst/gstreamer-sections.txt:
10466         * docs/gst/tmpl/gsttag.sgml:
10467         * docs/gst/tmpl/gstxml.sgml:
10468         * gst/gsttag.c: (gst_tag_get_flag):
10469         * gst/gsttag.h:
10470
10471 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10472
10473         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10474         leak
10475
10476 2004-03-05  David Schleef  <ds@schleef.org>
10477
10478         * REQUIREMENTS: Add bison and flex.
10479         * configure.ac: Fix comment about bison.
10480         * docs/random/ds/0.9-suggested-changes: yer ma
10481         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10482
10483 2004-03-05  Benjamin Otte  <otte@gnome.org>
10484
10485         * gst/gstelement.c: (gst_element_error_full):
10486           revert recent recursive state changing commit - messing with other
10487           elements' states is evil and should be done by apps only.
10488
10489 2004-03-05  Benjamin Otte  <otte@gnome.org>
10490
10491         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10492           check for empty intersection instead of NULL caps
10493         (gst_element_get_compatible_pad_filtered):
10494           remove old workaround that is only a bug nowadays
10495
10496 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10497
10498         * gst/gstelement.c: (gst_element_error_full):
10499           make elements try to recursively change state to PAUSED on all
10500           parents after an error to suppress ensuing warnings
10501         * gst/parse/grammar.y:
10502           make it check if it was able to sync the state, and throw an error
10503           if not, so stuff like
10504           oggdemux ! vorbisdec ! osssink gets caught
10505
10506 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10507
10508         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10509           it contains lib64; use AS_AC_EXPAND to handle it properly
10510
10511 2004-03-05  David Schleef  <ds@schleef.org>
10512
10513         * gst/gstcpuid_i386.s:  Remove unused code
10514         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10515         (gst_getbits_newbuf): Remove MMX code
10516         * libs/gst/getbits/getbits.h: Remove MMX code
10517
10518 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10519
10520         * debian/.cvsignore:
10521         * debian/README.Debian:
10522         * debian/changelog:
10523         * debian/control:
10524         * debian/control.in:
10525         * debian/copyright:
10526         * debian/gstreamer-core-libs-dev.files:
10527         * debian/gstreamer-core-libs.files:
10528         * debian/gstreamer-core.files:
10529         * debian/gstreamer-core.postinst:
10530         * debian/gstreamer-core.postrm:
10531         * debian/gstreamer-doc.files:
10532         * debian/gstreamer-doc.links:
10533         * debian/gstreamer-doc.lintian:
10534         * debian/gstreamer-runtime.files:
10535         * debian/gstreamer-runtime.manpages:
10536         * debian/gstreamer-runtime.postinst:
10537         * debian/gstreamer-runtime.postrm:
10538         * debian/gstreamer-tools.files:
10539         * debian/gstreamer-tools.manpages:
10540         * debian/libgstreamer-dev.files:
10541         * debian/libgstreamer0.4.1.files:
10542         * debian/libgstreamerVERSION.files:
10543         * debian/rules:
10544         Debian package info not maintained here.
10545
10546 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10547
10548         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10549         * gst/gstbin.c: (gst_bin_class_init):
10550         * gst/gstelement.c: (gst_element_class_init):
10551         * gst/gstindex.c: (gst_index_class_init):
10552         * gst/gstobject.c: (gst_object_class_init),
10553         (gst_signal_object_class_init):
10554         * gst/gstpad.c: (gst_pad_template_class_init):
10555         * gst/gstregistry.c: (gst_registry_class_init):
10556         * gst/gsturi.c: (gst_uri_handler_base_init):
10557         * gst/gstxml.c: (gst_xml_class_init):
10558         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10559         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10560           make all signal names use dashes instead of underscore
10561
10562 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10563
10564         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10565
10566 2004-03-03  Benjamin Otte  <otte@gnome.org>
10567
10568         * gst/schedulers/gstoptimalscheduler.c:
10569           revert last commit by Andy Wingo. It causes segfaults on unreffing
10570           in Rhythmbox. (see bug #135672)
10571
10572 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10573
10574         * po/fr.po: fix typo
10575
10576 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10577
10578         * tools/gst-inspect.c: (main): 
10579         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10580
10581 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10582
10583         * configure.ac:
10584           get GLIB_ONLY and POPT flags for the nonversioned binaries
10585         * tools/Makefile.am:
10586           use them
10587
10588 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10589
10590         * gst/gst.c: (init_post):
10591           change so that GST_REGISTRY now is where the global registry gets
10592           saved, since that is where plugins now get attached to first, and
10593           spilled over to the user registry.  Note that in the case of using
10594           GST_REGISTRY env var, we don't want to affect any real registries
10595           beyond the one given by this var, and thus we don't set a user
10596           registry to spill to.  So make sure GST_REGISTRY is writable.
10597
10598 2004-03-01  David Schleef  <ds@schleef.org>
10599
10600         * AUTHORS:  Added some names.  Add yourself if you're missing.
10601
10602 2004-03-01  David Schleef  <ds@schleef.org>
10603
10604         * MAINTAINERS: Add
10605
10606 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10607
10608         * configure.ac:
10609           remove whitespace
10610         * docs/gst/tmpl/gstbuffer.sgml:
10611         * docs/gst/tmpl/gstdata.sgml:
10612         * docs/gst/tmpl/gstreamer-unused.sgml:
10613         * docs/gst/tmpl/gstxml.sgml:
10614           doc update
10615         * docs/manuals.mak:
10616           add a FIXME
10617         * docs/pwg/intro-preface.xml:
10618         * docs/pwg/pwg.xml:
10619           remove GNOME
10620         * gst/gst.c: (init_post):
10621           try GST_PLUGIN_PATH paths for the _global_registry first
10622         * gst/gstelement.h:
10623           add the error message as well, otherwise (null) debug info doesn't
10624           make much sense
10625         * tools/gst-register.c: (main):
10626           spill paths to next registry if this registry is not writable
10627         * po/fr.po:
10628         * po/nl.po:
10629           translation updates
10630
10631 2004-03-01  Johan Dahlin  <johan@gnome.org>
10632
10633         * gst/gstbuffer.c (_gst_buffer_initialize): 
10634         * gst/gstdata.c (gst_data_get_type): 
10635         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10636         instead of ref, since some applications that uses GBoxed
10637         routines depends on a function that actually returns a copy.
10638
10639 2004-02-27  Benjamin Otte  <otte@gnome.org>
10640
10641         * gst/gstbuffer.h:
10642           remove gst_buffer_free, use gst_data_unref
10643         * gst/gstdata.c: (gst_data_get_type):
10644           use refcounting in GstData GBoxed registration
10645         * gst/gstdata.h:
10646           remove gst_data_free, use gst_data_unref
10647
10648 2004-02-27  Johan Dahlin  <johan@gnome.org>
10649
10650         * gst/gstdata.c (gst_data_get_type): New function, register
10651         GstData as a GBoxed type.
10652
10653         * gst/gstdata.h (GST_TYPE_DATA): New macro
10654
10655 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10656
10657         * Makefile.am:
10658         * gstreamer.spec.in:
10659           put back RELEASE
10660         * gst/Makefile.am:
10661           clean up non-disting of built files
10662         * testsuite/debug/commandline.c:
10663           test fix for option rename
10664
10665 2004-02-26  David Schleef  <ds@schleef.org>
10666
10667         * configure.ac:  We don't really need glib-2.3.  Also remove
10668         some unneeded checks for library functions.
10669         * gst/Makefile.am:  Instead, we need to not dist files created
10670         by glib-genmarshal.
10671
10672 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10673
10674         * configure.ac:
10675           bump glib required version to 2.3.0 for g_value_takes_boxed
10676
10677  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10678
10679         * common/m4/gst-docs.m4
10680         change flavour text from enable to disable as enable is our default
10681         closes bug Bug 135304
10682
10683 === release 0.7.5 ===
10684  
10685  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10686  
10687         * NEWS:
10688           instate NEWS file
10689         * Makefile.am:
10690         * gstreamer.spec.in:
10691         * RELEASE:
10692           put back release
10693         * configure.ac:
10694         * docs/random/release:
10695           more updates
10696
10697 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10698
10699         * gst/gsttag.c: (_gst_tag_initialize):
10700         * po/fr.po:
10701         * po/nl.po:
10702           remove hyphen from codec tags
10703
10704 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10705
10706         * gst/parse/Makefile.am:
10707           fix dependency so that a make from a clean build works the first
10708           time
10709
10710 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10711
10712         * docs/random/release:
10713           update release strategy
10714         * po/fr.po:
10715           auto-update po file
10716         * po/nl.po:
10717           update dutch translation
10718
10719 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10720
10721         * docs/manual/debugging.xml:
10722         fix manual for new debugging system
10723
10724 2004-02-25  Andy Wingo  <wingo@pobox.com>
10725
10726         * gst/gstpad.c (gst_pad_link_prepare): Re-add
10727         gst_pad_link_prepare. Please email the list with specific reasons
10728         for reverting.
10729
10730 2004-02-24  Andy Wingo  <wingo@pobox.com>
10731
10732         * gst/gstelement.c (gst_element_dispose): Protect against multiple
10733         invocations.
10734
10735         * gst/schedulers/gstoptimalscheduler.c:
10736         I added a mess of prototypes at the top of the file by way of
10737         documentation. Some of the operations on chains and groups were
10738         re-organized.
10739
10740         (create_group): Added a type argument so if the group is enabled,
10741         the setup_group_scheduler knows what to do.
10742         (group_elements): Added a type argument here, too, to be passed on
10743         to create_group.
10744         (group_element_set_enabled): If an unlinked PLAYING element is
10745         added to a bin, we have to create a new group to hold the element,
10746         and this function will be called before the group is added to the
10747         chain. Thus we have a valid case for group->chain==NULL. Instead
10748         of calling chain_group_set_enabled, just set the flag on the group
10749         (the chain's status will be set when the group is added to it).
10750         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
10751         Setup the group scheduler when the group is enabled, not
10752         specifically when an element goes PAUSED->PLAYING. This means
10753         PLAYING elements can be added, linked, and scheduled into a
10754         PLAYING pipeline, as was intended.
10755         (add_to_group): Don't ref the group twice. I don't know when this
10756         double-ref got in here. Removing it has the potential to cause
10757         segfaults if other parts of the scheduler are buggy. If you find
10758         that the scheduler is segfaulting for you, put in an extra ref
10759         here and see if that hacks over the underlying issue. Of course,
10760         then find out what code is unreffing a group it doesn't own...
10761         (create_group): Make the extra refcount floating, and remove it
10762         after adding the element. This means that...
10763         (unref_group): Destroy when the refcount reaches 0, not 1, like
10764         every other refcounted object in the known universe.
10765         (remove_from_group): When a group becomes empty, set it to be not
10766         active, and remove it from its chain. Don't unref it again,
10767         there's no floating reference any more.
10768         (destroy_group): We have to remove the group from the chain in
10769         remove_from_group (rather than here) to break refcounting cycles
10770         (the chain always has a ref on the group). So assert that
10771         group->chain==NULL.
10772         (ref_group_by_count): Removed, it was commented out anyway.
10773         (merge_chains): Use the remove_from_chain and add_to_chain
10774         primitives to do the reparenting, instead of rolling our own
10775         implementation.
10776         (add_to_chain): The first non-disabled group in the chain's group
10777         list will be the entry point for the chain. Because buffers can
10778         accumulate in loop elements' peer bufpens, we preferentially
10779         schedule loop groups before get groups to avoid unnecessary
10780         execution of get-based groups when the bufpens are already full.
10781         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
10782         (get_group_schedule_function): Ditto.
10783         (loop_group_schedule_function): Ditto.
10784         (gst_opt_scheduler_loop_wrapper): Ditto.
10785         (gst_opt_scheduler_iterate): Ditto.
10786
10787         I understand the opt scheduler now, yippee!
10788
10789         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
10790         (gst_pad_get_name, gst_pad_set_chain_function) 
10791         (gst_pad_set_get_function, gst_pad_set_event_function) 
10792         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
10793         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
10794         (gst_pad_set_query_function, gst_pad_get_query_types) 
10795         (gst_pad_get_query_types_default) 
10796         (gst_pad_set_internal_link_function) 
10797         (gst_pad_set_formats_function, gst_pad_set_link_function) 
10798         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
10799         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
10800         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
10801         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
10802         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
10803         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
10804         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
10805         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
10806         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
10807         (gst_pad_event_default_dispatch, gst_pad_event_default) 
10808         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
10809         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
10810         (gst_pad_get_formats_default, gst_pad_get_formats): Better
10811         argument checks, and some doc fixes.
10812
10813         (gst_pad_custom_new_from_template): Um, does anyone
10814         use these functions? Actually make a custom pad instead of a
10815         normal one.
10816         (gst_pad_try_set_caps): Transpose some checks.
10817         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
10818         the pad is in negotiation.
10819         (gst_pad_try_relink_filtered): Use pad_link_prepare.
10820         
10821         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
10822
10823         * gst/gstelement.h: 
10824         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
10825         on the list.
10826
10827 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10828
10829         * gst/gstbin.c: (gst_bin_add):
10830           add error for not being able to add elements
10831
10832 2004-02-22  Julien MOUTTE <julien@moutte.net>
10833
10834         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
10835         audio-codec and video-codec.
10836
10837 2004-02-22  Benjamin Otte  <otte@gnome.org>
10838
10839         reported by: Padraig O'Briain <padraig.obriain@sun.com>
10840
10841         * autogen.sh:
10842           replace test -e with test -x for mkinstalldirs to be more portable.
10843           (fixes #134816)
10844
10845 2004-02-22  Benjamin Otte  <otte@gnome.org>
10846
10847         * gst/gstpad.c:
10848           revert last patch from Andy, it makes gst_pad_can_link_filtered much
10849           too noisy
10850         * gst/gsttag.c: (_gst_tag_initialize):
10851         * gst/gsttag.h:
10852           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
10853         * libs/gst/control/dparam.c: (gst_dparam_attach):
10854         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
10855           check that types for attached dparams match
10856
10857 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10858
10859         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10860         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10861         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10862           fix errors
10863
10864 2004-02-20  Andy Wingo  <wingo@pobox.com>
10865
10866         * gst/gstbin.c:
10867         * gst/gstbuffer.c:
10868         * gst/gstplugin.c:
10869         * gst/registries/gstxmlregistry.c: 
10870         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
10871
10872         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
10873         (gst_element_add_pad): DEBUG->INFO, some fixes.
10874         (gst_element_get_compatible_pad_template): Just see if the
10875         templates' caps intersect, not if one is a strict subset of the
10876         other. This conforms more to what gst_pad_link_intersect() does.
10877         (gst_element_class_add_pad_template): Don't memcpy the pad
10878         template, just ref it.
10879         (gst_element_get_compatible_pad_filtered): Clean up debug messages
10880
10881         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
10882         (gst_pad_link_filtered): Debug changes.
10883         (gst_pad_link_prepare): New function, consolidated from
10884         can_link_filtered and link_filtered.
10885
10886         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
10887         look more like that of the functions in gstelement.c
10888
10889         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
10890         object, and return the empty string if object is NULL.
10891
10892         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
10893         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
10894         LOG, not DEBUG. We still get flex info on debug.
10895
10896         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
10897         debug string more verbose.
10898         (plugin_times_older_than): DEBUG->LOG.
10899
10900 2004-02-20  Julien MOUTTE <julien@moutte.net>
10901
10902         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
10903         will emit found_tag for each stream they demux with the codec.
10904
10905 2004-02-20  Benjamin Otte  <otte@gnome.org>
10906
10907         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
10908           copy navigation event correctly. Check freeing tag lists. 
10909         * gst/gstthread.c: (gst_thread_change_state):
10910           don't abort() on state changing mess - it might happen because of
10911           bugs.
10912         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
10913           use boxed functions
10914         * gst/gstvalue.h:
10915           fix GST_VALUE_HOLDS_CAPS
10916
10917 2004-02-19  David Schleef  <ds@schleef.org>
10918
10919         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
10920         and use it for GST_FUNCTION.  (bug #134750)
10921
10922 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10923
10924         * po/fr.po:
10925         * po/nl.po:
10926           updating translations
10927
10928 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10929
10930         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
10931
10932 2004-02-18  kost@imn.htwk-leipzig.de
10933
10934         reviewed by: David Schleef  <ds@schleef.org>
10935
10936         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
10937         for libgstcontrol.
10938
10939 2004-02-18  David Schleef  <ds@schleef.org>
10940
10941         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10942         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10943         (gst_dpsmooth_new): Additional fixes to get double dparams working.
10944         * tools/gst-inspect.c: (print_element_info): Support dumping of
10945         double dparam information.
10946
10947 2004-02-17  David Schleef  <ds@schleef.org>
10948
10949         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10950         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
10951         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
10952         Use GST_TYPE_CAPS in signal prototype.
10953         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
10954         Convert GST_TYPE_CAPS to boxed.
10955         * gst/gstelement.c: (gst_element_class_init):
10956         Use GST_TYPE_TAG_LIST in signal prototype.
10957         * gst/gstindex.c: (gst_index_class_init):
10958         * gst/gstindex.h:
10959         Add GST_TYPE_INDEX_ENTRY type.
10960         * gst/gstmarshal.list:
10961         Add necessary marshal types.
10962         * gst/gstpad.c: (gst_real_pad_class_init),
10963         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
10964         (gst_pad_recover_caps_error):
10965         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
10966         * gst/gststructure.c: (_gst_structure_initialize),
10967         (gst_structure_copy), (_gst_structure_copy_conditional):
10968         * gst/gststructure.h:
10969         Convert GST_TYPE_STRUCTURE to boxed.
10970         * gst/gsttag.c: (gst_tag_list_get_type):
10971         * gst/gsttag.h:
10972         Add GST_TYPE_TAG_LIST type.
10973
10974 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10975
10976         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
10977         to what we agreed with david.
10978         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
10979
10980 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10981
10982         * po/nl.po: update translation
10983
10984 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10985
10986         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10987           throw an error if spider is trying to play a mime type there is
10988           no decoder for
10989         * po/POTFILES.in:
10990           add gst/autoplug/gstspider.c for translation
10991
10992 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10993
10994         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
10995         silently when the pad is negotiating.
10996
10997 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10998
10999         * docs/faq/Makefile.am:
11000           add script to run gstreamer uninstalled 
11001         * docs/faq/faq.xml:
11002         * docs/faq/developing.xml:
11003         * docs/faq/gst-uninstalled:
11004           extract script to run gstreamer uninstalled
11005         * docs/manuals.mak:
11006           add EXTRA_SOURCES variable for Makefile.am's to set to
11007           use additional SOURCE files for the doc build
11008
11009 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11010
11011         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11012
11013 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11014
11015         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11016         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11017         an error was thrown by osssink. Basically a state change failure for
11018         an element in a different scheduling group was considered as
11019         successful, which means that caps nego was going on and weird stuff
11020         happened. Like I wrote in the comment there, if someone wants to
11021         revert that please drop me a mail explaining why because I really see
11022         no point in keeping that broken behaviour there.
11023         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11024         be empty, we then return NULL which will trigger a nice error when 
11025         pulling from the pad.
11026
11027 2004-02-13  David Schleef  <ds@schleef.org>
11028
11029         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11030         (gst_dparam_get_property), (gst_dparam_set_property),
11031         (gst_dparam_do_update_default):
11032         * libs/gst/control/dparam.h:
11033         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11034         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11035         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11036         (gst_dpsmooth_do_update_double):
11037         * libs/gst/control/dparam_smooth.h:
11038         * libs/gst/control/dparammanager.c:
11039         (gst_dpman_inline_direct_update):
11040         Add support for double dparams.
11041
11042 2004-02-13  David Schleef  <ds@schleef.org>
11043
11044         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11045         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11046
11047 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11048
11049         reviewed by: David Schleef  <ds@schleef.org>
11050
11051         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11052         (gst_fdsrc_init), (gst_fdsrc_set_property),
11053         (gst_fdsrc_get_property), (gst_fdsrc_get):
11054         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11055         and sends an EOS event if file descriptor reading times out.
11056
11057 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11058
11059         * configure.ac:
11060           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11061
11062 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11063
11064         * configure.ac: pass required libxml version as argument
11065         (bug reported by Christophe Fergeau)
11066
11067 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11068   
11069         * docs/gst/gstreamer-docs.sgml:
11070         * docs/gst/tmpl/gstxml.sgml:
11071         * docs/libs/gstreamer-libs-docs.sgml:
11072           version API docs
11073
11074 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11075
11076         * gst/gstinfo.c:
11077         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11078         (gst_registry_pool_feature_filter):
11079         * gst/gstthread.c: (gst_thread_class_init):
11080         * gst/gstvalue.c:
11081           add includes exposed by building without libxml
11082         * gst/indexers/Makefile.am:
11083           do not build fileindex when LOADSAVE disabled; we should have
11084           a better libxml check later since fileindex depends on xml, not
11085           LOADSAVE or REGISTRY
11086         * libs/gst/control/Makefile.am:
11087           link with m
11088         * tools/Makefile.am:
11089           fix wrong source code for gst-xmlinspect
11090
11091 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11092
11093         * configure.ac:
11094           fix gcov help output
11095           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11096         * docs/random/release:
11097           some updated releasing notes
11098         * gstreamer.spec.in:
11099           more updates
11100
11101 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11102
11103         * docs/faq/faq.xml:
11104         * docs/manual/manual.xml:
11105         * docs/pwg/pwg.xml:
11106         * docs/pwg/titlepage.xml:
11107           put version in documentation
11108
11109 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11110
11111         * tools/Makefile.am: fix man page installation
11112
11113 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11114
11115         * configure.ac:
11116           don't check for libxml when load/save and registry disabled (#105844)
11117         * gstreamer.spec.in:
11118           sync with fedora candidate spec
11119
11120 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11121
11122         * po/fr.po:
11123         * po/nl.po:
11124           replace multidisksrc with multifilesrc
11125
11126 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11127
11128         * po/POTFILES.in:
11129           update to multidisksrc => multifilesrc file renaming (#134145)
11130
11131 2004-02-11  David Schleef  <ds@schleef.org>
11132
11133         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11134         * docs/gst/tmpl/gstpadtemplate.sgml: same
11135         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11136         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11137         fixing dance.
11138         * gst/gstutils.c: Remove disabled code that uses GstProps.
11139         * gst/registries/gstxmlregistry.h: same
11140         * docs/random/ds/0.9-suggested-changes: random notes
11141
11142 2004-02-11  kost@imn.htwk-leipzig.de
11143
11144         reviewed by: David Schleef  <ds@schleef.org>
11145
11146         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11147         initialisation of clock (bug #134128)
11148
11149 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11150
11151         * configure.ac:
11152         * gst/elements/Makefile.am:
11153         * gst/elements/gstelements.c:
11154         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11155         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11156         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11157         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11158         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11159         * gst/elements/gstmultifilesrc.h:
11160           rename multidisksrc to multifilesrc (part of #122200)
11161
11162 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11163
11164         * docs/manuals.mak:
11165           fix automake complaints
11166         * gst-element-check.m4:
11167           fix unquotedness
11168
11169 2004-02-11  David Schleef  <ds@schleef.org>
11170
11171         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11172         * gst/gstatomic_impl.h: Disable sparc implementation.
11173
11174 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11175
11176         * gst-element-check.m4:
11177           fix underquoted macros as reported by automake 1.8.x (#133800)
11178         * configure.ac:
11179           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11180           by autopoint (fixes #132996)
11181
11182 2004-02-10  Andy Wingo  <wingo@pobox.com>
11183
11184         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11185         way to do inheritance.
11186         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11187         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11188         Routine docs.
11189         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11190         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11191         doc.
11192         (gst_pad_unlink, gst_pad_is_linked): Docs.
11193         (gst_pad_renegotiate): A brief description of capsnego.
11194         (gst_pad_try_set_caps): Document.
11195         (gst_pad_try_set_caps_nonfixed): Document.
11196         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11197         (gst_pad_set_parent): Deprecated (although not out of the API).
11198         (gst_pad_get_parent): Deprecated, although many plugins use this.
11199         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11200         are private and will go away in 0.9.
11201         (gst_pad_perform_negotiate): Doc.
11202         (gst_pad_link_unnegotiate): I think this is meant to be static.
11203         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11204         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11205         (gst_pad_get_peer): Doc updates.
11206         (gst_pad_caps_change_notify): Doc.
11207         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11208         (gst_ghost_pad_new): Doc fixes.
11209
11210         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11211         (gst_object_check_uniqueness): 
11212
11213         * gst/gstelement.c (gst_element_add_pad) 
11214         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11215         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11216         (gst_element_get_static_pad, gst_element_get_pad_list) 
11217         (gst_element_class_get_pad_template_list) 
11218         (gst_element_class_get_pad_template): Work on the docs.
11219         (gst_element_get_pad_template_list): Uses the class method.
11220         (gst_element_get_compatible_pad_template): Docs, and consolidate
11221         some test conditions. 
11222         (gst_element_get_pad_from_template): New static function.
11223         (gst_element_request_compatible_pad): Docs, and work with
11224         non-request compatible templates. 
11225         (gst_element_get_compatible_pad_filtered): Docs and remove
11226         redundant checks.
11227         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11228         (gst_element_link_filtered, gst_element_link_many) 
11229         (gst_element_link, gst_element_link_pads) 
11230         (gst_element_unlink_many): Docs.
11231
11232 2004-02-05  Andy Wingo  <wingo@pobox.com>
11233
11234         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11235         s/pointer/boxed/.
11236
11237         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11238
11239         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11240         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11241         with the type=GST_TYPE_CAPS. This allows language bindings to know
11242         what kind of data they're dealing with.
11243
11244         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11245         to NULL when g_value_init is called. GstCaps, which rolls its own
11246         type implementation, now does the same instead of allocating empty
11247         caps.
11248         (_gst_caps_initialize, _gst_caps_collect_value,
11249         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11250         table methods. This allows G_VALUE_COLLECT to work.
11251
11252 2004-02-05  Andy Wingo  <wingo@pobox.com>
11253
11254         * configure.ac:
11255         * testsuite/Makefile.am (SUBDIRS): 
11256         * testsuite/ghostpads/Makefile.am: 
11257         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11258
11259         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11260         These two routines are the only ones that set
11261         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11262         pad template. They should be made static, depending on ABI needs.
11263         (gst_real_pad_dispose): Handle the case of ghost pads without a
11264         parent. Assert after dealing with ghost pads that the ghost pad
11265         list is empty.
11266         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11267         set after creation.
11268         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11269         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11270         functions. set_property will call add_ghost_pad/remove_ghost_pad
11271         as appropriate.
11272         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11273
11274         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11275         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11276         (gst_element_remove_pad): Handle ghost pads as well.
11277         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11278         depending on API-stability needs).
11279
11280 2004-02-05  Andy Wingo  <wingo@pobox.com>
11281
11282         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11283         of course they're const
11284
11285 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11286
11287         * tools/Makefile.am:
11288         * tools/gst-feedback:
11289         * tools/gst-feedback-0.7:
11290           make gst-feedback versioned too for consistency
11291
11292 2004-02-11  David Schleef  <ds@schleef.org>
11293
11294         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11295         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11296
11297 2004-02-10  Julien MOUTTE <julien@moutte.net>
11298
11299         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11300         the structure does not contain a valid tag list. Adding a safety check
11301         to remove a noisy warning in that case.
11302
11303 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11304
11305         * gst/gst.c: fix name to be in line with others
11306
11307 2004-02-09  Julien MOUTTE <julien@moutte.net>
11308
11309         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11310         not shout that loud when len is 0. Just return 0 silently.
11311
11312 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11313
11314         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11315         because data_unref has one and I prefer the debug to be symetric.
11316         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11317         were refed when added to the queue and unrefed only once when the queue
11318         was flushed. Now the flush handler unref the buffers two times : first
11319         unref for the ref added when pushing in the queue's tail and second
11320         unref to destroy the flushed buffer.
11321
11322 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11323
11324         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11325
11326 2004-02-06  David Schleef  <ds@schleef.org>
11327
11328         * docs/random/ds/0.9-suggested-changes: Random ramblings
11329         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11330         to int before printing.
11331         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11332         * gst/parse/parse.l: same.  See bug #129600
11333
11334 2004-02-06  David Schleef  <ds@schleef.org>
11335
11336         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11337         (gst_index_add_entry), (gst_index_add_associationv),
11338         (gst_index_add_association): Add gst_index_add_associationv()
11339         and clean up gst_index_add_association(). #127133
11340
11341 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11342
11343         * autogen.sh: check out common with right tag if CVS/Tag exists
11344
11345 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11346
11347         * testsuite/ghostpads/ghostpads.c: (main):
11348           fix testsuite from segfaulting
11349
11350 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11351
11352         * Makefile.am: add release target
11353         * configure.ac: bump nano to 1
11354         * docs/random/release:
11355
11356 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11357
11358         * gst/gstcaps.h:
11359         * gst/gstelement.c: (gst_element_base_class_init),
11360         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11361         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11362         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11363         (gst_real_pad_dispose):
11364         * gst/gststructure.c: (gst_structure_free),
11365         (gst_structure_from_string):
11366           put reverted patch back in
11367         * gst/gstelement.c: (gst_element_remove_pad):
11368           free explicit caps if they're set
11369         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11370           copy the structure when fixating
11371
11372 2004-02-05  David Schleef  <ds@schleef.org>
11373
11374         * gst/gstmarshal.list:
11375         * gst/gstpad.c: (gst_real_pad_class_init),
11376         (_gst_real_pad_fixate_accumulator):
11377         Revert POINTER->BOXED change in signal marshaller.
11378
11379 === release 0.7.4 ===
11380                                                                                 
11381 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11382                                                                                 
11383         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11384         * configure.ac: changed for release
11385
11386 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11387
11388         * gstreamer.spec.in:
11389           bump required version of gtk-doc
11390
11391 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11392
11393         * gst/gstcaps.h:
11394         * gst/gstelement.c: (gst_element_base_class_init),
11395         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11396         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11397         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11398         (gst_real_pad_dispose):
11399         * gst/gststructure.c: (gst_structure_free),
11400         (gst_structure_from_string):
11401           revert patch that breaks applications, reapply after release
11402           to get this fixed properly
11403
11404 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11405
11406         * gst/gsttag.c: (_gst_tag_initialize):
11407         * gst/gsttag.h:
11408           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11409
11410 2004-02-04  David Schleef  <ds@schleef.org>
11411
11412         Fix some memleaks:
11413         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11414         (gst_spider_plug_from_srcpad):
11415         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11416
11417 2004-02-04  David Schleef  <ds@schleef.org>
11418
11419         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11420         a GstRealPad before accessing its structure members.
11421
11422 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11423
11424         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11425         (gst_clock_get_speed):
11426         * gst/gstclock.h:
11427           reset padding, remove unused fields
11428
11429 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11430
11431         * gst/autoplug/gstspideridentity.c:
11432         (gst_spider_identity_sink_loop_type_finding):
11433           use get_allowed_caps, not get_caps (fixes #132519)
11434         * gst/elements/gsttypefind.c: (stop_typefinding):
11435           use correct order when sending buffers and seeking
11436
11437 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11438
11439         * configure.ac:
11440         * gst/gstelement.h:
11441         * gst/gstpad.h:
11442         * gst/gstqueue.h:
11443           upgrade libtool CURRENT, reset padding
11444
11445 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11446
11447         * configure.ac:
11448           bump to prerelease
11449           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11450
11451 2004-02-04  David Schleef  <ds@schleef.org>
11452
11453         * docs/random/ds/0.9-suggested-changes: random notes
11454         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11455         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11456         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11457         expansion.
11458         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11459         (gst_filesink_get_query_types): same
11460         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11461         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11462         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11463         to use new GST_PTR_FORMAT.
11464         * gst/gstelement.h: deprecate function factory macros
11465         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11466         These are our last variadic macros that can't be replaced with
11467         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11468         attempting to deprecate gst_element_clock_wait().
11469         * gst/gstevent.h: same
11470         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11471         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11472         * gst/gstpad.h: deprecate function factory macros similar to above.
11473
11474 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11475
11476         * configure.ac:
11477         * tools/Makefile.am:
11478         * tools/gst-run.c: (popt_callback), (hash_print_key),
11479         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11480         (get_candidates), (main):
11481           add new source file to generate non-versioned wrapper binaries
11482           for our tools.
11483
11484 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11485
11486         * gst/gstevent.c: (_gst_event_free):
11487           actually break; inside the switch statement
11488         * gst/parse/grammar.y:
11489           fix memleak where GValues weren't unset
11490
11491 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11492
11493         * gst/gststructure.c: (gst_structure_from_string):
11494           fix huge memleak
11495         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11496         (new_entry), (gst_type_find_element_chain):
11497         * gst/gstelement.c: (gst_element_base_class_init),
11498         (gst_element_class_set_details):
11499         * gst/gstpad.c: (gst_pad_can_link_filtered):
11500           fix smaller memleaks
11501         * gst/gstpad.c: (gst_real_pad_dispose):
11502           check that explicit caps are gone
11503         * gst/gststructure.c: (gst_structure_free):
11504           actually free the structure
11505         * gst/gstelement.c: (gst_element_clear_pad_caps):
11506           unset explicit caps
11507
11508 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11509
11510         * tools/Makefile.am:
11511           use AM_CFLAGS since all the CFLAGS are the same
11512           use AM_LDFAGS
11513
11514 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11515
11516         * docs/manual/gnome.xml:
11517           expand example a little
11518         * gst/gst.c: (gst_init_with_popt_table),
11519         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11520           make sure popt option displays are done with right textdomain
11521           use GstPoptOption type
11522         * gst/gst.h:
11523           create GstPoptOption type
11524
11525 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11526
11527         * gst/gsterror.c: (_gst_stream_errors_init):
11528         * gst/gsterror.h:
11529           adding error type for no codec
11530         * po/POTFILES.in:
11531           add gst-inspect
11532         * po/nl.po:
11533           update dutch translation
11534         * tools/gst-inspect.c: (print_element_list), (main):
11535           do proper internationalization
11536         * tools/gst-launch.c: (idle_func):
11537           remove commented out function call
11538
11539 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11540
11541         * docs/README:
11542           add some error fixing notes
11543         * docs/gst/gstreamer-sections.txt:
11544           remove double entries
11545         * docs/gst/tmpl/gstbin.sgml:
11546         * docs/gst/tmpl/gstclock.sgml:
11547           remove override
11548         * docs/gst/tmpl/gstelement.sgml:
11549         * docs/gst/tmpl/gstindex.sgml:
11550         * docs/gst/tmpl/gstobject.sgml:
11551         * docs/gst/tmpl/gstpadtemplate.sgml:
11552         * docs/gst/tmpl/gstreamer-unused.sgml:
11553         * docs/gst/tmpl/gsttag.sgml:
11554         * docs/gst/tmpl/gstthread.sgml:
11555         * docs/gst/tmpl/gstxml.sgml:
11556         * gst/gsttag.h:
11557           sync header prototypes with c decls
11558         * gst/gsttaginterface.c:
11559           fix doc headers
11560
11561 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11562
11563         * gst/parse/Makefile.am:
11564         * gst/gstobject.h:
11565           get rid of gstmarshal.h dependency. It's not needed.
11566         * gst/gst.h:
11567         * gst/elements/gstfakesink.c:
11568         * gst/elements/gstfakesrc.c:
11569         * gst/elements/gstidentity.c:
11570         * gst/gstbin.c:
11571         * gst/gstelement.c:
11572         * gst/gstindex.c:
11573         * gst/gstobject.c:
11574         * gst/gstpad.c:
11575         * gst/gstthread.c:
11576         * gst/gstxml.c:
11577         * libs/gst/control/dparam.c:
11578         * libs/gst/control/dparammanager.c:
11579           include gstmarshal.h.
11580         Fixes #132045
11581
11582 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11583
11584         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11585         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11586         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11587         * gst/elements/gstfilesrc.h:
11588           don't ref the filesrc when creating mmaped buffers. Don't keep a
11589           list of not-yet-destroyed buffers.
11590         * gst/gstbuffer.h:
11591           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11592
11593 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11594
11595         * gst/gst.c: (init_pre):
11596           remove textdomain
11597
11598 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11599
11600         * docs/pwg/advanced-events.xml:
11601         * docs/pwg/advanced-scheduling.xml:
11602         * docs/pwg/intro-basics.xml:
11603         * docs/pwg/other-manager.xml:
11604         * docs/pwg/other-nton.xml:
11605         * docs/pwg/other-ntoone.xml:
11606         * docs/pwg/other-oneton.xml:
11607         * docs/pwg/pwg.xml:
11608           All sort of documentation... Forgot what. Point is that I want this
11609           in before I leave. The 'other-*' will be the last section and will
11610           explain issues specific to these type of elements.
11611
11612 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11613
11614         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11615         (gst_filesrc_get_read):
11616           set all the values on buffers that we can
11617
11618 2004-02-02  David Schleef  <ds@schleef.org>
11619
11620         Change usage of isblah() to g_ascii_isblah() to be more locale
11621         independent.  (#133076)
11622         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11623         * gst/gstutils.c:
11624         * gst/parse/parse.l:
11625
11626 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11627
11628         reviewed by: David Schleef  <ds@schleef.org>
11629
11630         Fix memory leaks:
11631         * gst/gstcaps.c: (gst_caps_to_string):
11632         * gst/registries/gstxmlregistry.c:
11633         (gst_xml_registry_add_path_list_func),
11634         (gst_xml_registry_parse_padtemplate):
11635
11636 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11637
11638         * gst/gstelement.c: (gst_element_default_error):
11639           suffix error messages with period
11640
11641 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11642
11643         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11644         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11645         * gst/gsterror.c: (gst_error_get_message):
11646           Suffix with dots
11647         * po/fr.po:
11648         * po/nl.po:
11649           Update translation files
11650
11651 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11652
11653         * gst/autoplug/gstspideridentity.c:
11654         (gst_spider_identity_sink_loop_type_finding):
11655         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11656         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11657         (gst_filesink_close_file), (gst_filesink_handle_event),
11658         (gst_filesink_chain):
11659         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11660         (gst_filesrc_get_read), (gst_filesrc_open_file):
11661         * gst/elements/gstidentity.c: (gst_identity_chain):
11662         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11663         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11664         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11665         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11666         * gst/gsterror.c: (_gst_core_errors_init),
11667         (_gst_library_errors_init), (_gst_resource_errors_init),
11668         (_gst_stream_errors_init), (gst_error_get_message):
11669         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11670         (gst_pad_recover_caps_error), (gst_pad_pull):
11671         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11672         * gst/schedulers/gstbasicscheduler.c:
11673         (gst_basic_scheduler_chainhandler_proxy),
11674         (gst_basic_scheduler_gethandler_proxy),
11675         (gst_basic_scheduler_cothreaded_chain):
11676           Suffix error messages with period.
11677           Use (NULL) instead of NULL
11678
11679 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11680
11681         * docs/gst/tmpl/gstelement.sgml:
11682         * docs/gst/tmpl/gstxml.sgml:
11683         * gst/gstelement.c: (gst_element_error_full):
11684           add element path to error
11685
11686 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11687
11688         * docs/random/mimetypes:
11689           update raw int/float info
11690         * gst/gsttag.c: (_gst_tag_initialize):
11691         * gst/gsttag.h:
11692           add GST_TAG_ENCODER
11693
11694 2004-01-30  David Schleef  <ds@schleef.org>
11695
11696         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11697           missing (#132991)
11698
11699 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11700
11701         reviewed by Benjamin Otte 
11702           parts of the patch submitted in bug #113913
11703
11704         * configure.ac:
11705           use AC_C_INLINE. Use = instead of == with test
11706         * examples/plugins/example.c:
11707         * gst/autoplug/gstspideridentity.c:
11708         * gst/elements/gstfdsrc.c:
11709         * gst/elements/gstfilesrc.c:
11710         * gst/elements/gstidentity.c:
11711         * gst/elements/gstmultidisksrc.c:
11712         * gst/elements/gststatistics.c:
11713         * gst/gstelement.c:
11714         * gst/gstobject.c:
11715         * gst/gstpad.c:
11716         * gst/gstpipeline.c:
11717         * gst/gstthread.c:
11718           don't end enums with a comma
11719         * gst/gstindex.c: (gst_index_compare_func):
11720           do explicit casting to gint
11721         * gst/gsttrace.c: (gst_trace_text_flush):
11722           #define strsize as a macro
11723
11724 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11725
11726         * docs/README:
11727         * docs/gst/gstreamer-docs.sgml:
11728         * docs/gst/gstreamer-sections.txt:
11729         * docs/gst/tmpl/gstelement.sgml:
11730         * docs/gst/tmpl/gsterror.sgml:
11731         * docs/gst/tmpl/gstinterface.sgml:
11732         * docs/gst/tmpl/gstreamer-unused.sgml:
11733         * docs/gst/tmpl/gststructure.sgml:
11734         * docs/gst/tmpl/gsttag.sgml:
11735         * docs/gst/tmpl/gsttaginterface.sgml:
11736         * docs/gst/tmpl/gstvalue.sgml:
11737         make sure all API ends up in the built docs
11738         * gst/gstinterface.c:
11739         * gst/gststructure.c: (gst_structure_id_set_value),
11740         (gst_structure_set_value), (gst_structure_id_get_value):
11741         * gst/gststructure.h:
11742         * gst/gstvalue.h:
11743         sync .h with .c declarations
11744
11745 2004-01-30  Julien Moutte  <julien@moutte.net>
11746
11747         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
11748         Ronald will fix riffread.
11749
11750 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11751
11752         * docs/pwg/advanced-interfaces.xml:
11753           Added tuner interface docs.
11754
11755 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11756
11757         * docs/random/mimetypes:
11758           correct Theora information
11759         * gst/gstelement.h:
11760           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
11761
11762 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11763
11764         * gst/gstelement.c: (gst_element_error_full):
11765         * gst/gstelement.h:
11766           GST_ELEMENT_ERROR in enum -> _IN_ERROR
11767
11768 2004-01-29  Julien MOUTTE  <julien@moutte.net>
11769
11770         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11771         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
11772         again and even before DISCONT.
11773         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
11774         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
11775         bytestream so that it's not stopping to fill the bytestream if events
11776         different than EOS or DISCONT are received. Instead it process them so
11777         that they go downstream.
11778
11779 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11780
11781         * docs/gst/tmpl/gstelement.sgml:
11782         * docs/gst/tmpl/gstreamer-unused.sgml:
11783         * docs/gst/tmpl/gstxml.sgml:
11784         * gst/autoplug/gstspideridentity.c:
11785         (gst_spider_identity_sink_loop_type_finding):
11786         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11787         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11788         (gst_filesink_close_file), (gst_filesink_handle_event),
11789         (gst_filesink_chain):
11790         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11791         (gst_filesrc_get_read), (gst_filesrc_open_file):
11792         * gst/elements/gstidentity.c: (gst_identity_chain):
11793         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11794         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11795         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11796         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11797         * gst/gstelement.h:
11798         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11799         (gst_pad_recover_caps_error), (gst_pad_pull):
11800         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11801         * gst/schedulers/gstbasicscheduler.c:
11802         (gst_basic_scheduler_chainhandler_proxy),
11803         (gst_basic_scheduler_gethandler_proxy),
11804         (gst_basic_scheduler_cothreaded_chain):
11805           gst_element_error -> GST_ELEMENT_ERROR
11806
11807 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11808
11809         * docs/Makefile.am:
11810         * docs/gst/tmpl/gstelement.sgml:
11811         * docs/gst/tmpl/gstxml.sgml:
11812         * docs/manuals.mak:
11813         * docs/pwg/advanced-request.xml:
11814         * docs/pwg/advanced-scheduling.xml:
11815         * docs/pwg/advanced-tagging.xml:
11816           fix non-validating docbook using CDATA
11817           make sure make check-local gets run first to check if it validates
11818
11819 2004-01-29  Julien MOUTTE <julien@moutte.net>
11820
11821         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
11822         handling (up and downstream).
11823         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
11824         my_filter thing.
11825
11826 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11827
11828         * docs/pwg/advanced-tagging.xml:
11829           Add docs about tag writing.
11830
11831 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11832
11833         * docs/pwg/advanced-tagging.xml:
11834           Add a part about tag reading and application signalling... Tag
11835           writing still needs to be documented.
11836         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11837           We can set file locations in READY, too.
11838
11839 2004-01-29  Julien MOUTTE <julien@moutte.net>
11840
11841         * docs/random/ds/element-checklist: Adding some notes about src
11842         events.
11843
11844 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11845
11846         * docs/random/mimetypes:
11847           Update docs to point to correct elements for various mimetypes, and
11848           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
11849           <stephane.loeuillet@tiscali.fr>.
11850
11851 2004-01-28  David Schleef  <ds@schleef.org>
11852
11853         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
11854
11855 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11856
11857         * docs/random/mimetypes:
11858           update docs for audio/x-raw-float. Add "buffer-frames=0 means
11859           undefined"
11860         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11861           make it only work in NULL.
11862         * gst/gstcaps.c:
11863           don't posion NULL caps
11864         * gst/gstelement.c: (gst_element_set_time):
11865           add debugging statement
11866         * gst/gstelement.c: (gst_element_emit_found_tag),
11867         (gst_element_found_tag_func), (gst_element_found_tags):
11868         * gst/gstelement.h:
11869           These functions take const taglists
11870         * gst/gstpad.c: (gst_pad_proxy_getcaps):
11871           fix memleak
11872         * gst/gstpad.c: (gst_pad_event_default):
11873           make more effort on handling discont and clocks, g_warn if everything
11874           fails
11875         * gst/gststructure.c: (gst_structure_remove_fields),
11876         (gst_structure_remove_fields_valist):
11877         * gst/gststructure.h:
11878           add gst_structure_remove_fields(_valist)
11879         * gst/gsttag.c:
11880           fix doc glitch
11881
11882 2004-01-28  David Schleef  <ds@schleef.org>
11883
11884         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
11885         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
11886         Fix memory leakage of gst_caps_to_string().
11887
11888         Use GST_PTR_FORMAT instead of gst_caps_to_string():
11889         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
11890         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
11891         (gst_spider_identity_sink_loop_type_finding):
11892         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11893         (find_suggest):
11894         * gst/gstpad.c: (gst_pad_try_relink_filtered),
11895         (gst_pad_set_explicit_caps):
11896         * gst/parse/grammar.y:
11897
11898 2004-01-28  David Schleef  <ds@schleef.org>
11899
11900         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
11901         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
11902         * docs/random/ds/0.9-suggested-changes: Notes from Company.
11903         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
11904         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
11905         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
11906         (gst_debug_log_default), (_gst_info_printf_extension),
11907         (_gst_info_printf_extension_arginfo):  Add printf extension.
11908         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
11909         * gst/gststructure.c: (gst_structure_to_string),
11910         (_gst_structure_parse_value): Use gst_value_deserialize() and
11911         remove old code.
11912         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
11913         (gst_value_deserialize_boolean), (gst_strtoi),
11914         (gst_value_deserialize_int), (gst_value_deserialize_double),
11915         (gst_value_deserialize_string), (gst_value_deserialize): Implement
11916         a bunch of deserialize functions and gst_value_deserialize.
11917         * gst/gstvalue.h: er, _de_serialize, not unserialize
11918         * testsuite/caps/string-conversions.c: (main): We don't currently
11919         handle (float) in caps, so convert these to (double).
11920         * testsuite/debug/Makefile.am: Add new test for the printf extension
11921         * testsuite/debug/printf_extension.c: (main): same
11922
11923 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11924
11925         * docs/random/company/time:
11926           Add some docs about clocking and time
11927
11928 2004-01-28  Julien MOUTTE <julien@moutte.net>
11929
11930         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
11931
11932 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11933
11934         * docs/pwg/advanced-clock.xml:
11935         * docs/pwg/advanced-dparams.xml:
11936         * docs/pwg/advanced-events.xml:
11937         * docs/pwg/advanced-interfaces.xml:
11938         * docs/pwg/advanced-midi.xml:
11939         * docs/pwg/advanced-request.xml:
11940         * docs/pwg/advanced-scheduling.xml:
11941         * docs/pwg/advanced-tagging.xml:
11942         * docs/pwg/advanced-types.xml:
11943         * docs/pwg/appendix-checklist.xml:
11944         * docs/pwg/building-boiler.xml:
11945         * docs/pwg/building-chainfn.xml:
11946         * docs/pwg/building-filterfactory.xml:
11947         * docs/pwg/building-pads.xml:
11948         * docs/pwg/building-props.xml:
11949         * docs/pwg/building-signals.xml:
11950         * docs/pwg/building-state.xml:
11951         * docs/pwg/building-testapp.xml:
11952         * docs/pwg/intro-basics.xml:
11953         * docs/pwg/intro-preface.xml:
11954         * docs/pwg/other-autoplugger.xml:
11955         * docs/pwg/other-sink.xml:
11956         * docs/pwg/other-source.xml:
11957         * docs/pwg/titlepage.xml:
11958           fix up id's
11959
11960 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11961
11962         * docs/95NonPath:
11963         * docs/HACKING:
11964         * docs/README:
11965         * docs/building-the-docs-on-debian:
11966           collect relevant bits of doc info
11967
11968 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11969
11970         * docs/pwg/advanced_tagging.xml:
11971           Half-assed commit so Thomas can re-arrange document IDs here to be
11972           consistent, too.
11973
11974 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11975
11976         * docs/manual/autoplugging.xml:
11977         * docs/manual/bins-api.xml:
11978         * docs/manual/bins.xml:
11979         * docs/manual/buffers-api.xml:
11980         * docs/manual/buffers.xml:
11981         * docs/manual/clocks.xml:
11982         * docs/manual/components.xml:
11983         * docs/manual/cothreads.xml:
11984         * docs/manual/debugging.xml:
11985         * docs/manual/dparams-app.xml:
11986         * docs/manual/dynamic.xml:
11987         * docs/manual/elements-api.xml:
11988         * docs/manual/elements.xml:
11989         * docs/manual/factories.xml:
11990         * docs/manual/gnome.xml:
11991         * docs/manual/goals.xml:
11992         * docs/manual/helloworld.xml:
11993         * docs/manual/helloworld2.xml:
11994         * docs/manual/init-api.xml:
11995         * docs/manual/intro.xml:
11996         * docs/manual/links-api.xml:
11997         * docs/manual/links.xml:
11998         * docs/manual/manual.xml:
11999         * docs/manual/motivation.xml:
12000         * docs/manual/pads-api.xml:
12001         * docs/manual/pads.xml:
12002         * docs/manual/plugins-api.xml:
12003         * docs/manual/plugins.xml:
12004         * docs/manual/programs.xml:
12005         * docs/manual/queues.xml:
12006         * docs/manual/quotes.xml:
12007         * docs/manual/schedulers.xml:
12008         * docs/manual/states-api.xml:
12009         * docs/manual/states.xml:
12010         * docs/manual/threads.xml:
12011         * docs/manual/typedetection.xml:
12012         * docs/manual/xml.xml:
12013           use chapter, part, section or misc as id starts for all bits
12014
12015 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12016
12017         * docs/gst/gstreamer-sections.txt:
12018           Fix up TITLE of the sections
12019
12020 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12021
12022         * docs/pwg/advanced_interfaces.xml:
12023           Add documentation on propertyprobing.
12024         * docs/pwg/advanced_events.xml:
12025         * docs/pwg/advanced_tagging.xml:
12026         * docs/pwg/building_boiler.xml:
12027         * docs/pwg/building_filterfactory.xml:
12028         * docs/pwg/pwg.xml:
12029           Move filterfactory and tagging into their own chapter, add a chapter
12030           on events. all these are empty placeholders that will be filled in
12031           some day.
12032
12033 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12034
12035         * docs/pwg/advanced_interfaces.xml:
12036           Docs for mixer interface. Also a check for website uploading.
12037
12038 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12039
12040         * docs/HACKING:
12041         * docs/Makefile.am:
12042         * docs/faq/Makefile.am:
12043         * docs/gst/Makefile.am:
12044         * docs/gst/tmpl/gstelement.sgml:
12045         * docs/gst/tmpl/gstplugin.sgml:
12046         * docs/gst/tmpl/gstreamer-unused.sgml:
12047         * docs/libs/Makefile.am:
12048         * docs/manual/Makefile.am:
12049         * docs/manuals.mak:
12050         * docs/pwg/Makefile.am:
12051         * docs/upload.mak:
12052           Separate out upload target and make it similar for
12053           both docbook and gtk-doc docs
12054
12055 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12056
12057         * docs/manuals.mak:
12058           Fix upload target to work with freedesktop
12059
12060 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12061
12062         * docs/pwg/advanced_types.xml:
12063           Add notes on creating your own types.
12064         * docs/pwg/building_boiler.xml:
12065         * docs/pwg/building_pads.xml:
12066         * docs/pwg/building_state.xml:
12067           Add some stuff about how to retrieve values from structures, how
12068           that relates to types and change layout slightly again to be almost
12069           perfect.
12070
12071 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12072
12073         * docs/pwg/advanced_dparams.xml:
12074         * docs/pwg/advanced_scheduling.xml:
12075           Change index layout slightly.
12076
12077 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12078
12079         * docs/pwg/advanced_clock.xml:
12080         * docs/pwg/advanced_interfaces.xml:
12081         * docs/pwg/advanced_midi.xml:
12082           General placeholders for now.
12083         * docs/pwg/advanced_request.xml:
12084           Explanation about sometimes and request pads.
12085         * docs/pwg/advanced_scheduling.xml:
12086           Concept of bytestream, loopfunctions and schedulers.
12087         * docs/pwg/building_boiler.xml:
12088           Add something about plugin-init.
12089
12090 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12091
12092         * docs/pwg/building_pads.xml:
12093           Fix broken docbook
12094
12095 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12096
12097         * docs/pwg/advanced_interfaces.xml:
12098         * docs/pwg/pwg.xml:
12099           Add as a placeholder for future filling-in.
12100         * docs/pwg/basics_autoplugging.xml:
12101         * docs/pwg/basics_buffers.xml:
12102         * docs/pwg/basics_elements.xml:
12103         * docs/pwg/basics_events.xml:
12104         * docs/pwg/basics_plugins.xml:
12105         * docs/pwg/basics_types.xml:
12106           Remove, because unused (this is all in intro_basics.xml).
12107         * docs/pwg/building_signals.xml:
12108           Short intro to signals + reference to GObject docs - we really
12109           shouldn't go into these sort of things to deply because we don't
12110           use them that extensively anyway.
12111         * docs/pwg/building_state.xml:
12112           Explanation of states. Benjamin, please check.
12113         * docs/pwg/building_testapp.xml:
12114           Put everything in one page - putting only a few lines of content
12115           per page doesn't really make sense.
12116
12117           Time to get into the advanced topics. ;).
12118
12119 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12120
12121         * docs/pwg/advanced_types.xml:
12122           Finish documenting the current state of mimetypes.
12123         * docs/pwg/building_boiler.xml:
12124         * docs/pwg/building_chainfn.xml:
12125         * docs/pwg/building_pads.xml:
12126         * docs/pwg/building_props.xml:
12127         * docs/pwg/building_testapp.xml:
12128           Start documenting the "how to build a simple audio filter" part
12129           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12130           states and (maybe?) a short introduction to capsnego in the chapter
12131           on pads (building_pads.xml). Capsnego should probably be explained
12132           fully in advanced_capsnego.xml or so.
12133
12134 2004-01-26  David Schleef  <ds@schleef.org>
12135
12136         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12137         * gst/gstpad.h: Add new function to allow element to (somewhat)
12138         specify non-fixed caps on a pad.
12139         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12140         that I added a few weeks ago.
12141
12142 2004-01-26  David Schleef  <ds@schleef.org>
12143
12144         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12145           making try_set_caps() work with non-fixed caps.
12146
12147 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12148
12149         * docs/pwg/advanced_types.xml:
12150         * docs/pwg/intro_basics.xml:
12151         * docs/pwg/intro_preface.xml:
12152         * docs/pwg/pwg.xml:
12153         * docs/pwg/titlepage.xml:
12154           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12155           in here (docs/random/mimetypes), and will from there on work on both
12156           updating outdated parts and adding missing parts.
12157           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12158
12159 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12160
12161         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12162           policy is set
12163
12164 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12165
12166         * gst/gstelement.h:
12167           remove gst_element_factory_get_version. It doesn't exist anymore.
12168         * gst/gstplugin.c:
12169         * gst/gstplugin.h:
12170           remove gst_plugin_set_name and change gst_plugin_get_longname to
12171           gst_plugin_get_description to match code.
12172         * gst/gsterror.h:
12173           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12174         * gst/gstpad.c: (gst_pad_try_set_caps):
12175           make it work with nonfixed caps.
12176           Note that even in the nonfixed case the link function of the pad
12177           that tries to set caps isn't called.
12178
12179 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12180
12181         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12182           fix bug where buffer was not assembled correctly
12183         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12184           silence by default
12185         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12186           only seek if there's no more buffers that could work without seeking
12187
12188 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12189
12190         * gst/gsttag.c: (_gst_tag_initialize):
12191         * gst/gsttag.h:
12192           Add application tag (for encoding/muxing app).
12193
12194 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12195
12196         * autogen.sh:
12197           make autopoint force, and libtoolize not copy
12198         * common/m4/as-docbook.m4:
12199           added docbook xml catalog setup check
12200         * common/m4/gst-doc.m4:
12201           use docbook check
12202
12203 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12204
12205         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12206         * gst/gsttag.h:
12207           add GstTagFlag
12208
12209 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12210
12211         * docs/gst/gstreamer-sections.txt:
12212         * docs/gst/tmpl/gst.sgml:
12213         * docs/gst/tmpl/gstbuffer.sgml:
12214         * docs/gst/tmpl/gstclock.sgml:
12215         * docs/gst/tmpl/gstelement.sgml:
12216         * docs/gst/tmpl/gstreamer-unused.sgml:
12217         * docs/gst/tmpl/gstxml.sgml:
12218           sync latest API changes to docs
12219
12220 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12221
12222         * gst/gstpluginfeature.c:
12223           fix doc snippet
12224         * tools/gst-inspect.c: (print_element_list):
12225           fix output of typefind
12226           add GPL header
12227         * tools/gst-launch.c:
12228           add GPL header
12229
12230 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12231
12232         * gst/elements/Makefile.am:
12233         * gst/elements/gstelements.c:
12234         * gst/elements/gsttypefindelement.c:
12235         * gst/elements/gsttypefindelement.h:
12236         * po/POTFILES.in:
12237         * po/fr.po:
12238         * po/nl.po:
12239           renamed gsttypefindelement to gsttypefind, conserving CVS history
12240
12241 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12242
12243         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12244         * gst/gsttag.h:
12245           add some tags used in ogg as well
12246           fix _ in replaygain tags
12247
12248 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12249
12250         * gst/gsterror.h:
12251           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12252
12253 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12254
12255         * gst/gstelement.c: (gst_element_error_full):
12256         * gst/gstelement.h:
12257           change _extended to _full
12258
12259 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12260
12261         reviewed by: <delete if not using a buddy>
12262
12263         * docs/gst/tmpl/gst.sgml:
12264         * docs/gst/tmpl/gstbuffer.sgml:
12265         * docs/gst/tmpl/gstclock.sgml:
12266         * docs/gst/tmpl/gstelement.sgml:
12267         * docs/gst/tmpl/gstreamer-unused.sgml:
12268         * docs/gst/tmpl/gstxml.sgml:
12269         * gst/gstelement.c: (gst_element_error_full):
12270         * gst/gstelement.h:
12271
12272 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12273
12274         * gst/gstelement.h: fix _gst_element_error_printf prototype
12275
12276 2004-01-20  David Schleef  <ds@schleef.org>
12277
12278         * gst/gststructure.c: (gst_structure_to_string):
12279         Convert function to use gst_value_serialize().
12280         * gst/gstvalue.c: (gst_value_serialize_list),
12281         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12282         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12283         (gst_value_serialize_int), (gst_value_serialize_double),
12284         (gst_string_wrap), (gst_value_serialize_string),
12285         (gst_value_serialize), (gst_value_deserialize):
12286         * gst/gstvalue.h:
12287         Add implementations for serialize.
12288
12289 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12290
12291         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12292         we want to keep that one in the future or change xvidenc.c to use 
12293         another error.
12294
12295 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12296
12297         * gst/gstelement.c: (_gst_element_error_printf):
12298         * gst/gstelement.h:
12299           privatise function
12300
12301 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12302
12303         * docs/random/error:
12304           doc explaining error system
12305         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12306           cleanup
12307
12308 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12309
12310         * gst/gst-i18n-app.h:
12311         * gst/gst-i18n-lib.h:
12312           remove inclusion of config.h
12313         * po/POTFILES.in:
12314         * po/nl.po:
12315           add gst/gstelement.c
12316
12317 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12318
12319         * po/nl.po: updated Dutch translation
12320
12321 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12322
12323         * gst/gsterror.c: (_gst_core_errors_init),
12324         (_gst_library_errors_init), (_gst_resource_errors_init),
12325         (_gst_stream_errors_init):
12326         remove ending punctuation dots
12327
12328 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12329
12330         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12331         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12332         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12333         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12334         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12335         use GST_ERROR_SYSTEM
12336
12337 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12338
12339         * gst/gstelement.c: (gst_element_error_printf),
12340         (gst_element_error_extended):
12341         * gst/gstelement.h:
12342           add a helper printf function so we can have NULL values passed.
12343
12344 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12345
12346         * gst/gstelement.h:
12347           add G_STMT macros to gst_element_error, which isn't strictly
12348           necessary but people tell me to anyway.
12349
12350 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12351
12352         * gst/Makefile.am:
12353         * gst/autoplug/gstspideridentity.c:
12354         (gst_spider_identity_sink_loop_type_finding):
12355         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12356         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12357         (gst_filesink_close_file), (gst_filesink_handle_event),
12358         (gst_filesink_chain):
12359         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12360         (gst_filesrc_map_region), (gst_filesrc_get_read),
12361         (gst_filesrc_open_file):
12362         * gst/elements/gstidentity.c: (gst_identity_chain):
12363         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12364         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12365         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12366         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12367         * gst/gst.h:
12368         * gst/gst_private.h:
12369         * gst/gstelement.c: (gst_element_class_init),
12370         (gst_element_default_error), (gst_element_error_func),
12371         (gst_element_error_extended):
12372         * gst/gstelement.h:
12373         * gst/gsterror.c: (_gst_core_errors_init),
12374         (_gst_library_errors_init), (_gst_resource_errors_init),
12375         (_gst_stream_errors_init), (gst_error_get_message):
12376         * gst/gsterror.h:
12377         * gst/gstinfo.c: (_gst_debug_init):
12378         * gst/gstmarshal.list:
12379         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12380         (gst_pad_recover_caps_error), (gst_pad_pull):
12381         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12382         * gst/schedulers/gstbasicscheduler.c:
12383         (gst_basic_scheduler_chainhandler_proxy),
12384         (gst_basic_scheduler_gethandler_proxy),
12385         (gst_basic_scheduler_cothreaded_chain):
12386         * po/POTFILES.in:
12387         * po/fr.po:
12388         * po/nl.po:
12389           change error signal
12390           add error categories
12391
12392 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12393
12394         * gst/gsttag.c: (_gst_tag_initialize):
12395         * gst/gsttag.h:
12396         Add replaygain tag
12397
12398 2004-01-18  Colin Walters  <walters@verbum.org>
12399
12400         * examples/retag/retag.c: Call gst_init before processing
12401         program args.  Add g_assert to _link_many call.
12402
12403 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12404
12405         * gst/gstpad.c: (gst_pad_alloc_buffer):
12406           Return a newly allocated buffer when the pad has no peer.
12407
12408 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12409
12410         * gst/gstclock.c: (gst_clock_get_time):
12411           make it compile with gcc 2.95 again.
12412           Patch by Scott Wheeler
12413
12414 2004-01-15  David Schleef  <ds@schleef.org>
12415
12416         * gst/gstcaps.h:
12417         Added gst_caps_is_simple() macro.
12418         * testsuite/caps/caps.c: (test1):
12419         * testsuite/caps/intersect2.c: (main):
12420         * testsuite/caps/intersection.c: (main):
12421         Fixes to make 'make check' work again after removing
12422         gst_caps_is_chained().
12423
12424 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12425
12426         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12427         and additions to the MIDI document.
12428
12429 2004-01-15  David Schleef  <ds@schleef.org>
12430
12431         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12432         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12433         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12434
12435 2004-01-15  David Schleef  <ds@schleef.org>
12436
12437         * gst/gstqueue.c:
12438         * gst/gstqueue.h:
12439         Fix the spelling of "treshold" and make min_threshold actually
12440         affect the queue.
12441
12442 2004-01-15  David Schleef  <ds@schleef.org>
12443
12444         * gst/gstcaps.c:
12445         Add lots of documentation.
12446         * gst/gstcaps.h:
12447         Deprecate a few functions.
12448         * gst/gstpad.c:
12449         Removed use of deprecated functions.
12450
12451 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12452
12453         * gst/gstpad.c: (gst_pad_is_linked):
12454         * gst/gstpad.h:
12455           implement gst_pad_is_linked
12456         * gst/gstelement.h:
12457           reserve space for initiate_state_change
12458
12459 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12460
12461         * gst/autoplug/gstspideridentity.c:
12462         (gst_spider_identity_sink_loop_type_finding):
12463           break infinite loop by just returning instead of looping
12464         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12465           set event time difference correctly. Set it to 1 second instead
12466           of 100ms to be more tolerant
12467         * gst/gstelement.c: (gst_element_set_time):
12468           add debugging output
12469
12470 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12471
12472         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12473           query if buffers are inside the pool, ignore events
12474
12475 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12476
12477         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12478         (gst_clock_set_speed), (gst_clock_set_active),
12479         (gst_clock_is_active), (gst_clock_reset),
12480         (gst_clock_handle_discont):
12481         * gst/gstclock.h:
12482           deprecate old interface and disable functions that aren't in use
12483           anymore.
12484         * gst/gstelement.h:
12485         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12486         (gst_element_set_time), (gst_element_adjust_time):
12487           add concept of "element time" and functions to get/set this time.
12488         * gst/gstelement.c: (gst_element_change_state):
12489           update element time correctly.
12490         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12491           This is a debug message, not a g_critical.
12492         * gst/gstpad.c: (gst_pad_event_default):
12493           handle discontinuous events right with element time.
12494         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12495           update to clocking fixes.
12496           set clocks on elements in READY=>PAUSED. The old behaviour caused
12497           a wrong element time on the first element that started playing.
12498         * gst/schedulers/gstbasicscheduler.c:
12499         (gst_basic_scheduler_class_init):
12500         * gst/schedulers/gstoptimalscheduler.c:
12501         (gst_opt_scheduler_class_init):
12502           remove code that just implements the default behaviour.
12503         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12504           update to use new clocking functions
12505         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12506         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12507           update to test new element time.
12508         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12509           use _get_allowed_caps instead of _get_caps. This catches filtered
12510           caps correctly.
12511         * testsuite/debug/commandline.c:
12512           update for new GST_DEBUG syntax.
12513         * testsuite/threads/Makefile.am:
12514           disable a test that only works sometimes.
12515
12516 2004-01-13  Julien MOUTTE <julien@moutte.net>
12517
12518         * po/LINGUAS: Adding fr.
12519         * po/fr.po: Adding french translation.
12520
12521 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12522
12523         * gst/parse/grammar.y:
12524         * po/POTFILES.in:
12525         * po/nl.po:
12526         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12527           translate parsing error messages
12528
12529 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12530
12531         * po/POTFILES.in: adding gst-launch
12532         * po/nl.po: updated translation, all 99 strings translated
12533         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12534         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12535           fix strings for translation
12536
12537 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12538
12539         * gst/gst.c:
12540           - capitalize beginnings of popt options
12541           - fix strings for translation
12542           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12543
12544 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12545
12546         * po/README: add some notes on how to update translations
12547
12548 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12549
12550         * ABOUT-NLS: removed, is autogenerated from autopoint
12551         * autogen.sh: add autopoint stuff
12552         * configure.ac: fix up gettext stuff
12553         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12554         * gst/elements/gsttypefindelement.c: add header include
12555         * gst/gettext.h: add header, copy from system-installed header
12556         * gst/gst-i18n-app.h: to be included by each app having translations
12557         * gst/gst-i18n-lib.h: to be included by each lib having translations
12558         * gst/gst.c: (init_pre): fix up gettext calls
12559         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12560         * po/LINGUAS: the new way to specify translations present
12561         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12562         * po/Makevars: the variables filled in for GStreamer
12563         * po/POTFILES.in: added new files with translations
12564         * po/de.po: has new strings
12565         * po/nl.po: readded, has new strings
12566
12567 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12568
12569         * gst/gsttag.c: fix some strings marked for translation
12570
12571 2004-01-13  Iain <iain@prettypeople.org>
12572
12573         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12574         group when we add an element to it, cos we unref it when we remove one
12575
12576 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12577
12578         * testsuite/debug/commandline.c: (debug_not_reached):
12579         * testsuite/debug/output.c: (check_message):
12580           fix testsuite
12581
12582 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12583
12584         * examples/cutter/.cvsignore:
12585         * examples/helloworld/.cvsignore:
12586         * examples/launch/.cvsignore:
12587         * examples/manual/.cvsignore:
12588         * examples/mixer/.cvsignore:
12589         * examples/pingpong/.cvsignore:
12590         * examples/plugins/.cvsignore:
12591         * examples/queue/.cvsignore:
12592         * examples/queue2/.cvsignore:
12593         * examples/queue3/.cvsignore:
12594         * examples/queue4/.cvsignore:
12595         * examples/retag/.cvsignore:
12596         * examples/thread/.cvsignore:
12597         * examples/typefind/.cvsignore:
12598         * examples/xml/.cvsignore:
12599         * gst/.cvsignore:
12600         * gst/autoplug/.cvsignore:
12601         * gst/elements/.cvsignore:
12602         * gst/indexers/.cvsignore:
12603         * gst/parse/.cvsignore:
12604         * gst/registries/.cvsignore:
12605         * gst/schedulers/.cvsignore:
12606         * libs/gst/bytestream/.cvsignore:
12607         * libs/gst/control/.cvsignore:
12608         * libs/gst/getbits/.cvsignore:
12609         * tests/.cvsignore:
12610         * tests/bufspeed/.cvsignore:
12611         * tests/instantiate/.cvsignore:
12612         * tests/memchunk/.cvsignore:
12613         * tests/muxing/.cvsignore:
12614         * tests/sched/.cvsignore:
12615         * tests/seeking/.cvsignore:
12616         * tests/threadstate/.cvsignore:
12617         * testsuite/.cvsignore:
12618         * testsuite/caps/.cvsignore:
12619         * testsuite/cleanup/.cvsignore:
12620         * testsuite/dynparams/.cvsignore:
12621         * testsuite/plugin/.cvsignore:
12622         * tools/.cvsignore:
12623           update - this is huge, because it includes *.bb, *.bbg and *.da files
12624           which are generated for gcov.
12625
12626 2004-01-11  David Schleef  <ds@schleef.org>
12627
12628         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12629         a function to parse integers in ways that strto[u]l() does not.
12630
12631 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12632
12633         * tools/gst-inspect.c: (print_caps):
12634           improve output of caps a bit
12635
12636 2004-01-11  David Schleef  <ds@schleef.org>
12637
12638         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12639         inherit correct flags (READONLY and DONTKEEP).
12640
12641 2004-01-11  David Schleef  <ds@schleef.org>
12642
12643         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12644         (gst_filesrc_map_region):
12645         * gst/gstbuffer.c: (_gst_buffer_initialize),
12646         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12647         (gst_buffer_new), (gst_buffer_create_sub),
12648         (gst_buffer_is_span_fast), (gst_buffer_span):
12649         * gst/gstbuffer.h:
12650         Change GstBuffer private structure element names. (all files)
12651         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12652         (gst_queue_link):
12653         * gst/gstqueue.h:
12654         Implement getcaps/pad_link functions that handle the case where
12655         there are data in the queue.
12656
12657 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12658
12659         * gst/elements/gstbufferstore.c:
12660           initialize debugging structure correctly
12661         * gst/elements/gsttee.c: (gst_tee_set_property):
12662           g_object_notify when property was changed
12663         * gst/elements/gsttypefindelement.c:
12664         (gst_type_find_element_change_state):
12665           clear caps correctly
12666
12667 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12668
12669         * gst/gstqueue.c: (gst_queue_init):
12670           Use better defaults for when a queue should block. This
12671           gets rid of jerky playback for quite a few files.
12672           It takes more memory.
12673
12674 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12675
12676         (gst_xml_registry_parse_padtemplate):
12677           make critical message slightly more useful
12678
12679 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12680
12681         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12682         (gst_debug_message_get), (gst_debug_log_default):
12683         * gst/gstinfo.h:
12684           Change gst_debug_log(_valist) to take a const format string.
12685           Change prototype of log function and functions using those to 
12686           take a GstDebugMessage instead of a string that requires using
12687           gst_debug_message_get.
12688
12689 2004-01-08  David Schleef  <ds@schleef.org>
12690
12691         * Makefile.am:
12692         * configure.ac:
12693         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12694         and -ftest-coverage, which allows gcov to show information about
12695         testsuite coverage.
12696
12697 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12698
12699         * gst/gstutils.h:
12700           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12701           GST_PARENT_CALL_WITH_DEFAULT
12702         * gst/elements/gstaggregator.c: 
12703         * gst/elements/gstbufferstore.c: 
12704         * gst/elements/gstfakesink.c: 
12705         * gst/elements/gstfakesrc.c: 
12706         * gst/elements/gstfdsink.c: 
12707         * gst/elements/gstfdsrc.c: 
12708         * gst/elements/gstfilesink.c: 
12709         * gst/elements/gstfilesrc.c: 
12710         * gst/elements/gstidentity.c: 
12711         * gst/elements/gstmd5sink.c: 
12712         * gst/elements/gstmultidisksrc.c:
12713         * gst/elements/gstpipefilter.c: 
12714         * gst/elements/gstshaper.c:
12715         * gst/elements/gststatistics.c:
12716         * gst/elements/gsttee.c:
12717         * gst/elements/gsttypefindelement.c:
12718           use them.
12719
12720 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
12721
12722         * docs/gst/gstreamer-docs.sgml: remove props
12723         * docs/gst/gstreamer-sections.txt: remove props
12724         * docs/gst/tmpl/gst.sgml:
12725         * docs/gst/tmpl/gstbin.sgml:
12726         * docs/gst/tmpl/gstbuffer.sgml:
12727         * docs/gst/tmpl/gstcaps.sgml:
12728         * docs/gst/tmpl/gstclock.sgml:
12729         * docs/gst/tmpl/gstelement.sgml:
12730         * docs/gst/tmpl/gstindex.sgml:
12731         * docs/gst/tmpl/gstobject.sgml:
12732         * docs/gst/tmpl/gstpad.sgml:
12733         * docs/gst/tmpl/gstpadtemplate.sgml:
12734         * docs/gst/tmpl/gstreamer-unused.sgml:
12735         * docs/gst/tmpl/gstthread.sgml:
12736         * docs/gst/tmpl/gstxml.sgml:
12737           sync with code reorganization
12738
12739 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
12740
12741         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12742         Make the 'Could not find compatible pad' message more informative.
12743
12744 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12745                                                                                 
12746         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
12747           Fix for if we pass NULL as property to location.
12748         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
12749         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
12750           Fix for instantiate-test (see below).
12751         * gst/gststructure.c: (_gst_structure_parse_value):
12752           Fix compile error on gcc-2.96.
12753         * configure.ac:
12754         * tests/Makefile.am:
12755         * tests/instantiate/Makefile.am:
12756         * tests/instantiate/create.c: (create_all_elements), (main):
12757           Add a test that instantiates all elements. This makes it easy to
12758           track dead code for old API/design (like setting event functions
12759           on sink pads and so on).
12760
12761 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
12762
12763         * gst/gstcaps.c: (gst_caps_append_structure):
12764           Move the poisoning to allow a NULL structure
12765         * gst/gstevent.c: (_gst_event_free):
12766           When freeing a navigation event, free the structure
12767           also
12768
12769 2004-01-04  David Schleef  <ds@schleef.org>
12770
12771         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12772         Remove usage of gst_pad_proxy_fixate.
12773         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
12774         (gst_caps_split_one), (gst_caps_replace):
12775         Add poisoning code.
12776         * gst/gstmarshal.list:
12777         Add pointer__pointer for fixate signal
12778         * gst/gstpad.c: (gst_real_pad_class_init),
12779         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12780         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
12781         (gst_pad_set_explicit_caps), (gst_pad_template_new):
12782         Add poisoning code. Add fixate signal on RealPad. Change
12783         set_explicit_caps() to take const GstCaps, like try_set_caps().
12784         * gst/gstpad.h:
12785         * testsuite/caps/Makefile.am:
12786         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
12787
12788 2004-01-03  David Schleef  <ds@schleef.org>
12789
12790         * gst/elements/gsttypefindelement.c:
12791         (gst_type_find_element_have_type), (gst_type_find_element_init):
12792         Use gst_pad_use_explicit_caps for src pad.
12793         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
12794         before using it.
12795
12796 2004-01-03  David Schleef  <ds@schleef.org>
12797
12798         * gst/gstelement.c: (gst_element_link_pads_filtered),
12799         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
12800         that linking was successful.
12801         * gst/gstpad.c: (gst_pad_link_free),
12802         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
12803         (gst_pad_link_try), (gst_pad_link_unnegotiate),
12804         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
12805         GstPadLinkReturn correctly between functions, and don't fail
12806         when DELAYED is used (DELAYED is very important).  Better
12807         cleanup on unlinking and unnegotiation.  Should fix some spider
12808         bugs.
12809
12810 2004-01-02  David Schleef  <ds@schleef.org>
12811
12812         * gst/gstelement.c: (gst_element_class_init),
12813         (gst_element_base_class_init): ->padtemplates should be cleared
12814         in base_init, since we need to have a fresh list for every
12815         class.  (Alternately, we chould copy the list and share the
12816         actual pad templates (not the list), but that would require
12817         changing every plugin to move pad template registration from
12818         base_init to class_init.)
12819
12820 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12821
12822         * gst/gstelement.c: (gst_element_class_add_pad_template):
12823           Refuse registering a pad template if another pad template
12824           with the same name already exists (#114715).
12825
12826 2004-01-02  David Schleef  <ds@schleef.org>
12827
12828         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
12829         (gst_caps_is_equal_fixed): Add new function.
12830         * gst/gstcaps.h: ditto.
12831         * gst/gstpad.c: (gst_real_pad_class_init),
12832         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
12833         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
12834         check new caps against existing caps -- if they're the same, return
12835         OK without renegotiating.  caps-nego-failed signal fixed so that
12836         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
12837         to save an extra caps copy.  Don't complete negotiation if a pad
12838         link function returns DELAYED.
12839
12840 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12841
12842         * gst/gstpad.c: (gst_pad_try_relink_filtered):
12843           Fix wrong g_return_if_fail
12844
12845 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
12846
12847         * gst/gstbin.c: (gst_bin_class_init):
12848         Change the marshalling of element_added/element_removed
12849         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
12850         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
12851
12852 2004-01-01  David Schleef  <ds@schleef.org>
12853
12854         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12855         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
12856         (gst_pad_use_explicit_caps):
12857         * gst/gstpad.h:
12858         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
12859         to use an internal getcaps and link fuction so that negotiation
12860         always results in the explicitly set caps.
12861         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
12862         are particularly useful for decoders.
12863
12864 2003-12-31  David Schleef  <ds@schleef.org>
12865
12866         * gst/elements/gstidentity.c: (gst_identity_class_init),
12867         (gst_identity_init), (gst_identity_chain),
12868         (gst_identity_set_property), (gst_identity_get_property):
12869         * gst/elements/gstidentity.h:
12870         * gst/gstqueue.c: (gst_queue_init):
12871           Negotiation fixes.
12872
12873 2003-12-31  David Schleef  <ds@schleef.org>
12874
12875         * gst/gstcaps.c: (gst_caps_intersect),
12876         (_gst_caps_normalize_foreach), (gst_caps_normalize):
12877           Implement gst_caps_normalize().
12878         * testsuite/caps/normalisation.c: (main):
12879           Add an additional test
12880
12881 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12882
12883         * gst/gstqueue.c: (gst_queue_init):
12884           use gst_pad_proxy_getcaps()
12885
12886 2003-12-31  David Schleef  <ds@schleef.org>
12887
12888         * gst/elements/gstshaper.c: (gst_shaper_link):
12889         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12890         * gst/gstqueue.c: (gst_queue_link):
12891           Negotiation fixes.
12892
12893 2003-12-31  David Schleef  <ds@schleef.org>
12894
12895         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
12896         * gst/gstpad.h: Add functions that are useful as default pad
12897         link and fixate functions for elements.
12898
12899 2003-12-30  David Schleef  <ds@schleef.org>
12900
12901         * gst/gstpad.c: (gst_pad_link_try):
12902           Fix segfault when attempting to return to old caps
12903
12904 2003-12-29  David Schleef  <ds@schleef.org>
12905
12906         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
12907         (gst_caps_structure_simplify), (gst_caps_simplify):
12908         * gst/gstcaps.h:
12909           Add simplify function
12910         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
12911         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
12912         * gst/gstpad.h:
12913           Copy over srcnotify, sinknotify when calling old pad_link
12914           functions.  Add new is_negotiated() function.
12915         * gst/gststructure.c: (gst_structure_copy):
12916           Fix an incredibly stupid bug that should have been noticed
12917           weeks ago.  _copy() returned the argument, not the new copy.
12918
12919 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12920
12921         * gst/gstcaps.c: (gst_caps_append):
12922           add sanity checks
12923         * gst/gstcaps.h: (gst_caps_debug):
12924           remove, it doesn't exist anymore.
12925         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
12926         (gst_element_threadsafe_properties_post_run):
12927           make debugging messages not clutter up THREAD debug category
12928         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
12929         (gst_element_change_state):
12930           update to new caps API
12931         * gst/gstinterface.c: (gst_implements_interface_cast):
12932           don't put vital code in g_return_if_fail
12933         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
12934         (gst_pad_link_filtered):
12935           add pst_pad_try_link and use it.
12936         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
12937           implement correctly, deprecate first one.
12938         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
12939           add and implement.
12940         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
12941           implement.
12942         (gst_pad_get_negotiated_caps):
12943           add and implement. Make GST_PAD_CAPS call this function.
12944         (gst_pad_get_caps):
12945           remove unneeded check..
12946         (gst_pad_recover_caps_error):
12947           disable, always return FALSE.
12948         (gst_real_pad_dispose):
12949           don't free caps and appfilter anymore, they're unused.
12950         * gst/gstpad.h:
12951           Reflect changes mentioned above.
12952         * gst/gstsystemclock.c: (gst_system_clock_wait):
12953           Make 'clock is way behind' a debugging message.
12954         * gst/gstthread.c: (gst_thread_change_state):
12955           Fix debugging message
12956
12957 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12958
12959         * gst/gstinfo.h:
12960           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
12961         * docs/gst/tmpl/gstreamer-unused.sgml:
12962           removed all traces of cvs conflicts
12963
12964 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12965
12966         * configure.ac:
12967         * gst/schedulers/cothreads_compat.h:
12968         * libs/Makefile.am:
12969           remove last instances of wingo cothread usage
12970
12971 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12972
12973         * gst/gstplugin.c:
12974         * gst/gstversion.h.in:
12975         * gst/parse/grammar.y:
12976           change comment block from /** to /* when not gtk-doc comments
12977
12978 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12979
12980         * gst/gst.c: whitespace and doc style fixes
12981
12982 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12983
12984         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
12985
12986 2003-12-24  Colin Walters  <walters@verbum.org>
12987
12988         * gst/elements/gsttypefindelement.c:
12989           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
12990           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
12991           Don't double-free caps.
12992
12993 2003-12-23  David Schleef  <ds@schleef.org>
12994
12995         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
12996           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
12997           Many little fixes and additions of debug statements to
12998           get rhythmbox working.
12999
13000 2003-12-23  Colin Walters  <walters@verbum.org>
13001
13002         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13003         Use GST_PAD_LINK_SUCCESSFUL.
13004
13005 2003-12-23  David Schleef  <ds@schleef.org>
13006
13007         * gst/elements/gstaggregator.c:
13008         * gst/elements/gsttee.c:
13009           Use gst_pad_proxy_getcaps().
13010         * gst/gstpad.c:
13011         * gst/gstpad.h:
13012           Add gst_pad_proxy_getcaps(), which filter elements can use
13013           as a generic getcaps implementation.
13014           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13015           was advertised.
13016
13017 2003-12-23  David Schleef  <ds@schleef.org>
13018
13019         * gst/gstpad.c:
13020           Rearrange/rewrite much of the pad negotiation code, since it
13021           resembled pasta.  This actually changes the way some
13022           negotiation works, since the previous code was inconsistent
13023           depending on how it was invoked.  Add (internal) structure
13024           GstPadLink, which is used to hold some information (more in
13025           the future) about the link between two pads.  Fixes a number
13026           of bugs, including random lossage of filter caps when the
13027           initial negotiation is delayed.  A few functions are still
13028           unimplemented.
13029         * gst/gstpad.h:
13030           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13031           these when testing GstPadLinkReturn values instead of comparing
13032           directly.
13033
13034 2003-12-23  David Schleef  <ds@schleef.org>
13035
13036         * gst/gstvalue.c: 
13037         * gst/gstvalue.h:
13038           Rearrange lots of code.  Change registration of compare function
13039           into registration of compare/serialize/deserialize functions.
13040           Doesn't include implementation of gst_value_[de]serialize(),
13041           but that should be easy.
13042
13043 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13044
13045         * docs/gst/gstreamer-sections.txt:
13046         * docs/gst/tmpl/gstprops.sgml: removed
13047         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13048           David removed props and caps code, so let's remove their docs as well.
13049           Removed all no longer existing symbols from gstreamer-sections.txt
13050           
13051 2003-12-22  Colin Walters  <walters@verbum.org>
13052
13053         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13054           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13055           of tags directly.
13056
13057 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13058
13059         * gst/elements/gstelements.c:
13060           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13061         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13062           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13063           gst_caps (peer).
13064
13065 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13066
13067         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13068         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13069         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13070         (gst_spider_identity_sink_loop_type_finding):
13071         * gst/autoplug/gstspideridentity.h:
13072           Fix autoplugging in spider element, so it works with new caps.
13073           This was mainly caused by identifying empty caps incorrectly.
13074
13075 2003-12-22  David Schleef  <ds@schleef.org>
13076
13077         * gststructure.c, gstvalue.c, gstvalue.h: Add
13078           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13079           using g_value_copy()
13080
13081 2003-12-21  David Schleef  <ds@schleef.org>
13082
13083         * many, many files: Merge CAPS branch.  This includes:
13084           - implemention of GstValue and several GstValue types
13085           - implemention of GstStructure
13086           - entire rewrite of GstCaps
13087           - removal of GstProps
13088           - many changes to GstPad to compensate for new caps paradigm
13089           - removal of GstBufferpool
13090         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13091         gstvalue.h, gst/gstcaps[2]*.[ch]:
13092           - rename gstcaps2.[ch] to gstcaps.[ch]
13093
13094 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13095
13096         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13097         (gst_queue_chain), (gst_queue_handle_src_event):
13098           implement timeout for sending events. Workaround for if the
13099           pipeline on this queue is not passing any data.
13100
13101 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13102                                                                                 
13103         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13104         * moved CVS to freedesktop.org
13105