docs/pwg/: Document base classes, update sections of n-to-1 and 1-to-n (muxer, fix...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2
3         * docs/pwg/advanced-clock.xml:
4         * docs/pwg/appendix-porting.xml:
5         * docs/pwg/intro-preface.xml:
6         * docs/pwg/other-base.xml:
7         * docs/pwg/other-manager.xml:
8         * docs/pwg/other-nton.xml:
9         * docs/pwg/other-ntoone.xml:
10         * docs/pwg/other-oneton.xml:
11         * docs/pwg/pwg.xml:
12           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
13           demuxer), remove n-to-n (was never written), fix some code examples
14           and links and update the porting section to include all this.
15
16 2005-07-19  Wim Taymans  <wim@fluendo.com>
17
18         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
19         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
20         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
21         (gst_queue_src_activate_push), (gst_queue_change_state),
22         (gst_queue_get_property):
23         * gst/gstqueue.h:
24         Propagate GstFlowReturn more intelligently upstream and output
25         an ERROR/EOS when streaming stopped due to fatal error.
26
27 2005-07-19  Wim Taymans  <wim@fluendo.com>
28
29         * tools/gst-launch.c: (check_intr), (event_loop), (main):
30         Don't block forever for the state change to complete, the
31         pipeline already did with a sensible timeout.
32
33 2005-07-19  Wim Taymans  <wim@fluendo.com>
34
35         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
36         Make sure we never call the create function is we
37         got deactivated.
38
39 2005-07-19  Andy Wingo  <wingo@pobox.com>
40
41         * gst/parse/parse.l: Attempt to solve bug #172815.
42
43 2005-07-19  Wim Taymans  <wim@fluendo.com>
44
45         * docs/design/part-clocks.txt:
46         * docs/design/part-events.txt:
47         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
48         Small docs updates.
49         Only update the seeking values when we are not
50         busy streaming.
51
52 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
53
54         * gst/base/gstbasesrc.c: (gst_base_src_loop):
55           Oops, ignore the result of gst_pad_push_event here.
56
57 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
58
59         * gst/base/gstbasesrc.c: (gst_base_src_loop),
60         (gst_base_src_activate_push):
61           Send discont event from the loop function, as pads
62           aren't activated yet in the activate_push handler.
63
64         * gst/gstbin.c: (bin_bus_handler):
65           Don't leak element name.
66
67 2005-07-18  Andy Wingo  <wingo@pobox.com>
68
69         * configure.ac: Use AS_LIBTOOL_TAGS.
70
71 2005-07-18  Wim Taymans  <wim@fluendo.com>
72
73         * docs/gst/gstreamer.types:
74         Remove deleted types.
75
76 2005-07-18  Wim Taymans  <wim@fluendo.com>
77
78         * check/elements/gstfakesrc.c: (GST_START_TEST):
79         * configure.ac:
80         * gst/Makefile.am:
81         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
82         (init_popt_callback):
83         * gst/gst.h:
84         * gst/gst_private.h:
85         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
86         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
87         * gst/gstbin.h:
88         * gst/gstbus.h:
89         * gst/gstconfig.h.in:
90         * gst/gstelement.c: (gst_element_class_init),
91         (gst_element_set_base_time), (gst_element_get_base_time),
92         (iterator_fold_with_resync), (gst_element_change_state),
93         (gst_element_dispose), (gst_element_get_bus):
94         * gst/gstelement.h:
95         * gst/gstelementfactory.h:
96         * gst/gsterror.c: (_gst_core_errors_init):
97         * gst/gsterror.h:
98         * gst/gstevent.h:
99         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
100         * gst/gstindex.c:
101         * gst/gstinfo.c: (_gst_debug_init):
102         * gst/gstmessage.c: (_gst_message_copy):
103         * gst/gstmessage.h:
104         * gst/gstminiobject.h:
105         * gst/gstobject.c:
106         * gst/gstobject.h:
107         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
108         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
109         * gst/gstpad.h:
110         * gst/gstparse.h:
111         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
112         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
113         (gst_pipeline_get_last_stream_time):
114         * gst/gstpipeline.h:
115         * gst/gstpluginfeature.h:
116         * gst/gstquery.h:
117         * gst/gstscheduler.c:
118         * gst/gstscheduler.h:
119         * gst/gststructure.h:
120         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
121         (gst_task_finalize), (gst_task_func), (gst_task_create),
122         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
123         (gst_task_stop), (gst_task_pause):
124         * gst/gsttask.h:
125         * gst/gsttypefind.h:
126         * gst/gsttypes.h:
127         * gst/registries/gstlibxmlregistry.c: (load_feature),
128         (gst_xml_registry_load), (gst_xml_registry_save_feature):
129         * gst/registries/gstxmlregistry.c:
130         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
131         * gst/schedulers/threadscheduler.c:
132         * libs/gst/control/dparammanager.h:
133         * tools/gst-inspect.c: (print_element_list),
134         (print_plugin_features), (print_element_features):
135         * tools/gst-xmlinspect.c: (print_element_list),
136         (print_plugin_info), (main):
137         Removed plugable schedulers.
138         Removed Scheduler/Manager from elements.
139         Removed gsttypes.h, rearranged includes.
140         Removed dependency pad<->element, element<>pipeline, and
141         various others,  fix includes.
142         implement gst_pad_get_parent() with gst_object_get_parent()
143         Make GstTask sefcontained.
144         Fix _get_state() on GstBin, it did not return ASYNC with a 0
145         timeout.
146         Fix endless loop in iterator_fold_with_resync.
147
148
149 2005-07-18  Wim Taymans  <wim@fluendo.com>
150
151         * gst/Makefile.am:
152         * gst/gstarch.h:
153         Remove old file.
154
155 2005-07-18  Wim Taymans  <wim@fluendo.com>
156
157         * gst/Makefile.am:
158         No more cothreads.h
159
160 2005-07-18  Wim Taymans  <wim@fluendo.com>
161
162         * gst/cothreads.c:
163         * gst/cothreads.h:
164         Let's remove these.
165
166 2005-07-18  Wim Taymans  <wim@fluendo.com>
167
168         * docs/design/part-dynamic.txt:
169         * docs/design/part-events.txt:
170         * docs/design/part-seeking.txt:
171         Some more docs in the works.
172
173         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
174         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
175         (gst_base_transform_setcaps), (gst_base_transform_get_size),
176         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
177         (gst_base_transform_handle_buffer),
178         (gst_base_transform_sink_activate_push),
179         (gst_base_transform_src_activate_pull),
180         (gst_base_transform_set_passthrough),
181         (gst_base_transform_is_passthrough):
182         Refcounting fixes.
183
184         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
185         Cleanups.
186
187         * gst/gstevent.c: (gst_event_finalize):
188         Set SRC to NULL.
189
190         * gst/gstutils.c: (gst_element_unlink),
191         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
192         (gst_pad_proxy_setcaps):
193         * gst/gstutils.h:
194         Add _get_parent_element() to get a pads parent as an element.
195
196 2005-07-18  Wim Taymans  <wim@fluendo.com>
197
198         * check/gst/gstbin.c: (GST_START_TEST):
199         Remove bogus test.
200
201 2005-07-18  Wim Taymans  <wim@fluendo.com>
202
203         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
204         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
205         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
206         (gst_base_sink_event), (gst_base_sink_do_sync),
207         (gst_base_sink_chain), (gst_base_sink_loop),
208         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
209         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
210         Refcounting fixes.
211         Fix logic for returning ASYNC when not prerolled.
212
213 2005-07-18  Wim Taymans  <wim@fluendo.com>
214
215         * gst/gstqueue.c: (gst_queue_handle_sink_event):
216         Fix nasty refcount bug.
217
218 2005-07-16 Philippe Khalaf <burger@speedy.org>
219         * gst/elements/gstfdsrc.c:
220         * gst/elements/gstfdsrc.h:
221         * gst/elements/gstelements.c:
222         * gst/elements/Makefile.am:
223         Ported fdsrc to 0.9.
224
225 2005-07-16  Wim Taymans  <wim@fluendo.com>
226
227         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
228         (gst_base_sink_do_sync):
229         Fix compile error.
230
231 2005-07-16  Wim Taymans  <wim@fluendo.com>
232
233         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
234         (gst_base_sink_event), (gst_base_sink_get_times),
235         (gst_base_sink_do_sync), (gst_base_sink_change_state):
236         * gst/base/gstbasesink.h:
237         Store and use discont values when syncing buffers as described
238         in design docs.
239         
240         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
241         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
242         (gst_base_src_activate_push):
243         Push discont event when starting.
244
245         * gst/elements/gstidentity.c: (gst_identity_transform):
246         Small cleanups.
247
248         * gst/gstbin.c: (gst_bin_change_state):
249         Small cleanups in base_time  distribution.
250
251         * gst/gstelement.c: (gst_element_set_base_time),
252         (gst_element_get_base_time), (gst_element_change_state):
253         * gst/gstelement.h:
254         Added methods for the base_time of the element.
255         Some MT fixes.
256
257         * gst/gstpipeline.c: (gst_pipeline_send_event),
258         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
259         (gst_pipeline_get_last_stream_time):
260         * gst/gstpipeline.h:
261         MT fixes.
262         Handle seeking as described in design doc, remove stream_time
263         hack.
264         Cleanups clock and stream_time selection code. Added accessors
265         for the stream_time.
266         
267
268 2005-07-16  Andy Wingo  <wingo@pobox.com>
269
270         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
271         (#305291).
272
273 2005-07-16  Wim Taymans  <wim@fluendo.com>
274
275         * check/gst/gstbin.c: (GST_START_TEST):
276         Make elements silent as the deep_notify refs the
277         parent, which might make the test fail.
278
279         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
280         Don't hold the lock for too long.
281
282 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
283
284         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
285           Don't unref the caps we passed to gst_caps_make_writable() after
286           passing them. gst_caps_make_writable() will do that for us.
287
288 2005-07-15  Andy Wingo  <wingo@pobox.com>
289
290         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
291         (#157311).
292
293         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
294         own marshalling function for the handoff signal. Properly type the
295         buffer as a buffer. Fixes some warnings. Should do a more general
296         solution.
297         (gst_identity_class_init): Plug into the right marshaller.
298
299 2005-07-15  Wim Taymans  <wim@fluendo.com>
300
301         * docs/design/part-TODO.txt:
302         * docs/design/part-clocks.txt:
303         * docs/design/part-element-sink.txt:
304         * docs/design/part-events.txt:
305         * docs/design/part-gstpipeline.txt:
306         Updated docs, mostly DISCONT related.
307
308 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
309
310         * docs/pwg/building-pads.xml:
311           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
312
313 2005-07-15  Andy Wingo  <wingo@pobox.com>
314
315         * tools/gst-typefind.c: Update, add copyright block.
316
317         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
318         Normalize and truncate caps before fixation.
319
320         * gst/gstcaps.h:
321         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
322         discards all but the first structure from its argument.
323
324 2005-07-15  Wim Taymans  <wim@fluendo.com>
325
326         * gst/base/gstbasetransform.c: (gst_base_transform_init),
327         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
328         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
329         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
330         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
331         (gst_base_transform_chain), (gst_base_transform_change_state),
332         (gst_base_transform_set_passthrough),
333         (gst_base_transform_is_passthrough):
334         * gst/base/gstbasetransform.h:
335         Make passthrough work using the bufferpools.
336         Changed API a bit, subclasses have to write into a buffer
337         provided by the base class.
338         More debug info in nego functions.
339         
340         * gst/elements/gstidentity.c: (gst_identity_init),
341         (gst_identity_transform):
342         Port to new base class.
343
344 2005-07-15  Wim Taymans  <wim@fluendo.com>
345
346         * gst/gstmessage.c: (gst_message_new_state_changed):
347         * tools/gst-launch.c: (event_loop), (main):
348         Totally dump messages in -launch with the -m option.
349         Fix message name for State messages,
350
351 2005-07-14  Wim Taymans  <wim@fluendo.com>
352
353         * gst/base/gstbasesrc.c: (gst_base_src_loop):
354         Post error messages on errors.
355
356 2005-07-14  Wim Taymans  <wim@fluendo.com>
357
358         * gst/gstcaps.c: (gst_caps_do_simplify):
359         Remove debug info.
360
361         * gst/gsterror.h:
362         Define error for stream stopped.
363
364         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
365         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
366         Do proper return values.
367
368         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
369         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
370         (gst_pad_get_range):
371         Better return values.
372
373         * gst/gstpad.h:
374         Reorganise return values, add macro to check for fatal errors.
375
376         * gst/gstqueue.c: (gst_queue_chain):
377         Return proper GstFlowReturn values,
378
379 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
380
381         * docs/gst/gstreamer-sections.txt:
382         * docs/gst/gstreamer.types:
383         * docs/gst/tmpl/gst.sgml:
384         * docs/gst/tmpl/gstbasesink.sgml:
385         * docs/gst/tmpl/gstbasesrc.sgml:
386         * docs/gst/tmpl/gstbasetransform.sgml:
387         * docs/gst/tmpl/gstbin.sgml:
388         * docs/gst/tmpl/gstbuffer.sgml:
389         * docs/gst/tmpl/gstcaps.sgml:
390         * docs/gst/tmpl/gstclock.sgml:
391         * docs/gst/tmpl/gstcompat.sgml:
392         * docs/gst/tmpl/gstconfig.sgml:
393         * docs/gst/tmpl/gstelement.sgml:
394         * docs/gst/tmpl/gstelementdetails.sgml:
395         * docs/gst/tmpl/gstelementfactory.sgml:
396         * docs/gst/tmpl/gstenumtypes.sgml:
397         * docs/gst/tmpl/gsterror.sgml:
398         * docs/gst/tmpl/gstevent.sgml:
399         * docs/gst/tmpl/gstfakesink.sgml:
400         * docs/gst/tmpl/gstfakesrc.sgml:
401         * docs/gst/tmpl/gstfilesink.sgml:
402         * docs/gst/tmpl/gstfilesrc.sgml:
403         * docs/gst/tmpl/gstfilter.sgml:
404         * docs/gst/tmpl/gstformat.sgml:
405         * docs/gst/tmpl/gstghostpad.sgml:
406         * docs/gst/tmpl/gstimplementsinterface.sgml:
407         * docs/gst/tmpl/gstindex.sgml:
408         * docs/gst/tmpl/gstindexfactory.sgml:
409         * docs/gst/tmpl/gstinfo.sgml:
410         * docs/gst/tmpl/gstiterator.sgml:
411         * docs/gst/tmpl/gstmacros.sgml:
412         * docs/gst/tmpl/gstmemchunk.sgml:
413         * docs/gst/tmpl/gstminiobject.sgml:
414         * docs/gst/tmpl/gstobject.sgml:
415         * docs/gst/tmpl/gstpad.sgml:
416         * docs/gst/tmpl/gstpadtemplate.sgml:
417         * docs/gst/tmpl/gstparse.sgml:
418         * docs/gst/tmpl/gstpipeline.sgml:
419         * docs/gst/tmpl/gstplugin.sgml:
420         * docs/gst/tmpl/gstpluginfeature.sgml:
421         * docs/gst/tmpl/gstquery.sgml:
422         * docs/gst/tmpl/gstqueue.sgml:
423         * docs/gst/tmpl/gstregistry.sgml:
424         * docs/gst/tmpl/gstregistrypool.sgml:
425         * docs/gst/tmpl/gstscheduler.sgml:
426         * docs/gst/tmpl/gstschedulerfactory.sgml:
427         * docs/gst/tmpl/gststructure.sgml:
428         * docs/gst/tmpl/gstsystemclock.sgml:
429         * docs/gst/tmpl/gsttaglist.sgml:
430         * docs/gst/tmpl/gsttagsetter.sgml:
431         * docs/gst/tmpl/gsttrace.sgml:
432         * docs/gst/tmpl/gsttrashstack.sgml:
433         * docs/gst/tmpl/gsttypefind.sgml:
434         * docs/gst/tmpl/gsttypefindfactory.sgml:
435         * docs/gst/tmpl/gsttypes.sgml:
436         * docs/gst/tmpl/gsturihandler.sgml:
437         * docs/gst/tmpl/gsturitype.sgml:
438         * docs/gst/tmpl/gstutils.sgml:
439         * docs/gst/tmpl/gstvalue.sgml:
440         * docs/gst/tmpl/gstversion.sgml:
441         * docs/gst/tmpl/gstxml.sgml:
442         * docs/libs/tmpl/gstcontrol.sgml:
443         * docs/libs/tmpl/gstdataprotocol.sgml:
444         * docs/libs/tmpl/gstdparam.sgml:
445         * docs/libs/tmpl/gstdplinint.sgml:
446         * docs/libs/tmpl/gstdpman.sgml:
447         * docs/libs/tmpl/gstdpsmooth.sgml:
448         * docs/libs/tmpl/gstgetbits.sgml:
449         * docs/libs/tmpl/gstunitconvert.sgml:
450         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
451         (gst_push_src_base_init), (gst_push_src_class_init),
452         (gst_push_src_init), (gst_push_src_create):
453         * gst/base/gstpushsrc.h:
454         * gst/elements/gstelements.c:
455         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
456         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
457         (gst_fake_sink_init), (gst_fake_sink_set_property),
458         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
459         (gst_fake_sink_event), (gst_fake_sink_preroll),
460         (gst_fake_sink_render), (gst_fake_sink_change_state):
461         * gst/elements/gstfakesink.h:
462         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
463         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
464         (gst_fake_src_base_init), (gst_fake_src_class_init),
465         (gst_fake_src_init), (gst_fake_src_event_handler),
466         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
467         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
468         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
469         (gst_fake_src_create_buffer), (gst_fake_src_create),
470         (gst_fake_src_start), (gst_fake_src_stop):
471         * gst/elements/gstfakesrc.h:
472         * gst/elements/gstfilesink.c: (_do_init),
473         (gst_file_sink_base_init), (gst_file_sink_class_init),
474         (gst_file_sink_init), (gst_file_sink_dispose),
475         (gst_file_sink_set_location), (gst_file_sink_set_property),
476         (gst_file_sink_get_property), (gst_file_sink_open_file),
477         (gst_file_sink_close_file), (gst_file_sink_query),
478         (gst_file_sink_event), (gst_file_sink_render),
479         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
480         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
481         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
482         * gst/elements/gstfilesink.h:
483         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
484         (gst_file_src_class_init), (gst_file_src_init),
485         (gst_file_src_finalize), (gst_file_src_set_location),
486         (gst_file_src_set_property), (gst_file_src_get_property),
487         (gst_file_src_map_region), (gst_file_src_map_small_region),
488         (gst_file_src_create_mmap), (gst_file_src_create_read),
489         (gst_file_src_create), (gst_file_src_is_seekable),
490         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
491         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
492         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
493         (gst_file_src_uri_handler_init):
494         * gst/elements/gstfilesrc.h:
495           more autistic cleanliness in functions/names/defines
496
497 2005-07-13  Andy Wingo  <wingo@pobox.com>
498
499         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
500         source couldn't negotiate.
501
502         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
503         connections again.
504
505         * gst/gstutils.h:
506         * gst/gstutils.c (gst_element_link_pads_filtered): New old
507         function. I am channeling Hades. Put your boots on suckers!!!
508
509 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
510
511         * testsuite/caps/Makefile.am:
512         * testsuite/caps/value_compare.c:
513         * testsuite/caps/value_intersect.c:
514         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
515           move two testsuite apps over to the check dir
516
517 2005-07-12  Wim Taymans  <wim@fluendo.com>
518
519         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
520         Added more debug info in the negotiate process.
521
522         * gst/gstmessage.h:
523         Prepare for segment playback.
524
525         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
526         Better debugging.
527
528         * gst/gstutils.c:
529         Some more docs.
530
531         * tools/gst-launch.c: (main):
532         NULL pipeline on errors.
533
534 2005-07-12  Andy Wingo  <wingo@pobox.com>
535
536         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
537         not it comes from a malloc region. Make sure our copy gets freed.
538
539 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
540
541         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
542         * check/gst/gstmessage.c: (GST_START_TEST):
543         * check/gst/gststructure.c: (GST_START_TEST),
544         (gst_structure_suite), (main):
545           more testing
546         * gst/gstelement.c: (gst_element_message_full):
547           clean up GError and debug string now that they get copied
548         * gst/gstmessage.c: (gst_message_new_error),
549         (gst_message_new_warning), (gst_message_parse_error),
550         (gst_message_parse_warning):
551           use GST_TYPE_G_ERROR for structure_new, and take copies of
552           arguments, so that we don't mess up refcounting
553
554 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
555
556         * check/Makefile.am:
557           add per-test valgrind targets
558         * check/gst-libs/gdp.c: (GST_START_TEST),
559         (gst_data_protocol_suite), (main):
560           clean up
561
562 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
563
564         * check/Makefile.am:
565           instate more valgrindable tests
566         * check/elements/gstfakesrc.c: (chain_func), (event_func),
567         (GST_START_TEST), (fakesrc_suite):
568         * check/gst/gstpad.c: (GST_START_TEST):
569         * check/gst/gststructure.c: (GST_START_TEST):
570           fix test leaks
571         * docs/gst/tmpl/gstminiobject.sgml:
572         * gst/gstpad.c: (gst_pad_finalize):
573           fix the static mutex leak
574
575 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
576
577         * check/Makefile.am:
578           add two more tests for valgrinding
579         * check/gst/gstvalue.c: (GST_START_TEST):
580           test refcount of deserialized buffer, found a leak
581         * docs/gst/gstreamer-docs.sgml:
582         * docs/gst/gstreamer-sections.txt:
583         * docs/gst/gstreamer.types:
584         * docs/gst/tmpl/gstminiobject.sgml:
585           add miniobject to docs
586         * gst/gstminiobject.c:
587           add some docs
588         * gst/gstvalue.c: (gst_value_deserialize_buffer),
589         (gst_string_unwrap):
590           fix a hard-to-find invalid write for one of the tests
591           fix a leak for deserialized buffers
592
593 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
594
595         * docs/pwg/advanced-events.xml:
596         * docs/pwg/advanced-request.xml:
597         * docs/pwg/advanced-scheduling.xml:
598         * docs/pwg/appendix-porting.xml:
599         * docs/pwg/building-boiler.xml:
600         * docs/pwg/intro-preface.xml:
601         * docs/pwg/other-ntoone.xml:
602           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
603           of example code and explanation for pad activation, loop() and
604           getrange() functions and a bit more. Remove old comments pointing
605           to loop-functions.
606         * examples/pwg/Makefile.am:
607           Add loop/getrange examples.
608
609 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
610
611         * configure.ac:
612           check for valgrind binary + some fixes
613         * check/gst.supp:
614           valgrind suppressions for the tests
615         * check/Makefile.am:
616           add a valgrind: target that valgrinds the unit tests
617         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
618         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
619         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
620         * check/gst/gstghostpad.c:
621           added some cleanup
622         * check/gst/gstdata.c:
623           removed
624         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
625         (thread_unref), (gst_mini_object_suite), (main):
626           added
627         * gst/gst.c: (gst_deinit):
628         * gst/gst.h:
629           add a method to clean up.
630         * gst/gstsystemclock.c: (gst_system_clock_dispose),
631         (gst_system_clock_obtain):
632           allow for disposing the system clock.
633         * tools/gst-launch.c: (main):
634           deinit
635
636 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
637
638         * docs/gst/tmpl/gstbasesrc.sgml:
639         * docs/gst/tmpl/gstfakesrc.sgml:
640         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
641         (gst_base_src_init), (gst_base_src_set_property),
642         (gst_base_src_get_property), (gst_base_src_get_range),
643         (gst_base_src_start):
644         * gst/base/gstbasesrc.h:
645           add num-buffers property
646         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
647         (gst_fakesrc_init), (gst_fakesrc_set_property),
648         (gst_fakesrc_get_property), (gst_fakesrc_create),
649         (gst_fakesrc_start):
650           remove num-buffers property
651
652 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
653
654         * docs/gst/gstreamer-sections.txt:
655         * docs/gst/tmpl/gstbasesink.sgml:
656         * docs/gst/tmpl/gstbasesrc.sgml:
657         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
658         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
659         (gst_base_sink_finalize), (gst_base_sink_set_clock),
660         (gst_base_sink_set_property), (gst_base_sink_get_property),
661         (gst_base_sink_handle_object), (gst_base_sink_event),
662         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
663         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
664         (gst_base_sink_loop), (gst_base_sink_deactivate),
665         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
666         (gst_base_sink_change_state):
667         * gst/base/gstbasesink.h:
668         * gst/base/gstbasesrc.h:
669         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
670         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
671         (gst_filesink_init):
672           more macro splitting
673
674 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
675
676         * gst/gstelement.c: (gst_element_get_bus):
677           add debug
678         * tools/gst-launch.c: (check_intr), (event_loop):
679           fix bus leaks
680
681 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
682
683         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
684           fix a caps leak
685
686 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
687
688         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
689         (gst_base_src_finalize):
690           add finalize method and clean up properly
691         * gst/gstpipeline.c: (gst_pipeline_dispose):
692           add debug
693
694 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
695
696         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
697         (gst_bin_suite):
698           add more things to check
699         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
700         * gst/gstelement.c:
701           more debug
702
703 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
704
705         * check/elements/gstfakesrc.c: (chain_func), (event_func),
706         (GST_START_TEST), (fakesrc_suite):
707         * check/gst-libs/gdp.c: (GST_START_TEST):
708         * check/gst/gst.c: (GST_START_TEST):
709         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
710         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
711         * check/gst/gstbus.c: (GST_START_TEST):
712         * check/gst/gstcaps.c: (GST_START_TEST):
713         * check/gst/gstdata.c: (GST_START_TEST):
714         * check/gst/gstelement.c: (GST_START_TEST):
715         * check/gst/gstghostpad.c: (GST_START_TEST):
716         * check/gst/gstiterator.c: (GST_START_TEST):
717         * check/gst/gstmessage.c: (GST_START_TEST):
718         * check/gst/gstobject.c: (GST_START_TEST):
719         * check/gst/gstpad.c: (GST_START_TEST):
720         * check/gst/gststructure.c: (GST_START_TEST):
721         * check/gst/gstsystemclock.c: (GST_START_TEST),
722         (gst_systemclock_suite):
723         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
724         * check/gst/gstvalue.c: (GST_START_TEST):
725         * check/pipelines/cleanup.c: (GST_START_TEST):
726         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
727         * check/states/sinks.c: (GST_START_TEST):
728         * check/gstcheck.c: (gst_check_init):
729         * check/gstcheck.h:
730           add debugging category
731           use GST_START_TEST now, so we add a debug line
732
733 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
734
735         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
736           add test for state change message on a bin
737         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
738           add another test
739         * gst/gstbin.c: (gst_bin_init):
740         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
741         * gst/gstelement.c: (gst_element_post_message),
742         (gst_element_set_state):
743         * gst/gstelementfactory.c: (gst_element_factory_create):
744         * gst/gstmessage.c: (gst_message_new):
745         * gst/gstscheduler.c:
746           various debugging additions and cleanups
747
748 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
749
750         * check/Makefile.am:
751         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
752         (main):
753           adding tests for elements
754         * gst/gstelement.c: (gst_element_dispose):
755
756 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
757
758         * gst/registries/gstlibxmlregistry.c: (load_feature):
759           plug more leaks.  A simple gst_init() now is leakfree, yay.
760
761 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
762
763         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
764         (gst_xml_registry_load):
765           plug another memleak
766
767 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
768
769         * configure.ac:
770           use GST_SET_ERROR_CFLAGS
771         * docs/faq/cvs.xml:
772           change to ERROR_CFLAGS
773
774 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
775
776         * configure.ac:
777           make GST_ERROR_CFLAGS overridable and re-enable Werror
778         * docs/faq/cvs.xml:
779           add a note about error CFLAGS
780         * docs/gst/tmpl/gstfakesrc.sgml:
781         * gst/elements/gstfakesrc.c:
782           comment out some unused code
783         * gst/gst.c: (split_and_iterate):
784         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
785         (load_feature):
786           plug some memleaks
787
788 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
789
790         * common/Makefile.am:
791         * common/gtk-doc.mak:
792         * docs/gst/Makefile.am:
793           factor out gtk-doc.mak
794
795 2005-07-07  Wim Taymans  <wim@fluendo.com>
796
797         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
798         (gst_thread_scheduler_dispose):
799         Unlock the STREAM_LOCK completely.
800
801 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
802
803         * check/Makefile.am:
804         * check/elements/.cvsignore:
805         * check/elements/gstfakesrc.c: (chain_func), (event_func),
806         (START_TEST), (fakesrc_suite), (main):
807         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
808         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
809         (gst_fakesrc_create), (gst_fakesrc_start):
810         * gst/elements/gstfakesrc.h:
811           adding a first element test
812
813 2005-07-07  Andy Wingo  <wingo@pobox.com>
814
815         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
816         debug message.
817
818 2005-07-07  Wim Taymans  <wim@fluendo.com>
819
820         * gst/gstquery.c:
821         * gst/gstquery.h:
822         Remove old types
823
824 2005-07-07  Wim Taymans  <wim@fluendo.com>
825
826         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
827         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
828         Allow subclasses to implement their own negotiation.
829
830 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
831
832         * docs/design/part-gstbin.txt:
833         * docs/design/part-gstpipeline.txt:
834           Update design notes to reflect the movement of
835           responsibility for bus handling from GstPipeline to
836           GstBin
837
838 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
839
840         * configure.ac:
841           Remove unnecessary queue2/3/4 examples.
842
843 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
844
845         * examples/Makefile.am:
846         * examples/helloworld/helloworld.c: (event_loop), (main):
847         * examples/queue/queue.c: (event_loop), (main):
848         * examples/queue2/queue2.c: (main):
849           Update a couple of the examples to work again.
850
851         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
852         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
853          Spelling corrections and extra debug.
854         
855         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
856         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
857         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
858         * gst/gstbin.h:
859         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
860         (gst_pipeline_change_state):
861         * gst/gstpipeline.h:
862           Move the bus handler for children to the GstBin, and create a
863           separate bus for receiving messages from children to the one the
864           bus sends 'upwards' on.
865
866 2005-07-06  Wim Taymans  <wim@fluendo.com>
867
868         * gst/base/README:
869         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
870         (gst_base_sink_handle_object), (gst_base_sink_loop),
871         (gst_base_sink_change_state):
872         * gst/base/gstbasesink.h:
873         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
874         (gst_base_src_init), (gst_base_src_setcaps),
875         (gst_base_src_getcaps), (gst_base_src_loop),
876         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
877         (gst_base_src_start), (gst_base_src_change_state):
878         * gst/base/gstbasesrc.h:
879         Make basesrc negotiate.
880         Handle the case where preroll fails in basesink.
881         Update README.
882
883 2005-07-06  Wim Taymans  <wim@fluendo.com>
884
885         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
886         Implement the fixate function.
887         Clean up acceptcaps.
888
889 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
890
891         * docs/pwg/building-filterfactory.xml:
892         * docs/pwg/pwg.xml:
893           Remove never-written filter-factory chapter; I'll add the various
894           base classes to part 4 ("other element types") later on.
895
896 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
897
898         * docs/pwg/advanced-negotiation.xml:
899         * docs/pwg/building-boiler.xml:
900         * docs/pwg/building-pads.xml:
901         * docs/pwg/pwg.xml:
902         * examples/pwg/Makefile.am:
903           Add a chapter on caps negotiation, simplify the original code
904           samples a bit w.r.t. caps negotiation, add link to the advanced
905           section. Add a bunch of examples showing different use cases of
906           different types of caps negotiation. Upstream renegotiation isn't
907           fully documented yet since nobody knows how that works.
908
909 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
910
911         * check/gst/gstpad.c:
912         * check/gstcheck.c:
913         * gst/gstpad.c: (gst_pad_get_internal_links_default):
914           if pad has no parent, return NULL as list of internal links
915
916 2005-07-05  Andy Wingo  <wingo@pobox.com>
917
918         * gst/elements/gstfilesrc.c:
919         * gst/elements/gstfakesrc.c: 
920         * gst/base/gstpushsrc.c:
921         * gst/base/gstbasesrc.h: 
922         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
923         
924 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
925
926         * Makefile.am:
927           better report generation target (lcov needs a patch)
928
929 2005-07-05  Andy Wingo  <wingo@pobox.com>
930
931         * gst/elements, testsuite: Null if we got it...
932
933 2005-07-05  Wim Taymans  <wim@fluendo.com>
934
935         * configure.ac:
936         * libs/gst/dataprotocol/Makefile.am:
937         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
938         * libs/gst/dataprotocol/dataprotocol.h:
939         * pkgconfig/Makefile.am:
940         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
941         * pkgconfig/gstreamer-dataprotocol.pc.in:
942         Ported dataprotol to 0.9. 
943         Added pkgconfig files.
944
945 2005-07-05  Andy Wingo  <wingo@pobox.com>
946
947         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
948         Default to returning TRUE for the case when tranform_caps returns
949         a fixed caps, like for identity or volume.
950
951         * check/gst/gstbus.c (pound_bus_with_messages): 
952         * check/gst/gstmessage.c (START_TEST): 
953         * check/pipelines/simple_launch_lines.c (got_handoff): Application
954         message API change.
955
956         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
957         logic weaks here: always run transform_caps, trying passthrough
958         operation only if the original caps intersects with the transform.
959
960         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
961         source and sink caps.
962
963         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
964         Intersect the peer caps with the pad template before going into
965         transform_caps.
966         (gst_base_transform_transform_caps): More debugging.
967
968         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
969         src argument.
970
971 2005-07-04  Edward Hervey  <edward@fluendo.com>
972
973         * gst/gstutils.c:
974         * gst/gstutils.h:
975         (gst_pad_add_*_probe): now returns the signal id for better wrapping
976         in bindings.
977
978 2005-07-04  Andy Wingo  <wingo@pobox.com>
979
980         * check/gst/gstpad.c: Only set explicit caps on pads.
981
982 2005-07-01  Andy Wingo  <wingo@pobox.com>
983
984         * tests/network-clock.scm: Commentary update.
985
986         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
987         Didn't really make sense, not implementable with basetransform,
988         etc.
989         (gst_identity_transform): Unref inbuf via make_writable. Feeble
990         attempt at implementing the sync property, needs an unlock method.
991
992         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
993         New func, by default returns the same caps (the identity
994         transformation).
995         (gst_base_transform_getcaps): Uses transform_caps to return
996         something sensible.
997         (gst_base_transform_setcaps): Complicated logic to get caps on
998         both pads, even if they are different, and to call set_caps once
999         for every time both pads get their caps set.
1000         (gst_base_transform_handle_buffer): Give the ref to the transform
1001         function. Allows in-place modification of the buffer.
1002
1003         * gst/base/gstbasetransform.h (transform_caps): New class method.
1004         Given caps on one side, what can I do on the other.
1005         (set_caps): Take two caps, one for each side of the element.
1006
1007         * gst/gstpad.h:
1008         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1009         caps in place. This is safe because we can check the mutability of
1010         the caps, and a good idea because fixate functions are just called
1011         as a matter of last resort. (Not actually implemented.)
1012         (gst_pad_set_caps): If the caps we're setting is actually the same
1013         as the existing pad caps, just update the pointer without calling
1014         setcaps. Assert that caps is either NULL or fixed, as per the
1015         docs.
1016
1017         * gst/gstghostpad.c: Update for fixate changes.
1018
1019 2005-07-02  Andy Wingo  <wingo@pobox.com>
1020
1021         * gst/gstcaps.c:
1022         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1023         two refcounts makes it immutable, which is enough. Doc more.
1024
1025 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1026
1027         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1028           Put the mini_object into GValue as a mini_object,
1029           not a gpointer, since that's how we declared
1030           the signal.
1031
1032 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1033
1034         * examples/pwg/Makefile.am:
1035           Fix buildbot again.
1036
1037 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1038
1039         * docs/pwg/building-testapp.xml:
1040           Add extra check.
1041         * examples/pwg/Makefile.am:
1042           Fix buildbot.
1043
1044 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1045
1046         * configure.ac:
1047         * examples/Makefile.am:
1048         * examples/pwg/Makefile.am:
1049         * examples/pwg/extract.pl:
1050           Enable building the PWG examples.
1051         * docs/pwg/advanced-interfaces.xml:
1052           Add URI interface stub.
1053         * docs/pwg/advanced-types.xml:
1054         * docs/pwg/other-autoplugger.xml:
1055         * docs/pwg/appendix-porting.xml:
1056         * docs/pwg/pwg.xml:
1057           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1058         * docs/pwg/building-boiler.xml:
1059         * docs/pwg/building-chainfn.xml:
1060         * docs/pwg/building-pads.xml:
1061         * docs/pwg/building-props.xml:
1062         * docs/pwg/building-state.xml:
1063         * docs/pwg/building-testapp.xml:
1064           Update the building-*.xml parts for 0.9 changes. All examples
1065           code blocks compile in examples/pwg/*.
1066
1067 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1068
1069         * docs/manual/advanced-autoplugging.xml:
1070         * docs/manual/appendix-checklist.xml:
1071         * docs/manual/appendix-integration.xml:
1072         * docs/manual/highlevel-components.xml:
1073           Fix playbin/decodebin examples, update docs a bit, mention bus
1074           instead of signals in various places, mention kmplayer and
1075           kaffeine since they have a working GStreamer backend in the KDE
1076           section.
1077
1078 2005-06-30  Wim Taymans  <wim@fluendo.com>
1079
1080         * CHANGES-0.9:
1081         * docs/design/draft-ghostpads.txt:
1082         * docs/design/draft-push-pull.txt:
1083         * docs/design/draft-query.txt:
1084         * docs/design/part-TODO.txt:
1085         * docs/design/part-query.txt:
1086         Added CHANGES-0.9 doc, updated status of other docs.
1087         
1088         * gst/gstquery.h:
1089         Remove "hmm" macro
1090
1091 2005-06-30  Wim Taymans  <wim@fluendo.com>
1092
1093         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1094         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1095         (gst_base_sink_change_state):
1096         * gst/base/gstbasesink.h:
1097         Some tweaks, only EOS and a buffer complete a preroll.
1098
1099 2005-06-30  Andy Wingo  <wingo@pobox.com>
1100
1101         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1102         activate_push down to the internal pad as well.
1103
1104 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1105
1106         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1107
1108         * gst/gsttaginterface.c:
1109           Some documentation fixes (#307394 and #307397).
1110
1111 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1112
1113         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1114
1115         * gst/gstvalue.c: (gst_value_intersect_list):
1116           Fix memleak (#309125).
1117
1118 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1119
1120         * docs/manual/advanced-dataaccess.xml:
1121           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1122         * docs/manual/basics-pads.xml:
1123           Add reference for filtered caps to above chapter.
1124
1125 2005-06-30  Wim Taymans  <wim@fluendo.com>
1126
1127         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1128         (gst_bin_change_state):
1129         Probes are gone.
1130         Lame attempt at making the state change function a bit
1131         more readable.
1132
1133 2005-06-30  Wim Taymans  <wim@fluendo.com>
1134
1135         * docs/design/part-clocks.txt:
1136         * docs/design/part-element-sink.txt:
1137         * docs/design/part-events.txt:
1138         * docs/design/part-preroll.txt:
1139         * docs/design/part-states.txt:
1140         Some more tweeks and additions to the docs.
1141
1142 2005-06-30  Wim Taymans  <wim@fluendo.com>
1143
1144         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1145         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1146         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1147         (gst_pad_check_pull_range), (gst_pad_get_range),
1148         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1149         * gst/gstpad.h:
1150         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1151         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1152         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1153         (gst_pad_remove_buffer_probe):
1154         Removed atomic operations, use existing LOCK.
1155         Move exception handling out of main code path.
1156
1157 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1158
1159         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1160         (silly_return_true_function), (gst_pad_class_init),
1161         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1162         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1163         (gst_pad_send_event):
1164           Fix accumulator, add default value by using _emitv() instead
1165           of _emit() for signal emission.
1166
1167 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1168
1169         * docs/manual/advanced-dataaccess.xml:
1170         * examples/manual/Makefile.am:
1171           Add probe example.
1172         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1173           Make work (??).
1174
1175 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1176
1177         * gst/elements/gstfilesink.c: (gst_filesink_render):
1178           Simplify code so that we don't have to handle short
1179           writes and return GST_FLOW_ERROR if an error occured.
1180
1181 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1182
1183         * docs/gst/gstreamer-docs.sgml:
1184           Remove probes more.
1185
1186 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1187
1188         * docs/gst/gstreamer-sections.txt:
1189         * docs/gst/tmpl/gstpad.sgml:
1190         * docs/gst/tmpl/gstprobe.sgml:
1191         * gst/Makefile.am:
1192         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1193         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1194         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1195         (gst_pad_push_event), (gst_pad_send_event):
1196         * gst/gstpad.h:
1197         * gst/gstutils.c: (gst_pad_add_data_probe),
1198         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1199         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1200         (gst_pad_remove_buffer_probe):
1201         * gst/gstutils.h:
1202           Remove old probes, add new g-signal-based probes and some utility
1203           functions.
1204
1205 2005-06-29  Edward Hervey  <edward@fluendo.com>
1206
1207         * gst/gstelementfactory.c:
1208         * gst/gstutils.h:
1209         * gst/gstutils.c:
1210         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1211         the definition to the header file.
1212
1213 2005-06-29  Andy Wingo  <wingo@pobox.com>
1214
1215         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1216         plugins from the source directory.
1217
1218 2005-06-29  Wim Taymans  <wim@fluendo.com>
1219
1220         * docs/gst/tmpl/gstbuffer.sgml:
1221         * docs/gst/tmpl/gstclock.sgml:
1222         Some fixings for blantently wrong text.
1223
1224 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1225
1226         * check/Makefile.am:
1227         * gst/gst.c: (add_path_func), (init_pre):
1228         * gst/gstregistry.c: (gst_registry_add_path):
1229           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1230           only scan the GST_PLUGIN_PATH locations, and not add
1231           system locations
1232
1233 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1234
1235         * docs/gst/gstreamer-sections.txt:
1236         * docs/gst/tmpl/gstbasesrc.sgml:
1237         * gst/gstelement.c:
1238         * gst/gstelement.h:
1239         * gst/gstevent.c:
1240         * gst/gstutils.c:
1241           doc fixes
1242
1243 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1244
1245         * docs/manual/advanced-autoplugging.xml:
1246           Fix autoplugging example.
1247
1248 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1249
1250         * docs/manual/advanced-autoplugging.xml:
1251         * docs/manual/mime-world.fig:
1252           Try to get autoplugging working, fix type detection. Fix text
1253           in hello-world image.
1254
1255 2005-06-29  Wim Taymans  <wim@fluendo.com>
1256
1257         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1258         (gst_base_sink_change_state):
1259         Small debug line.
1260
1261         * gst/gstclock.h:
1262         map SIGNAL and BROADCAST to the right function.
1263
1264         * gst/gstobject.h:
1265         Remove redundant braces.
1266
1267         * gst/gstpad.c: (gst_pad_set_caps):
1268         Don't call setcaps function when reseting caps to NULL.
1269
1270         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1271         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1272         (gst_system_clock_id_unschedule):
1273         Use BROADCAST as this is what we do.
1274
1275 2005-06-29  Wim Taymans  <wim@fluendo.com>
1276
1277         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1278         We are actually prerolling before commiting the state
1279         change. 
1280
1281 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1282
1283         * docs/manual/advanced-clocks.xml:
1284         * docs/manual/advanced-interfaces.xml:
1285         * docs/manual/advanced-metadata.xml:
1286         * docs/manual/advanced-position.xml:
1287         * docs/manual/advanced-schedulers.xml:
1288         * docs/manual/advanced-threads.xml:
1289         * docs/manual/appendix-porting.xml:
1290         * docs/manual/basics-bins.xml:
1291         * docs/manual/basics-bus.xml:
1292         * docs/manual/basics-elements.xml:
1293         * docs/manual/basics-helloworld.xml:
1294         * docs/manual/basics-pads.xml:
1295         * docs/manual/highlevel-components.xml:
1296         * docs/manual/manual.xml:
1297         * docs/manual/thread.fig:
1298           Update (until threads/scheduling) Application Development Manual;
1299           remove GstThread, add GstBus, add simple porting checklist, add
1300           documentation for tag writing, clocks, make all examples until this
1301           part compile and run.
1302         * examples/manual/Makefile.am:
1303           Update from changes to Application Development Manual; add bus
1304           example, remove thread example.
1305
1306 2005-06-28  Wim Taymans  <wim@fluendo.com>
1307
1308         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1309         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1310         (gst_bus_source_dispatch):
1311         Add debugging messages.
1312         Make internal methods static.
1313         Handle the case where the bus is flushed in the handler.
1314         
1315         * gst/gstelement.c: (gst_element_get_bus):
1316         Fix refcount in _get_bus();
1317
1318         * gst/gstpipeline.c: (gst_pipeline_change_state),
1319         (gst_pipeline_get_clock_func):
1320         Clock refcounting fixes.
1321         Handle the case where preroll timed out more gracefully.
1322         
1323         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1324         Clean up the internal thread in dispose. This is needed
1325         for subclasses that actually get disposed.
1326         
1327         * gst/schedulers/threadscheduler.c:
1328         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1329         (gst_thread_scheduler_dispose):
1330         Free thread pool in dispose.
1331
1332 2005-06-28  Andy Wingo  <wingo@pobox.com>
1333
1334         * tests/network-clock-utils.scm (debug, print-event): New utils.
1335
1336         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1337         (*packet-loss*): Unified loss probability.
1338         (network-time): Report out-of-band events.
1339
1340         * tests/plot-data: Add support for out-of-band events. Hack it
1341         into this script instead of passing it down the pipe; should fix
1342         this later.
1343
1344 2005-06-28  Wim Taymans  <wim@fluendo.com>
1345
1346         * docs/gst/gstreamer.types:
1347         * docs/gst/tmpl/gstbasesrc.sgml:
1348         * docs/gst/tmpl/gstpad.sgml:
1349         Docs fixes.
1350
1351 2005-06-28  Wim Taymans  <wim@fluendo.com>
1352
1353         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1354         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1355         (gst_proxy_pad_do_fixatecaps):
1356         Correctly proxy the check_pull_range function.
1357
1358 2005-06-28  Andy Wingo  <wingo@pobox.com>
1359
1360         * tests/network-clock.scm: Removed need for slib.
1361         
1362 2005-06-28  Wim Taymans  <wim@fluendo.com>
1363
1364         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1365         (gst_basesink_preroll_queue_flush):
1366         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1367         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1368         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1369         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1370         (gst_proxy_pad_set_property):
1371         * gst/gstpad.c:
1372         * gst/gstpad.h:
1373         * gst/gstqueue.c: (gst_queue_init):
1374         The deprecated pad loop function is removed now.
1375
1376 2005-06-28  Andy Wingo  <wingo@pobox.com>
1377
1378         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1379         New parameters, simulate network packet loss.
1380
1381         * tests/network-clock-utils.scm: Initialize the RNG.
1382
1383 2005-06-28  Wim Taymans  <wim@fluendo.com>
1384
1385         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1386         (gst_basesink_event), (gst_basesink_deactivate):
1387         Flushing the preroll queue always needs to unlock the waiters.
1388
1389 2005-06-28  Edward Hervey  <edward@fluendo.com>
1390
1391         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1392         Wheen a seek was successful on a pipeline, set the stream_time to the
1393         seek offset in order to have a synchronized stream_time.
1394
1395 2005-06-28  Wim Taymans  <wim@fluendo.com>
1396
1397         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1398         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1399         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1400         (gst_proxy_pad_do_fixatecaps):
1401         Call wrapper function instead of just calling the function
1402         pointers. This takes care of any locking and whatmore.
1403
1404 2005-06-28  Wim Taymans  <wim@fluendo.com>
1405
1406         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1407         (gst_pad_pull_range):
1408         * gst/gstpad.h:
1409         CONNECTED -> LINKED.
1410
1411 2005-06-28  Andy Wingo  <wingo@pobox.com>
1412
1413         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1414         source-munging commit!!!
1415
1416         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1417         (gst_object_sink): Take gpointer arguments, not GstObject --
1418         avoids casts. Like GLib.
1419
1420         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1421         activate.
1422
1423 2005-06-27  Andy Wingo  <wingo@pobox.com>
1424
1425         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1426         remaining buffer.
1427
1428         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1429         returns a sorted copy of the trace list.
1430         (gst_alloc_trace_print_live): New API, only prints traces with
1431         live objects. Sort the list.
1432         (gst_alloc_trace_print_all): Sort the list.
1433         (gst_alloc_trace_print): Align columns.
1434
1435         * gst/elements/gstttypefindelement.c:
1436         * gst/elements/gsttee.c:
1437         * gst/base/gstbasesrc.c:
1438         * gst/base/gstbasesink.c:
1439         * gst/base/gstbasetransform.c:
1440         * gst/gstqueue.c: Adapt for pad activation changes.
1441
1442         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1443         sched.
1444         (gst_pipeline_dispose): Drop ref on sched.
1445
1446         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1447         (gst_pad_activate_default): Push mode by default.
1448         (pre_activate_switch, post_activate_switch): New stubs, things to
1449         do before and after switching activation modes on pads.
1450         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1451         the pad's activate function to choose which mode to activate.
1452         Shortcut on deactivation and call the right function directly.
1453         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1454         mode.
1455         (gst_pad_activate_push): New API, same for push mode.
1456         (gst_pad_set_activate_function) 
1457         (gst_pad_set_activatepull_function) 
1458         (gst_pad_set_activatepush_function): Setters for new API.
1459
1460         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1461         Trace all miniobjects.
1462         (gst_mini_object_make_writable): Unref the arg if we copy, like
1463         gst_caps_make_writable.
1464
1465         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1466
1467         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1468         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1469         Adapt for new pad API.
1470
1471         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1472
1473         * gst/gstelement.h:
1474         * gst/gstelement.c (gst_element_iterate_src_pads) 
1475         (gst_element_iterate_sink_pads): New API functions.
1476         
1477         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1478         should fold into gstiterator.c in some form.
1479         (gst_element_pads_activate): Simplified via use of fold and
1480         delegation of decisions to gstpad->activate.
1481
1482         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1483         help in debugging.
1484
1485         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1486         class once in init, like gstmessage. Didn't run into this issue
1487         but it seems correct. Don't initialize a trace, gstminiobject does
1488         that.
1489
1490         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1491         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1492         to the bus.
1493         (assert_live_count): New util function, uses alloc traces to check
1494         cleanup.
1495
1496         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1497         To be modified when unlink drops the internal pad.
1498
1499 2005-06-27  Wim Taymans  <wim@fluendo.com>
1500
1501         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1502         (gst_bin_change_state):
1503         Cleanup the get_state() function a little, make sure it
1504         iterates the same set of elements.
1505         Added stub iterate_state_order().
1506
1507 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1508
1509         * docs/gst/gstreamer-docs.sgml:
1510         * docs/gst/gstreamer-sections.txt:
1511         * docs/gst/gstreamer.types:
1512         * docs/gst/tmpl/gstbasesink.sgml:
1513         * docs/gst/tmpl/gstbasesrc.sgml:
1514         * docs/gst/tmpl/gstbasetransform.sgml:
1515         * docs/gst/tmpl/gstelement.sgml:
1516         * docs/gst/tmpl/gstiterator.sgml:
1517         * gst/base/gstbasesrc.c:
1518         * gst/base/gstbasesrc.h:
1519         * gst/base/gstbasetransform.h:
1520         * gst/gstelement.c:
1521         * gst/gstiterator.h:
1522           adding basetransform and iterator docs
1523
1524 2005-06-27  Andy Wingo  <wingo@pobox.com>
1525
1526         * docs/design/part-activation.txt: Notes on how activation should
1527         work -- not quite implemented yet.
1528
1529 2005-06-25  Wim Taymans  <wim@fluendo.com>
1530
1531         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1532         At least get the chain function correct, needs more
1533         fixing.
1534
1535 2005-06-25  Wim Taymans  <wim@fluendo.com>
1536
1537         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1538         (gst_basesink_handle_object), (gst_basesink_event),
1539         (gst_basesink_do_sync), (gst_basesink_handle_event),
1540         (gst_basesink_change_state):
1541         * gst/gsttask.h:
1542         Right, two problems here: ghostpads don't take locks and
1543         glib _rec_mutex_lock_full() with depth==0 still locks.
1544         Catch illegal locking and g_warn them.
1545
1546 2005-06-25  Wim Taymans  <wim@fluendo.com>
1547
1548         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1549         Have to check for completion now...
1550
1551 2005-06-25  Wim Taymans  <wim@fluendo.com>
1552
1553         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1554         (gst_basesink_handle_object), (gst_basesink_event),
1555         (gst_basesink_do_sync), (gst_basesink_handle_event),
1556         (gst_basesink_change_state):
1557         * gst/gstpad.h:
1558         Unlock STREAM_LOCK whatever the recursion was.
1559
1560 2005-06-25  Wim Taymans  <wim@fluendo.com>
1561
1562         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1563         (gst_basesink_preroll_queue_empty),
1564         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1565         (gst_basesink_event), (gst_basesink_do_sync),
1566         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1567         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1568         (gst_basesink_change_state):
1569         Reworked the base sink, handle event and buffer serialisation
1570         correctly and removed possible deadlock.
1571         Handle EOS correctly.
1572
1573 2005-06-25  Wim Taymans  <wim@fluendo.com>
1574
1575         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1576         (gst_pipeline_change_state):
1577         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1578         Allow elements to post EOS in the state change function.
1579         Fix up -launch, make it exit the poll loop when the
1580         pipeline actually changed state.
1581         Fix up warning parsing in -launch.
1582
1583 2005-06-25  Wim Taymans  <wim@fluendo.com>
1584
1585         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1586         (gst_tee_sink_activate):
1587         Core takes STREAM_LOCK for us now.
1588
1589 2005-06-25  Wim Taymans  <wim@fluendo.com>
1590
1591         * gst/gstelement.c: (gst_element_get_state_func),
1592         (gst_element_set_state):
1593         * gst/gstelement.h:
1594         * gst/gstmessage.c: (gst_message_parse_error),
1595         (gst_message_parse_warning):
1596         Keep track of current target state while performing a state
1597         change so that subclasses can do something interesting.
1598         Fix parsing of warning/error messages when GError is NULL.
1599
1600 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1601
1602         * docs/gst/Makefile.am:
1603         * docs/gst/gstreamer-docs.sgml:
1604         * docs/gst/gstreamer-sections.txt:
1605         * docs/gst/gstreamer.types:
1606         * docs/gst/tmpl/gstbasesink.sgml:
1607         * docs/gst/tmpl/gstbasesrc.sgml:
1608         * docs/gst/tmpl/gstbin.sgml:
1609         * docs/gst/tmpl/gstcompat.sgml:
1610         * docs/gst/tmpl/gstfakesink.sgml:
1611         * docs/gst/tmpl/gstfakesrc.sgml:
1612         * docs/gst/tmpl/gstfilesink.sgml:
1613         * docs/gst/tmpl/gstfilesrc.sgml:
1614         * docs/gst/tmpl/gstindex.sgml:
1615         * docs/manual/appendix-quotes.xml:
1616         * gst/base/gstbasesrc.h:
1617         * gst/elements/gstfakesrc.h:
1618         * gst/gstmessage.h:
1619           start pulling in base classes and elements in our docs
1620
1621 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1622
1623         * docs/gst/Makefile.am:
1624         * docs/libs/Makefile.am:
1625           fixed make distcheck with gtk-doc 1.3
1626
1627 2005-06-23  Wim Taymans  <wim@fluendo.com>
1628
1629         * gst/gstelement.c: (gst_element_get_state_func),
1630         (gst_element_set_state), (gst_element_change_state):
1631         When the state did not change, also report NO_PREROLL
1632         when it matters.
1633
1634 2005-06-23  Wim Taymans  <wim@fluendo.com>
1635
1636         * gst/gstpad.c: (gst_pad_event_default):
1637         * gst/gstqueue.c: (gst_queue_loop):
1638         No unsafe task pausing please.
1639
1640 2005-06-23  Wim Taymans  <wim@fluendo.com>
1641
1642         * gst/schedulers/threadscheduler.c:
1643         (gst_thread_scheduler_task_start),
1644         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1645         Ref the task before pushing it on the threadpool. This
1646         makes sure that we have a ref when the threadfunction is
1647         actually called.
1648
1649 2005-06-23  Andy Wingo  <wingo@pobox.com>
1650
1651         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1652         offset is greater than the file's size.
1653
1654         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1655         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1656         * gst/gstobject.c (gst_object_class_init): Make the class lock
1657         recursive. Wim won't let me drop deep_notify. Decodebin works
1658         again, whoopdy doo.
1659
1660         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1661         internal pad, and hacks accordingly. Doesn't do it on the target
1662         pad because we change its caps. Probably catches all cases of
1663         interest tho.
1664         (gst_ghost_pad_set_property): Connect to notify::caps as
1665         appropritate.
1666
1667         * tests/network-clock.scm (plot-simulation): Pipe data to the
1668         elite python skript.
1669
1670         * tests/network-clock-utils.scm (define-parameter): New macro,
1671         defines a parameter that can be set via the command line.
1672         (set-parameter!, parse-parameter-arguments): Command line args
1673         parser.
1674
1675         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1676         stdin.
1677
1678 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1679
1680         * gst/elements/gsttypefindelement.c:
1681         (gst_type_find_element_handle_event):
1682           Don't restart typefinding on a discont.
1683         * gst/gstelement.c: (gst_element_set_state):
1684           Debug spelling fix.
1685         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1686           Allow changing mode of an active pad.
1687           Debug output fixes.
1688         * gst/registries/gstlibxmlregistry.c: (load_feature):
1689           Don't cast a static pad template to a normal pad template.
1690
1691 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1692
1693         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1694         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1695           remove gst_strtoll completely, since it didn't actually do
1696           anything more than what g_ascii_strtoull already does.
1697           check for range errors when deserializing
1698           do a cast for the unsigned cases; but further fixing needs
1699           a decision on what the interpretation of "(int)" and
1700           deserialization should be for values that fall outside the
1701           type's boundaries (ie, refuse, or interpret as casting)
1702
1703 2005-06-23  Wim Taymans  <wim@fluendo.com>
1704
1705         * check/Makefile.am:
1706         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1707         * docs/design/part-live-source.txt:
1708         * docs/design/part-states.txt:
1709         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1710         (gst_basesrc_set_live), (gst_basesrc_is_live),
1711         (gst_basesrc_get_range), (gst_basesrc_activate),
1712         (gst_basesrc_change_state):
1713         * gst/base/gstbasesrc.h:
1714         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1715         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1716         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1717         * gst/gstelement.c: (gst_element_get_state_func),
1718         (gst_element_set_state):
1719         * gst/gstelement.h:
1720         * gst/gsttypes.h:
1721         * tools/gst-launch.c: (event_loop), (main):
1722         Added support for live sources and other elements that
1723         cannot do preroll.
1724         Updated design docs, added live-source design doc.
1725         Implemented live source functionality in basesrc
1726         Fix error condition in _bin_get_state()
1727         Implement live source handling in -launch.
1728         Added check for live sources.
1729         Fixed case in GstBin where elements were changed state
1730         multiple times.
1731
1732
1733 2005-06-23  Andy Wingo  <wingo@pobox.com>
1734
1735         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1736         borken refcounting.
1737
1738         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1739         gst_caps_replace takes care of this for us.
1740
1741         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1742         gst_pad_set_caps on the target, not just its setcaps() function.
1743
1744         * tests/network-clock.scm: 
1745         * tests/network-clock-utils.scm: A network clock simulator.
1746         Something of an algorithmic testbed before doing something in C.
1747
1748 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1749
1750         * check/Makefile.am:
1751         * check/gst/capslist.h:
1752           copy over from 0.8, and add two with bitmasks specified with
1753           (int) 0xFF...
1754         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1755           add test to parse everything from capslist.h
1756         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
1757         (main):
1758           add test for structure deserialization
1759         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1760           add tests for deserialization of strings to int types
1761         * gst/gststructure.c: (gst_structure_nth_field_name):
1762         * gst/gststructure.h:
1763           add a way to get the name of a field referenced by index
1764         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1765           instead of checking if the resulting long long lies between
1766           min and max, we check if the long long would fit into
1767           a number of bytes for the final type.
1768           This fixes cases where a string represents 2^32 - 1, which
1769           when cast to int would be the (valid) -1, but is bigger than
1770           G_MAXINT
1771
1772 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1773
1774         * gst/parse/grammar.y:
1775           add a log line for type deserialization
1776
1777 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1778
1779         * check/gst/gstvalue.c: (START_TEST):
1780         * gst/gstvalue.c: (gst_value_deserialize):
1781           return long long, not int, so gint64 deserialization actually
1782           works.  Is there any flag that makes the compiler check this ?
1783           Fixes #308559
1784
1785 2005-06-22  Wim Taymans  <wim@fluendo.com>
1786
1787         * gst/gstbuffer.h:
1788         Added convenience macros for setting buffers in GValue.
1789
1790 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1791
1792         * check/gst/.cvsignore:
1793         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1794           add a test deserializing int64, and comment part out because
1795           it fails, yay !
1796
1797 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1798
1799         * check/Makefile.am:
1800         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
1801         * testsuite/Makefile.am:
1802         * testsuite/caps/Makefile.am:
1803         * testsuite/caps/value_serialize.c:
1804         * testsuite/test_gst_init.c:
1805           move a value_serialize test over
1806
1807 2005-06-20  Wim Taymans  <wim@fluendo.com>
1808
1809         * gst/gstpad.c:
1810         Small doc updates.
1811         
1812         * gst/gstvalue.c: (gst_value_compare_buffer),
1813         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
1814         (gst_value_compare_flags), (gst_value_serialize_flags),
1815         (gst_value_deserialize_flags), (_gst_value_initialize):
1816         Fix serialisation of buffers, they are not boxed types anymore
1817
1818 2005-06-20  Wim Taymans  <wim@fluendo.com>
1819
1820         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1821         Testcase to show error in buffer-on-caps serialisation.
1822
1823 2005-06-20  Andy Wingo  <wingo@pobox.com>
1824
1825         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
1826         will be adding to later.
1827
1828         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
1829         if its socks fill with rocks.
1830         (gst_system_clock_obtain): Set the name on object construction.
1831         Avoid double-checked locking.
1832
1833 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
1834
1835         * gst/gsturi.c: (gst_element_make_from_uri):
1836           Fix potential endless loop.
1837
1838 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1839
1840         * check/Makefile.am:
1841           add gsttag
1842         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
1843         (main):
1844           move over from testsuite dir and clean up
1845         * configure.ac:
1846         * gst/gsttag.c:
1847         * testsuite/Makefile.am:
1848         * testsuite/tags/.cvsignore:
1849         * testsuite/tags/Makefile.am:
1850         * testsuite/tags/merge.c:
1851           remove testsuite/tags
1852
1853 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1854
1855         * docs/gst/gstreamer-sections.txt:
1856         * docs/gst/tmpl/gstenumtypes.sgml:
1857         * win32/gstenumtypes.c:
1858           clean up documentation build a little
1859
1860 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1861
1862         * check/gstcheck.h:
1863           add macros for checking refcounts on objects and caps
1864         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
1865           add some more unit tests
1866         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1867         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
1868           fix leaked refcounts (I hope :)) so unittest works
1869         * gst/gstpad.h:
1870           whitespace removal
1871
1872 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1873
1874         * configure.ac: back to HEAD
1875
1876 === release 0.9.1 ===
1877
1878 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1879
1880         * NEWS:
1881         * RELEASE:
1882           updated
1883
1884 2005-06-17  Andy Wingo  <wingo@pobox.com>
1885
1886         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
1887         assert; it's always possible that the pad gets deactivated in
1888         between the checks in gstpad.c and the implementation. Rely on
1889         finish_preroll() to return a FLUSHING or similar instead of on the
1890         assert.
1891         
1892         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
1893         clock and post an EOS message if we come out of finish_preroll in
1894         the playing state.
1895
1896 2005-06-16  David Schleef  <ds@schleef.org>
1897
1898         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
1899         (gst_capsfilter_set_property): Allow NULL as possible value
1900         for filter_caps property, indicating GST_CAPS_ANY.
1901
1902 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1903
1904         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
1905           fix debug output
1906         * gst/schedulers/Makefile.am:
1907           use libgst prefix
1908         * gstreamer.spec.in:
1909           fix spec for it
1910
1911 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1912
1913         * gstreamer.spec.in:
1914           clean up
1915
1916 2005-06-08  Andy Wingo  <wingo@pobox.com>
1917
1918         * gst/gstutils.c: RPAD fixes all around.
1919         (gst_element_link_pads): Refcounting fixes.
1920
1921         * tools/gst-inspect.c:
1922         * tools/gst-xmlinspect.c:
1923         * parse/grammar.y:
1924         * gst/base/gsttypefindhelper.c:
1925         * gst/base/gstbasesink.c:
1926         * gst/gstqueue.c: RPAD fixes.
1927
1928         * gst/gstghostpad.h:
1929         * gst/gstghostpad.c: New ghost pad implementation as full proxy
1930         pads. The tricky thing is they provide both source and sink
1931         interfaces, since they proxy the internal pad for the external
1932         pad, and vice versa. Implement with lower-level ProxyPad objects,
1933         with the interior proxy pad as a child of the exterior ghost pad.
1934         Should write a doc on this.
1935         
1936         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
1937         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
1938         gst_object API.
1939         
1940         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
1941         pads are real pads. No ghost pads in this file. Not documenting
1942         the myriad s/RPAD/PAD/ and REALIZE fixes.
1943         (gst_pad_class_init): Add properties for "direction" and
1944         "template". Both are construct-only, so they can't change during
1945         the life of the pad. Fixes properly deriving from GstPad.
1946         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
1947         derived objects, just set properties when creating the objects via
1948         g_object_new.
1949         (gst_pad_get_parent): Implement as a function, return NULL if the
1950         parent is not an element.
1951         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
1952         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
1953         
1954         * gst/gstobject.c (gst_object_class_init): Make name a construct
1955         property. Don't set it in the object init.
1956
1957         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
1958         with UNKNOWN direction.
1959         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
1960         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
1961         (gst_element_remove_pad): Remove ghost-pad special cases.
1962         (gst_element_pads_activate): Remove rpad cruft.
1963
1964         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
1965         catch the pad's-parent-not-an-element case.
1966
1967         * gst/gst.h: Include gstghostpad.h.
1968
1969         * gst/gst.c (init_post): No more real, ghost pads.
1970
1971         * gst/Makefile.am: Add gstghostpad.[ch].
1972
1973         * check/Makefile.am:
1974         * check/gst/gstbin.c:
1975         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
1976         into a bin creates ghost pads, and that the refcounts are right.
1977         Partly moved from gstbin.c.
1978
1979 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1980
1981         * check/gst-libs/.cvsignore:
1982         * check/gst/.cvsignore:
1983         * check/pipelines/.cvsignore:
1984           ignore more
1985         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
1986         (START_TEST), (cleanup_suite), (main):
1987           add some tests related to cleanup after running pipelines
1988
1989 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1990
1991         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
1992           add a testsuite for GstBuffer
1993
1994 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1995
1996         * gst/gstminiobject.h:
1997           add defines for accessing the refcount
1998
1999 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2000
2001         * Makefile.am: added support for html unit test coverage reports
2002
2003 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2004
2005         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2006           Free existing caps if the capsfilter changes. Add a FIXME about
2007           setting those caps on the pads.
2008
2009         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2010           Before adding a ghost pad to a parent bin, check that there isn't
2011           already one for the element on the bin. Prevents infinite recursion
2012           when using decodebin in parse pipelines. Andy says he'll rewrite the
2013           way this works anyway, so ignore the hack.
2014
2015 2005-06-02  Andy Wingo  <wingo@pobox.com>
2016
2017         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2018         file size, pass it on to the type find helper.
2019
2020         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2021         segment_start and segment_end properly according to the seek
2022         method. Segment_end is still a bit flaky because offset can be
2023         negative for CUR and END cases, but it takes -1 as an "unset"
2024         value.
2025
2026 2005-06-02  Wim Taymans  <wim@fluendo.com>
2027
2028         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2029         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2030         (gst_basesink_activate):
2031         * gst/base/gstbasesink.h:
2032         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2033         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2034         (gst_pad_query), (gst_pad_start_task):
2035         * gst/gstpad.h:
2036         * gst/gstqueue.c: (gst_queue_bufferalloc),
2037         (gst_queue_handle_sink_event), (gst_queue_chain):
2038         Bufferalloc: return GstFlowReturn to more accuratly report
2039         why allocation failed.
2040
2041 2005-06-02  Wim Taymans  <wim@fluendo.com>
2042
2043         * gst/gstpipeline.c: (gst_pipeline_send_event):
2044         Take snapshot of state without blocking.
2045
2046 2005-06-02  Wim Taymans  <wim@fluendo.com>
2047
2048         * docs/design/part-TODO.txt:
2049         * docs/design/part-caps.txt:
2050         * docs/design/part-clocks.txt:
2051         * docs/design/part-negotiation.txt:
2052         * docs/design/part-preroll.txt:
2053         Small doc updates 
2054
2055 2005-05-30  Wim Taymans  <wim@fluendo.com>
2056
2057         * gst/elements/gstidentity.c: (gst_identity_event),
2058         (gst_identity_transform), (gst_identity_get_property):
2059         Protect last_message property as it is accessed from
2060         multiple threads.
2061
2062 2005-05-30  Wim Taymans  <wim@fluendo.com>
2063
2064         * gst/gstelement.c: (gst_element_init),
2065         (gst_element_pads_activate), (gst_element_change_state):
2066         Slicker pad activation code.
2067
2068 2005-05-30  Wim Taymans  <wim@fluendo.com>
2069
2070         * gst/Makefile.am:
2071         * gst/gstelement.h:
2072         * gst/gstelementfactory.h:
2073         * gst/gsttypes.h:
2074         Move elementfactory methods to separate .h file.
2075
2076 2005-05-30  Wim Taymans  <wim@fluendo.com>
2077
2078         * docs/design/part-overview.txt:
2079         * gst/gstsystemclock.h:
2080         Small typo fixes, doc updates.
2081
2082 2005-05-30  Wim Taymans  <wim@fluendo.com>
2083
2084         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2085         (init_popt_callback):
2086         Remove cpu-opt flag.
2087
2088 2005-05-30  Wim Taymans  <wim@fluendo.com>
2089
2090         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2091         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2092         * gst/gstbuffer.h:
2093         Avoid typechecking in places where not needed.
2094         Added accessor for malloc_data.
2095
2096 2005-05-30  Wim Taymans  <wim@fluendo.com>
2097
2098         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2099         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2100         (gst_pad_configure_sink), (gst_pad_configure_src),
2101         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2102         (gst_pad_start_task):
2103         Propagate errors from _set_caps() in configure_src/sink
2104         functions instead of returning TRUE.
2105         FLUSH events can travel up and downstream
2106
2107
2108 2005-05-30  Wim Taymans  <wim@fluendo.com>
2109
2110         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2111         (gst_basesink_activate):
2112         Handle EOS in preroll.
2113
2114 2005-05-30  Wim Taymans  <wim@fluendo.com>
2115
2116         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2117         (gst_queue_loop), (gst_queue_handle_src_event):
2118         Remove old pieces of code
2119         Flushing the queue in an upstream event is a very bad idea.
2120
2121 2005-05-26  Andy Wingo  <wingo@pobox.com>
2122
2123         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2124         gst_value_set_mini_object so as to add a ref on the object (which
2125         will be removed when the value is unset).
2126
2127         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2128         arg type in ::handoff.
2129
2130         * gst/gstelement.c (gst_element_change_state): Also deactivate
2131         pads in READY->NULL, just in case the element didn't make it to
2132         PAUSED. Wingo tested, Wim approved.
2133
2134 2005-05-26  Wim Taymans  <wim@fluendo.com>
2135
2136         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2137         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2138         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2139         A flushing pad cannot be used to alloc_buffer from.
2140
2141 2005-05-26  Wim Taymans  <wim@fluendo.com>
2142
2143         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2144         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2145         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2146         (gst_bus_create_watch), (gst_bus_add_watch_full):
2147         * gst/gstbus.h:
2148         Implement a real GSource and use g_main_context_wakeup() to
2149         signal new messages instead of the socketpair.
2150
2151 2005-05-25  Wim Taymans  <wim@fluendo.com>
2152
2153         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2154         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2155         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2156         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2157         (gst_pad_send_event), (gst_pad_start_task):
2158         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2159         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2160         (gst_queue_sink_activate), (gst_queue_src_activate),
2161         (gst_queue_change_state):
2162         * gst/gstqueue.h:
2163         Fix state changes for non sinks. We now change sinks, then elements
2164         with unconnected srcpads, then the rest.
2165         More efficient queue unlocking in flush and state changes.
2166         Set the pad activate mode even if it does not have an activate
2167         function.
2168
2169 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2170
2171         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2172           Don't go in pull mode for non-seekable sources.
2173         * gst/elements/gsttypefindelement.h:
2174         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2175         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2176         (free_entry), (stop_typefinding),
2177         (gst_type_find_element_handle_event), (find_peek),
2178         (gst_type_find_element_chain), (do_pull_typefind),
2179         (gst_type_find_element_change_state):
2180           Allow typefinding (w/o seeking) in push-mode, simplified version
2181           of what was in 0.8.
2182         * gst/gstutils.c: (gst_buffer_join):
2183         * gst/gstutils.h:
2184           gst_buffer_join() from 0.8.
2185
2186 2005-05-25  Wim Taymans  <wim@fluendo.com>
2187
2188         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2189         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2190         (gst_pad_send_event), (gst_pad_start_task):
2191         Disable attempt at mode switching until it is figured out.
2192
2193 2005-05-25  Wim Taymans  <wim@fluendo.com>
2194
2195         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2196         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2197         (gst_basesink_finish_preroll), (gst_basesink_chain),
2198         (gst_basesink_loop), (gst_basesink_activate),
2199         (gst_basesink_change_state):
2200         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2201         (gst_basesrc_get_range), (gst_basesrc_loop),
2202         (gst_basesrc_activate):
2203         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2204         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2205         (gst_real_pad_init), (gst_real_pad_set_property),
2206         (gst_real_pad_get_property), (gst_pad_set_active),
2207         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2208         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2209         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2210         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2211         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2212         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2213         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2214         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2215         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2216         (gst_pad_stop_task):
2217         * gst/gstpad.h:
2218         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2219         (gst_queue_loop), (gst_queue_src_activate):
2220         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2221         (gst_task_get_state):
2222         * gst/gsttask.h:
2223         * gst/schedulers/threadscheduler.c:
2224         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2225         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2226         in task function.
2227         Remove ACTIVE pad flag, use FLUSHING everywhere
2228         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2229         functions.
2230         Add locks around IS_FLUSHING when reading.
2231         Take STREAM lock in chain(), get_range() functions so plugins
2232         don't need to take it anymore.
2233         
2234
2235
2236 2005-05-25  Wim Taymans  <wim@fluendo.com>
2237
2238         * tools/gst-launch.c: (event_loop):
2239         Unref message after using its contents instead of
2240         before.
2241
2242 2005-05-24  Wim Taymans  <wim@fluendo.com>
2243
2244         * docs/design/draft-ghostpads.txt:
2245         * docs/design/draft-push-pull.txt:
2246         * docs/design/draft-query.txt:
2247         * docs/design/part-overview.txt:
2248         Docs updates, added general overview doc.
2249
2250 2005-05-21  David Schleef  <ds@schleef.org>
2251
2252         * docs/gst/tmpl/old/GstBin.sgml:
2253         * docs/gst/tmpl/old/GstBuffer.sgml:
2254         * docs/gst/tmpl/old/GstCaps.sgml:
2255         * docs/gst/tmpl/old/GstClock.sgml:
2256         * docs/gst/tmpl/old/GstCompat.sgml:
2257         * docs/gst/tmpl/old/GstData.sgml:
2258         * docs/gst/tmpl/old/GstElement.sgml:
2259         * docs/gst/tmpl/old/GstEvent.sgml:
2260         * docs/gst/tmpl/old/GstIndex.sgml:
2261         * docs/gst/tmpl/old/GstStructure.sgml:
2262         * docs/gst/tmpl/old/GstTag.sgml:
2263         * docs/gst/tmpl/old/cothreads.sgml:
2264         * docs/gst/tmpl/old/cothreads_compat.sgml:
2265         * docs/gst/tmpl/old/gettext.sgml:
2266         * docs/gst/tmpl/old/gobject2gtk.sgml:
2267         * docs/gst/tmpl/old/grammar.tab.sgml:
2268         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2269         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2270         * docs/gst/tmpl/old/gst_private.sgml:
2271         * docs/gst/tmpl/old/gstaggregator.sgml:
2272         * docs/gst/tmpl/old/gstarch.sgml:
2273         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2274         * docs/gst/tmpl/old/gstbufferstore.sgml:
2275         * docs/gst/tmpl/old/gstdata_private.sgml:
2276         * docs/gst/tmpl/old/gstdisksink.sgml:
2277         * docs/gst/tmpl/old/gstdisksrc.sgml:
2278         * docs/gst/tmpl/old/gstelementfactory.sgml:
2279         * docs/gst/tmpl/old/gstextratypes.sgml:
2280         * docs/gst/tmpl/old/gstfakesink.sgml:
2281         * docs/gst/tmpl/old/gstfakesrc.sgml:
2282         * docs/gst/tmpl/old/gstfdsink.sgml:
2283         * docs/gst/tmpl/old/gstfdsrc.sgml:
2284         * docs/gst/tmpl/old/gstfilesink.sgml:
2285         * docs/gst/tmpl/old/gstfilesrc.sgml:
2286         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2287         * docs/gst/tmpl/old/gstidentity.sgml:
2288         * docs/gst/tmpl/old/gstindexfactory.sgml:
2289         * docs/gst/tmpl/old/gstmarshal.sgml:
2290         * docs/gst/tmpl/old/gstmd5sink.sgml:
2291         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2292         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2293         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2294         * docs/gst/tmpl/old/gstpipefilter.sgml:
2295         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2296         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2297         * docs/gst/tmpl/old/gstshaper.sgml:
2298         * docs/gst/tmpl/old/gstspider.sgml:
2299         * docs/gst/tmpl/old/gstspideridentity.sgml:
2300         * docs/gst/tmpl/old/gststatistics.sgml:
2301         * docs/gst/tmpl/old/gsttee.sgml:
2302         * docs/gst/tmpl/old/gsttimecache.sgml:
2303         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2304         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2305         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2306         * docs/gst/tmpl/old/types.sgml:
2307           I didn't intend to add these or check them in.
2308
2309 2005-05-19  David Schleef  <ds@schleef.org>
2310
2311         * configure.ac: Use -no-common everywhere.  In a sane world, it
2312           would be the default in libtool, because without it, you can't
2313           build DLLs on Windows.
2314         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2315         * docs/gst/gstreamer-sections.txt:
2316         * docs/gst/tmpl/gstcpu.sgml:
2317         * docs/gst/tmpl/gstdata.sgml:
2318         * docs/gst/tmpl/gstthread.sgml:
2319
2320 2005-05-19  David Schleef  <ds@schleef.org>
2321
2322         * gst/gstminiobject.c: (gst_value_set_mini_object),
2323         (gst_value_take_mini_object), (gst_value_get_mini_object):
2324         * gst/gstminiobject.h: Add GValue set/get functions.
2325
2326 2005-05-19  Wim Taymans  <wim@fluendo.com>
2327
2328         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2329         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2330         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2331         * gst/gstbuffer.h:
2332         * gst/gstbus.c: (gst_bus_post):
2333         * gst/gstelement.c: (gst_element_get_random_pad):
2334         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2335         Make subbufer unref the parent in finalize.
2336         some more debugging info.
2337
2338
2339 2005-05-19  Wim Taymans  <wim@fluendo.com>
2340
2341         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2342         (gst_basesink_init), (gst_basesink_finalize),
2343         (gst_basesink_activate), (gst_basesink_change_state):
2344         Don't free preroll queue too early.
2345
2346 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2347
2348         * gst/Makefile.am:
2349         * gst/ROADMAP:
2350           Hi, I'm outdated. Please shoot me.
2351
2352 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2353
2354         * gst/gstpipeline.c: (gst_pipeline_send_event):
2355           Do not access variables after they have been deleted.
2356
2357 2005-05-19  Wim Taymans  <wim@fluendo.com>
2358
2359         * tools/gst-inspect.c: (print_plugin_features):
2360         A plugin feature does unfortunatly not use the
2361         object name yet...
2362
2363 2005-05-18  Wim Taymans  <wim@fluendo.com>
2364
2365         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2366         Port _span() functions to new subbuffers.
2367
2368 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2369
2370         * gst/gstbin.c: (gst_bin_add_func):
2371           Fix clock settery in bins when adding kids after the clock has
2372           been selected.
2373
2374 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2375
2376         * gst/elements/gstidentity.c: (gst_identity_class_init):
2377           Workaround until signals support GstMiniObject.
2378
2379 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2380
2381         * gst/gstbuffer.c:
2382         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2383
2384 2005-05-18  Wim Taymans  <wim@fluendo.com>
2385
2386         * gst/base/Makefile.am:
2387         * gst/base/gstadapter.c: (gst_adapter_base_init),
2388         (gst_adapter_class_init), (gst_adapter_init),
2389         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2390         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2391         (gst_adapter_flush), (gst_adapter_available),
2392         (gst_adapter_available_fast):
2393         * gst/base/gstadapter.h:
2394         Ported and added adapter to the base classes.
2395
2396 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2397
2398         * gst/gst.c:
2399         * gst/gstmessage.c:
2400           Make sure the class is reffed/unreffed once before threads can be
2401           used.  Fixes #304551.
2402
2403 2005-05-17  Wim Taymans  <wim@fluendo.com>
2404
2405         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2406         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2407         * gst/gstminiobject.c: (gst_mini_object_get_type),
2408         (gst_mini_object_free):
2409         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2410         (gst_pad_push), (gst_pad_push_event):
2411         * gst/gstqueue.c: (gst_queue_change_state):
2412         Don't queue buffers in basesink when we are flushing.
2413         Unref buffer when flushing in basesink.
2414         Flush queue when going to READY
2415         Unref buffer when _push() returns an error.
2416         Don't free MiniObject instance when refcount is incremented
2417         in _finalize() so that we can recover objects.
2418
2419 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2420
2421         * docs/manual/advanced-schedulers.xml:
2422         * docs/manual/appendix-checklist.xml:
2423         * docs/pwg/advanced-clock.xml:
2424         * docs/pwg/advanced-interfaces.xml:
2425         * docs/pwg/advanced-request.xml:
2426         * docs/pwg/advanced-types.xml:
2427         * docs/pwg/intro-preface.xml:
2428         * examples/plugins/example.c: (gst_example_get_type),
2429         (gst_example_class_init), (gst_example_chain),
2430         (gst_example_set_property), (gst_example_get_property),
2431         (gst_example_change_state), (plugin_init):
2432         * examples/plugins/example.h:
2433           small doc fixes
2434
2435 2005-05-17  Wim Taymans  <wim@fluendo.com>
2436
2437         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2438         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2439         * gst/gstqueue.c: (gst_queue_change_state):
2440         Clear queue when going to READY.
2441         Remove IN_SETCAPS flag too.
2442
2443 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2444
2445         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2446           Remove implicit cast from gboolean to GstElementStateReturn;
2447           make sure we still return failure in paused => ready case if
2448           the parent class fails to change state and our own stop 
2449           vfunc succeeds.
2450
2451 2005-05-17  Wim Taymans  <wim@fluendo.com>
2452
2453         * tools/gst-launch.c: (event_loop):
2454         Message was unreffed too soon.
2455
2456 2005-05-16  Andy Wingo  <wingo@pobox.com>
2457
2458         * gst/gstbin.c (sink_iterator_filter): Err... um...
2459
2460         * check/gst/gstbin.c (test_ghost_pads): New test for the
2461         ghosting-if-elements-not-in-same-bin behavior.
2462
2463 2005-05-16  David Schleef  <ds@schleef.org>
2464
2465         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2466         accessing refcount directly.
2467
2468 2005-05-15  David Schleef  <ds@schleef.org>
2469
2470         * check/Makefile.am: remove GstData checks
2471         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2472         * gst/Makefile.am: add miniobject, remove data
2473         * gst/gst.h: add miniobject, remove data
2474         * gst/gstdata.c: remove
2475         * gst/gstdata.h: remove
2476         * gst/gstdata_private.h: remove
2477         * gst/gsttypes.h: remove GstEvent and GstMessage
2478         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2479         * gst/gstmarshal.list: change BOXED -> OBJECT
2480
2481         Implement GstMiniObject.
2482         * gst/gstminiobject.c:
2483         * gst/gstminiobject.h:
2484
2485         Modify to be subclasses of GstMiniObject.
2486         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2487         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2488         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2489         (gst_subbuffer_get_type), (gst_subbuffer_init),
2490         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2491         (gst_buffer_span):
2492         * gst/gstbuffer.h:
2493         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2494         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2495         (_gst_event_copy), (gst_event_new):
2496         * gst/gstevent.h:
2497         * gst/gstmessage.c: (_gst_message_initialize),
2498         (gst_message_get_type), (gst_message_class_init),
2499         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2500         (gst_message_new), (gst_message_new_error),
2501         (gst_message_new_warning), (gst_message_new_tag),
2502         (gst_message_new_state_changed), (gst_message_new_application):
2503         * gst/gstmessage.h:
2504         * gst/gstprobe.c: (gst_probe_perform),
2505         (gst_probe_dispatcher_dispatch):
2506         * gst/gstprobe.h:
2507         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2508         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2509         (_gst_query_copy), (gst_query_new):
2510
2511         Update elements for GstData -> GstMiniObject changes
2512         * gst/gstquery.h:
2513         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2514         (gst_queue_chain), (gst_queue_loop):
2515         * gst/elements/gstbufferstore.c:
2516         (gst_buffer_store_add_buffer_func),
2517         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2518         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2519         (gst_fakesink_render):
2520         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2521         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2522         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2523         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2524         (gst_filesrc_create_read):
2525         * gst/elements/gstidentity.c: (gst_identity_class_init):
2526         * gst/elements/gsttypefindelement.c:
2527         (gst_type_find_element_src_event), (free_entry_buffers),
2528         (gst_type_find_element_handle_event):
2529         * libs/gst/dataprotocol/dataprotocol.c:
2530         (gst_dp_header_from_buffer):
2531         * libs/gst/dataprotocol/dataprotocol.h:
2532         * libs/gst/dataprotocol/dp-private.h:
2533
2534 2005-05-15  David Schleef  <ds@schleef.org>
2535
2536         * gst/elements/gstelements.c: Don't include headers that were
2537         just removed.
2538
2539 2005-05-15  David Schleef  <ds@schleef.org>
2540
2541         * gst/elements/Makefile.am: Remove some elements that don't
2542         need to be in the core (or even exist at all).
2543         * gst/elements/gstaggregator.c:
2544         * gst/elements/gstaggregator.h:
2545         * gst/elements/gstmd5sink.c:
2546         * gst/elements/gstmd5sink.h:
2547         * gst/elements/gstmultifilesrc.c:
2548         * gst/elements/gstmultifilesrc.h:
2549         * gst/elements/gstpipefilter.c:
2550         * gst/elements/gstpipefilter.h:
2551         * gst/elements/gstshaper.c:
2552         * gst/elements/gstshaper.h:
2553         * gst/elements/gststatistics.c:
2554         * gst/elements/gststatistics.h:
2555         * po/POTFILES.in: Remove above files.
2556
2557 2005-05-14  Andy Wingo  <wingo@pobox.com>
2558
2559         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2560         so as to get the refs right.
2561         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2562         unreffing objects that don't pass the filter.
2563
2564         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2565         gst_element_set_bus.
2566         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2567         normal cases, this will destroy the bus.
2568
2569         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2570         object.
2571
2572         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2573         has no sinks.
2574
2575 2005-05-13  Andy Wingo  <wingo@pobox.com>
2576
2577         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2578         gst_pad_link, call pad_link_maybe_ghosting,
2579         (pad_link_maybe_ghosting): Links pads, making sure that the
2580         elements being linked are in the same bin.
2581         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2582         Helpers for pad_link_maybe_ghosting.
2583
2584 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2585
2586         * configure.ac:
2587           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2588
2589 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2590
2591         * docs/design/part-element-source.txt:
2592           Mention GstPushSrc
2593
2594 2005-05-12  Wim Taymans  <wim@fluendo.com>
2595
2596         * gst/base/gstbasesink.c: (gst_basesink_init),
2597         (gst_basesink_activate):
2598         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2599         (gst_basesrc_is_seekable):
2600         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2601         (bin_element_is_sink), (gst_bin_change_state):
2602         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2603         * gst/gstelement.h:
2604         Identify sinks by their flag to avoid overly complicated
2605         checks (fow now).
2606         Do state changes even for elements not reachable from the
2607         sinks.
2608         BaseSink is a sink now :)
2609         Some more debugging info in the basesrc.
2610
2611
2612 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2613
2614         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2615           Implement _query on a bin, similar to _send_event.
2616
2617 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2618
2619         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2620           Discont event offset format should be GST_FORMAT_BYTES,
2621           not GST_FORMAT_TIME.
2622
2623 2005-05-12  Wim Taymans  <wim@fluendo.com>
2624
2625         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2626         Same fix as Ronald's but without the signal. 
2627
2628 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2629
2630         * gst/gstutils.c: (gst_element_query_position):
2631           No, an element is not a pad.
2632
2633 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2634
2635         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2636         (gst_bin_get_state):
2637           If a child is removed from a bin while we remove the child from
2638           the bin and while we're retrieving its state, signal this to the
2639           get_state function so we abort the wait (instead of waiting for
2640           a timeout) and can immediately re-iterate over all other elements.
2641
2642 2005-05-12  Wim Taymans  <wim@fluendo.com>
2643
2644         * gst/base/Makefile.am:
2645         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2646         (gst_basesrc_start):
2647         * gst/base/gstbasesrc.h:
2648         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2649         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2650         (gst_pushsrc_init), (gst_pushsrc_create):
2651         * gst/base/gstpushsrc.h:
2652         Added is_seekable to BaseSrc
2653         Added simple PushSrc.
2654
2655 2005-05-11  Wim Taymans  <wim@fluendo.com>
2656
2657         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2658         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2659         (gst_element_link_pads), (gst_element_query_position),
2660         (gst_element_query_convert), (intersect_caps_func),
2661         (gst_pad_query_position), (gst_pad_query_convert):
2662         Fix refcounting in utils function.
2663         No point in trying to activate a pad when it's added, it could
2664         be added from the state change function and then we deadlock, the
2665         element has to decide what to do.
2666
2667 2005-05-10  Andy Wingo  <wingo@pobox.com>
2668
2669         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2670         *all* the arguments.
2671
2672         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2673         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2674         lock (according to the docs -- if this is wrong change the docs).
2675
2676         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2677         flush messages in the NULL state.
2678
2679         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2680         message immediately and return.
2681         (gst_bus_set_flushing): New function. If a bus is flushing, it
2682         flushes out any queued messages and immediately unrefs new
2683         messages. This is so when an element goes to NULL, all of the
2684         unhandled messages coming from it can be freed, and their
2685         references to the element dropped. In other words: message source
2686         ref considered harmful :P
2687
2688         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2689         we're finished with it.
2690
2691         * gst/gstmessage.c (gst_message_new_state_changed): 
2692
2693 2005-05-10  Wim Taymans  <wim@fluendo.com>
2694
2695         * gst/gstvalue.c: (gst_value_compare_flags),
2696         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2697         (_gst_value_initialize):
2698         Added flags serialize/deserialize/compare code.
2699
2700 2005-05-09  Andy Wingo  <wingo@pobox.com>
2701
2702         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2703         Intersect the peer's caps with our caps.
2704
2705 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2706
2707         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2708         * gst/elements/gsttypefindelement.c: (find_peek):
2709           Handle negative offsets better. Fixes decodebin.
2710
2711 2005-05-09  Wim Taymans  <wim@fluendo.com>
2712
2713         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2714         (gst_base_transform_event):
2715         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2716         Implement accept_caps.
2717         Fix silly lock/unlock mismatch in base class.
2718
2719 2005-05-09  Wim Taymans  <wim@fluendo.com>
2720
2721         * docs/design/draft-push-pull.txt:
2722         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2723         * gst/elements/gstfilesink.c: (gst_filesink_init),
2724         (gst_filesink_query):
2725         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2726         (gst_type_find_handle_src_query), (find_element_get_length):
2727         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2728         * gst/gstelement.h:
2729         * gst/gstmessage.c:
2730         * gst/gstmessage.h:
2731         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2732         (gst_real_pad_get_caps_unlocked),
2733         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2734         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2735         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2736         (gst_real_pad_dispose), (gst_real_pad_finalize),
2737         (gst_pad_load_and_link), (gst_pad_save_thyself),
2738         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2739         (gst_pad_check_pull_range), (gst_pad_pull_range),
2740         (gst_pad_template_get_type), (gst_pad_template_class_init),
2741         (gst_pad_template_init), (gst_pad_template_dispose),
2742         (name_is_valid), (gst_static_pad_template_get),
2743         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2744         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2745         (gst_pad_get_element_private), (gst_pad_start_task),
2746         (gst_pad_pause_task), (gst_pad_stop_task),
2747         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2748         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2749         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
2750         (gst_ghost_pad_new):
2751         * gst/gstpad.h:
2752         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
2753         (gst_query_new_position), (gst_query_set_position),
2754         (gst_query_parse_position), (gst_query_new_convert),
2755         (gst_query_set_convert), (gst_query_parse_convert):
2756         * gst/gstquery.h:
2757         * gst/gstqueryutils.c:
2758         * gst/gstqueryutils.h:
2759         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2760         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2761         (gst_queue_handle_src_query):
2762         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2763         (gst_element_query_position), (gst_element_query_convert),
2764         (intersect_caps_func), (gst_pad_query_position),
2765         (gst_pad_query_convert):
2766         * gst/gstutils.h:
2767         * tools/gst-inspect.c: (print_pad_info):
2768         * tools/gst-xmlinspect.c: (print_element_info):
2769         Remove old query functions. Ported old code.
2770         Added position/convert helper functions to gstutils.
2771         Reordered gstpad.c code, grouping relevant things.
2772         Remove gst_message_new(), always need to speficy a specific
2773         message.
2774
2775
2776 2005-05-09  Andy Wingo  <wingo@pobox.com>
2777
2778         * gst/gstiterator.h: Add some includes.
2779
2780         * gst/gstqueryutils.h: Include more headers.
2781
2782         * gst/gstpad.h:
2783         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
2784         some uses of gst_pad_query.
2785
2786         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
2787         NULL out parameters.
2788         (gst_query_new_position): New proc, allocates a new position
2789         query.
2790
2791         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
2792         gstqueryutils.c to the build.
2793
2794         * gst/gststructure.c (gst_structure_set_valist): Implement with
2795         the generic G_VALUE_COLLECT.
2796         
2797 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
2798
2799         * gst/Makefile.am: (gst_headers):
2800         Added gstqueryutils.h to the list of headers to install, that was
2801         a 'nachty' move wingo :)
2802
2803 2005-05-06  Andy Wingo  <wingo@pobox.com>
2804
2805         * gst/gstquery.h
2806         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
2807         GstData, init a memchunk.
2808         (standard_definitions): Add a few query types, deprecate a few.
2809         (gst_query_get_type): New proc.
2810         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
2811         implementation.
2812         (gst_query_new_application, gst_query_get_structure): New public
2813         procs.
2814
2815         * docs/design/draft-query.txt: Removed LINKS from the query types,
2816         because all the rest can be dispatched to other pads -- seemed
2817         ugly to have a query that couldn't be dispatched. internal_links
2818         is fine as a pad method.
2819
2820         * gst/gstpad.h: Add query2 as a pad method, add the new functions
2821         in gstpad.c, but maintain binary compatibility for the moment.
2822         Will fix before 0.9 is out.
2823
2824         * gst/gstqueryutils.c: 
2825         * gst/gstqueryutils.h: New files, implement 3 methods for each
2826         query type: parse_query, parse_response, and set. Probably need an
2827         allocator as well.
2828
2829         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
2830
2831         * gst/elements/gstfilesink.c (gst_filesink_query2):
2832         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
2833         query_types, and formats methods.
2834
2835         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
2836         (gst_pad_set_query2_function): New functions.
2837         (gst_real_pad_init): Set query2_default as the default query2
2838         function. Basically just dispatches to internally linked pads.
2839
2840         Needs review!
2841         
2842         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
2843         without using the atomic operations. Only one thread can possibly
2844         be accessing the data at this point. Changed so as to avoid
2845         gst_atomic operations.
2846
2847 2005-05-06  Wim Taymans  <wim@fluendo.com>
2848
2849         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
2850         Also set caps if we use the fallback buffer alloc.
2851
2852 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
2853
2854         * docs/gst/Makefile.am:
2855         * docs/gst/gstreamer-docs.sgml:
2856         * docs/gst/gstreamer-sections.txt:
2857         * docs/gst/tmpl/gstatomic.sgml:
2858         * docs/gst/tmpl/gstmemchunk.sgml:
2859         * testsuite/elements/struct_i386.h:
2860         * win32/GStreamer.vcproj:
2861         * win32/Makefile:
2862           Purge GstAtomic stuff from docs and win32 makefiles as well
2863
2864 2005-05-06  Wim Taymans  <wim@fluendo.com>
2865
2866         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
2867         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
2868         * gst/gstpad.c: (gst_pad_peer_get_caps):
2869         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2870         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2871         (gst_queue_src_activate), (gst_queue_change_state):
2872         * gst/gstqueue.h:
2873         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2874         (intersect_caps_func):
2875         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
2876         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
2877         Some fixes for the peer_get_caps() change.
2878
2879 2005-05-06  Wim Taymans  <wim@fluendo.com>
2880
2881         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2882         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
2883         (gst_basesink_activate):
2884         Actually do something with error codes returned from the push
2885         functions.
2886
2887 2005-05-06  Wim Taymans  <wim@fluendo.com>
2888
2889         * docs/design/part-element-sink.txt:
2890         * docs/design/part-element-source.txt:
2891         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2892         (gst_basesink_event), (gst_basesink_activate):
2893         * gst/base/gstbasesink.h:
2894         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
2895         (gst_basesrc_activate):
2896         * gst/base/gstbasesrc.h:
2897         * gst/gstelement.c: (gst_element_pads_activate):
2898         Some more documentation.
2899         Fixed scheduling decision in _pads_activate().
2900
2901 2005-05-05  Andy Wingo  <wingo@pobox.com>
2902
2903         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
2904         the test suite.
2905
2906 2005-05-05  Wim Taymans  <wim@fluendo.com>
2907
2908         * gst/base/Makefile.am:
2909         * gst/base/gstbasesink.h:
2910         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2911         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
2912         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
2913         (gst_collectpads_class_init), (gst_collectpads_init),
2914         (gst_collectpads_finalize), (gst_collectpads_new),
2915         (gst_collectpads_set_function), (gst_collectpads_add_pad),
2916         (find_pad), (gst_collectpads_remove_pad),
2917         (gst_collectpads_is_active), (gst_collectpads_collect),
2918         (gst_collectpads_collect_range), (gst_collectpads_start),
2919         (gst_collectpads_stop), (gst_collectpads_peek),
2920         (gst_collectpads_pop), (gst_collectpads_available),
2921         (gst_collectpads_read), (gst_collectpads_flush),
2922         (gst_collectpads_chain):
2923         * gst/base/gstcollectpads.h:
2924         * gst/elements/Makefile.am:
2925         * gst/elements/gstelements.c:
2926         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2927         (gst_fakesink_get_times), (gst_fakesink_event),
2928         (gst_fakesink_preroll), (gst_fakesink_render):
2929         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2930         (gst_filesink_init), (gst_filesink_set_location),
2931         (gst_filesink_open_file), (gst_filesink_close_file),
2932         (gst_filesink_pad_query), (gst_filesink_event),
2933         (gst_filesink_render), (gst_filesink_change_state):
2934         * gst/elements/gstfilesink.h:
2935         Added object to help in making collect pad based elements.
2936         Ported filesink.
2937         Make event function in sink baseclass return gboolean.
2938
2939 2005-05-05  Wim Taymans  <wim@fluendo.com>
2940
2941         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
2942         (gst_bin_get_by_name):
2943         * gst/gstbuffer.h:
2944         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
2945         (gst_clock_finalize):
2946         * gst/gstdata.c: (gst_data_replace):
2947         * gst/gstdata.h:
2948         * gst/gstelement.c: (gst_element_request_pad),
2949         (gst_element_pads_activate):
2950         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
2951         (gst_object_unref):
2952         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2953         (gst_pad_set_checkgetrange_function),
2954         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
2955         (gst_pad_check_pull_range), (gst_pad_pull_range),
2956         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2957         (gst_pad_pause_task), (gst_pad_stop_task):
2958         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2959         (gst_element_request_pad), (gst_pad_proxy_getcaps):
2960         Fix name lookup in GstBin.
2961         Added _data_replace() function and _buffer_replace()
2962         Use finalize method to clean up clock.
2963         Fix refcounting on request pads.
2964         Fix pad schedule mode error.
2965         Some more object refcounting debug info,
2966
2967
2968 2005-05-04  Andy Wingo <wingo@pobox.com>
2969
2970         * check/Makefile.am:
2971         * docs/gst/tmpl/gstatomic.sgml:
2972         * docs/gst/tmpl/gstplugin.sgml:
2973         * gst/base/gstbasesink.c: (gst_basesink_activate):
2974         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
2975         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
2976         (gst_basesrc_query), (gst_basesrc_set_property),
2977         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
2978         (gst_basesrc_activate):
2979         * gst/base/gstbasesrc.h:
2980         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
2981         (gst_base_transform_src_activate):
2982         * gst/elements/gstelements.c:
2983         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2984         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2985         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2986         * gst/elements/gsttypefindelement.c: (find_element_get_length),
2987         (gst_type_find_element_checkgetrange),
2988         (gst_type_find_element_activate):
2989         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
2990         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
2991         (gst_caps_load_thyself):
2992         * gst/gstelement.c: (gst_element_pads_activate),
2993         (gst_element_save_thyself), (gst_element_restore_thyself):
2994         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
2995         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
2996         * gst/gstpad.h:
2997         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
2998         (gst_xml_parse_file), (gst_xml_parse_memory),
2999         (gst_xml_get_element), (gst_xml_make_element):
3000         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3001         (_file_index_id_save_xml), (gst_file_index_commit):
3002         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3003         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3004         (load_paths):
3005         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3006         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3007         * tools/gst-complete.c: (main):
3008         * tools/gst-compprep.c: (main):
3009         * tools/gst-inspect.c: (print_element_properties_info):
3010         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3011         * tools/gst-xmlinspect.c: (print_element_properties):
3012         GCC 4 fixen.
3013         
3014 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3015
3016         * gst/gstplugin.c: (gst_plugin_check_module),
3017         (gst_plugin_check_file), (gst_plugin_load_file):
3018             apply patch from #172526 to make register work on MacOSX
3019
3020 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3021
3022         * docs/gst/tmpl/gstconfig.sgml:
3023         * gst/gstconfig.h.in:
3024           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3025         * testsuite/debug/printf_extension.c: (main):
3026           Do not use GST_PTR_FORMAT on pointers to types with
3027           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3028         * testsuite/elements/property.h:
3029           use correct printf format
3030
3031 2005-05-02  Wim Taymans  <wim@fluendo.com>
3032
3033         * docs/design/draft-push-pull.txt:
3034         * docs/design/draft-query.txt:
3035         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3036         (gst_basesrc_start):
3037         Added draft for new query API.
3038         Added draft for better selecting scheduling methods.
3039         Make basesrc ignore length if the subclass does not support
3040         it.
3041
3042 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3043
3044         * gst/Makefile.am:
3045           possible fixes for automake-1.5 - _LIBADD is reserved
3046
3047 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3048
3049         * docs/faq/Makefile.am:
3050         * docs/manual/Makefile.am:
3051         * docs/manuals.mak:
3052         * docs/pwg/Makefile.am:
3053         * gst/Makefile.am:
3054           possible fixes for automake-1.5
3055
3056 2005-04-28  Wim Taymans  <wim@fluendo.com>
3057
3058         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3059         (gst_basesink_pad_getcaps), (gst_basesink_init),
3060         (gst_basesink_do_sync):
3061         * gst/gstclock.c: (gst_clock_entry_new):
3062         * gst/gstevent.c: (gst_event_discont_get_value):
3063         * gst/gstpipeline.c: (pipeline_bus_handler),
3064         (gst_pipeline_change_state):
3065         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3066         Better debugging of clocking info.
3067         Allow NULL values when getting discont values.
3068
3069 2005-04-27  Wim Taymans  <wim@fluendo.com>
3070
3071         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3072         * check/gst/gstpad.c: (gst_pad_suite):
3073         Increase timeout for checks.
3074
3075 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3076
3077         * check/Makefile.am:
3078           fix the broken rule for cleanup.  Apparently this rule is
3079           only needed on FC2, so maybe this warrants further autotool
3080           inspection.
3081
3082 2005-04-26  Wim Taymans  <wim@fluendo.com>
3083
3084         * gst/gsttrashstack.h:
3085         Ooohh. a nasty one! After having a failed pop() from the stack,
3086         it's possible that the stack is empty. In that case, don't
3087         follow the NULL pointer.
3088
3089 2005-04-25  Wim Taymans  <wim@fluendo.com>
3090
3091         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3092         (gst_pad_set_checkgetrange_function),
3093         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3094         (gst_pad_check_pull_range), (gst_pad_pull_range),
3095         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3096         (gst_pad_pause_task), (gst_pad_stop_task):
3097         * gst/gstplugin.c: (gst_plugin_load):
3098         * gst/gstplugin.h:
3099         Remove gst_library_load as it does more harm than good with
3100         the new g_module flags.
3101         Revert bogus caps template check in pad linking, pad caps
3102         are important when linking not the template, which is more
3103         general than the current caps.
3104
3105 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3106
3107         * gst/autoplug/.cvsignore:
3108         * gst/autoplug/Makefile.am:
3109         * gst/autoplug/gstsearchfuncs.c:
3110         * gst/autoplug/gstsearchfuncs.h:
3111         * gst/autoplug/gstspider.c:
3112         * gst/autoplug/gstspider.h:
3113         * gst/autoplug/gstspideridentity.c:
3114         * gst/autoplug/gstspideridentity.h:
3115         * gst/autoplug/spidertest.c:
3116           Die, spider, die.
3117
3118 2005-04-25  Wim Taymans  <wim@fluendo.com>
3119
3120         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3121         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3122         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3123         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3124         * gst/gstpad.h:
3125         Added stubs for unimplemented functions. 
3126
3127 2005-04-24  David Schleef  <ds@schleef.org>
3128
3129         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3130         please fix.
3131
3132 2005-04-24  David Schleef  <ds@schleef.org>
3133
3134         Convert everything from GstAtomicInt to g_atomic_int_*, and
3135         remove gstatomic.
3136         * gst/Makefile.am:
3137         * gst/gstatomic.c:
3138         * gst/gstatomic.h:
3139         * gst/gstatomic_impl.h:
3140         * gst/gstbuffer.c:
3141         * gst/gstcaps.c:
3142         * gst/gstcaps.h:
3143         * gst/gstclock.c:
3144         * gst/gstclock.h:
3145         * gst/gstdata.c:
3146         * gst/gstdata.h:
3147         * gst/gstdata_private.h:
3148         * gst/gstevent.c:
3149         * gst/gstinfo.c:
3150         * gst/gstinfo.h:
3151         * gst/gstmessage.c:
3152         * gst/gstobject.c:
3153         * gst/gstobject.h:
3154         * gst/gststructure.c:
3155         * gst/gststructure.h:
3156         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3157         * gst/gstutils.h:
3158
3159 2005-04-24  David Schleef  <ds@schleef.org>
3160
3161         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3162         make the regressions tests work.  Remove some code that is no
3163         longer true.
3164         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3165         Disable warning for pads without templates.
3166
3167 2005-04-24  David Schleef  <ds@schleef.org>
3168
3169         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3170         functions that handle filtered links.
3171         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3172         removed functions.
3173         * gst/gstutils.c: Fix/remove utility functions that handle
3174         filtered caps.
3175         * gst/gstutils.h:
3176         * gst/gstvalue.c: Add serialization/deserialization of caps
3177         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3178         requires fixing so that the filter caps notation creates
3179         a capsfilter element and sets the filter_caps property.  I
3180         think everyone probably wants to keep the shorthand notation.
3181         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3182         * docs/gst/tmpl/gstpad.sgml:
3183
3184         * gst/elements/gstelements.c: Register capsfilter element.
3185         * gst/Makefile.am: fix spacing
3186         * docs/random/ds/0.9-suggested-changes: random
3187
3188 2005-04-23  David Schleef  <ds@schleef.org>
3189
3190         * gst/elements/Makefile.am:
3191         * gst/elements/gstcapsfilter.c: New element that acts like an
3192         identity, but filters caps.  Will eventually replace filtered
3193         caps in pad linking.
3194         * gst/gstutils.c: (gst_element_create_all_pads): New function
3195         to create all the ALWAYS pads that are registered with an
3196         element class.  This functionality should eventually be
3197         merged in with GstElement initialization.
3198         * gst/gstutils.h:
3199         * testsuite/trigger/README: part of trigger test code that should
3200         have been checked in a long time ago.
3201
3202 2005-04-23  David Schleef  <ds@schleef.org>
3203
3204         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3205         needed with new versions of libtool (nobody will confirm this),
3206         and hard to carry around.
3207         * gst/autoplug/Makefile.am:
3208         * gst/base/Makefile.am:
3209         * gst/elements/Makefile.am:
3210         * gst/indexers/Makefile.am:
3211         * gst/schedulers/Makefile.am:
3212         * libs/gst/bytestream/Makefile.am:
3213         * libs/gst/control/Makefile.am:
3214         * libs/gst/dataprotocol/Makefile.am:
3215         * libs/gst/getbits/Makefile.am:
3216
3217 2005-04-21  Wim Taymans  <wim@fluendo.com>
3218
3219         * docs/design/draft-push-pull.txt:
3220         * docs/design/part-MT-refcounting.txt:
3221         * docs/design/part-TODO.txt:
3222         * docs/design/part-caps.txt:
3223         * docs/design/part-events.txt:
3224         * docs/design/part-gstbus.txt:
3225         * docs/design/part-gstpipeline.txt:
3226         * docs/design/part-messages.txt:
3227         * docs/design/part-push-pull.txt:
3228         * docs/design/part-query.txt:
3229         Some more docs.
3230
3231 2005-04-21  Wim Taymans  <wim@fluendo.com>
3232
3233         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3234         (gst_message_new), (gst_message_new_error),
3235         (gst_message_new_warning), (gst_message_new_tag),
3236         (gst_message_new_state_changed), (gst_message_new_application),
3237         (gst_message_get_structure):
3238         * gst/gstmessage.h:
3239         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3240         (gst_structure_copy_conditional):
3241         Use parent refcount in GstMessage to ensure GstStructure
3242         consistency.
3243         Cleaned up headers a bit.
3244         
3245
3246 2005-04-20  Wim Taymans  <wim@fluendo.com>
3247
3248         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3249         (gst_basesink_pad_getcaps), (gst_basesink_init),
3250         (gst_basesink_chain_unlocked):
3251         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3252         (gst_type_find_helper):
3253         * gst/elements/gsttypefindelement.c:
3254         (gst_type_find_element_have_type), (gst_type_find_element_init),
3255         (stop_typefinding), (gst_type_find_element_handle_event),
3256         (find_suggest), (gst_type_find_element_chain),
3257         (gst_type_find_element_checkgetrange),
3258         (gst_type_find_element_getrange), (do_typefind),
3259         (gst_type_find_element_activate):
3260         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3261         (gst_buffer_default_free), (gst_buffer_default_copy),
3262         (gst_buffer_set_caps):
3263         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3264         (gst_caps_replace):
3265         * gst/gstmessage.c: (gst_message_new),
3266         (gst_message_new_state_changed):
3267         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3268         (gst_pad_set_checkgetrange_function),
3269         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3270         (gst_pad_set_caps), (gst_pad_check_pull_range),
3271         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3272         * gst/gstpad.h:
3273         * gst/gsttypefind.c: (gst_type_find_register):
3274         Make gst_caps_replace() work like other _replace() functions.
3275         Use _caps_replace() where possible.
3276         Make sure _message_new() initialises its field.
3277         Add gst_static_pad_template_get_caps()
3278
3279
3280 2005-04-18  Andy Wingo  <wingo@pobox.com>
3281
3282         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3283         on the peer, not the pad. I think that was a typo. Pass an extra
3284         arg to see if random access is possible. Activate the pads as
3285         PULL_RANGE if possible.
3286
3287         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3288
3289         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3290         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3291         to PROP_....
3292
3293 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3294
3295         * docs/faq/using.xml:
3296           Add note on gstreamer-properties (#154996).
3297
3298 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3299
3300         * docs/random/bbb/optional-properties:
3301           Some analysis on optional properties.
3302
3303 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3304
3305         * docs/gst/tmpl/gstelementfactory.sgml:
3306         * gst/gstelement.h:
3307         * gst/gstelementfactory.c: (gst_element_factory_init),
3308         (gst_element_factory_cleanup), (gst_element_register),
3309         (__gst_element_factory_add_static_pad_template),
3310         (gst_element_factory_get_static_pad_templates),
3311         (gst_element_factory_can_src_caps),
3312         (gst_element_factory_can_sink_caps):
3313         * gst/registries/Makefile.am:
3314         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3315         (gst_xml_registry_class_init), (gst_xml_registry_init),
3316         (gst_xml_registry_new), (gst_xml_registry_set_property),
3317         (gst_xml_registry_get_property), (get_time), (make_dir),
3318         (gst_xml_registry_get_perms_func),
3319         (plugin_times_older_than_recurse), (plugin_times_older_than),
3320         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3321         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3322         (add_to_char_array), (read_string), (read_uint), (read_enum),
3323         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3324         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3325         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3326         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3327         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3328         (gst_xml_registry_rebuild):
3329         * gst/registries/gstlibxmlregistry.h:
3330         * tools/gst-compprep.c: (main):
3331         * tools/gst-inspect.c: (print_pad_templates_info):
3332         * tools/gst-xmlinspect.c: (print_element_info):
3333           Use libxml2 for registry parsing, use staticpadtemplates in
3334           elementfactories. Makes gst_init() +/- 10x faster.
3335
3336 2005-04-12  Wim Taymans  <wim@fluendo.com>
3337
3338         * gst/base/Makefile.am:
3339         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3340         (gst_basesink_pad_getcaps), (gst_basesink_init),
3341         (gst_basesink_event), (gst_basesink_change_state):
3342         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3343         (gst_basesrc_init), (gst_basesrc_query),
3344         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3345         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3346         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3347         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3348         (gst_basesrc_stop), (gst_basesrc_activate),
3349         (gst_basesrc_change_state):
3350         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3351         (helper_find_suggest), (gst_type_find_helper):
3352         * gst/base/gsttypefindhelper.h:
3353         * gst/elements/Makefile.am:
3354         * gst/elements/gstelements.c:
3355         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3356         (gst_fakesink_get_times), (gst_fakesink_event),
3357         (gst_fakesink_preroll), (gst_fakesink_render):
3358         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3359         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3360         (gst_fakesrc_get_property), (gst_fakesrc_create),
3361         (gst_fakesrc_start), (gst_fakesrc_stop):
3362         * gst/elements/gstfakesrc.h:
3363         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3364         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3365         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3366         (gst_filesrc_create_read), (gst_filesrc_create),
3367         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3368         (gst_filesrc_start):
3369         * gst/elements/gsttypefindelement.c:
3370         (gst_type_find_element_have_type), (gst_type_find_element_init),
3371         (start_typefinding), (stop_typefinding), (push_buffer_store),
3372         (gst_type_find_element_handle_event),
3373         (gst_type_find_element_chain),
3374         (gst_type_find_element_checkgetrange),
3375         (gst_type_find_element_getrange), (do_typefind),
3376         (gst_type_find_element_activate),
3377         (gst_type_find_element_change_state):
3378         * gst/elements/gsttypefindelement.h:
3379         * gst/gstpipeline.c: (pipeline_bus_handler):
3380         Added typefind helper.
3381         Small preroll fix in the base sink.
3382         Disable typefind code in basesrc.
3383         Crude port of typefindelement.
3384         Fakesrc cleanups.
3385
3386
3387 2005-04-11  Wim Taymans  <wim@fluendo.com>
3388
3389         * check/gst/gstbus.c: (gstbus_suite):
3390         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3391         * check/gstcheck.h:
3392           Fix up the timeout so that the test does not fail.
3393
3394 2005-04-06  Wim Taymans  <wim@fluendo.com>
3395
3396         * gst/base/README:
3397         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3398         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3399         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3400         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3401         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3402         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3403         (gst_basesrc_stop), (gst_basesrc_activate),
3404         (gst_basesrc_change_state), (basesrc_find_peek),
3405         (basesrc_find_suggest), (gst_basesrc_type_find):
3406         * gst/base/gstbasesrc.h:
3407         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3408         (gst_filesrc_class_init), (gst_filesrc_init),
3409         (gst_filesrc_finalize), (gst_filesrc_set_location),
3410         (gst_filesrc_set_property), (gst_filesrc_get_property),
3411         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3412         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3413         (gst_filesrc_create_read), (gst_filesrc_create),
3414         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3415         * gst/elements/gstfilesrc.h:
3416         * gst/gstelement.c: (gst_element_get_state_func),
3417         (gst_element_lost_state), (gst_element_pads_activate):
3418         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3419         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3420         (gst_pad_pull_range):
3421         * gst/gstpad.h:
3422         More work on the generic source base class, implement seeking,
3423         query.
3424         Make filesrc extend the base source class.
3425         Added gst_pad_set_checkgetrange_function to GstPad.
3426
3427 2005-04-06  Andy Wingo  <wingo@pobox.com>
3428
3429         * pkgconfig/gstreamer-base.pc.in:
3430         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3431
3432         * pkgconfig/Makefile.am:
3433         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3434
3435 2005-04-04  Wim Taymans  <wim@fluendo.com>
3436
3437         * gst/base/Makefile.am:
3438         * gst/base/README:
3439         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3440         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3441         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3442         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3443         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3444         (gst_basesrc_base_init), (gst_basesrc_class_init),
3445         (gst_basesrc_init), (gst_basesrc_get_formats),
3446         (gst_basesrc_get_query_types), (gst_basesrc_query),
3447         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3448         (gst_basesrc_set_property), (gst_basesrc_get_property),
3449         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3450         (gst_basesrc_loop), (gst_basesrc_activate),
3451         (gst_basesrc_change_state):
3452         * gst/base/gstbasesrc.h:
3453         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3454         (gst_fakesrc_class_init), (gst_fakesrc_init),
3455         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3456         (gst_fakesrc_get_property), (gst_fakesrc_create):
3457         * gst/elements/gstfakesrc.h:
3458         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3459         (gst_filesrc_open_file), (gst_filesrc_loop),
3460         (gst_filesrc_activate), (filesrc_find_peek),
3461         (gst_filesrc_type_find):
3462         Made base source class, make fakesrc extend it.
3463         Add comments to basesink class.
3464         Some filesrc cleanup.
3465
3466 2005-03-31  David Schleef  <ds@schleef.org>
3467
3468         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3469         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3470         expected to link against libgstreamer.
3471         * gst/base/Makefile.am: link against libgstreamer
3472         * gst/elements/Makefile.am: same
3473
3474 2005-03-31  Andy Wingo  <wingo@pobox.com>
3475
3476         * tests/instantiate/Makefile.am:
3477         * tests/instantiate/caps.c: Add test to test speed of caps copy
3478         and free.
3479
3480         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3481         GMemChunk to be fair.
3482
3483         * gst/gsttrashstack.h: Remove warning about using the fallback
3484         trash stack implementation, it's still faster than malloc.
3485
3486 2005-03-30  Andy Wingo  <wingo@pobox.com>
3487
3488         * tests/complexity.c: Add a copyright.
3489
3490 2005-03-31  Wim Taymans  <wim@fluendo.com>
3491
3492         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3493         (gst_base_transform_class_init), (gst_base_transform_init),
3494         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3495         (gst_base_transform_get_property),
3496         (gst_base_transform_sink_activate),
3497         (gst_base_transform_src_activate),
3498         (gst_base_transform_change_state):
3499         * gst/base/gstbasetransform.h:
3500         * gst/elements/gstidentity.c: (gst_identity_class_init),
3501         (gst_identity_event), (gst_identity_check_perfect),
3502         (gst_identity_transform), (gst_identity_start),
3503         (gst_identity_stop):
3504         Added start/stop methods to transform base class so subclasses 
3505         don't need to deal with state changes even.
3506
3507 2005-03-31  Wim Taymans  <wim@fluendo.com>
3508
3509         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3510         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3511         * gst/gstevent.h:
3512         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3513         (gst_pad_pull_range):
3514         Added rate to the discont event to prepare for variable speed
3515         and reverse playback.
3516
3517 2005-03-29  David Schleef  <ds@schleef.org>
3518
3519         * configure.ac:
3520         * testsuite/trigger/Makefile.am:
3521         * testsuite/trigger/trigger.c: A little example program to show
3522         how trigger-based elements can work.
3523
3524 2005-03-29  Wim Taymans  <wim@fluendo.com>
3525
3526         * gst/base/Makefile.am:
3527         * gst/base/README:
3528         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3529         (gst_basesink_base_init), (gst_basesink_class_init),
3530         (gst_basesink_pad_getcaps), (gst_basesink_init),
3531         (gst_basesink_activate), (gst_basesink_change_state):
3532         * gst/base/gstbasesink.h:
3533         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3534         (gst_base_transform_base_init), (gst_base_transform_finalize),
3535         (gst_base_transform_class_init), (gst_base_transform_init),
3536         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3537         (gst_base_transform_event), (gst_base_transform_getrange),
3538         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3539         (gst_base_transform_set_property),
3540         (gst_base_transform_get_property),
3541         (gst_base_transform_sink_activate),
3542         (gst_base_transform_src_activate),
3543         (gst_base_transform_change_state):
3544         * gst/base/gstbasetransform.h:
3545         * gst/elements/gstidentity.c: (gst_identity_finalize),
3546         (gst_identity_class_init), (gst_identity_init),
3547         (gst_identity_event), (gst_identity_check_perfect),
3548         (gst_identity_transform), (gst_identity_set_property),
3549         (gst_identity_get_property), (gst_identity_change_state):
3550         * gst/elements/gstidentity.h:
3551         * gst/gstelement.c: (gst_element_get_state_func),
3552         (gst_element_lost_state), (gst_element_pads_activate):
3553         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3554         (gst_pad_check_pull_range), (gst_pad_pull_range):
3555         * gst/gstpad.h:
3556         Simplify pad activation.
3557         Added function to check if pull_range can be performed.
3558         Error out when pulling inactive or flushing pads.
3559         Removed const from refcounted types as it does not make sense.
3560         Simplify pad templates in basesink
3561         Added base class for simple 1-to-1 transforms.
3562         Make identity subclass the base transform.
3563
3564 2005-03-29  Andy Wingo  <wingo@pobox.com>
3565
3566         * docs/libs/gstreamer-libs-overrides.txt: 
3567         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3568         really don't understand what's going on, but like whatever. I want
3569         green buildbot!
3570
3571         * docs/gst/Makefile.am:
3572         * docs/libs/Makefile.am: Dist the overrides files.
3573
3574         * check/Makefile.am (clean-local): Remove .libs directories.
3575
3576         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3577         elements to EXTRA_DIST, so po/ files are happy.
3578
3579         * po/POTFILES.in: Er, remove it here.
3580
3581         * po/POTFILES: Remove gstspider.c.
3582
3583         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3584
3585         * docs/libs/gstreamer-libs-docs.sgml: 
3586         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3587         bytestream.
3588
3589         * tests/complexity.c (main): Set the length of the preroll queue
3590         on the sinks to prevent a lockup.
3591
3592         * libs/gst/dataprotocol/Makefile.am: 
3593         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3594         the same as the one in check/gst-libs/gdp.c.
3595
3596         * po/, docs/gst/: Commit automatic changes to docs and po files.
3597
3598         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3599         the versioned libgstbase.
3600
3601         * check/Makefile.am: Depend on an unversioned gst-register, seems
3602         to make autoconf happier.
3603
3604         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3605
3606 2005-03-28  Wim Taymans  <wim@fluendo.com>
3607
3608         * configure.ac:
3609         * docs/design/part-gstelement.txt:
3610         * docs/design/part-negotiation.txt:
3611         * docs/design/part-preroll.txt:
3612         * docs/design/part-scheduling.txt:
3613         * docs/design/part-states.txt:
3614         * gst/Makefile.am:
3615         * gst/base/Makefile.am:
3616         * gst/base/README:
3617         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3618         (gst_basesink_base_init), (gst_basesink_class_init),
3619         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3620         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3621         (gst_basesink_set_pad_functions),
3622         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3623         (gst_basesink_set_property), (gst_basesink_get_property),
3624         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3625         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3626         (gst_basesink_preroll_queue_push),
3627         (gst_basesink_preroll_queue_empty),
3628         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3629         (gst_basesink_event), (gst_basesink_get_times),
3630         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3631         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3632         (gst_basesink_loop), (gst_basesink_activate),
3633         (gst_basesink_change_state):
3634         * gst/base/gstbasesink.h:
3635         * gst/elements/Makefile.am:
3636         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3637         (gst_fakesink_class_init), (gst_fakesink_init),
3638         (gst_fakesink_set_property), (gst_fakesink_get_property),
3639         (gst_fakesink_get_times), (gst_fakesink_event),
3640         (gst_fakesink_preroll), (gst_fakesink_render),
3641         (gst_fakesink_change_state):
3642         * gst/elements/gstfakesink.h:
3643         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3644         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3645         * gst/gstelement.c: (gst_element_add_pad),
3646         (gst_element_get_state_func), (gst_element_abort_state),
3647         (gst_element_commit_state), (gst_element_lost_state),
3648         (gst_element_set_state), (gst_element_pads_activate):
3649         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3650         * gst/gstpipeline.c: (gst_pipeline_send_event),
3651         (gst_pipeline_change_state):
3652         Added state change code.
3653         Added/updated docs.
3654         Added sink base class, make fakesink extend the base class.
3655         Small cleanups in GstPipeline.
3656
3657 2005-03-26  David Schleef  <ds@schleef.org>
3658
3659         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3660         is broken and should be implemented in a different library.
3661         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3662         * gst/gst.h: remove gstcpu.h
3663         * gst/gstcpu.c: remove
3664         * gst/gstcpu.h: remove
3665         * gst/Makefile.am.future: Remove this file.  It's ancient.
3666
3667 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3668
3669         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3670         (gst_bin_send_event):
3671           Add default event/set_manager handlers. The set_manager handler
3672           takes care that the manager is distributed over kids that were
3673           already in the bin before the manager was set. The event handler
3674           is a utility virtual function that sends the event over all sinks,
3675           so that gst_element_send_event (bin, event); has the expected
3676           behaviour.
3677         * gst/gstpad.c: (gst_pad_event_default):
3678           Re-install default event handling for discontinuities, so that
3679           seeking works without requiring hacks in applications or extra
3680           code in sinks.
3681         * gst/gstpipeline.c: (gst_pipeline_class_init),
3682         (gst_pipeline_send_event):
3683           Half hack, half utility: set a pipeline to PAUSED for seek events,
3684           since that is the only way we can guarantee a/v sync. Means that
3685           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3686           and it "just works".
3687
3688 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3689
3690         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3691           Lock/unlock mismatch.
3692
3693 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3694
3695         * docs/faq/gst-uninstalled:
3696           add gst-plugins-base
3697         * docs/gst/Makefile.am:
3698           don't error out until docs are fixed
3699         * docs/gst/gstreamer.types:
3700           remove thread
3701
3702 2005-03-22  Wim Taymans  <wim@fluendo.com>
3703
3704         * check/Makefile.am:
3705         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3706         * gst/gststructure.c: (gst_structure_set_valist),
3707         (gst_structure_copy_conditional):
3708         Activated more tests.
3709         Added message test.
3710         Added G_TYPE_POINTER to GstStructure.
3711         
3712
3713 2005-03-22  Wim Taymans  <wim@fluendo.com>
3714
3715         * docs/design/part-TODO.txt:
3716         * docs/design/part-events.txt:
3717         * docs/design/part-gstbin.txt:
3718         * docs/design/part-gstbus.txt:
3719         * docs/design/part-gstpipeline.txt:
3720         * docs/design/part-messages.txt:
3721         * gst/gstbus.c:
3722         * gst/gstmessage.c:
3723         Docs updates
3724
3725 2005-03-21  Wim Taymans  <wim@fluendo.com>
3726
3727         * gst/gstbus.c: (gst_bus_post):
3728         Fix copy-and-paste error.
3729
3730 2005-03-21  Wim Taymans  <wim@fluendo.com>
3731
3732         * check/Makefile.am:
3733         * gst/Makefile.am:
3734         * gst/elements/Makefile.am:
3735         * gst/elements/gstelements.c:
3736         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3737         (gst_fakesink_event), (gst_fakesink_chain):
3738         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3739         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3740         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3741         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3742         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3743         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3744         (gst_fakesrc_loop), (gst_fakesrc_activate),
3745         (gst_fakesrc_change_state):
3746         * gst/elements/gstfakesrc.h:
3747         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3748         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
3749         (gst_filesrc_open_file), (gst_filesrc_loop),
3750         (gst_filesrc_activate), (gst_filesrc_change_state),
3751         (filesrc_find_peek), (filesrc_find_suggest),
3752         (gst_filesrc_type_find):
3753         * gst/elements/gstidentity.c: (gst_identity_finalize),
3754         (gst_identity_class_init), (gst_identity_init),
3755         (gst_identity_proxy_getcaps), (identity_queue_push),
3756         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
3757         (gst_identity_getrange), (gst_identity_chain),
3758         (gst_identity_sink_loop), (gst_identity_src_loop),
3759         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
3760         (gst_identity_set_property), (gst_identity_get_property),
3761         (gst_identity_change_state):
3762         * gst/elements/gstidentity.h:
3763         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
3764         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
3765         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
3766         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
3767         (gst_tee_sink_activate):
3768         * gst/elements/gsttee.h:
3769         * gst/gst.c: (gst_register_core_elements), (init_post):
3770         * gst/gst.h:
3771         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
3772         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
3773         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
3774         (gst_bin_change_state):
3775         * gst/gstbin.h:
3776         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
3777         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
3778         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
3779         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
3780         (gst_bus_set_sync_handler), (gst_bus_create_watch),
3781         (bus_watch_callback), (bus_watch_destroy),
3782         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
3783         (poll_timeout), (gst_bus_poll):
3784         * gst/gstbus.h:
3785         * gst/gstcaps.h:
3786         * gst/gstdata.h:
3787         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3788         (gst_element_post_message), (gst_element_message_full),
3789         (gst_element_get_state_func), (gst_element_get_state),
3790         (gst_element_abort_state), (gst_element_commit_state),
3791         (gst_element_lost_state), (gst_element_set_state),
3792         (gst_element_pads_activate), (gst_element_change_state),
3793         (gst_element_dispose), (gst_element_set_manager_func),
3794         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
3795         (gst_element_set_manager), (gst_element_get_manager),
3796         (gst_element_set_bus), (gst_element_get_bus),
3797         (gst_element_set_scheduler), (gst_element_get_scheduler):
3798         * gst/gstelement.h:
3799         * gst/gstevent.c: (gst_event_new_segment_seek),
3800         (gst_event_new_flush):
3801         * gst/gstevent.h:
3802         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
3803         (_gst_message_free), (gst_message_get_type), (gst_message_new),
3804         (gst_message_new_eos), (gst_message_new_error),
3805         (gst_message_new_warning), (gst_message_new_tag),
3806         (gst_message_new_state_changed), (gst_message_new_application),
3807         (gst_message_get_structure), (gst_message_parse_tag),
3808         (gst_message_parse_state_changed), (gst_message_parse_error),
3809         (gst_message_parse_warning):
3810         * gst/gstmessage.h:
3811         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
3812         (gst_real_pad_set_property), (gst_pad_set_active),
3813         (gst_pad_is_active), (gst_pad_set_blocked_async),
3814         (gst_pad_set_blocked), (gst_pad_is_blocked),
3815         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
3816         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
3817         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
3818         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
3819         (gst_pad_link_filtered), (gst_pad_relink_filtered),
3820         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
3821         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
3822         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
3823         (gst_pad_set_caps), (gst_pad_configure_sink),
3824         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
3825         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
3826         (gst_real_pad_dispose), (gst_real_pad_finalize),
3827         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
3828         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3829         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
3830         * gst/gstpad.h:
3831         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
3832         (pipeline_bus_handler), (gst_pipeline_change_state),
3833         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
3834         * gst/gstpipeline.h:
3835         * gst/gstprobe.h:
3836         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
3837         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
3838         (gst_queue_link_src), (gst_queue_bufferalloc),
3839         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
3840         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
3841         (gst_queue_loop), (gst_queue_handle_src_event),
3842         (gst_queue_handle_src_query), (gst_queue_src_activate),
3843         (gst_queue_change_state):
3844         * gst/gstqueue.h:
3845         * gst/gstscheduler.c: (gst_scheduler_init),
3846         (gst_scheduler_dispose), (gst_scheduler_create_task),
3847         (gst_scheduler_factory_create):
3848         * gst/gstscheduler.h:
3849         * gst/gststructure.c: (gst_structure_get_type),
3850         (gst_structure_copy_conditional):
3851         * gst/gststructure.h:
3852         * gst/gsttaginterface.h:
3853         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
3854         (gst_task_init), (gst_task_dispose), (gst_task_create),
3855         (gst_task_get_state), (gst_task_start), (gst_task_stop),
3856         (gst_task_pause):
3857         * gst/gsttask.h:
3858         * gst/gstthread.c:
3859         * gst/gstthread.h:
3860         * gst/gsttypes.h:
3861         * gst/schedulers/Makefile.am:
3862         * gst/schedulers/cothreads_compat.h:
3863         * gst/schedulers/entryscheduler.c:
3864         * gst/schedulers/faircothreads.c:
3865         * gst/schedulers/faircothreads.h:
3866         * gst/schedulers/fairscheduler.c:
3867         * gst/schedulers/gstbasicscheduler.c:
3868         * gst/schedulers/gstoptimalscheduler.c:
3869         * gst/schedulers/gthread-cothreads.h:
3870         * gst/schedulers/threadscheduler.c:
3871         (gst_thread_scheduler_task_get_type),
3872         (gst_thread_scheduler_task_class_init),
3873         (gst_thread_scheduler_task_init),
3874         (gst_thread_scheduler_task_start),
3875         (gst_thread_scheduler_task_stop),
3876         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
3877         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
3878         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
3879         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
3880         (plugin_init):
3881         * libs/gst/Makefile.am:
3882         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
3883         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
3884         (gst_file_pad_parent_set):
3885         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3886         (gst_dp_event_from_packet):
3887         * tests/complexity.c: (main):
3888         * tests/mass_elements.c: (main):
3889         * testsuite/states/locked.c: (message_received), (main):
3890         * testsuite/states/parent.c: (main):
3891         * tools/gst-inspect.c: (print_element_flag_info),
3892         (print_implementation_info), (print_pad_info):
3893         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
3894         (main):
3895         * tools/gst-md5sum.c: (event_loop), (main):
3896         * tools/gst-typefind.c: (main):
3897         * tools/gst-xmlinspect.c: (print_element_info):
3898         Next big merge.
3899         Added GstBus for mainloop integration.
3900         Added GstMessage for sending notifications on the bus.
3901         Added GstTask as an abstraction for pipeline entry points.
3902         Removed GstThread.
3903         Removed Schedulers.
3904         Simplified GstQueue for multithreaded core.
3905         Made _link threadsafe, removed old capsnego.
3906         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
3907         Added pad blocking functions.
3908         Reworked scheduling functions in GstPad to prepare for
3909         scheduling updates soon.
3910         Moved events out of data stream.
3911         Simplified GstEvent types.
3912         Added return values to push/pull.
3913         Removed clocking from GstElement.
3914         Added prototypes for state change function for next merge.
3915         Removed iterate from bins and state change management.
3916         Fixed some elements, disabled others for now.
3917         Fixed -inspect and -launch.
3918         Added check for GstBus.
3919
3920 2005-03-10  Wim Taymans  <wim@fluendo.com>
3921
3922         * docs/design/part-MT-refcounting.txt:
3923         * docs/design/part-clocks.txt:
3924         * docs/design/part-gstelement.txt:
3925         * docs/design/part-gstobject.txt:
3926         * docs/design/part-standards.txt:
3927         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3928         (gst_bin_remove_func), (gst_bin_remove):
3929         * gst/gstbin.h:
3930         * gst/gstbuffer.c:
3931         * gst/gstcaps.h:
3932         * testsuite/clock/clock1.c: (main):
3933         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
3934         (main):
3935         * testsuite/dlopen/loadgst.c: (do_test):
3936         * testsuite/refcounting/bin.c: (add_remove_test1),
3937         (add_remove_test2), (main):
3938         * testsuite/refcounting/element.c: (main):
3939         * testsuite/refcounting/element_pad.c: (main):
3940         * testsuite/refcounting/pad.c: (main):
3941         * tools/gst-launch.c: (sigint_handler_sighandler):
3942         * tools/gst-typefind.c: (main):
3943         Doc updates.
3944         Added doc about clock.
3945         removed gst_bin_iterate_recurse_up(), marked methods
3946         for removal.
3947         Fix more testsuites.
3948
3949 2005-03-09  Wim Taymans  <wim@fluendo.com>
3950
3951         * gst/gstpad.c: (gst_pad_get_direction),
3952         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
3953         (gst_pad_collect_valist):
3954         * testsuite/bins/interface.c: (main):
3955         * testsuite/caps/audioscale.c: (test_caps):
3956         * testsuite/caps/caps.c: (test1), (test2), (test3):
3957         * testsuite/caps/deserialize.c: (main):
3958         * testsuite/caps/enumcaps.c: (main):
3959         * testsuite/caps/filtercaps.c: (main):
3960         * testsuite/caps/intersect2.c: (main):
3961         * testsuite/caps/random.c: (main):
3962         * testsuite/caps/renegotiate.c: (my_fixate), (main):
3963         * testsuite/caps/sets.c: (check_caps):
3964         * testsuite/caps/simplify.c: (check_caps), (main):
3965         * testsuite/caps/subtract.c: (check_caps):
3966         Fix _pad_get_direction wrt ghostpads.
3967         Fix caps testsuite.
3968
3969 2005-03-09  Wim Taymans  <wim@fluendo.com>
3970
3971         * check/Makefile.am:
3972         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
3973         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
3974         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
3975         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
3976         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
3977         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
3978         (gst_bin_remove), (gst_bin_iterate_recurse_up),
3979         (bin_element_is_sink), (gst_bin_iterate_sinks),
3980         (gst_bin_iterate_all_by_interface):
3981         * gst/gstbin.h:
3982         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
3983         (gst_element_change_state), (gst_element_dispose),
3984         (gst_element_finalize), (gst_element_set_loop_function):
3985         * gst/gstelement.h:
3986         * gst/gstiterator.c: (find_custom_fold_func):
3987         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3988         (gst_pad_collectv), (gst_pad_collect_valist),
3989         (gst_pad_template_new):
3990         * gst/gstpipeline.c: (gst_pipeline_class_init),
3991         (gst_pipeline_dispose), (gst_pipeline_set_property),
3992         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
3993         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
3994         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
3995         * gst/gstutils.h:
3996         * gst/schedulers/entryscheduler.c:
3997         * gst/schedulers/gstbasicscheduler.c:
3998         (gst_basic_scheduler_cothreaded_chain),
3999         (gst_basic_scheduler_chain_add_element):
4000         * testsuite/bins/interface.c: (main):
4001         Added GstBin test.
4002         Added GstSystemClock test.
4003         Implemented clock distribution code in GstBin.
4004         Implemented iterate sinks method for future use.
4005         Rearranged gstelement.h
4006         Fix GstIterator comparison bug.
4007         Moved some code to GstPipeline, mostly clocking related.
4008
4009 2005-03-09  Wim Taymans  <wim@fluendo.com>
4010
4011         * configure.ac:
4012         * gst/gst_private.h:
4013         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4014         (gst_bin_remove_func), (gst_bin_remove),
4015         (gst_bin_get_by_name_recurse_up):
4016         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4017         (gst_clock_id_compare_func), (gst_clock_id_wait),
4018         (gst_clock_id_wait_async), (gst_clock_init),
4019         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4020         * gst/gstelement.h:
4021         * gst/gstinfo.c: (_gst_debug_init):
4022         * gst/gstobject.h:
4023         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4024         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4025         * gst/gstpad.h:
4026         Bump version number, we're now 0.9.0
4027         Add future debugging category.
4028         Fix NULL _unref() in _get_by_name_recurse_up
4029         Rearrange gstpad.h.
4030         Update some docs.
4031
4032 2005-03-08  Wim Taymans  <wim@fluendo.com>
4033
4034         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4035         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4036         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4037         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4038         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4039         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4040         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4041         * gst/elements/gstidentity.c: (gst_identity_class_init):
4042         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4043         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4044         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4045         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4046         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4047         (gst_tee_link):
4048         * gst/gstelement.c: (gst_element_class_init),
4049         (gst_element_base_class_init), (gst_element_init),
4050         (gst_element_get_random_pad), (gst_element_wait_state_change),
4051         (gst_element_change_state), (gst_element_dispose),
4052         (gst_element_finalize), (gst_element_set_loop_function):
4053         * gst/gstelement.h:
4054         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4055         * gst/gstthread.c: (gst_thread_class_init),
4056         (gst_thread_release_children_locks), (gst_thread_change_state):
4057         * gst/schedulers/gstbasicscheduler.c:
4058         (gst_basic_scheduler_loopfunc_wrapper),
4059         (gst_basic_scheduler_chain_wrapper),
4060         (gst_basic_scheduler_src_wrapper),
4061         (gst_basic_scheduler_remove_element):
4062         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4063         Remove threadsafe properties. Fix elements because GObject
4064         complains when installing a property before declaring a
4065         set/get_property handler.
4066         Rearrange gstelement.h file, use STATE macros for state locks.
4067         Free mutexes in the finalize method instead of dispose.
4068
4069 2005-03-08  Wim Taymans  <wim@fluendo.com>
4070
4071         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4072         * gst/gstthread.c: (gst_thread_release_children_locks):
4073         Added parentage check.
4074         Fix build og GstThread again.
4075
4076 2005-03-08  Wim Taymans  <wim@fluendo.com>
4077
4078         * docs/design/part-MT-refcounting.txt:
4079         * docs/design/part-conventions.txt:
4080         * docs/design/part-gstobject.txt:
4081         * docs/design/part-relations.txt:
4082         * docs/design/part-standards.txt:
4083         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4084         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4085         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4086         (gst_bin_iterate_all_by_interface):
4087         * gst/gstbuffer.h:
4088         * gst/gstclock.h:
4089         * gst/gstelement.c: (gst_element_class_init),
4090         (gst_element_change_state), (gst_element_set_loop_function):
4091         * gst/gstelement.h:
4092         * gst/gstiterator.c:
4093         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4094         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4095         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4096         (gst_object_set_parent), (gst_object_unparent),
4097         (gst_object_check_uniqueness):
4098         * gst/gstobject.h:
4099         Docs updates, clean up some headers.
4100
4101 2005-03-07  Wim Taymans  <wim@fluendo.com>
4102
4103         * check/.cvsignore:
4104         * check/Makefile.am:
4105         * check/gst-libs/.cvsignore:
4106         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4107         * check/gst/.cvsignore:
4108         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4109         (START_TEST), (gstbus_suite), (main):
4110         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4111         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4112         (gst_data_suite), (main):
4113         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4114         (add_fold_func), (gstiterator_suite), (main):
4115         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4116         (thread_name_object), (thread_name_object_default),
4117         (gst_object_name_compare), (gst_object_suite), (main):
4118         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4119         (gst_pad_suite), (main):
4120         * check/gstcheck.c: (gst_check_log_message_func),
4121         (gst_check_log_critical_func), (gst_check_init):
4122         * check/gstcheck.h:
4123         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4124         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4125         Added checks.
4126
4127 2005-03-07  Wim Taymans  <wim@fluendo.com>
4128
4129         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4130         (gst_list_iterator_next), (gst_list_iterator_resync),
4131         (gst_list_iterator_free), (gst_iterator_new_list),
4132         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4133         (gst_iterator_free), (gst_iterator_push), (filter_next),
4134         (filter_resync), (filter_uninit), (filter_free),
4135         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4136         (gst_iterator_foreach), (find_custom_fold_func),
4137         (gst_iterator_find_custom):
4138         * gst/gstiterator.h:
4139         Added missing files.
4140
4141 2005-03-07  Wim Taymans  <wim@fluendo.com>
4142
4143         * Makefile.am:
4144         * configure.ac:
4145         * docs/design/part-MT-refcounting.txt:
4146         * docs/design/part-conventions.txt:
4147         * docs/design/part-gstobject.txt:
4148         * docs/design/part-relations.txt:
4149         * examples/mixer/mixer.c: (main):
4150         * examples/thread/thread.c: (eos), (main):
4151         * gst/Makefile.am:
4152         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4153         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4154         (gst_spider_plug_from_srcpad):
4155         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4156         (gst_spider_identity_change_state),
4157         (gst_spider_identity_sink_loop_type_finding):
4158         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4159         * gst/elements/gstidentity.c: (gst_identity_init):
4160         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4161         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4162         * gst/elements/gsttypefindelement.c: (free_entry):
4163         * gst/gst.c:
4164         * gst/gst.h:
4165         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4166         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4167         (gst_bin_set_index), (gst_bin_set_element_sched),
4168         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4169         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4170         (gst_bin_iterate_elements), (iterate_child_recurse),
4171         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4172         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4173         (compare_interface), (gst_bin_get_by_interface),
4174         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4175         * gst/gstbin.h:
4176         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4177         (gst_buffer_default_free), (gst_buffer_default_copy),
4178         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4179         (gst_buffer_create_sub):
4180         * gst/gstbuffer.h:
4181         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4182         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4183         (gst_caps_unref), (gst_static_caps_get),
4184         (gst_caps_remove_and_get_structure), (gst_caps_append),
4185         (gst_caps_append_structure), (gst_caps_remove_structure),
4186         (gst_caps_copy_nth), (gst_caps_set_simple),
4187         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4188         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4189         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4190         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4191         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4192         (gst_caps_structure_figure_out_union),
4193         (gst_caps_switch_structures), (gst_caps_do_simplify),
4194         (gst_caps_replace), (gst_caps_from_string),
4195         (gst_caps_copy_conditional):
4196         * gst/gstcaps.h:
4197         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4198         (_gst_clock_id_free), (gst_clock_id_unref),
4199         (gst_clock_id_compare_func), (gst_clock_id_wait),
4200         (gst_clock_id_wait_async), (gst_clock_class_init),
4201         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4202         (gst_clock_get_time), (gst_clock_set_time_adjust),
4203         (gst_clock_set_property), (gst_clock_get_property):
4204         * gst/gstclock.h:
4205         * gst/gstcompat.h:
4206         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4207         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4208         * gst/gstdata.h:
4209         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4210         (gst_element_requires_clock), (gst_element_provides_clock),
4211         (gst_element_set_clock), (gst_element_clock_wait),
4212         (gst_element_wait), (gst_element_set_time_delay),
4213         (gst_element_is_indexable), (gst_element_add_pad),
4214         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4215         (pad_compare_name), (gst_element_get_static_pad),
4216         (gst_element_request_pad), (gst_element_get_request_pad),
4217         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4218         (gst_element_class_get_pad_template_list),
4219         (gst_element_class_get_pad_template), (gst_element_error_func),
4220         (gst_element_get_random_pad), (gst_element_get_event_masks),
4221         (gst_element_send_event), (gst_element_seek),
4222         (gst_element_get_query_types), (gst_element_query),
4223         (gst_element_get_formats), (gst_element_convert),
4224         (gst_element_is_locked_state), (gst_element_set_locked_state),
4225         (gst_element_sync_state_with_parent), (gst_element_change_state),
4226         (gst_element_finalize), (gst_element_yield),
4227         (gst_element_interrupt), (gst_element_set_scheduler),
4228         (gst_element_get_scheduler), (gst_element_set_loop_function):
4229         * gst/gstelement.h:
4230         * gst/gstevent.h:
4231         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4232         (gst_format_get_by_nick), (gst_format_get_details),
4233         (gst_format_iterate_definitions):
4234         * gst/gstformat.h:
4235         * gst/gstindex.c: (gst_index_gtype_resolver):
4236         * gst/gstinfo.c:
4237         * gst/gstinfo.h:
4238         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4239         (gst_mem_chunk_free):
4240         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4241         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4242         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4243         (gst_object_dispatch_properties_changed),
4244         (gst_object_set_name_default), (gst_object_set_name),
4245         (gst_object_get_name), (gst_object_set_name_prefix),
4246         (gst_object_get_name_prefix), (gst_object_set_parent),
4247         (gst_object_get_parent), (gst_object_unparent),
4248         (gst_object_check_uniqueness), (gst_object_save_thyself),
4249         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4250         (gst_object_set_property), (gst_object_get_property),
4251         (gst_object_get_path_string):
4252         * gst/gstobject.h:
4253         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4254         (gst_real_pad_init), (gst_real_pad_get_property),
4255         (gst_pad_custom_new), (gst_pad_get_direction),
4256         (gst_pad_set_active), (gst_pad_is_active),
4257         (gst_pad_set_event_function), (gst_pad_is_linked),
4258         (gst_pad_link_free), (gst_pad_link_intersect),
4259         (gst_pad_link_fixate), (gst_pad_set_caps),
4260         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4261         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4262         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4263         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4264         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4265         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4266         (gst_pad_realize), (gst_pad_get_allowed_caps),
4267         (gst_real_pad_dispose), (gst_real_pad_finalize),
4268         (gst_pad_collectv), (gst_pad_collect_valist),
4269         (gst_pad_template_dispose), (gst_pad_template_new),
4270         (gst_pad_get_internal_links):
4271         * gst/gstpad.h:
4272         * gst/gstpipeline.c: (gst_pipeline_dispose),
4273         (gst_pipeline_change_state):
4274         * gst/gstpipeline.h:
4275         * gst/gstplugin.c:
4276         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4277         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4278         * gst/gstpluginfeature.h:
4279         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4280         * gst/gstquery.c: (_gst_query_type_initialize),
4281         (gst_query_type_register), (gst_query_type_get_by_nick),
4282         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4283         * gst/gstquery.h:
4284         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4285         * gst/gstscheduler.c: (gst_scheduler_add_element),
4286         (gst_scheduler_factory_create):
4287         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4288         (gst_structure_free), (gst_structure_set_name),
4289         (gst_structure_id_set_value), (gst_structure_set_value),
4290         (gst_structure_set_valist), (gst_structure_remove_field),
4291         (gst_structure_remove_fields),
4292         (gst_structure_remove_fields_valist),
4293         (gst_structure_remove_all_fields), (gst_structure_foreach),
4294         (gst_structure_map_in_place),
4295         (gst_caps_structure_fixate_field_nearest_int),
4296         (gst_caps_structure_fixate_field_nearest_double):
4297         * gst/gststructure.h:
4298         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4299         (gst_system_clock_init), (gst_system_clock_dispose),
4300         (gst_system_clock_async_thread),
4301         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4302         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4303         * gst/gstsystemclock.h:
4304         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4305         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4306         * gst/gsttaginterface.c:
4307         * gst/gstthread.c: (gst_thread_dispose),
4308         (gst_thread_release_children_locks), (gst_thread_change_state),
4309         (gst_thread_main_loop):
4310         * gst/gsttrashstack.h:
4311         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4312         * gst/gsttypes.h:
4313         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4314         (gst_element_request_pad), (gst_element_get_pad_from_template),
4315         (gst_element_request_compatible_pad),
4316         (gst_element_get_compatible_pad_filtered),
4317         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4318         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4319         (gst_element_link_many), (gst_element_link),
4320         (gst_element_link_pads), (gst_element_unlink_pads),
4321         (gst_element_unlink_many), (gst_element_unlink),
4322         (gst_pad_can_link_filtered), (gst_pad_can_link),
4323         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4324         (gst_object_default_error), (gst_bin_add_many),
4325         (gst_bin_remove_many), (gst_element_populate_std_props),
4326         (gst_element_class_install_std_props), (gst_buffer_merge),
4327         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4328         (link_fold_func), (gst_pad_proxy_setcaps):
4329         * gst/gstutils.h:
4330         * gst/gstvalue.c: (gst_value_deserialize_string):
4331         * gst/parse/grammar.y:
4332         * gst/schedulers/gstbasicscheduler.c:
4333         (gst_basic_scheduler_cothreaded_chain),
4334         (gst_basic_scheduler_chain_recursive_add),
4335         (gst_basic_scheduler_pad_link):
4336         * gst/schedulers/gstoptimalscheduler.c:
4337         (get_group_schedule_function),
4338         (gst_opt_scheduler_state_transition),
4339         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4340         * libs/gst/bytestream/bytestream.c:
4341         * libs/gst/dataprotocol/dataprotocol.c:
4342         (gst_dp_header_from_buffer):
4343         * po/nb.po:
4344         * po/ru.po:
4345         * tests/threadstate/threadstate2.c: (eos):
4346         * tools/gst-compprep.c: (main):
4347         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4348         (print_pad_info), (print_children_info):
4349         * tools/gst-launch.c: (idle_func), (main):
4350         * tools/gst-md5sum.c: (idle_func), (main):
4351         * tools/gst-xmlinspect.c: (print_element_info):
4352         First THREADED backport attempt, focusing on adding locks and
4353         making sure the API is threadsafe. Needs more work. More docs
4354         follow this week.
4355
4356 2005-02-24  Andy Wingo  <wingo@pobox.com>
4357
4358         * tests/bench-complexity.scm:
4359         * tests/complexity.gnuplot: New files, good for running complexity
4360         benchmarks.
4361
4362         * tests/Makefile.am:
4363         * tests/complexity.c: New test, sets up N elements, at each level
4364         teeing into M streams per element. Eeeenteresting.
4365
4366         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4367         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4368         running bench-mass_elements.scm.
4369
4370         * tests/bench-mass_elements.scm: New script, runs mass_elements
4371         for various numbers of identities, outputting the results to a
4372         file. Requires guile 1.6. Just for testing.
4373
4374 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4375
4376         * gst/schedulers/fairscheduler.c:
4377           compile with debug disabled
4378
4379 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4380
4381         * configure.ac:
4382           hunting season on 0.9 is now OPEN
4383
4384 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4385
4386         * docs/libs/tmpl/gstcontrol.sgml:
4387         * docs/libs/tmpl/gstdparam.sgml:
4388         * docs/libs/tmpl/gstdplinint.sgml:
4389         * docs/libs/tmpl/gstdpman.sgml:
4390         * docs/libs/tmpl/gstdpsmooth.sgml:
4391         * docs/libs/tmpl/gstunitconvert.sgml:
4392           more docs for the state of dparams
4393
4394 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4395
4396         * gst/gstelementfactory.c: (gst_element_factory_create):
4397         * gst/gstobject.c: (gst_object_init),
4398         (gst_object_set_name_default), (gst_object_set_name):
4399           name objects by default, not in gst_element_factory_create. Allows
4400           using elements created with g_object_new. (fixes #167283)
4401
4402 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4403
4404         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4405           make the time that debugging functions print relative to when
4406           gst_init was called
4407
4408 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4409
4410         * gst/gsttaginterface.c:
4411           Fix inline docs: tag setter vararg functions are NULL-terminated,
4412           GST_TAG_INVALID doesn't exist any more.
4413
4414 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4415
4416         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4417         Allocate the 1 byte more memory that was forgotten!!!!!
4418         fixes memory corruption on 64bit platforms
4419
4420 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4421
4422         * docs/pwg/building-pads.xml:
4423         * docs/pwg/intro-basics.xml:
4424           fixed a few typos, relabeled introductionary list of types
4425         * docs/random/ensonic/dparams.txt:
4426           more notes abut dparam changes
4427         * libs/gst/control/dparam.c: (gst_dparam_attach):
4428         * libs/gst/control/dparammanager.c:
4429         * libs/gst/control/dparammanager.h:
4430           - many comments and notes on dparam implementation
4431           - new dparams are were not initialized to the default value
4432             from param spec
4433
4434 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4435
4436         submitted by: Peter Astakhov
4437
4438         * po/LINGUAS:
4439         * po/ru.po:
4440           adding Russian translation
4441
4442 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4443
4444         * configure.ac:
4445         * docs/gst/Makefile.am:
4446         * docs/libs/Makefile.am:
4447           make sure popt is added to gtk-doc flags.  Fixes #147782.
4448
4449 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4450
4451         * docs/faq/using.xml:
4452           Fix typo in FAQ (artssink => artsdsink)
4453
4454 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4455
4456         * tools/gst-launch.1.in:
4457           Fix typo (#166699).
4458
4459 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4460
4461         * docs/faq/using.xml:
4462           Add -v argument to fakesrc/fakesink gst-launch line,
4463           so that the promised output will actually show up.
4464
4465 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4466
4467         * gst/gstthread.c: (gst_thread_change_state):
4468           Implement state-change error handling (#166073).
4469
4470 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4471
4472         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4473           Release interrupt after handling (#166250).
4474
4475 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4476
4477         * configure.ac:
4478           back to HEAD
4479
4480 === release 0.8.9 ===
4481
4482 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4483
4484         * NEWS:
4485         * RELEASE:
4486         * configure.ac:
4487           releasing 0.8.9, "Like Eating Glass"
4488
4489 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4490
4491         submitted by: Clytie Siddall
4492
4493         * po/vi.po: Added Vietnamese translation
4494
4495 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4496
4497         patch by: Tim Philipp-Müller
4498
4499         * configure.ac:
4500         * gst/gstpad.c:
4501           unref data when probe function returns FALSE.  Fixes #166362
4502
4503 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4504
4505         * gst/gst.c: (gst_init_get_popt_table):
4506           Fix typo (#166269).
4507
4508 2005-02-04  Andy Wingo  <wingo@pobox.com>
4509
4510         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4511         the debugging on whether the caps are compatible.
4512
4513 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4514
4515         * docs/manual/basics-elements.xml:
4516           Fix two typos.
4517
4518 2005-02-02  Wim Taymans  <wim@fluendo.com>
4519
4520         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4521         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4522         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4523         Remove some FIXMEs after analysing and commenting why they
4524         are not issues.
4525
4526 2005-02-02  Wim Taymans  <wim@fluendo.com>
4527
4528         * gst/schedulers/gstoptimalscheduler.c:
4529         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4530         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4531         (get_invalid_call), (chain_invalid_call),
4532         (get_group_schedule_function), (loop_group_schedule_function),
4533         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4534         (gst_opt_scheduler_state_transition),
4535         (gst_opt_scheduler_add_element),
4536         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4537         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4538         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4539         (gst_opt_scheduler_show):
4540         Added lock to protect scheduler data structures.
4541
4542 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4543
4544         * testsuite/threads/threadi.c: (cb_data):
4545           Fix buglet in test.
4546
4547 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4548
4549         * testsuite/threads/Makefile.am:
4550         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4551           On Wim's request, split the test in three separately-compiled
4552           tests that each test a very specific bug. Two of them still fail,
4553           will create bugs for those. threadi.c indicates why they fail.
4554
4555 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4556
4557         * gst/schedulers/gstoptimalscheduler.c:
4558         (get_group_schedule_function):
4559           Try to work with the threading mess that queue_link is.
4560
4561 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4562
4563         * gst/gstbin.c: (gst_bin_remove_func):
4564           Explicitely make an element release locks in a group when being
4565           remove from a bin.
4566         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4567           If there's no scheduler, always return immediately (similar to
4568           gst_element_interrupt).
4569
4570 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4571
4572         * gst/gstbin.c: (gst_bin_child_state_change_func):
4573           Remove a piece of code that could never be reached.
4574         * docs/gst/gstreamer-sections.txt:
4575         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4576         (gst_pad_call_get_function):
4577         * gst/gstpad.h:
4578         * testsuite/pad/Makefile.am:
4579           Fix #150546, enable tests.
4580
4581 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4582
4583         * docs/pwg/advanced-types.xml:
4584           Fix description for buffer-frames=0.
4585         * docs/gst/tmpl/gstbin.sgml:
4586         * gst/gstbin.c: (gst_bin_child_state_change_func),
4587         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4588         * gst/gstbin.h:
4589         * testsuite/threads/Makefile.am:
4590         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4591         (cb_state), (cb_play), (main):
4592           Fix non-recursive state changes to *really* change the state
4593           of the object, and not just call parent_class->state_change.
4594           Fix a lot of lockups caused by this. Fixes #132775. Add test
4595           for the problem. Also enable test to show #142588 (fixed).
4596         * gst/gstthread.c: (gst_thread_change_state),
4597         (gst_thread_child_state_change):
4598           Don't exit the thread if we go to NULL and are inside thread
4599           context. Instead, return control to the main thread context
4600           and exit from there.
4601         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4602           Don't unset virtual functions, since those may still be used.
4603           That's not necessarily correct, but suffices for now.
4604         * configure.ac:
4605         * testsuite/Makefile.am:
4606         * testsuite/pad/Makefile.am:
4607         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4608         (gst_test_sink_base_init), (gst_test_sink_chain),
4609         (gst_test_sink_init), (main):
4610         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4611         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4612         (main):
4613         * testsuite/pad/link.c: (gst_test_element_class_init),
4614         (gst_test_element_base_init), (gst_test_src_get),
4615         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4616         (gst_test_filter_loop), (gst_test_filter_init),
4617         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4618         (cb_error), (main):
4619           Add tests to show #150546. Pass, but should fail (currently
4620           disabled from the testsuite).
4621         * gst/gstscheduler.c: (gst_scheduler_dispose):
4622           Dereference child schedulers on dispose (#94464).
4623         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4624           Fix typo.
4625         * testsuite/threads/thread.c: (main):
4626           Add more debug.
4627
4628 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4629
4630         * gst/gstpad.c: (gst_pad_push):
4631           Oops, revert previous commit, broke testsuite...
4632
4633 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4634
4635         * gst/gstpad.c: (gst_pad_push):
4636           Add check that the pad on which the push is performed is not a
4637           get-based pad (#150546).
4638
4639 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4640
4641         * gst/elements/gsttypefindelement.c:
4642         (gst_type_find_element_handle_event):
4643           Fix buffer pushing if stream EOSes during typefinding.
4644
4645 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4646
4647         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4648
4649         * gst/gstvalue.c: (gst_string_wrap):
4650           Allow NULL-strings as argument (#165365).
4651
4652 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4653
4654         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4655
4656         * gst/schedulers/faircothreads.c:
4657         (gst_fair_scheduler_cothread_queue_show):
4658           Fix build without debug enabled.
4659
4660 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4661
4662         * docs/gst/gstreamer-sections.txt:
4663         * docs/libs/gstreamer-libs-docs.sgml:
4664         * docs/libs/gstreamer-libs-sections.txt:
4665         * docs/libs/tmpl/gstcontrol.sgml:
4666         * docs/libs/tmpl/gstdparam.sgml:
4667         * docs/libs/tmpl/gstdplinint.sgml:
4668         * docs/libs/tmpl/gstdpman.sgml:
4669         * docs/libs/tmpl/gstdpsmooth.sgml:
4670         * docs/libs/tmpl/gstputbits.sgml:
4671         * docs/libs/tmpl/gstunitconvert.sgml:
4672         * libs/gst/control/dparam.c:
4673         * libs/gst/control/dparam.h:
4674         * libs/gst/control/dparammanager.c:
4675         (gst_dpman_add_required_dparam_callback),
4676         (gst_dpman_add_required_dparam_direct),
4677         (gst_dpman_add_required_dparam_array),
4678         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4679         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4680         (gst_dpman_get_manager)
4681           restructured DParam docs
4682
4683 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4684
4685         * gst-element-check.m4:
4686           Only check for gst-inspect if we haven't already
4687           found it in previous element check runs
4688
4689 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4690
4691         * docs/gst/Makefile.am:
4692         * docs/libs/Makefile.am:
4693           fixed install rules to treat style.css as optional
4694
4695 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4696
4697         * docs/gst/Makefile.am:
4698         * docs/libs/Makefile.am:
4699           install style.css along with docs
4700         * docs/gst/tmpl/gstbin.sgml:
4701         * docs/gst/tmpl/gstclock.sgml:
4702         * docs/gst/tmpl/gstdata.sgml:
4703         * docs/gst/tmpl/gstelement.sgml:
4704         * gst/gstbin.h:
4705         * gst/gstelement.c: (gst_element_class_init):
4706         * gst/gstelement.h:
4707           fixing incomplete docs
4708
4709 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4710
4711         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4712           Don't unref seek event twice when fflush() fails
4713           
4714 2005-01-22  David Schleef  <ds@schleef.org>
4715
4716         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4717
4718 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4719
4720         * docs/gst/Makefile.am:
4721         * docs/libs/Makefile.am:
4722           added params for deprecation guards
4723         * gst/gst.c:
4724         * gst/gst.h:
4725         * gst/gsterror.c: (_gst_resource_errors_init),
4726         (_gst_stream_errors_init):
4727         * gst/gsterror.h:
4728           documented some more enums
4729
4730 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4731         * gst/autoplug/gstspideridentity.c:
4732         Cosmetic fix - spider_find_peek should be static
4733         * gst/parse/parse.l:
4734         Applying fix for #164261
4735
4736 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4737
4738         * docs/gst/gstreamer-sections.txt:
4739         * docs/gst/tmpl/gstplugin.sgml:
4740         * docs/libs/gstreamer-libs-sections.txt:
4741         * docs/libs/tmpl/gstcontrol.sgml:
4742         * gst/gstbuffer.h:
4743         * gst/gsttag.h:
4744         * gst/gstvalue.c:
4745           added docs for the TAG defines
4746
4747 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4748
4749         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4750           Only unref entry if there is an entry.
4751
4752 2005-01-17  Wim Taymans  <wim@fluendo.com>
4753
4754         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4755         (remove_from_group), (schedule_group), (normalize_group),
4756         (gst_opt_scheduler_iterate):
4757         Also ref/unref decoupled elements before iterating the
4758         group since they are not added to the list of elements.
4759
4760 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4761
4762         * docs/manual/highlevel-components.xml:
4763           Add subtitle/streamselection as new features to playbin.
4764
4765 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4766
4767         * docs/manual/manual.xml:
4768           Re-enable dataaccess docs (oops).
4769
4770 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4771
4772         * docs/pwg/advanced-types.xml:
4773         * docs/random/mimetypes:
4774           Add documentation on libsndfile types (#163309), by Steve Baker
4775           <steve@stevebaker.org>.
4776         * gst/gstelement.c: (gst_element_release_request_pad):
4777           If an element has no explicit function, just remove the pad.
4778
4779 2005-01-17  Luca Ognibene  <luogni@tin.it>
4780
4781         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4782
4783         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
4784           Fix memleak (#163801).
4785
4786 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4787
4788         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
4789           I think this is actually more correct...
4790
4791 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4792
4793         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4794           Another workaround for memory access while destroyed in callback.
4795           Please, someone with refcount knowledge, have a look at this.
4796
4797 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4798
4799         * docs/faq/faq.xml:
4800         * docs/faq/legal.xml:
4801           move the legal Q&A here
4802
4803 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4804
4805         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
4806         (gst_tee_request_new_pad):
4807           Fix negotiation.
4808
4809 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4810
4811         * docs/random/omega/caps2:
4812         * testsuite/caps/caps_strings:
4813           replace framerate aproximations by their real value
4814           (24000/1001, 30000/1001, 60000/1001)
4815           Partially fixes bug #164049
4816
4817 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4818
4819         * docs/gst/Makefile.am:
4820           don't fail on the stupid GstPoptOption
4821
4822 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4823
4824         * gst/gstpad.h:
4825         * gst/gstprobe.c:
4826           allow probes to work on ghost pads by realizing the pad
4827           probe debugging
4828
4829 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4830
4831         * docs/gst/gstreamer-sections.txt:
4832         * docs/gst/tmpl/gstpad.sgml:
4833         * gst/gstpad.c: (gst_pad_set_active_recursive):
4834         * gst/gstpad.h:
4835           Add gst_pad_set_active_recursive().
4836
4837 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4838
4839         * docs/random/release:
4840           updates
4841         * gst/gst_private.h:
4842         * gst/gstinfo.c:
4843         * gst/gstobject.c:
4844           move deep_notify logging to a new category
4845         * gst/gstprobe.c:
4846         * gst/gstprobe.h:
4847           add stuff so bindings can wrap probes
4848
4849 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4850
4851         * gst/gstplugin.c: (gst_plugin_load):
4852           Fix plugin loading if plugin/lib was already loaded. Fixes
4853           #163383
4854
4855 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
4856
4857         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4858
4859         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
4860           Protect plugin loading by a mutex so it's threadsafe. Fixes
4861           #163234.
4862
4863 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4864
4865         * gst/gstevent.c: (_gst_event_copy):
4866           Reference source object when copying events, since it'll be
4867           dereferenced on event dereferencing as well.
4868
4869 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4870
4871         * docs/gst/gstreamer-sections.txt:
4872         * docs/gst/tmpl/gstevent.sgml:
4873         * gst/gstevent.c: (gst_event_new_filler_stamped),
4874         (gst_event_filler_get_duration):
4875         * gst/gstevent.h:
4876           Add two new functions for filler events (which are used to
4877           synchronize streams if one of them is not having any data
4878           for a while) without interrupting the actual data-stream.
4879           Basically a no-op.
4880         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4881         (gst_queue_link_sink), (gst_queue_link_src),
4882         (gst_queue_change_state):
4883           Allow for renegotiation while filled. Required for stream
4884           switching while playing.
4885
4886 2005-01-08  Benjamin Otte  <otte@gnome.org>
4887
4888         * gst/gstelement.c: (gst_element_link_many):
4889           fix up g_return_if_fail's
4890         * po/LINGUAS:
4891         * po/de.po:
4892           add German translation, that was somehow not included
4893
4894 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4895
4896         * docs/random/mimetypes:
4897           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
4898           do not add them to riff-lib as they are not common
4899
4900 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4901
4902         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4903           Check for existence of probe after performing the probe before
4904           re-accessing it to prevent segfaults caused by removal of the
4905           probe in the callback.
4906
4907 2005-01-05  David Schleef  <ds@schleef.org>
4908
4909         * testsuite/registry/Makefile.am:
4910         * testsuite/registry/gst-print-formats.c:
4911         (print_pad_templates_info), (print_element_list),
4912         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
4913         (g_list_uniqify), (get_pad_templates_info),
4914         (get_element_mime_list), (print_mime_list), (main): A little
4915         program that looks through the registry to find elements of
4916         a given type.  Not particularly interesting as a test, except
4917         that there's no other test covering the same area.
4918
4919 2005-01-05  David Schleef  <ds@schleef.org>
4920
4921         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
4922         (fault_handler_sigaction), (fault_spin),
4923         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
4924         in signal.h-type signal handlers by not calling forbidden functions,
4925         including gst_element_set_state().
4926
4927 2005-01-05  David Schleef  <ds@schleef.org>
4928
4929         * gst/gstvalue.h: Mark _gst_reserved[] as private
4930
4931 2005-01-05  David Schleef  <ds@schleef.org>
4932
4933         * gst/gstvalue.c: Fix doc build problem.
4934
4935 2005-01-05  David Schleef  <ds@schleef.org>
4936
4937         * gst/gstvalue.c: Add some documentation
4938
4939 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
4940
4941         * docs/README:
4942           another shell oneliner for empty return value docs
4943         * gst/gstcaps.c:
4944         * gst/gstvalue.c:
4945         * libs/gst/control/dparam.c:
4946           more doc fixes (parameters and return values)
4947
4948 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
4949
4950         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4951
4952         * gst/gstregistry.h:
4953         * gst/registries/gstxmlregistry.c:
4954           Fix macro's for Mingw (fixes #162276).
4955
4956 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
4957
4958         * docs/README:
4959           quick shell oneliner to find undocumented members
4960         * docs/gst/tmpl/gstplugin.sgml:
4961         * docs/gst/tmpl/gstscheduler.sgml:
4962         * docs/gst/tmpl/gstthread.sgml:
4963           more enumtypes cleanup
4964         * gst/gsterror.h:
4965           activated documentation comments, now someone needs to document
4966           the enums :(
4967
4968 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4969
4970         * docs/manual/manual.xml:
4971           Add dataaccess part (doh!).
4972
4973 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4974
4975         * docs/manual/advanced-autoplugging.xml:
4976           Fix typo (intiate -> initiate).
4977
4978 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4979
4980         * docs/random/bbb/streamselection:
4981           Add some notes on how to handle multi-subtitle/-audio streams.
4982
4983 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
4984
4985         * docs/gst/gstreamer-docs.sgml:
4986         * docs/gst/gstreamer-sections.txt:
4987         * docs/gst/tmpl/gstenumtypes.sgml:
4988         * docs/gst/tmpl/gsterror.sgml:
4989         * docs/gst/tmpl/gstevent.sgml:
4990         * docs/gst/tmpl/gstpad.sgml:
4991         * docs/gst/tmpl/gstpadtemplate.sgml:
4992         * docs/gst/tmpl/gstthread.sgml:
4993           removed gstenumtypes section from docs and put all the enums into
4994           their sections
4995
4996 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4997
4998         * gst/gstplugin.c:
4999           document gst_library_load a bit more (riff special case + return
5000           value if already loaded)
5001         * testsuite/bytestream/filepadsink.c:
5002           plugin name is 'gstbytestream', not 'bytestream'
5003
5004 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5005
5006         * docs/random/bbb/subtitles:
5007           Add some first mind rumblings on proper subtitle support.
5008
5009 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5010
5011         * po/ca.po:
5012         * po/sv.po:
5013           updated translations
5014
5015 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5016
5017         * docs/manual/advanced-dataaccess.xml:
5018           Add section on how to use fakesrc/fakesink/identity in your
5019           application, plus section on how to embed plugins. Also mention
5020           probes.
5021         * docs/manual/appendix-checklist.xml:
5022         * docs/manual/appendix-debugging.xml:
5023         * docs/manual/appendix-gnome.xml:
5024         * docs/manual/appendix-integration.xml:
5025           Debug -> checklist, GNOME -> integration, add sections on Linux,
5026           KDE integration and add other things useful for application
5027           development.
5028         * docs/manual/manual.xml:
5029           Remove some fixmes, update some file pointers.
5030         * docs/pwg/appendix-checklist.xml:
5031           Fix typo.
5032         * docs/pwg/building-boiler.xml:
5033           Remove ugly header and add commented fixme.
5034         * docs/pwg/pwg.xml:
5035           Add fixme.
5036         * examples/manual/Makefile.am:
5037           Add example for added docs.
5038
5039 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5040
5041         * configure.ac:
5042           back to HEAD
5043
5044 === release 0.8.8 ===
5045
5046 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5047
5048         * NEWS:
5049         * RELEASE:
5050         * configure.ac:
5051           Releasing 0.8.8, "I'll Take Care Of You"
5052
5053 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5054
5055         * configure.ac:
5056           second prerelease
5057
5058 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5059
5060         patch by: Wim Taymans
5061
5062         * gst/gstbin.c:
5063           Fix for #159852 - make iterate emission threadsafe
5064
5065 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5066
5067         * docs/faq/cvs.xml:
5068           notes about new fdo account request
5069
5070 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5071
5072         * docs/gst/gstreamer-docs.sgml:
5073         * docs/gst/tmpl/gstenumtypes.sgml:
5074         * docs/gst/tmpl/gstplugin.sgml:
5075         * docs/libs/gstreamer-libs-docs.sgml:
5076           Added missing short docs. Added ids for navigation.
5077
5078 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5079
5080         * docs/manual/advanced-autoplugging.xml:
5081         * docs/manual/advanced-schedulers.xml:
5082         * docs/manual/advanced-threads.xml:
5083           Rewrites. Remove cothreads, go a bit into opt specifically,
5084           document threads and their gotchas, and do some technical stuff
5085           on autoplugging plus add some working examples. Fixes #157395.
5086         * examples/manual/Makefile.am:
5087           Add typefind/autoplugger example (one that actually works).
5088           Remove queue example since it's a duplicate of the thread one.
5089
5090 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5091
5092         * gst/gstvalue.c: (gst_value_deserialize_string):
5093           use deprecated g_value_set_string_take_ownership to keep compatible
5094           with glib 2.2
5095
5096 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5097
5098         * gst/gstvalue.c: (gst_value_deserialize_string):
5099           revert last patch, only dom a g_utf8_validate now before accepting
5100           the string - caps parsing strips " from strings so we can't rely on
5101           them
5102         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5103           disable a test that tested the above and comment it
5104
5105 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5106
5107         Patch reviewed by David Schleef  <ds@schleef.org>
5108
5109         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5110         bug #153882)
5111         * win32/gstenumtypes.h: same
5112
5113 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5114
5115         * gst/gstpad.c: (gst_pad_query):
5116           Do query on realized pad, similar to how convert/send_event handle
5117           this. Also makes sense, since this pad belongs to the function to
5118           which this query will be sent. Fixes #158163.
5119
5120 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5121
5122         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5123
5124 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5125
5126         * docs/faq/general.xml: fix pipeline to actually work
5127
5128 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5129
5130         * gst/gstvalue.c: (gst_value_deserialize_string):
5131           check that a simple string that gets deserialized does not contain
5132           invalid characters
5133         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5134           remove a test that tested a wring behaviour
5135
5136 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5137
5138         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5139
5140         * docs/manual/intro-motivation.xml:
5141           Fix typos.
5142
5143 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5144
5145         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5146
5147         * docs/gst/tmpl/gstprobe.sgml:
5148           Fix documentation of probe callback - it is supposed to return
5149           FALSE, not TRUE, to remove data from the stream (#159087).
5150
5151 2004-12-16  Daniel Gazard  <dany42@free.fr>
5152
5153         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5154
5155         * gst/gstelementfactory.c: (gst_element_factory_create):
5156           Fix compile failure if compiling without libxml2 support (#149936).
5157
5158 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5159
5160         * docs/manual/advanced-autoplugging.xml:
5161         * docs/manual/highlevel-components.xml:
5162           Move spider from autoplugging to components. Autoplugging is for
5163           internals, not for solutions. ;-).
5164
5165 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5166
5167         * docs/random/ds/0.9-suggested-changes:
5168           Make note on device/location/uri property names.
5169
5170 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5171
5172         * docs/manual/advanced-autoplugging.xml:
5173         * docs/manual/advanced-clocks.xml:
5174         * docs/manual/advanced-interfaces.xml:
5175         * docs/manual/advanced-metadata.xml:
5176         * docs/manual/advanced-position.xml:
5177         * docs/manual/advanced-schedulers.xml:
5178         * docs/manual/advanced-threads.xml:
5179         * docs/manual/appendix-gnome.xml:
5180         * docs/manual/appendix-programs.xml:
5181         * docs/manual/appendix-quotes.xml:
5182         * docs/manual/autoplugging.xml:
5183         * docs/manual/basics-bins.xml:
5184         * docs/manual/basics-data.xml:
5185         * docs/manual/basics-elements.xml:
5186         * docs/manual/basics-helloworld.xml:
5187         * docs/manual/basics-init.xml:
5188         * docs/manual/basics-pads.xml:
5189         * docs/manual/basics-plugins.xml:
5190         * docs/manual/bins-api.xml:
5191         * docs/manual/bins.xml:
5192         * docs/manual/buffers-api.xml:
5193         * docs/manual/buffers.xml:
5194         * docs/manual/clocks.xml:
5195         * docs/manual/components.xml:
5196         * docs/manual/cothreads.xml:
5197         * docs/manual/debugging.xml:
5198         * docs/manual/dparams-app.xml:
5199         * docs/manual/dynamic.xml:
5200         * docs/manual/elements-api.xml:
5201         * docs/manual/elements.xml:
5202         * docs/manual/factories.xml:
5203         * docs/manual/gnome.xml:
5204         * docs/manual/goals.xml:
5205         * docs/manual/helloworld.xml:
5206         * docs/manual/helloworld2.xml:
5207         * docs/manual/highlevel-components.xml:
5208         * docs/manual/highlevel-xml.xml:
5209         * docs/manual/init-api.xml:
5210         * docs/manual/intro-basics.xml:
5211         * docs/manual/intro-motivation.xml:
5212         * docs/manual/intro-preface.xml:
5213         * docs/manual/intro.xml:
5214         * docs/manual/links-api.xml:
5215         * docs/manual/links.xml:
5216         * docs/manual/manual.xml:
5217         * docs/manual/motivation.xml:
5218         * docs/manual/pads-api.xml:
5219         * docs/manual/pads.xml:
5220         * docs/manual/plugins-api.xml:
5221         * docs/manual/plugins.xml:
5222         * docs/manual/programs.xml:
5223         * docs/manual/queues.xml:
5224         * docs/manual/quotes.xml:
5225         * docs/manual/schedulers.xml:
5226         * docs/manual/states-api.xml:
5227         * docs/manual/states.xml:
5228         * docs/manual/threads.xml:
5229         * docs/manual/typedetection.xml:
5230         * docs/manual/win32.xml:
5231         * docs/manual/xml.xml:
5232           Try 2. This time, include a short preface as a "general
5233           introduction", also add code blocks around all code samples
5234           so they get compiled. We still need a way to tell readers
5235           the filename of the code sample. In some cases, don't show
5236           all code in the documentation, but do include it in the generated
5237           code. This allows for focussing on specific bits in the docs,
5238           while still having a full test application available.
5239         * examples/manual/Makefile.am:
5240           Fix up examples for new ADM. Add several of the new examples that
5241           were either added or were missing from the build system.
5242         * examples/manual/extract.pl:
5243           Allow nameless blocks.
5244
5245 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5246
5247         * docs/manual/elements-api.xml:
5248         * docs/manual/helloworld.xml:
5249         * examples/manual/extract.pl:
5250           fix last example.  Add example of adding code blocks that are not
5251           shown in docbook output.
5252
5253 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5254
5255         * docs/manual/dynamic.xml:
5256         * docs/manual/elements-api.xml:
5257         * docs/manual/gnome.xml:
5258         * docs/manual/helloworld2.xml:
5259         * docs/manual/init-api.xml:
5260         * docs/manual/queues.xml:
5261         * docs/manual/threads.xml:
5262         * docs/manual/xml.xml:
5263         * examples/manual/extract.pl:
5264           Make it possible to extract example code from separate blocks.
5265           Should make Ronald happy.
5266
5267 2004-12-15  Wim Taymans  <wim@fluendo.com>
5268
5269         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5270         (remove_from_group), (group_elements_set_visited),
5271         (normalize_group), (gst_opt_scheduler_iterate):
5272         Fix bug where a flag was not updated on a decoupled entry point 
5273         because we were just checking the group element list and decoupled
5274         elements are not in that list..
5275
5276 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5277
5278         * docs/manual/advanced-autoplugging.xml:
5279         * docs/manual/advanced-clocks.xml:
5280         * docs/manual/advanced-dparams.xml:
5281         * docs/manual/advanced-interfaces.xml:
5282         * docs/manual/advanced-metadata.xml:
5283         * docs/manual/advanced-position.xml:
5284         * docs/manual/advanced-schedulers.xml:
5285         * docs/manual/advanced-threads.xml:
5286         * docs/manual/appendix-debugging.xml:
5287         * docs/manual/appendix-gnome.xml:
5288         * docs/manual/appendix-programs.xml:
5289         * docs/manual/appendix-quotes.xml:
5290         * docs/manual/appendix-win32.xml:
5291         * docs/manual/autoplugging.xml:
5292         * docs/manual/basics-bins.xml:
5293         * docs/manual/basics-data.xml:
5294         * docs/manual/basics-elements.xml:
5295         * docs/manual/basics-helloworld.xml:
5296         * docs/manual/basics-init.xml:
5297         * docs/manual/basics-pads.xml:
5298         * docs/manual/basics-plugins.xml:
5299         * docs/manual/bins-api.xml:
5300         * docs/manual/bins.xml:
5301         * docs/manual/buffers-api.xml:
5302         * docs/manual/buffers.xml:
5303         * docs/manual/clocks.xml:
5304         * docs/manual/components.xml:
5305         * docs/manual/cothreads.xml:
5306         * docs/manual/debugging.xml:
5307         * docs/manual/dparams-app.xml:
5308         * docs/manual/dynamic.xml:
5309         * docs/manual/elements-api.xml:
5310         * docs/manual/elements.xml:
5311         * docs/manual/factories.xml:
5312         * docs/manual/gnome.xml:
5313         * docs/manual/goals.xml:
5314         * docs/manual/helloworld.xml:
5315         * docs/manual/helloworld2.xml:
5316         * docs/manual/highlevel-components.xml:
5317         * docs/manual/highlevel-xml.xml:
5318         * docs/manual/init-api.xml:
5319         * docs/manual/intro-motivation.xml:
5320         * docs/manual/intro-preface.xml:
5321         * docs/manual/intro.xml:
5322         * docs/manual/links-api.xml:
5323         * docs/manual/links.xml:
5324         * docs/manual/manual.xml:
5325         * docs/manual/motivation.xml:
5326         * docs/manual/pads-api.xml:
5327         * docs/manual/pads.xml:
5328         * docs/manual/plugins-api.xml:
5329         * docs/manual/plugins.xml:
5330         * docs/manual/programs.xml:
5331         * docs/manual/queues.xml:
5332         * docs/manual/quotes.xml:
5333         * docs/manual/schedulers.xml:
5334         * docs/manual/states-api.xml:
5335         * docs/manual/states.xml:
5336         * docs/manual/threads.xml:
5337         * docs/manual/typedetection.xml:
5338         * docs/manual/win32.xml:
5339         * docs/manual/xml.xml:
5340           First try at rewriting the ADM. Needs lotsamore work, but some
5341           parts might already be somewhat useful.
5342         * docs/pwg/advanced-interfaces.xml:
5343           Remove properties interface, it never actually existed (except for
5344           on my HD...).
5345
5346 2004-12-13  David Schleef  <ds@schleef.org>
5347
5348         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5349         be NULL (bug #160220).
5350
5351 2004-12-13  David Schleef  <ds@schleef.org>
5352
5353         * configure.ac: remove all mmx stuff, because it's not used.
5354         * docs/random/ds/0.9-suggested-changes: additional notes
5355         * include/Makefile.am: we don't use these anymore
5356         * include/mmx.h: remove
5357         * include/sse.h: remove
5358
5359 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5360
5361         * docs/random/mimetypes:
5362           Add FOURCC code for h264 codec (VSSH)
5363           Add alternate FOURCC codes for h263 related codecs
5364
5365 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5366
5367         * docs/manual/programs.xml:
5368           Added more gst-launch examples.
5369
5370 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5371
5372         * gst/gstqueue.c: (gst_queue_handle_src_query):
5373           Check for availability again.
5374
5375 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5376
5377         * gst/gstcaps.c: (gst_caps_compare_structures):
5378           Simple caps go first. This has the nice side-effect of fixing an
5379           obscure warning.
5380
5381 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5382
5383         * gst/gstversion.h.in:
5384           Protect header.
5385
5386 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5387
5388         * gst/schedulers/gstoptimalscheduler.c:
5389         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5390         (gst_opt_scheduler_get_wrapper):
5391           When we're recursing into a chain run, only run the directly
5392           related group, not all queued ones. This will fix a possible
5393           deadlock in chains with more than two groups.
5394
5395 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5396
5397         * autogen.sh:
5398           remove patch if autopoint fails
5399
5400 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5401
5402         * docs/gst/gstreamer-sections.txt:
5403           Document Thomas' addition, fix build, make Luis the sheriff happy.
5404
5405 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5406
5407         * gst/gstplugin.c:
5408         * gst/gstplugin.h:
5409           add accessor for version field
5410
5411 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5412
5413         submitted by: Luca Ferretti <elle.uca@infinito.it>
5414
5415         * po/LINGUAS:
5416         * po/it.po:
5417           New tranlation added: Italian
5418
5419 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5420
5421         * gst/gstpad.c: (gst_pad_is_negotiated),
5422         (gst_pad_get_negotiated_caps):
5423           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5424           it doesn't actually check the contents), so be sure to hand it
5425           a RealPad else we'll crash.
5426
5427 2004-12-03  Wim Taymans  <wim@fluendo.com>
5428
5429         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5430         (gst_queue_link), (gst_queue_handle_src_query):
5431         Reverted to 1.110 until this makes the testsuite and various
5432         apps work.
5433
5434 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5435
5436         * docs/upload.mak: fix included CVS conflict strings
5437
5438 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5439
5440         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5441
5442         * gst/gstelement.c: (gst_element_error_full):
5443           Use g_error_new_literal because error text may have
5444           percentage signs in it. Fixes #160019.
5445
5446 2004-12-01  Benjamin Otte  <otte@gnome.org>
5447
5448         * gst/elements/gstbufferstore.c:
5449         (gst_buffer_store_add_buffer_func):
5450           don't try to make subbuffers bigger than they can be. (fixes
5451           #159970)
5452
5453 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5454
5455         * docs/gst/gstreamer-sections.txt:
5456         * docs/gst/tmpl/gstvalue.sgml:
5457           Add new function to docs to fix build.
5458
5459 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5460
5461         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5462         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5463         (_gst_pad_default_fixate_foreach):
5464         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5465         * gst/gstvalue.h:
5466           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5467           in some cases (arrays), the fixedness depends on the content.
5468         * gst/gstqueue.c: (gst_queue_handle_src_query):
5469           Check for availability before doing something.
5470
5471 2004-11-29  Wim Taymans  <wim@fluendo.com>
5472
5473         * testsuite/threads/Makefile.am:
5474         * testsuite/threads/signals.c: (gst_test_get_type),
5475         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5476         (gst_test_set_property), (gst_test_get_property),
5477         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5478         (gst_test_do_prop), (run_thread), (main):
5479         Added a bunch of testcases that show threadsafety bugs in glib.
5480
5481 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5482
5483         * docs/manual/programs.xml:
5484           Added a first batch of gst-launch examples, as provided by Ronald
5485           and others from the devel-mlist
5486
5487 2004-11-28  Benjamin Otte  <otte@gnome.org>
5488
5489         * gst/gstelement.c: (gst_element_negotiate_pads):
5490           simplify
5491         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5492         (gst_value_serialize_string), (gst_value_deserialize_string):
5493           add unwrapping of previously wrapped strings. Fix bug in wrapping
5494           while at it.
5495         * testsuite/caps/value_serialize.c: (test1),
5496         (test_string_serialization), (test_string_deserialization), (main):
5497           add tests for string (de)serialization
5498
5499 2004-11-26  Wim Taymans  <wim@fluendo.com>
5500
5501         * testsuite/threads/159566.c: (object_deep_notify), (main):
5502         * testsuite/threads/Makefile.am:
5503         Added testsuite to show bug #159566
5504
5505 2004-11-25  Wim Taymans  <wim@fluendo.com>
5506
5507         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5508         (gst_thread_child_state_change), (gst_thread_main_loop):
5509         Ref the thread object in the GThread mainloop. Break out of the
5510         thread mainloop if it holds the last ref. This properly exits
5511         the threads when disposing the thread from its own context. It
5512         also avoids possible deadlocks in the dispose function.
5513
5514 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5515
5516         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5517         it is necessary to wait.
5518
5519 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5520
5521         * docs/pwg/building-boiler.xml:
5522           Make description somewhat clearer.
5523
5524 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5525
5526         * docs/upload.mak:
5527           Apparently docs changed location on FDO's server.
5528
5529 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5530
5531         * docs/pwg/appendix-checklist.xml:
5532           Add some random notes on things to check when writing an element.
5533           This list can be extended as people see fit.
5534
5535 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5536
5537         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5538         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5539         pad. The queue will now wait until it is empty and forward the new
5540         caps to the source.
5541         * gst/gstbin.c (gst_bin_set_element_sched)
5542         (gst_bin_unset_element_sched): Make sure that all elements and
5543         links are registered and unregistered with the scheduler exactly
5544         once. This elaborates on a fix by Benjamin Otte, but
5545         guarantees that decoupled elements are also registered.
5546
5547 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5548
5549         * docs/manual/quotes.xml:
5550           add a quote
5551         * configure.ac:
5552         * gst/gst.c:
5553         * gst/gstinfo.c:
5554           add LIBDIR and move init message higher up so it's at the start
5555
5556 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5557
5558         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5559         * gstreamer.spec.in: add fair
5560
5561 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5562
5563         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5564         * gst/elements/gstidentity.c: (gst_identity_class_init):
5565           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5566           <teuf@gnome.org> (#157263).
5567         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5568         (gst_type_find_handle_src_query):
5569           Subtract size of internally stored data from position queries.
5570
5571 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5572
5573         * gst/schedulers/fairscheduler.c:
5574         * gst/schedulers/faircothreads.c:
5575         * gst/schedulers/faircothreads.h:
5576         New cothread based scheduler: Fair scheduler.
5577         * gst/schedulers/gthread-cothreads.h: 
5578         Add the standard #if around the whole file.
5579         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5580         compilation of the functions defined in this file. This is
5581         necessary to be able to use this file as a normal header.
5582         * gst/schedulers/Makefile.am: Add compiling support for fair
5583         scheduler.
5584         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5585         scheduler cothreads layer from documentation generation.
5586
5587 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5588
5589         * gst/autoplug/gstspideridentity.c:
5590         (gst_spider_identity_sink_loop_type_finding):
5591           Don't crash if that function is not implemented.
5592
5593 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5594
5595         * docs/pwg/advanced-types.xml:
5596           Another typo.
5597
5598 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5599
5600         * docs/pwg/intro-preface.xml:
5601           Hm, ok, so the brackets weren't really useful...
5602         * docs/pwg/other-ntoone.xml:
5603           Fix embarassing typo.
5604
5605 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5606
5607         * docs/pwg/intro-preface.xml:
5608           Rewrite preface.
5609
5610 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5611
5612         * docs/pwg/advanced-scheduling.xml:
5613         * docs/pwg/advanced-tagging.xml:
5614         * docs/pwg/advanced-types.xml:
5615         * docs/pwg/building-boiler.xml:
5616         * docs/pwg/building-chainfn.xml:
5617         * docs/pwg/building-signals.xml:
5618         * docs/pwg/building-state.xml:
5619         * docs/pwg/building-testapp.xml:
5620         * docs/pwg/intro-basics.xml:
5621         * docs/pwg/other-manager.xml:
5622         * docs/pwg/other-source.xml:
5623           Typo fixes.
5624         * docs/pwg/other-manager.xml:
5625           Add some first content. No example code yet.
5626         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5627           Remove double newlines.
5628
5629 2004-11-04  Wim Taymans  <wim@fluendo.com>
5630
5631         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5632         (remove_from_group), (normalize_group), (group_migrate_connected),
5633         (gst_opt_scheduler_iterate):
5634         * testsuite/schedulers/.cvsignore:
5635         * testsuite/schedulers/Makefile.am:
5636         * testsuite/schedulers/queue_link.c: (main):
5637         Added testcase for scheduler segfault.
5638         Fix scheduler segfault when removing a decoupled
5639         entry point as the last element from a group.
5640
5641 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5642
5643         * gst/gstmarshal.list: add missing marshaller, fixes build
5644
5645 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5646
5647         * docs/random/signal: added notes about using BOXED for GstBuffer
5648         signal marshallers, not POINTER
5649
5650 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5651
5652         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5653         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5654         POINTER=>BOXED changes to marshal GstBuffers
5655
5656 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5657
5658         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5659         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5660
5661 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5662
5663         * docs/gst/gstreamer-sections.txt:
5664         * docs/gst/tmpl/gstcaps.sgml:
5665         * docs/gst/tmpl/gsterror.sgml:
5666         * docs/gst/tmpl/gstinfo.sgml:
5667         * docs/gst/tmpl/gstmacros.sgml:
5668         * docs/gst/tmpl/gstutils.sgml:
5669         * docs/random/ensonic/interfaces.txt:
5670         * gst/gstinfo.h:
5671           added some more docs, removed two obsolete defines
5672
5673 2004-11-02  Kjartan Maraas <as at gnome.org>
5674
5675         reviewed by: Wim Taymans, Ronald Bultje.
5676
5677         * gst/cothreads.c: (cothread_create):
5678         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5679         (gst_bin_child_state_change_func):
5680         * gst/gstbuffer.c: (gst_buffer_span):
5681         * gst/gstelement.c: (gst_element_get_index),
5682         (gst_element_get_event_masks), (gst_element_get_query_types),
5683         (gst_element_get_formats):
5684         * gst/gsterror.c: (_gst_core_errors_init),
5685         (_gst_library_errors_init), (_gst_resource_errors_init),
5686         (_gst_stream_errors_init):
5687         * gst/gstobject.c: (gst_object_default_deep_notify):
5688         * gst/gstpad.c: (gst_pad_get_event_masks),
5689         (gst_pad_get_internal_links_default):
5690         * gst/gstplugin.c: (gst_plugin_register_func),
5691         (gst_plugin_get_module):
5692         * gst/gststructure.c: (gst_structure_get_string),
5693         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5694         (gst_structure_to_abbr):
5695         * gst/gstutils.c: (gst_print_element_args):
5696         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5697         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5698         Aplied part of patch #157127: Cleanup of issues reported by 
5699         sparse.
5700         Also do not try to use cothreads when there is no cothread
5701         context yet.
5702
5703 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5704
5705         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5706         (gst_opt_scheduler_iterate):
5707         Applied patch #154061. Running a pipeline in which an element 
5708         calls GST_ELEMENT_ERROR in the chain function, the opt 
5709         scheduler doesn't unref the chain so it never gets freed.
5710
5711 2004-11-02  Wim Taymans  <wim@fluendo.com>
5712
5713         * gst/gststructure.c: (gst_structure_get_abbrs),
5714         (gst_structure_from_abbr), (gst_structure_to_abbr):
5715         Remove that ugly if-then thing in the code that converts
5716         between strings and types.
5717
5718 2004-11-02  Wim Taymans  <wim@fluendo.com>
5719
5720         * gst/gstscheduler.c: (gst_scheduler_add_element),
5721         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5722         Aplied clock distribution patch, this should fix bug
5723         #148787.
5724
5725 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5726
5727         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5728
5729         * po/LINGUAS:
5730         * po/nb.po:
5731           Added Norwegian Bokmaal translation
5732
5733 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5734
5735         * tools/gst-inspect.c: (print_signal_info):
5736           print signal arguments as pointers if they are
5737
5738 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5739
5740         * docs/pwg/building-boiler.xml:
5741           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5742
5743 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5744
5745         * gst/parse/parse.l:
5746         * testsuite/parse/parse1.c: (main):
5747         Since parse can do 'element name=a:b' make 'a:b.' work as
5748         well. 
5749         Added testcase to verify fix.
5750
5751 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5752
5753         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
5754         Use the realpad when printing the direction.
5755         Add extra \n when printing extensions of typefind factories.
5756
5757 2004-10-13  David Schleef  <ds@schleef.org>
5758
5759         * examples/manual/Makefile.am: $< isn't portable in Makefile
5760         rules.
5761
5762 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
5763
5764         * docs/gst/tmpl/gstobject.sgml:
5765         * docs/gst/tmpl/gstplugin.sgml:
5766         * docs/gst/tmpl/gstpluginfeature.sgml:
5767         * docs/gst/tmpl/gstregistry.sgml:
5768         * docs/gst/tmpl/gstversion.sgml:
5769         * gst/gstbin.c:
5770           more api documentation
5771         * gst/gstplugin.c: (gst_plugin_register_func),
5772         (gst_plugin_check_file), (gst_plugin_load_file):
5773           better error signaling and logging
5774
5775 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5776
5777         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
5778           Subtract current queue contents from position queries.
5779
5780 2004-10-11  Johan Dahlin  <johan@gnome.org>
5781
5782         * gst/gsturi.c (gst_uri_get_location): unescape string
5783         (gst_uri_construct): escape string.
5784
5785 2004-10-11  Benjamin Otte  <otte@gnome.org>
5786
5787         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
5788         (gst_pad_try_set_caps_nonfixed):
5789           allow renegotiation of unconnected pads (as inside spider). Simply
5790           return OK if unconnected - mimic try_set_caps there.
5791
5792 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5793
5794         * gst/gstbin.c: (gst_bin_sync_children_state):
5795           Add missing break.
5796
5797 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5798
5799         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
5800         Set element to EOS before sending EOS event
5801
5802 2004-10-08  Wim Taymans  <wim at fluendo dot com>
5803
5804         * gst/elements/gsttypefindelement.c:
5805         (gst_type_find_element_handle_event):
5806         Handle EOS events when doing the transition from
5807         typefind to data passing. This should fix the
5808         infinite loops in short files.
5809
5810 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5811
5812         * gst/gstthread.c: (gst_thread_change_state),
5813         (gst_thread_child_state_change):
5814         Make sure no iteration happens while performing
5815         the state change as it could mess up the internal
5816         consistency of the thread state.
5817
5818 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5819
5820         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
5821         (gst_thread_change_state), (gst_thread_child_state_change):
5822         Do not try to grab the iterate lock in the state change method
5823         when we are in the same thread as the iterate or else we
5824         could deadlock. Some other cleanups.
5825
5826 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5827
5828         * configure.ac:
5829           bump nano to cvs
5830
5831 === release 0.8.7 ===
5832
5833 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5834
5835         * configure.ac:
5836         * NEWS:
5837         * RELEASE:
5838         * configure.ac:
5839           releasing 0.8.7, "A Cruise"
5840
5841 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5842
5843         * docs/random/mimetypes:
5844         Add an entry for Sony ATRAC3 audio format with mime-type
5845         used by rmdemux et riff-read
5846
5847 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5848
5849         * gst/elements/gsttypefindelement.c: (stop_typefinding):
5850         Push the buffer store instead of clearing it in case that
5851         the stream is not seekable.
5852
5853 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5854
5855         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
5856         (gst_thread_main_loop):
5857         Lock the iteration and the state change so that automatic
5858         negotiation and fixation does not happen at the same time
5859         as the in stream negotiation.
5860
5861 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5862
5863         * configure.ac:
5864           bump nano to cvs
5865
5866 === release 0.8.6 ===
5867
5868 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5869
5870         * configure.ac:
5871         * NEWS:
5872         * RELEASE:
5873         * configure.ac:
5874           releasing 0.8.6, "Narc"
5875
5876 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5877
5878         * configure.ac:
5879           prerel bump
5880
5881 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5882
5883         patch by: Steve Lhomme
5884
5885         * gst/elements/gstfakesrc.c:
5886         * gst/elements/gstidentity.c:
5887         * gst/gstthread.c:
5888           Fix for #153881
5889
5890 2004-10-01  Wim Taymans  <wim at fluendo dot com>
5891
5892         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
5893         Fix threadsafety of the crc checking function.
5894
5895 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5896
5897         patch by: Ronald Bultje
5898
5899         * gst/elements/gsttypefindelement.c: (stop_typefinding),
5900         (gst_type_find_element_handle_event),
5901         (gst_type_find_element_chain):
5902         * gst/elements/gsttypefindelement.h:
5903          #153657.
5904          Filter out discont event from seekable sources when typefind
5905          asks them to seek.  Fixes typefind with demuxers for
5906          avi, asf and matroska.
5907
5908 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5909
5910         * docs/gst/gstreamer-sections.txt:
5911         * gst/gstcaps.c:
5912         * gst/gstcaps.h:
5913         * gst/gstpad.c:
5914           Revert preferred caps: (#147789)
5915
5916 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
5917
5918         * win32/dirent.c:
5919           fix a memory leak
5920
5921 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5922
5923         * configure.ac:
5924           bump for prerelease
5925
5926 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5927
5928         * docs/Makefile.am:
5929         * docs/manual/elements-api.xml:
5930           restructure so that common stuff is shown first
5931         * docs/manual/init-api.xml:
5932           convert to examples
5933         * docs/manual/manual.xml:
5934         * docs/manuals.mak:
5935         * docs/url.entities:
5936           link to API on the website, possibly override later in build
5937         * examples/manual/.cvsignore:
5938           ignore more
5939         * examples/manual/Makefile.am:
5940           add more examples
5941         * examples/manual/extract.pl:
5942           error out on failure
5943
5944 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5945
5946         * docs/gst/tmpl/gstthread.sgml:
5947         * docs/manual/init-api.xml:
5948         * examples/manual/Makefile.am:
5949           convert two code bits to examples
5950
5951 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5952
5953         * gst/gstelement.c: (gst_element_change_state):
5954           Well, actually, I was about to remove this insane assert when
5955           I noticed Wim already did that. A warning is nice so we can
5956           fix actual ugs (using --g-fatal-warnings and backtraces), so
5957           I added that instead.
5958
5959 2004-09-06  Wim Taymans  <wim@fluendo.com>
5960
5961         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
5962         (gst_element_threadsafe_properties_post_run),
5963         (gst_element_set_state), (gst_element_change_state):
5964         Added extra refcounting around various places. 
5965
5966 2004-09-06  Wim Taymans  <wim@fluendo.com>
5967
5968         * gst/gstpad.c: (gst_pad_link_call_link_functions):
5969         Fix debug info.
5970
5971 2004-09-06  Wim Taymans  <wim@fluendo.com>
5972
5973         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5974         (remove_from_group):
5975         Some more debug info.
5976
5977 2004-09-03  Wim Taymans  <wim@fluendo.com>
5978
5979         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5980         (gst_fakesrc_init), (gst_fakesrc_set_clock),
5981         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5982         (gst_fakesrc_get), (gst_fakesrc_change_state):
5983         * gst/elements/gstfakesrc.h:
5984         * gst/elements/gstidentity.c: (gst_identity_class_init),
5985         (gst_identity_init), (gst_identity_chain),
5986         (gst_identity_set_property), (gst_identity_get_property),
5987         (gst_identity_change_state):
5988         * gst/elements/gstidentity.h:
5989         Added datarate properties to limit the datarate.
5990
5991 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5992
5993         * gst/autoplug/gstspider.c: (plugin_init):
5994           don't set a rank. We don't want to autoplug by inserting spiders.
5995
5996 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5997
5998         * gst/autoplug/gstspider.c: (gst_spider_class_init),
5999         (gst_spider_identity_plug):
6000           add a template for spider's sink
6001         * gst/gst.c: (gst_register_core_elements):
6002           queue's rank should be NULL, we don't want spider to add it.
6003
6004 2004-08-18  David Schleef  <ds@schleef.org>
6005
6006         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6007         * docs/libs/Makefile.am: same
6008         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6009         * docs/random/ds/0.9-planning: random additions
6010         * docs/random/ds/0.9-suggested-changes: same
6011         * gst/gstxml.h: remove vestigal GstXMLNs definition
6012
6013         Preferred caps: (#147789)
6014         * docs/gst/gstreamer-sections.txt: Add symbols
6015         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6016         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6017         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6018         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6019         (gst_caps_get_preferred), (gst_caps_set_preferred),
6020         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6021         (gst_caps_use_preferred): Handle caps preferences
6022         * gst/gstcaps.h: Add caps preferences
6023         * gst/gstpad.c: (gst_pad_link_get_preferred),
6024         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6025         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6026         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6027         negotiation.
6028
6029 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6030
6031         * gst/autoplug/gstspideridentity.c:
6032         (gst_spider_identity_request_new_pad):
6033         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6034         (gst_aggregator_init):
6035         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6036         (gst_fakesink_init):
6037         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6038         (gst_fakesrc_init):
6039         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6040         (gst_fdsink_init):
6041         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6042         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6043         (gst_filesink_init):
6044         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6045         (gst_filesrc_init):
6046         * gst/elements/gstidentity.c: (gst_identity_base_init),
6047         (gst_identity_init):
6048         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6049         (gst_multifilesrc_init):
6050         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6051         (gst_pipefilter_init):
6052         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6053         (gst_statistics_init):
6054         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6055         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6056           s/gst_pad_new/&_from_template/
6057           register pad templates in the base_init function
6058           add static pad template definitions
6059
6060 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6061
6062         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6063         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6064         * testsuite/refcounting/pad.c: (main):
6065         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6066           s/gst_pad_new/&_from_template/
6067           prepare deprecation of gst_pad_new
6068
6069 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6070
6071         patch by: Luca Ognibene <skaboy81@virgilio.it>
6072
6073         * gst/gstcaps.c:
6074         * gst/gstelement.c:
6075         * gst/gstpad.c:
6076         * gst/gstxml.c:
6077           fix memleaks.  Fixes #150001
6078
6079 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6080
6081         * docs/random/ds/0.9-suggested-changes:
6082           add notes - mostly about pad templates
6083
6084 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6085
6086         * win32/GStreamer.vcproj:
6087           temporary locale files are .gmo not .mo
6088
6089 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6090
6091         * configure.ac: bump nano to cvs
6092
6093 === release 0.8.5 ===
6094
6095 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6096
6097         * configure.ac:
6098           releasing 0.8.5, "Stuttgart"
6099         * NEWS:
6100         * RELEASE:
6101         * configure.ac:
6102         * docs/random/release:
6103           updates for release
6104
6105 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6106
6107         patch by: Wim Taymans (wim@fluendo.com)
6108
6109         * gst/gstbuffer.c:
6110         * gst/gstindex.h:
6111         * libs/gst/dataprotocol/dataprotocol.c:
6112           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6113
6114 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6115
6116         * Makefile.am:
6117         * win32/MANIFEST:
6118           add win32 dir to the build.  Fixes #149981.
6119
6120 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6121
6122         * configure.ac:
6123           bump libtool versioning
6124         * gst/gststructure.c:
6125           mark function as static
6126         * po/af.po:
6127         * po/az.po:
6128         * po/ca.po:
6129         * po/cs.po:
6130         * po/en_GB.po:
6131         * po/fr.po:
6132         * po/nl.po:
6133         * po/sq.po:
6134         * po/sr.po:
6135         * po/sv.po:
6136         * po/tr.po:
6137         * po/uk.po:
6138           translations update
6139         * win32/README.txt:
6140           trademark protection
6141
6142 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6143
6144         * configure.ac:
6145           fix GST_ORIGIN
6146           set GST_PACKAGE to source, and distinguish between release and other
6147         * tools/gst-inspect.c:
6148           print out plugin an element factory is part of so we see this info
6149
6150 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6151
6152         * docs/gst/gstreamer-sections.txt:
6153         * docs/gst/tmpl/gstbuffer.sgml:
6154         * docs/gst/tmpl/gstschedulerfactory.sgml:
6155           reorder docs a little, make GstBuffer's more sensible.
6156         * gst/gstbuffer.h:
6157           API: added GST_BUFFER_FLAG_DELTA_UNIT
6158         * gst/gstscheduler.c:
6159           comment API addition
6160
6161 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6162
6163         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6164           work with non-regular files that can be mmapped (like /dev/zero)
6165         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6166           get rid of typefinds that require a seek when we can't seek instead
6167           of trying them over and over again
6168         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6169           return non-zero failure value when the pipeline was interrupted or
6170           an error occurred
6171
6172 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6173
6174         * win32/config.h:
6175         * win32/GStreamer.vcproj:
6176           compile and install the locales
6177
6178 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6179
6180         * gst/gstvalue.c:
6181           fix a possible memory leak under Windows
6182
6183 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6184
6185         * win32/GStreamer.vcproj:
6186           fix a memory leak that occured under Windows
6187         * win32/gstreamer.def:
6188           add gst_scheduler_register
6189
6190 2004-08-11  Benjamin Otte  <otte@gnome.org>
6191
6192         * docs/gst/gstreamer-sections.txt:
6193         * gst/gstscheduler.c: (gst_scheduler_register):
6194         * gst/gstscheduler.h:
6195           API:
6196           add gst_scheduler_register shortcut similar to gst_element_register
6197         * gst/schedulers/entryscheduler.c: (plugin_init):
6198         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6199         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6200           use it
6201
6202 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6203
6204         * gst/gstvalue.h:
6205           fix a memory leak that occured under Windows
6206
6207 2004-08-10  Colin Walters  <walters@redhat.com>
6208
6209         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6210         Don't use O_EXCL to open temporary registry.  It will prevent
6211         registry creation if a temporary one already exists, which
6212         is unnecessary.
6213
6214 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6215
6216         * docs/gst/gstreamer-sections.txt:
6217         * docs/gst/tmpl/gstvalue.sgml:
6218           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6219
6220 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6221
6222         * win32/gstbytestream.vcproj:
6223         * win32/gstelements.vcproj:
6224         * win32/gstgetbits.vcproj:
6225         * win32/gst-inspect.vcproj:
6226         * win32/gst-launch.vcproj:
6227         * win32/gstoptimalscheduler.vcproj:
6228         * win32/GStreamer.vcproj:
6229         * win32/gst-register.vcproj:
6230         * win32/gstspider.vcproj:
6231           update the include and lib dirs to fit standard libraries as
6232           described in the Win32 manual
6233
6234 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6235
6236         * win32/config.h:
6237         * win32/gstversion.h:
6238           enable NLS again, push the version number for the coming 0.8.5 release
6239
6240 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6241
6242         * gst/gstvalue.h:
6243           export gst_type_XXX for windows DLLs
6244
6245 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6246
6247         * docs/faq/gst-uninstalled:
6248           fix PKG_CONFIG_PATH and PYTHONPATH
6249         * gst/schedulers/Makefile.am:
6250           cleanup
6251         * libs/gst/bytestream/bytestream.c:
6252           remove newline
6253         * po/LINGUAS:
6254         * po/sq.po:
6255           adding Albanian translation (Laurent Dhima)
6256         * po/cs.po:
6257           updated
6258
6259 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6260
6261         * po/ca.po:
6262         * po/sv.po:
6263           updated translations
6264
6265 2004-08-04  Benjamin Otte  <otte@gnome.org>
6266
6267         * tests/mass_elements.c: (main):
6268           allow specifying src and sink element explicitly, so I can test
6269           videotestsrc instead of fakesrc
6270
6271 2004-08-04  Benjamin Otte  <otte@gnome.org>
6272
6273         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6274         (gst_structure_id_empty_new), (gst_structure_empty_new),
6275         (gst_structure_copy):
6276           add gst_structure_id_empty_new_with_size to allow preallocating
6277           value array sizes. Use this in gst_structure_copy to get rid of
6278           reallocs.
6279           don't do quark=>string=>quark when copying structures
6280
6281 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6282
6283         * docs/manual/win32.xml:
6284         * win32/README.txt:
6285           update documentation with the clean version of dependencies
6286
6287 2004-08-03  Benjamin Otte  <otte@gnome.org>
6288
6289         * gst/schedulers/entryscheduler.c:
6290         (gst_entry_scheduler_remove_element):
6291           fix for GST_DISABLE_DEBUG
6292         * tools/gst-launch.c: (print_tag):
6293           fixes for G_DISABLE_ASSERT
6294
6295 2004-08-03  Benjamin Otte  <otte@gnome.org>
6296
6297         * gst/gst.c: (gst_register_core_elements):
6298           fix for G_DISABLE_ASSERT
6299         * gst/gstinfo.c: (__gst_in_valgrind):
6300           add for GST_DISABLE_DEBUG
6301
6302 2004-08-03  Benjamin Otte  <otte@gnome.org>
6303
6304         * gst/parse/parse.l:
6305           fix for G_DISABLE_ASSERT
6306
6307 2004-08-03  Wim Taymans  <wim@fluendo.com>
6308
6309         * gst/gstbin.c: (gst_bin_get_type),
6310         (gst_bin_child_state_change_func):
6311         * gst/gstthread.c: (gst_thread_change_state):
6312         Backported some debug logging from a reverted patch
6313         Don't try to destroy the thread twice. Added some more
6314         debugging in GstThread. Unlock and signal even if we
6315         are in the thread context.
6316
6317 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6318
6319         * po/uk.po:
6320           updated translation
6321
6322 2004-07-30  David Schleef  <ds@schleef.org>
6323
6324         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6325
6326 2004-07-29  David Schleef  <ds@schleef.org>
6327
6328         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6329         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6330
6331 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6332
6333         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6334         (gst_bin_add_func), (gst_bin_remove_func),
6335         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6336         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6337         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6338         (gst_bin_sync_children_state):
6339         * gst/gstbin.h:
6340         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6341         (gst_thread_change_state):
6342         * testsuite/states/Makefile.am:
6343           revert state change patches as agreed so we can rework them
6344           gradually
6345
6346 2004-07-29  Benjamin Otte  <otte@gnome.org>
6347
6348         * libs/gst/control/Makefile.am:
6349           link to libgstreamer (fixes Debian bug 262019, see
6350           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6351
6352 2004-07-29  Wim Taymans  <wim@fluendo.com>
6353
6354         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6355         (check_from_fraction_convert), (transform_test), (main):
6356         Make the test less pedantic about float roundoff errors.
6357
6358 2004-07-29  Benjamin Otte  <otte@gnome.org>
6359
6360         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6361         (gst_filesrc_srcpad_event):
6362           make seek events to before start/after end of file not fail, but
6363           seek to start/end instead
6364         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6365           add more output
6366
6367 2004-07-29  Benjamin Otte  <otte@gnome.org>
6368
6369         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6370           check that caps are fixed
6371         * gst/gstpad.c: (gst_pad_template_new):
6372           don't try to simplify caps, costs too much time on gst_init
6373         * gst/gstplugin.c: (gst_plugin_add_feature):
6374           G_ERROR if features are added twice
6375         * gst/gsttypefind.c: (gst_type_find_register):
6376         * gst/gstelementfactory.c: (gst_element_register):
6377           don't add features twice
6378         * docs/random/ds/0.9-suggested-changes:
6379           add note about possible gst_init optimization
6380
6381 2004-07-28  David Schleef  <ds@schleef.org>
6382
6383         * testsuite/elements/Makefile.am:
6384         * testsuite/elements/struct_i386.h:
6385         * testsuite/elements/struct_size.c: (main):  A little test
6386         to keep distcheck from working if someone changes a structure
6387         size accidentally.
6388
6389 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6390
6391         * docs/libs/Makefile.am:
6392         * docs/libs/gstreamer-libs-docs.sgml:
6393         * docs/libs/gstreamer-libs-sections.txt:
6394         * docs/libs/tmpl/gstbytestream.sgml:
6395         * docs/libs/tmpl/gstcontrol.sgml:
6396         * docs/libs/tmpl/gstdataprotocol.sgml:
6397         * docs/libs/tmpl/gstgetbits.sgml:
6398         * libs/gst/bytestream/Makefile.am:
6399         * libs/gst/bytestream/bytestream.c:
6400         * libs/gst/bytestream/bytestream.h:
6401         * libs/gst/control/Makefile.am:
6402         * libs/gst/dataprotocol/Makefile.am:
6403         * libs/gst/getbits/Makefile.am:
6404         * libs/gst/getbits/getbits.h:
6405           various doc and style fixes, adding bytestream to libs docs.
6406
6407 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6408
6409         * docs/gst/gstreamer-docs.sgml:
6410         * docs/libs/Makefile.am:
6411         * docs/libs/gstreamer-libs-docs.sgml:
6412         * docs/libs/gstreamer-libs-sections.txt:
6413         * libs/gst/control/dparam.c:
6414           more doc fixes.  gst-libs docs now build the same way as gst.
6415
6416 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6417
6418         * configure.ac:
6419         * testsuite/Makefile.am:
6420         * testsuite/bins/Makefile.am:
6421         * testsuite/caps/Makefile.am:
6422         * testsuite/cleanup/Makefile.am:
6423         * testsuite/clock/Makefile.am:
6424         * testsuite/debug/Makefile.am:
6425         * testsuite/dlopen/Makefile.am:
6426         * testsuite/dynparams/Makefile.am:
6427         * testsuite/elements/.cvsignore:
6428         * testsuite/elements/Makefile.am:
6429         * testsuite/enumcaps/Makefile.am:
6430         * testsuite/enumcaps/enumcaps.c:
6431         * testsuite/ghostpads/Makefile.am:
6432         * testsuite/indexers/Makefile.am:
6433         * testsuite/negotiation/Makefile.am:
6434         * testsuite/parse/Makefile.am:
6435         * testsuite/plugin/Makefile.am:
6436         * testsuite/refcounting/Makefile.am:
6437         * testsuite/schedulers/.cvsignore:
6438         * testsuite/states/Makefile.am:
6439         * testsuite/tags/Makefile.am:
6440         * testsuite/threads/Makefile.am:
6441           fold enumcaps into caps dir
6442           clean up Makefile.am's for testsuite
6443
6444 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6445
6446         * docs/gst/Makefile.am:
6447         * docs/libs/Makefile.am:
6448           clean up docs build.  Fixes needless rebuilding of template files.
6449
6450 2004-07-28  Wim Taymans  <wim@fluendo.com>
6451
6452         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6453         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6454         Make sure that a bin state change tries to keep the children
6455         in sync. 
6456         Added debug logging to the thread.
6457
6458 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6459
6460         * win32/GStreamer.vcproj:
6461         * win32/gstreamer.def:
6462           more exports for the plugins
6463
6464 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6465
6466         * win32/gstgetbits.vcproj:
6467         * win32/gstgetbits.def:
6468         * win32/msvc71.sln:
6469           add support for the getbits plugin
6470
6471 2004-07-27  Wim Taymans  <wim@fluendo.com>
6472
6473         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6474         (gst_value_transform_fraction_double), (_gst_value_initialize):
6475         * testsuite/caps/Makefile.am:
6476         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6477         (check_from_fraction_convert), (transform_test), (main):
6478         Added transform functions between double and fraction.
6479         Added testcase to verify transforms
6480
6481 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6482
6483         * win32/GStreamer.vcproj:
6484           rename GStreamer-0.8.lib to libgstreamer.lib
6485
6486 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6487
6488         * win32/gstelements.vcproj:
6489         * win32/gstoptimalscheduler.vcproj:
6490           fixes for the Release build
6491
6492 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6493
6494         * win32/config.h:
6495           update the version number
6496
6497 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6498
6499         * win32/GStreamer.vcproj:
6500           add gstinterface to the build
6501
6502 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6503
6504         * win32/gstreamer.def:
6505           add many definitions needed by plugins,
6506           GST_CAT_DEFAULT only available in the Debug build ?
6507
6508 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6509
6510         * gst/gstelement.c: (gst_element_set_eos_recursive):
6511           various whitespace fixes.
6512           doc fix, fixes #148497
6513
6514 2004-07-25  Benjamin Otte  <otte@gnome.org>
6515
6516         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6517           don't delay links on the sink elements, it causes unnegotiated
6518           links.
6519         * gst/elements/gsttypefindelement.c:
6520         (gst_type_find_element_base_init):
6521           add our padtemplates, we indeed do have some.
6522         * gst/elements/gsttypefindelement.c:
6523         (gst_type_find_element_handle_event),
6524         (gst_type_find_element_chain):
6525           don't push data when typefinding failed.
6526         * gst/gstpad.c: (gst_pad_link_fixate):
6527           check that no fixate function returns empty caps.
6528         * gst/gstpad.c: (gst_pad_push):
6529           check that the link is negotiated before data gets pushed.
6530         * tools/gst-register.c: (main):
6531           don't assert (fixes #148283)
6532
6533 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6534
6535         * docs/gst/gstreamer-sections.txt:
6536         * docs/gst/tmpl/gstconfig.sgml:
6537           add GST_PLUGIN_EXPORT definition
6538
6539 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6540
6541         * gst/gstplugin.h:
6542         * gst/gstconfig.h.in:
6543         * win32/gstconfig.h:
6544         * win32/gstelements.def:
6545         * win32/gstelements.vcproj:
6546         * win32/gstoptimalscheduler.def:
6547         * win32/gstoptimalscheduler.vcproj:
6548         * win32/gstspider.def:
6549         * win32/gstspider.vcproj:
6550           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6551
6552 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6553
6554         * docs/gst/gstreamer-sections.txt:
6555           remove GST_CAT_DEFAULT because the type has changed
6556
6557 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6558
6559         * win32/gstbytestream.vcproj:
6560         * win32/gstelements.vcproj:
6561         * win32/gst-inspect.vcproj:
6562         * win32/gst-launch.vcproj:
6563         * win32/gstoptimalscheduler.vcproj:
6564         * win32/GStreamer.vcproj:
6565         * win32/gst-register.vcproj:
6566         * win32/gstspider.vcproj:
6567         * win32/msvc71.sln:
6568           Copy the files where needed after building, The testsuite will be
6569           built separately
6570
6571 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6572
6573         * win32/config.h:
6574         * win32/README.txt:
6575         * docs/manual/win32.xml:
6576         Fixed the plugin and GStreamer location
6577
6578 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6579
6580         * win32/gstreamer.def:
6581         More exports for the plugins
6582
6583 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6584
6585         * gst/gstinfo.h:
6586         Marc was right, we need to export literally GST_CAT_DEFAULT
6587
6588 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6589
6590         * win32/config.h:
6591         NLS crashes in gettext, disabled until this is solved
6592
6593 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6594
6595         * win32/gst-inspect.vcproj:
6596         * win32/gst-launch.vcproj:
6597         Should use NLS when available
6598
6599 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6600
6601         * gst/registries/gstxmlregistry.c:
6602         removing the file doesn't seem to be a good idea on Linux
6603
6604 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6605
6606         * gst/registries/gstxmlregistry.c:
6607         Remove the registry before renaming the tempfile (needed for Windows)
6608
6609 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6610
6611         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6612         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6613         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6614         * gst/elements/gstmultifilesrc.h:
6615         Added newmedia property so it generates newmedia events between each
6616         file when property is set, as well as fixed eos handling
6617
6618 2004-07-22  David Schleef  <ds@schleef.org>
6619
6620         * gst/gststructure.c: (gst_structure_id_empty_new),
6621         (gst_structure_empty_new):  Set type field correctly.
6622         * gst/gststructure.h: Check type field correctly.
6623         * testsuite/caps/Makefile.am:
6624         * testsuite/caps/structure.c: (test1), (main): Add a very small
6625         test for structures.
6626
6627 2004-07-22  David Schleef  <ds@schleef.org>
6628
6629         * docs/random/ds/0.9-suggested-changes: more comments
6630         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6631
6632 2004-07-22  Benjamin Otte  <otte@gnome.org>
6633
6634         * gst/gstelementfactory.c: (gst_element_register):
6635           set the factory in the class struct, so gst_element_get_factory
6636           actually works
6637         * gst/parse/grammar.y:
6638           set element to playing when it gets unlocked as we can't rely on the
6639           bin state - all elements in the bin state might still be locked in
6640           NULL)
6641
6642 2004-07-22  Benjamin Otte  <otte@gnome.org>
6643
6644         * gst/gstelement.c: (gst_element_set_state_func):
6645           make this a static function
6646
6647 2004-07-22  Wim Taymans  <wim@fluendo.com>
6648
6649         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6650         (gst_opt_scheduler_pad_link):
6651         fix 147894-2 and the group_link problem.
6652
6653 2004-07-22  Wim Taymans  <wim@fluendo.com>
6654
6655         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6656         (handoff_identity), (main):
6657         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6658         (handoff_identity), (main):
6659         * testsuite/schedulers/Makefile.am:
6660         * testsuite/schedulers/group_link.c: (main):
6661         Show bug in scheduler when linking chain and loop based element 
6662         where the chain based element was not yet in a group.
6663
6664 2004-07-21  Benjamin Otte  <otte@gnome.org>
6665
6666         * gst/.cvsignore:
6667         * gst/autoplug/.cvsignore:
6668         * gst/elements/.cvsignore:
6669         * gst/indexers/.cvsignore:
6670         * libs/gst/bytestream/.cvsignore:
6671         * libs/gst/control/.cvsignore:
6672         * libs/gst/getbits/.cvsignore:
6673         * testsuite/states/.cvsignore:
6674         * testsuite/threads/.cvsignore:
6675           keep this up to date, since I seem to be the only one who cares
6676           about not missing files on commits (editor's note: no you don't,
6677           but feel free to change them at the time you add stuff instead
6678           of later on)
6679
6680 2004-07-21  Benjamin Otte  <otte@gnome.org>
6681
6682         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6683         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6684         (gst_bin_child_state_change_func), (set_kid_state_func),
6685         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6686           make state changes work correctly and reentrant (so removing
6687           elements from bins during state changes of bins doesn't cause
6688           segfaults or even wrong states)
6689           add debugging category and debugging output to print children states
6690         * gst/gstbin.c: (gst_bin_dispose): 
6691           add some assertion checks
6692         * gst/gstbin.h:
6693         * gst/gstbin.c: (gst_bin_sync_children_state):
6694           deprecate this function - it just does gst_bin_set_state (bin,
6695           GST_STATE (bin)) 
6696         * testsuite/threads/queue.c: (main):
6697           don't use gst_bin_sync_children_state anymore
6698         * testsuite/states/Makefile.am:
6699         * testsuite/states/bin.c:
6700           test that the state changes of bins work as expected
6701         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6702           some adjustments to change states correctly, too
6703         * gst/gstthread.c: (gst_thread_change_state):
6704           don't enable/disable "threadsafe" properties, they're unused and
6705           cause random segfaults
6706         * testsuite/threads/Makefile.am:
6707           the queue check randomly passes now, ignore it
6708
6709 2004-07-21  Benjamin Otte  <otte@gnome.org>
6710
6711         * gst/gstpad.c:
6712           check if data is NULL before outputting debug info. (fixes #145100)
6713
6714 2004-07-21  Benjamin Otte  <otte@gnome.org>
6715
6716         * gst/schedulers/entryscheduler.c:
6717         (gst_entry_scheduler_loop_wrapper),
6718         (gst_entry_scheduler_chain_wrapper),
6719         (gst_entry_scheduler_get_wrapper):
6720           reset the state when the cothread starts, so we don't get assertion
6721           failures on restarting of cothreads
6722
6723 2004-07-20  Benjamin Otte  <otte@gnome.org>
6724
6725         * gst/gstelement.c: (gst_element_link_pads_filtered):
6726           use correct sinkpad, if only sinkpad is specified, but not srcpad
6727           (fixes #147889)
6728         * gst/gstelement.c: (gst_element_set_state_func),
6729         (gst_element_change_state): ref/unref the element, signal handlers
6730         could get rid of the element otherwise
6731
6732 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6733
6734         * docs/random/ds/0.9-suggested-changes:
6735           Make note about renaming fixed-list to array.
6736         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6737         (_gst_value_initialize):
6738           Add array intersections.
6739         * testsuite/caps/intersect2.c: (main):
6740           Add test for array intersections.
6741
6742 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6743
6744         * configure.ac: back to cvs
6745
6746 === release 0.8.4 ===
6747
6748 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6749
6750         * configure.ac:
6751           releasing 0.8.4, "Paella"
6752           bump libtool versioning
6753
6754 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6755
6756         * po/LINGUAS:
6757         * po/ca.po:
6758           adding Catalan translation (Jordi Mallach)
6759
6760 2004-07-20  Wim Taymans  <wim@fluendo.com>
6761
6762         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6763         (handoff_identity), (main):
6764         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6765         (handoff_identity), (main):
6766         * testsuite/schedulers/Makefile.am:
6767         Added failing testcase for variant of #147894
6768
6769 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6770
6771         patch by: David Moore
6772
6773         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6774         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
6775         (group_migrate_connected):
6776         * testsuite/schedulers/Makefile.am:
6777           fix for #142813 (Deadlock in optimal scheduler)
6778
6779 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6780
6781         patch by: Wim Taymans
6782
6783         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6784         (gst_opt_scheduler_schedule_run_queue),
6785         (gst_opt_scheduler_get_wrapper), (get_group),
6786         (group_migrate_connected):
6787         * testsuite/schedulers/Makefile.am:
6788           fix for #147819 (Add some checks in the opt scheduler)
6789
6790 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6791
6792         patch by: Benjamin Otte
6793
6794         * gst/gstelementfactory.c: (__gst_element_details_set):
6795           fix for #147929: running gst-register in non-utf8 locale can cause
6796           invalid registry
6797
6798 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6799
6800         patch by: Wim Taymans
6801
6802         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
6803         (group_has_element), (element_get_reachables_func),
6804         (group_migrate_connected):
6805           fix for #147894 (opt scheduler decoupled elements mismanagement)
6806         * testsuite/schedulers/Makefile.am:
6807           testsuite app now passes
6808
6809 2004-07-19  Wim Taymans  <wim@fluendo.com>
6810
6811         * testsuite/schedulers/147819.c: (handoff_identity1),
6812         (handoff_identity2), (main):
6813         * testsuite/schedulers/Makefile.am:
6814         Added testcase for bug 147819
6815
6816 2004-07-19  Wim Taymans  <wim@fluendo.com>
6817
6818         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6819         (handoff_identity), (main):
6820         * testsuite/schedulers/Makefile.am:
6821         Added testcase for bug 147894
6822
6823 2004-07-16  Wim Taymans  <wim@fluendo.com>
6824
6825         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
6826         * testsuite/schedulers/142183.c: (handoff_identity), (main):
6827         * testsuite/schedulers/Makefile.am:
6828         Added testsuite for bug 142183 in its two incarnations. Refcount
6829         is not increased for scheduled elements and threadsafe properties
6830         mutexes are not properly unlocked.
6831
6832 2004-07-16  Wim Taymans  <wim@fluendo.com>
6833
6834         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
6835         (create_chain), (destroy_chain), (create_group), (destroy_group),
6836         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
6837         (group_dec_link), (gst_opt_scheduler_pad_link),
6838         (group_inc_links_for_element), (group_migrate_connected):
6839         Call group_inc_link with the proper src->sink ordering -- 
6840         break this, and we break sort_chain. patch from wingo for bug
6841         147713.
6842         Partially revert patch 1.89. When adding a loop based element to 
6843         the scheduler, the links to other groups are automatically followed
6844         and incremented. This should not happen because the bin will call
6845         pad_link explicitly for those connection, resulting in them counted 
6846         twice. Results in assertion failure on pipeline cleanup.
6847
6848 2004-07-16  Wim Taymans  <wim@fluendo.com>
6849
6850         * testsuite/schedulers/143777-2.c: (main):
6851         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
6852         (main):
6853         * testsuite/schedulers/Makefile.am:
6854         Added cleanup code to testcase 143777-2.
6855         Added testcase to show bug 147713, does not really show the
6856         deadlock as I can't figure out how to trigger it, but it does
6857         demonstrate bad ordering in the scheduler.
6858
6859 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6860
6861         * gst/gstvalue.c: (gst_value_deserialize_fraction):
6862           change strndup to g_strndup.  Fixes #147707
6863
6864 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6865
6866         * po/af.po:
6867         * po/az.po:
6868         * po/cs.po:
6869         * po/en_GB.po:
6870         * po/fr.po:
6871         * po/nl.po:
6872         * po/sr.po:
6873         * po/sv.po:
6874         * po/tr.po:
6875         * po/uk.po:
6876           updated translations
6877
6878 2004-07-16  Benjamin Otte  <otte@gnome.org>
6879
6880         * gst/gstvalue.c: (gst_greatest_common_divisor):
6881           use ints and return ints, fractions only use ints, too, so this
6882           avoids accidently casting multiplications to unsigned
6883         (gst_value_lcopy_fraction): it's ints, not uint32
6884         (gst_value_set_fraction): disallow minint, multiplying and negation
6885           are broken with it
6886         (gst_value_fraction_multiply): fix to make large numbers work and get
6887         rid of the assumption that the multiplication of two ints fits an
6888         int64 - dunno if that's true for all systems
6889         * testsuite/caps/Makefile.am:
6890         * testsuite/caps/fraction-multiply-and-zero.c:
6891         (check_multiplication), (check_equal), (zero_test), (main):
6892           add tests for all the stuff above
6893         * testsuite/caps/value_compare.c: (test1):
6894           fix comment
6895         * tests/.cvsignore:
6896         * testsuite/caps/.cvsignore:
6897         * testsuite/debug/.cvsignore:
6898         * testsuite/dlopen/.cvsignore:
6899         * testsuite/states/.cvsignore:
6900           get up to date
6901
6902 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6903
6904         * docs/manual/bins-api.xml:
6905         * docs/manual/factories.xml:
6906         * docs/manual/helloworld.xml:
6907         * docs/manual/links-api.xml: 
6908           fixes for out of date info, incorrect info and grammar
6909
6910 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6911
6912         * docs/manual/pads.xml:
6913         * docs/manual/pads-api.xml: grammar fix
6914
6915 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6916
6917         * docs/manual/pads-api.xml: typo + grammar fix
6918
6919 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6920
6921         * docs/gst/gstreamer-sections.txt:
6922           add new symbols
6923         * docs/gst/tmpl/gstelement.sgml:
6924         * docs/gst/tmpl/gstpad.sgml:
6925         * docs/gst/tmpl/gsttypes.sgml:
6926         * docs/gst/tmpl/gstvalue.sgml:
6927           update docs
6928         * gst/gststructure.c: (gst_structure_set_valist),
6929         (gst_structure_from_abbr), (gst_structure_to_abbr):
6930         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
6931         (gst_greatest_common_divisor), (gst_value_init_fraction),
6932         (gst_value_copy_fraction), (gst_value_collect_fraction),
6933         (gst_value_lcopy_fraction), (gst_value_set_fraction),
6934         (gst_value_get_fraction_numerator),
6935         (gst_value_get_fraction_denominator),
6936         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
6937         (gst_value_deserialize_fraction),
6938         (gst_value_transform_fraction_string),
6939         (gst_value_transform_string_fraction),
6940         (gst_value_compare_fraction), (_gst_value_initialize):
6941         * gst/gstvalue.h:
6942           adding GstFraction GValue type, get/set, and multiply
6943         * testsuite/caps/Makefile.am:
6944         * testsuite/caps/fraction.c: (test), (main):
6945         * testsuite/caps/string-conversions.c: (main):
6946         * testsuite/caps/value_compare.c: (test1), (main):
6947           add regression tests for GstFraction
6948
6949 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6950         
6951         * docs/manual/init-api.xml: Grammar fix
6952
6953 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6954
6955         * docs/manual/states.xml: Fix inconsistent information
6956
6957 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6958
6959         * gst/gstelement.c: (gst_element_set_state):
6960         * gst/gstpad.c: (gst_pad_try_set_caps):
6961         * gst/gststructure.c:
6962         * gst/gstthread.c: (gst_thread_child_state_change):
6963         * gst/gstvalue.c: (gst_value_compare_double):
6964         * gst/gstvalue.h:
6965         * testsuite/parse/parse1.c: (main):
6966           debugging additions and style cleanups
6967
6968 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6969
6970         * docs/manual/states.xml: Grammar fix
6971
6972 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6973
6974         * docs/manual/pads.xml: Grammar fix
6975
6976 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6977
6978         * docs/manual/elements.xml: Fixed image reference
6979
6980 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6981
6982         * docs/manual/goals.xml: Grammar fix
6983
6984 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6985
6986         * docs/manual/motivation.xml:
6987         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
6988
6989 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6990
6991         * docs/manual/motivation.xml: Fix spelling
6992
6993 2004-07-15  Benjamin Otte  <otte@gnome.org>
6994
6995         * gst/gstelement.h: 
6996           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
6997           strings.
6998         * gst/gstelement.c (gst_element_class_init):
6999           GError's are boxed, not objects
7000         * gst/gstmarshal.list:
7001           update list for the fixed error signal
7002
7003 2004-07-14  Andy Wingo  <wingo@pobox.com>
7004
7005         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7006         there all along, but the function wasn't. (guile-gstreamer's build
7007         system uses the address of the function -- I wasn't actually
7008         trying to use this.)
7009
7010 2004-07-14  Andy Wingo  <wingo@pobox.com>
7011
7012         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7013         as gst_pad_proxy_pad_link) just link to every other pad when they
7014         are called. In the case where the graph has cycles, this will mean
7015         that a call to try_set_caps will recurse. Allow this recursion
7016         and return OK, while we wait for the first try_set_caps to give a
7017         proper return value.
7018         (gst_pad_link_call_link_functions): Since this function is the
7019         only one to set the NEGOTIATING flag on a pad, if the flag is set
7020         it means that the link functions have indirectly recursed. If this
7021         happens, error out to avoid infinite recursion and an eventual
7022         SEGV.
7023         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7024         (gst_pad_proxy_getcaps): Intersect the result with the template
7025         caps to ensure that the return value is valid.
7026
7027 2004-07-14  Andy Wingo  <wingo@pobox.com>
7028
7029         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7030         one refcount, the calling function is the owner of the buffer.
7031
7032 2004-07-14  Wim Taymans  <wim@fluendo.com>
7033
7034         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7035         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7036         Fix stupid warning when an element is to be migrated but
7037         is already migrated.
7038
7039 2004-07-14  Wim Taymans  <wim@fluendo.com>
7040
7041         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7042         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7043         Make sure that a single non-loop-based element does not 
7044         end up in a group. This fixes the testsuite again.
7045
7046 2004-07-14  Wim Taymans  <wim@fluendo.com>
7047
7048         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7049         (add_to_group), (merge_groups), (schedule_group),
7050         (gst_opt_scheduler_get_wrapper), (group_elements),
7051         (group_dec_link), (gst_opt_scheduler_pad_link),
7052         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7053         (gst_opt_scheduler_iterate):
7054         move isolated groups to a new chain.
7055         Emit a warning instead of segfaulting in some error cases.
7056         Fix a bug where the link count between groups was not calculated 
7057         correctly. Fixes #144510.
7058
7059 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7060         * gst/elements/gstfilesrc.c:
7061           Binary files support under Windows now OK
7062       
7063 2004-07-13  Benjamin Otte  <otte@gnome.org>
7064
7065           compatibility fixes for Solaris 8/gcc 2.95
7066         * configure.ac:
7067           include libintl libs in LDFLAGS
7068         * gstvalue.c (gst_value_deserialize_buffer):
7069           cast isxdigit stuff to int to silence compiler warning
7070
7071 2004-07-12  Benjamin Otte  <otte@gnome.org>
7072
7073         * gst/gsttypes.h:
7074           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7075           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7076           just causes support madness
7077         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7078           make it work without this
7079         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7080         (gst_file_index_commit):
7081           glib IO channels don't want binary mode
7082         * testsuite/bytestream/filepadsink.c: (main):
7083         * testsuite/bytestream/test1.c: (read_param_file):
7084           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7085
7086 2004-07-12  Benjamin Otte  <otte@gnome.org>
7087
7088         * gst/gstelement.c: (gst_element_class_init),
7089         (gst_element_set_state), (gst_element_set_state_func):
7090           virutalize gst_element_set_state, use set_state member in class
7091           struct that was already added in 0.7 for this.
7092         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7093         (gst_bin_change_state):
7094           make gst_bin_foreach works similar to other foreach functions, plug
7095           memleaks in it. Make functions using it work with the new approach.
7096           Document gst_bin_foreach, so it can be exported if we want to
7097         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7098           use virtualized set_state to make set_state on bins set the state of
7099           all its children.
7100
7101 2004-07-12  Benjamin Otte  <otte@gnome.org>
7102
7103         * configure.ac:
7104           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7105           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7106         * gst/gstpad.c: (gst_pad_alloc_buffer):
7107           allow buffer_alloc functions to return NULL and allocate a normal
7108           buffer in that case
7109
7110 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7111         * gst/elements/gstfilesink.c:
7112         * gst/elements/gstfilesrc.c:
7113         * gst/indexers/gstfileindex.c:
7114         * gst/gsttypes.h:
7115         * testsuite/bytestream/filepadsink.c:
7116         * testsuite/bytestream/test1.c:
7117           Handle binary files under Windows
7118
7119 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7120         * docs/manual/win32.xml:
7121         * win32/config.h:
7122         * win32/gst-register.vcproj:
7123         * win32/gstreamer.def:
7124           Update to another gettext public build
7125
7126 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7127         * gst/gstplugin.c:
7128           Fix an impossible C syntax
7129         * win32/config.h:
7130           Disable i18n under Windows for the moment
7131         * win32/gst-register.vcproj:
7132           Use this configuration
7133
7134 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7135         * docs/manual/quotes.xml:
7136           Keep the quotes file alive
7137         * docs/random/ds/0.9-suggested-changes:
7138           Add the suggestion of including a 'rowstride' as part of video
7139           format caps
7140
7141 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7142
7143         * gst/gstelement.c: (gst_element_set_state),
7144         (gst_element_change_state):
7145           d'oh.  Set PENDING state correctly before forcing bin to change.
7146         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7147         (gst_structure_parse_fixed_list):
7148         * gst/schedulers/gstoptimalscheduler.c:
7149         (gst_opt_scheduler_state_transition):
7150         * testsuite/states/parent.c: (main):
7151           remove comment now that it's fixed.
7152
7153 2004-07-11  Benjamin Otte  <otte@gnome.org>
7154
7155         * gst/gstclock.h:
7156           GST_SECOND shouldn't cause a conversion to unsigned.
7157         * testsuite/clock/.cvsignore:
7158         * testsuite/clock/Makefile.am:
7159         * testsuite/clock/signedness.c: (main):
7160           make sure it never will again
7161
7162 2004-07-11  Andy Wingo  <wingo@pobox.com>
7163
7164         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7165         whose state is higher than the bin state, raise the bin state to
7166         ensure that bin state := highest child state.
7167         
7168 2004-07-11  Andy Wingo  <wingo@pobox.com>
7169
7170         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7171         procedure on the children of a bin. Assumes that the procedure can
7172         change the set of children.
7173         (set_kid_state_func): New static function.
7174         (gst_bin_change_state): Use gst_bin_foreach to call
7175         set_kid_state_func. Fixes a bug: if a child had a state-change
7176         handler that removes it from the bin, there would be a segfault.
7177         Hopefully it should also work in the case where the state-change
7178         handler on one child adds or removes other children. In any case,
7179         fixes should go to gst_bin_foreach.
7180
7181 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7182
7183         * gst/gstelement.c: (gst_element_set_state):
7184           compatibility fix for latest plugins release.  Change loop back
7185           to while {}
7186
7187 2004-07-09  Wim Taymans  <wim@fluendo.com>
7188
7189         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7190         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7191         (gst_thread_main_loop):
7192         Since remove is virtual in GstBin we must not assume the 
7193         elements GList to have anothing useful.
7194         Add some more logging to GstThread and be a bit more paranoid
7195         when resetting the scheduler.
7196         Set the state of the bin to NULL before removing the children.
7197
7198 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7199
7200         * testsuite/threads/Makefile.am:
7201         * testsuite/threads/threadg.c:
7202           added test to check if problem when removing all elements from a
7203           GstThread before setting GstThread state to NULL
7204
7205 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7206
7207         * docs/gst/tmpl/gstelement.sgml:
7208         * docs/gst/tmpl/gsttypes.sgml:
7209         * gst/gstbin.c: (gst_bin_change_state):
7210         * gst/gstelement.c: (gst_element_set_state),
7211         (gst_element_change_state):
7212           rework so that for bins we try to set the state on all children
7213           as well even if the bin is in the correct state already.
7214           change while to do so at least one iteration is done.
7215           For regular elements, we fall back to the previous behaviour for
7216           now since we first need a new plugins release.
7217         * testsuite/states/parent.c: (main):
7218           test for this case
7219           Fixes #123774
7220
7221 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7222
7223         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7224         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7225         (gst_queue_release_locks), (gst_queue_change_state),
7226         (gst_queue_set_property):
7227           add proper lock debugging.  Change dispose to finalize, since
7228           we're freeing mutexes and other stuff which should happen only once.
7229
7230 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7231
7232         * docs/gst/tmpl/gstelement.sgml:
7233         * docs/gst/tmpl/gstplugin.sgml:
7234         * docs/gst/tmpl/gsttypes.sgml:
7235         * docs/pwg/building-state.xml:
7236         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7237         * gst/gstelement.c: (gst_element_change_state):
7238         * gst/gstthread.c: (gst_thread_change_state):
7239           catch wrong state changes in element base class.
7240
7241 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7242
7243         * gst/gstinfo.h:
7244           clean up layout a little.
7245
7246 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7247
7248         * configure.ac:
7249         * testsuite/Makefile.am:
7250         * testsuite/states/Makefile.am:
7251         * testsuite/states/parent.c: (main):
7252           re-enable states testsuite dir.  Add test for state changes and
7253           parent behaviour
7254
7255 2004-07-09  Wim Taymans  <wim@fluendo.com>
7256
7257         * gst/schedulers/gstoptimalscheduler.c:
7258         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7259         (element_get_reachables_func), (element_get_reachables),
7260         (debug_element), (rechain_group), (group_migrate_connected),
7261         (gst_opt_scheduler_pad_unlink):
7262         Do not try to migrate decoupled elements to a new group since
7263         they are not added to groups.
7264
7265 2004-07-08  Benjamin Otte  <otte@gnome.org>
7266
7267         * gst/gstelement.c: (gst_element_error_func):
7268           make reentrant (= allow removing elements in error handler)
7269
7270 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7271
7272         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7273         (gst_pad_send_event), (gst_pad_call_chain_function):
7274           events sent to elements below PAUSED cannot be handled, so
7275           don't try to
7276
7277 2004-07-08  Wim Taymans  <wim@fluendo.com>
7278
7279         * gst/schedulers/gstoptimalscheduler.c:
7280         (chain_recursively_migrate_group), (create_group),
7281         (schedule_group), (gst_opt_scheduler_pad_link),
7282         (group_elements_set_visited), (element_get_reachables_func),
7283         (element_get_reachables), (group_can_reach_group), (debug_element),
7284         (rechain_group), (group_migrate_connected),
7285         (gst_opt_scheduler_pad_unlink):
7286         * testsuite/schedulers/Makefile.am:
7287         Implemented group splitting and rechaining.
7288         Fixes 143777 and 143777-2 in the testsuite.
7289
7290 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7291
7292         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7293           extra debugging
7294         * gst/gstevent.h:
7295         * gst/gstinfo.c: (gst_debug_log_default):
7296           print time nicely.  add thread pointer until someone figures out
7297           a completely portable way of getting at thread id's.
7298         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7299         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7300         (gst_pad_call_chain_function):
7301           extra debugging
7302         * gst/schedulers/gstoptimalscheduler.c:
7303         (get_group_schedule_function), (loop_group_schedule_function),
7304         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7305         (pad_clear_queued), (gst_opt_scheduler_iterate):
7306           rename BUFPEN and friends to DATAPEN since that's what they are.
7307
7308 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7309
7310         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7311         * gst/gstbuffer.h:
7312         * gst/gstpad.c:
7313           cleanups and debugging
7314
7315 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7316
7317         * configure.ac:
7318         * gst/gstvalue.c: (gst_value_compare_enum),
7319         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7320         (gst_value_can_compare), (gst_value_compare):
7321         * testsuite/Makefile.am:
7322         * testsuite/enumcaps/Makefile.am:
7323         * testsuite/enumcaps/enumcaps.c:
7324           Fix enum serialization, deserialization, comparison in caps, add
7325           a test to ensure that this continues working in the future.
7326
7327 2004-07-06  David Schleef  <ds@schleef.org>
7328
7329         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7330         Fix memleak.
7331
7332 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7333
7334         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7335         * gst/gstplugin.h:
7336         * gst/registries/gstxmlregistry.c:
7337         (plugin_times_older_than_recurse), (plugin_times_older_than),
7338         (gst_xml_registry_parse_padtemplate):
7339           only rebuild registry when actual plugins have a newer time than
7340           the registry.  Fixes #145520
7341
7342 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7343
7344         * docs/manual/manual.xml:
7345         * docs/manual/win32.xml:
7346           add chapter on win32 building.  fixes #142422
7347
7348 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7349
7350         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7351
7352         * gst/autoplug/gstspider.c: (gst_spider_init),
7353         (gst_spider_dispose):
7354           fix spider memleaks.  fixes #137863
7355
7356 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7357
7358         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7359
7360         * gst/schedulers/gstoptimalscheduler.c:
7361         (gst_opt_scheduler_pad_unlink):
7362           fix SIGBUS error, fixes #145338
7363
7364 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7365
7366         * gst/gstobject.c: (gst_object_replace):
7367         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7368         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7369           clean up clock lifecycle.  Fixes #109831
7370
7371 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7372
7373         * po/LINGUAS:
7374         * po/cs.po:
7375           added Czech translation (Miloslav Trmac)
7376
7377 2004-07-04  David Schleef  <ds@schleef.org>
7378
7379         * tools/Makefile.am:
7380         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7381
7382 2004-07-04  David Schleef  <ds@schleef.org>
7383
7384         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7385
7386 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7387
7388         * gst/gstbin.c: (gst_bin_restore_thyself):
7389           chain to parent restore so the bins get restored correctly
7390           in the editor
7391
7392 2004-07-03  David Schleef  <ds@schleef.org>
7393
7394         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7395         Actually do something in these functions, like before the big
7396         caps change.  (bug #145137)
7397
7398 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7399
7400         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7401         (gst_element_get_compatible_pad_filtered):
7402         * gst/gstthread.c: (gst_thread_main_loop):
7403           more debugging
7404
7405 2004-07-02  David Schleef  <ds@schleef.org>
7406
7407         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7408         * gst/gstobject.h:
7409         * gst/gstparse.h:
7410         * gst/gsttrace.h:
7411         * gst/gstxml.h:
7412
7413 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7414
7415         * gst/gstpad.c: (gst_pad_check_schedulers),
7416         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7417         (gst_pad_link_prepare):
7418           revert until testsuite is fixed
7419
7420 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7421
7422         * testsuite/Makefile.am:
7423         * testsuite/caps/filtercaps.c: (main):
7424         * testsuite/clock/clock1.c: (main):
7425         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7426           fix some more tests
7427
7428 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7429
7430         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7431         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7432         * testsuite/cleanup/cleanup4.c: (main):
7433           fix testsuite
7434
7435 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7436
7437         * libs/gst/control/control.c:
7438         * libs/gst/control/dparam.c:
7439         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7440         * libs/gst/control/dparammanager.c:
7441         * libs/gst/control/dparammanager.h:
7442         * testsuite/dynparams/Makefile.am:
7443         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7444         (gst_dptest_change_state), (gst_dptest_chain), (main):
7445           fix testcase for dparams
7446           add debugging category
7447
7448 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7449
7450         * testsuite/Rules:
7451           change path
7452
7453 2004-07-02  Benjamin Otte  <otte@gnome.org>
7454
7455         * tests/.cvsignore:
7456         * tests/Makefile.am:
7457         * tests/mass_elements.c: (gst_get_current_time), (main):
7458           add simple benchmark to test various speeds of fakesrc ! identity !
7459           identity ! ... ! fakesink.
7460           Usage: mass_elements [num_identities] [num_buffers]
7461           If not specified they default to 1000.
7462
7463 2004-07-02  Benjamin Otte  <otte@gnome.org>
7464
7465         * gst/gstpad.c: (gst_pad_check_schedulers),
7466         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7467         (gst_pad_link_prepare):
7468           check that pads that get linked belong to the same manager. The old
7469           code allowed linking elements before putting them into bins, so it
7470           worked to link them and then put them in different threads, which
7471           lead to weird behaviour.
7472           Since this effectively disallows linking elements before putting
7473           them in a bin, some applications might not work after this and error
7474           out. If these applications are too critical, we might need to revert
7475           that patch. Please test this before the next release...
7476
7477 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7478
7479         * gst/gstpad.c: (gst_pad_get_caps):
7480           throw an error if the getcaps function does not return a subset of
7481           the template caps.
7482         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7483           make disconts without position info an error in debugging
7484         * tests/spidey_bench.c: (handoff), (main):
7485           don't count first try when averaging
7486
7487 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7488
7489         * gst/gstplugin.c: (gst_plugin_load_file):
7490           figure out problem with dynamic test
7491
7492 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7493
7494         * docs/gst/Makefile.am:
7495           fix docs build
7496
7497 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7498
7499         * po/POTFILES.in:
7500         * po/af.po:
7501         * po/az.po:
7502         * po/en_GB.po:
7503         * po/fr.po:
7504         * po/nl.po:
7505         * po/sr.po:
7506         * po/sv.po:
7507         * po/tr.po:
7508         * po/uk.po:
7509         * tools/gst-register.c: (plugin_added_func), (main):
7510           i18n-ize -register, fix plural
7511
7512 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7513
7514         * gst/elements/gstidentity.c: (gst_identity_class_init),
7515         (gst_identity_init), (gst_identity_chain),
7516         (gst_identity_set_property), (gst_identity_get_property):
7517         * gst/elements/gstidentity.h:
7518           check for perfect stream
7519
7520 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7521
7522         * gst/elements/gstidentity.c: (gst_identity_chain):
7523           print offset_end
7524
7525 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7526
7527         * docs/gst/Makefile.am:
7528         * docs/gst/gstreamer-docs.sgml:
7529           doc fixes
7530
7531 2004-06-24  David Schleef  <ds@schleef.org>
7532
7533         * autogen.sh:  Remove call to env, since the buildbot isn't
7534         broken anymore.
7535
7536 2004-06-24  Wim Taymans  <wim@fluendo.com>
7537
7538         * gst/elements/Makefile.am:
7539         * gst/elements/gstelements.c:
7540         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7541         (gst_multifdsink_class_init), (gst_multifdsink_init),
7542         (gst_multifdsink_add), (gst_multifdsink_remove),
7543         (gst_multifdsink_clear), (gst_multifdsink_chain),
7544         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7545         * gst/elements/gstmultifdsink.h:
7546         Added an element that writes to multiple filedescriptors at once.
7547
7548 2004-06-24  Benjamin Otte  <otte@gnome.org>
7549
7550         * gst/parse/grammar.y:
7551           don't try to link elements before they have been added to bins
7552
7553 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7554
7555         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7556         (gst_file_pad_get_length):
7557         * libs/gst/bytestream/filepad.h:
7558           add 2 new functions
7559
7560 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7561
7562         * docs/gst/gstreamer-sections.txt:
7563         remove from docs, the define that Benjamin removed from gstelement.h
7564
7565 2004-06-22  Benjamin Otte  <otte@gnome.org>
7566
7567         * gst/gstelement.h:
7568           remove define that referenced a nonexisting GstElement struct member
7569
7570 2004-06-20  Benjamin Otte  <otte@gnome.org>
7571
7572         * gst/gstdata.c: (gst_data_is_writable):
7573           whoops, return values were wrong, so writable data was marked as
7574           non-writable and vice versa. (fixes #143953, spotted by Francis
7575           Labonte)
7576           Shows how rarely we need to copy data ;)
7577
7578 2004-06-20  Benjamin Otte  <otte@gnome.org>
7579
7580         * testsuite/schedulers/.cvsignore:
7581         * testsuite/schedulers/Makefile.am:
7582         * testsuite/schedulers/143777-2.c: (main):
7583           add test for opt breakage in bug #143777
7584
7585 2004-06-20  Benjamin Otte  <otte@gnome.org>
7586
7587         * gst/gstpad.c: (gst_pad_call_chain_function):
7588           check for if we were unlinked while inside the chainfunction (fixes
7589           entrygthread having issues with #143777)
7590         * testsuite/schedulers/143777.c: (main):
7591         * testsuite/schedulers/Makefile.am:
7592           add a test for that fix
7593
7594 2004-06-20  Benjamin Otte  <otte@gnome.org>
7595
7596         * gst/gstvalue.c: (gst_value_set_int_range):
7597           test that start is smaller then end
7598         * libs/gst/bytestream/Makefile.am:
7599         * libs/gst/bytestream/filepad.c: 
7600         * libs/gst/bytestream/filepad.h:
7601           add GstFilePad - a pad that behaves like a FILE*
7602         * testsuite/bytestream/.cvsignore:
7603         * testsuite/bytestream/Makefile.am:
7604         * testsuite/bytestream/filepadsink.c: 
7605           test for the GstFilePad
7606
7607 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7608
7609         * gst/elements/gstidentity.c: (gst_identity_class_init),
7610         (gst_identity_init), (gst_identity_set_clock),
7611         (gst_identity_chain), (gst_identity_set_property),
7612         (gst_identity_get_property):
7613         * gst/elements/gstidentity.h:
7614         * gst/gstclock.c: (gst_clock_id_wait):
7615           add a "sync" property to sync to the clock
7616
7617 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7618
7619         * gst/gstelementfactory.c: (gst_element_factory_create):
7620           make the freakin "elementfactory bla has no type" message more
7621           useful. So we actually can do something when someone shows up
7622           complaining about it.
7623
7624 2004-06-15  Johan Dahlin  <johan@gnome.org>
7625
7626         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7627         found. This matches the old behavior better. Thanks to Thomas for
7628         pointing out.
7629
7630 2004-06-14  David Schleef  <ds@schleef.org>
7631
7632         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7633         -fomit-frame-pointer.  Appears to generate correct code in
7634         other cases as well.
7635
7636 2004-06-14  Johan Dahlin  <johan@gnome.org>
7637
7638         * tools/gst-inspect.c (main): Add two new command line options: -a
7639         to print all elements and -n to print the name on each line. Also
7640         fix some error reporting.
7641         (main): Simplify, remove -n and always print names if -a is specified
7642
7643 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7644
7645         * win32/gstconfig.h:
7646         * win32/GSTreamer.vcproj:
7647         * win32/Makefile:
7648         * gst/gstconfig.h.in:
7649         * gst/gst.h:
7650         * gst/gstbin.h:
7651         * gst/gstelement.h:
7652         * gst/gstevent.h:
7653         * gst/gstobject.h:
7654         * gst/gstpad.h:
7655         * docs/gst/gstreamer-sections.txt:
7656         * docs/gst/tmpl/gstconfig.sgml:
7657           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7658
7659 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7660         * docs/gst/gstreamer-sections.txt:
7661         * docs/gst/tmpl/gstconfig.sgml:
7662         Add the GSTREAMER_EXPORT macro to the docs
7663
7664 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7665
7666         * tools/gst-compprep.c: (handle_xmlerror), (main):
7667         Add a check for the version that introduced SetStructuredError to fix
7668         the build on FC1
7669
7670 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7671
7672         * win32/msvc71.sln:
7673         * win32/testsuite/:
7674           prepare to compile the testsuite with MSVC
7675
7676 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7677
7678         * docs/manual/win32.xml:
7679           attempt to transform the Win32 README into an XML doc
7680
7681 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7682
7683         * gst/gst.c:
7684         * gst/gstbin.*:
7685         * gst/config.h.in:
7686         * gst/gstelement.*:
7687         * gst/gstevent.h:
7688         * gst/gstobject.*:
7689         * gst/gstpad.h:
7690         * tools/gst-register.c:
7691         * win32/gstreamer.def:
7692           extern symbols are now exported for the Windows DLL
7693
7694 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7695
7696         * gst/gstinfo.h:
7697           fix a problem to enable/disable DEBUG under MSVC
7698
7699 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7700
7701         * win32/:
7702           enable more debug code in DEBUG build
7703
7704 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7705
7706         * win32/config.h:
7707         * gst/gst-i18n-app.h:
7708           enable NLS under Windows
7709
7710 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7711         * tools/gst-compprep.c: (handle_xmlerror), (main):
7712           Make an error that baffled me a bit clearer
7713
7714 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7715
7716         * gst/gstqueue.c:
7717           don't use g_queue_get_length () because it's 2.4, use ->length
7718
7719 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7720
7721         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7722
7723         * tools/gst-inspect.c: (print_signal_info):
7724           don't free random data twice. (fixes #144185)
7725
7726 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7727
7728         * gst/gstqueue.c:
7729         * gst/gstqueue.h:
7730           fix removing from the wrong queue on event timeout
7731           fix disposing of the event queue by casting correctly
7732           add mutexes for handling the event queue
7733           someone was sleeping when fixing queue last time around :)
7734
7735 2004-06-10  Johan Dahlin  <johan@gnome.org>
7736
7737         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7738         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7739
7740 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7741
7742         * docs/random/gdp:
7743         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7744         * libs/gst/dataprotocol/dataprotocol.c:
7745         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7746         (gst_dp_buffer_from_header):
7747         * libs/gst/dataprotocol/dataprotocol.h:
7748         * libs/gst/dataprotocol/dp-private.h:
7749           rev version to 0.1, add buffer flags and copy them
7750
7751 2004-06-09  Johan Dahlin  <johan@gnome.org>
7752
7753         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
7754         the flags from the buffer we're copying.
7755
7756 2004-06-09  Wim Taymans  <wim@fluendo.com>
7757
7758         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
7759         * gst/elements/gstidentity.c: (gst_identity_init),
7760         (gst_identity_chain):
7761         Print more buffer info in fakesink.
7762         Make identity output similar to fakesink.
7763
7764 2004-06-07  Daniel Gazard  <dany42@free.fr>
7765
7766         reviewed by Benjamin Otte  <otte@gnome.org>
7767
7768         * configure.ac:
7769           fix cross compiling not working. (fixes #143741)
7770
7771 2004-06-07  Benjamin Otte  <otte@gnome.org>
7772
7773         * gst/gstelement.c: (gst_element_set_time_delay):
7774           add failure check
7775         * gst/gstinfo.h:
7776           put brackets around macro arguments of GST_TIME_ARGS, add note to
7777           move it to correct header in 0.9
7778
7779 2004-06-07  Benjamin Otte  <otte@gnome.org>
7780
7781         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
7782         (gst_file_index_load), (_file_index_id_save_entries),
7783         (gst_file_index_commit), (gst_file_index_add_association),
7784         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
7785         (gst_file_index_plugin_init):
7786           make debugging use a default category
7787
7788 2004-06-06  David Moore  <dcm@acm.org>
7789
7790         reviewed by Benjamin Otte  <otte@gnome.org>
7791
7792         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
7793         (gst_fdsrc_change_state):
7794           reset offset counter when going READY => PAUSED. (fixes #142903)
7795
7796 2004-06-06  ed@catmur.co.uk
7797
7798         reviewed by Benjamin Otte  <otte@gnome.org>
7799
7800         * gst/registries/gstxmlregistry.c:
7801         (gst_xml_registry_rebuild_recurse):
7802           don't rely on g_dir_open to figure out if a file is a directory, use
7803           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
7804           directories. (fixes #142850)
7805
7806 2004-06-06  Benjamin Otte  <otte@gnome.org>
7807
7808         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
7809           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
7810         * libs/gst/bytestream/adapter.c:
7811         * libs/gst/bytestream/adapter.h:
7812           fix copyright in header and typo in debugging category name
7813
7814 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7815
7816         * configure.ac:
7817           bump nano to cvs
7818
7819 === release 0.8.3 ===
7820
7821 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7822
7823         * configure.ac:
7824           update libtool versioning
7825           do a new release
7826         * docs/gst/tmpl/gstelement.sgml:
7827         * docs/gst/tmpl/gsttypes.sgml:
7828         * gst/gstinfo.c: (_gst_debug_init):
7829           put back GST_CAT_DATAFLOW to fix API breakage
7830
7831 2004-06-04  David Schleef  <ds@schleef.org>
7832
7833         * autogen.sh: Add a temporary 'env' to test buildbot problems.
7834
7835 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7836
7837         * configure.ac:
7838           bump nano to cvs
7839
7840 === release 0.8.2 ===
7841
7842 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7843
7844         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
7845           check GST_DEBUG environment variable which is parsed the same way
7846           as --gst-debug=
7847
7848 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7849
7850         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
7851                             gstmd5sink.c gstshaper.c gsttee.c
7852                             gsttypefindelement.c
7853         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
7854
7855           - removing trailing commas at end of enums
7856             it is correct C99 code but C90 compilers would complain
7857             (AIX, Forte, ...)
7858             ('should' fix #143290, at least partially)
7859
7860 2004-05-27  Wim Taymans  <wim@fluendo.com>
7861
7862         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
7863         (chain_group_set_enabled), (create_group), (add_to_group),
7864         (merge_groups), (setup_group_scheduler), (group_elements),
7865         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
7866         Don't try to follow the pad connections with other groups
7867         when a loop based element is added to the scheduler because
7868         the bin will inform the scheduler about the pad links a little
7869         later.
7870
7871 2004-05-27  Wim Taymans  <wim@fluendo.com>
7872
7873         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7874         (remove_from_chain), (chain_group_set_enabled),
7875         (setup_group_scheduler), (group_element_set_enabled),
7876         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
7877         (gst_opt_scheduler_show):
7878         Elements without a group can do a state change as well, just wait
7879         with the setup of the scheduling function when it is added to a
7880         chain.
7881
7882 2004-05-27  Wim Taymans  <wim@fluendo.com>
7883
7884         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7885         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
7886         (merge_groups), (setup_group_scheduler),
7887         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
7888         (gst_opt_scheduler_show):
7889         Fixes to maintain internal consistency of the scheduler data
7890         structures. 
7891          - adding an enabled group to a chain should increment the
7892            number of enabled elements in that chain.
7893          - removing an enabled group from a chain could disable the
7894            chain.
7895          - removing a disabled group from a chain could enable the
7896            chain.
7897          - add g_assert when internal inconsistency is detected.
7898          - adding an element to a group could increase the number of
7899            links this group has with other groups.
7900          - merging two groups also merges the chains.
7901          - also show group links in the _show method.
7902            
7903
7904 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7905
7906         * gst/gstcaps.c: (gst_caps_structure_simplify):
7907           don't print error messages when there is no error
7908         * gst/gstvalue.c: (gst_value_compare_int_range):
7909           compare the second value, too
7910         * testsuite/caps/Makefile.am:
7911         * testsuite/caps/random.c: (assert_on_error), (main):
7912           add tests to make sure the two things above are checked for
7913
7914 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
7915
7916         * configure.ac:
7917         * libs/gst/dataprotocol/Makefile.am:
7918         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
7919         * libs/gst/dataprotocol/dataprotocol.h:
7920           wrap header in GST_ENABLE_NEW.  make code use it
7921
7922 2004-05-23  Johan Dahlin  <johan@gnome.org>
7923
7924         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
7925         so verbose and print GstElement signal names all the time.
7926
7927 2004-05-22  David Schleef  <ds@schleef.org>
7928
7929         * gst/registries/gstxmlregistry.c:
7930         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
7931         (bug #142957)
7932
7933 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
7934
7935         * configure.ac:
7936           scrub cflags for glib2 so gcc doesn't complain when glib is in
7937           /usr/local
7938
7939 2004-05-21  Johan Dahlin  <johan@gnome.org>
7940
7941         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
7942         __GNUC__, patch from Brian Cameron, fixes bug #142804
7943
7944 2004-05-20  David Schleef  <ds@schleef.org>
7945
7946         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
7947         comparison code.  (bug #142819)
7948
7949 2004-05-20  Wim Taymans  <wim@fluendo.com>
7950
7951         * gst/gstbuffer.c: (gst_buffer_default_copy):
7952         * gst/gstbuffer.h:
7953         Added Comment to a flag.
7954         copy relevant flags in _buffer_copy.
7955
7956 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7957
7958         reviewed by: Wim Taymans <wim at fluendo dot com>
7959
7960         * gst/gstbuffer.h:
7961           add GST_BUFFER_IN_CAPS buffer flag
7962         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7963         (gst_structure_parse_any_list), (gst_structure_parse_list),
7964         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
7965         * gst/gstvalue.c: (gst_value_serialize_any_list),
7966         (gst_value_transform_any_list_string),
7967         (gst_value_list_prepend_value), (gst_value_list_append_value),
7968         (gst_value_list_get_size), (gst_value_list_get_value),
7969         (gst_value_transform_list_string),
7970         (gst_value_transform_fixed_list_string),
7971         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
7972         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
7973         (_gst_value_initialize):
7974         * gst/gstvalue.h:
7975           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
7976           < , > as a format.
7977         * testsuite/caps/string-conversions.c: (main):
7978           add regression tests for < >
7979
7980 2004-05-20  Johan Dahlin  <johan@gnome.org>
7981
7982         * docs/gst/Makefile.am (all-local): Re-add
7983
7984 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7985
7986         * docs/gst/Makefile.am:
7987         * docs/gst/gstreamer-docs.sgml:
7988         * docs/libs/Makefile.am:
7989         * docs/libs/gstreamer-libs-docs.sgml:
7990           fix distcheck issues
7991
7992 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7993
7994         * libs/gst/dataprotocol/Makefile.am:
7995           add to autotest
7996
7997 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7998
7999         * libs/gst/dataprotocol/Makefile.am:
8000         * libs/gst/dataprotocol/dataprotocol.c:
8001         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8002         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8003         * libs/gst/dataprotocol/dp-private.h:
8004           use GST macros to read/write fixed length ints
8005           add some more asserts
8006
8007 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8008
8009         * docs/libs/gstreamer-libs-docs.sgml:
8010         * docs/libs/gstreamer-libs-sections.txt:
8011           remove idct and putbits
8012         * configure.ac:
8013         * docs/libs/tmpl/gstdataprotocol.sgml:
8014         * libs/gst/Makefile.am:
8015         * libs/gst/dataprotocol/Makefile.am:
8016         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8017         (buffer_test), (caps_test), (event_test), (main):
8018         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8019         (gst_dp_dump_byte_array), (gst_dp_init),
8020         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8021         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8022         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8023         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8024         (gst_dp_validate_header), (gst_dp_validate_payload),
8025         (gst_dp_validate_packet), (plugin_init):
8026         * libs/gst/dataprotocol/dataprotocol.h:
8027         * libs/gst/dataprotocol/dp-private.h:
8028           add dataprotocol
8029
8030 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8031
8032         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8033           fix int variable deserialization and add a helper so we can actually
8034           debug this.
8035
8036 2004-05-18  David Schleef  <ds@schleef.org>
8037
8038         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8039           argv[0].  Calling yourself is probably not the best way to
8040           construct a test like this, btw.
8041
8042 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8043
8044         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8045           don't claim to be more intelligent than a scheduler when the
8046           scheduler claims the pipeline is stopped
8047         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8048         (safe_cothread_destroy),
8049         (gst_entry_scheduler_remove_all_cothreads),
8050         (gst_entry_scheduler_reset), (_remove_cothread),
8051         (gst_entry_scheduler_state_transition):
8052           hold off cothread destruction if we're not in main cothread
8053         * configure.ac:
8054         * testsuite/Makefile.am:
8055           add new test dir
8056         * testsuite/schedulers/.cvsignore:
8057         * testsuite/schedulers/Makefile.am:
8058           add tests
8059         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8060           check relinking and adding/removing elements from a running pipeline
8061         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8062           check unlinking in a running pipeline
8063         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8064           check unreffing a running pipeline
8065         * testsuite/schedulers/useless_iteration.c: (main):
8066           check iterating a pipeline that contains running threads works
8067
8068 2004-05-18  David Schleef  <ds@schleef.org>
8069
8070         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8071           is false.
8072
8073 2004-05-18  Wim Taymans  <wim@fluendo.com>
8074
8075         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8076         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8077         Fixed an error introduced with patch for 1.63. When setting
8078         a get based element as the entry point in a group, make sure
8079         to mark the group as GET based.
8080
8081 2004-05-18  Wim Taymans  <wim@fluendo.com>
8082
8083         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8084         (setup_group_scheduler), (loop_group_schedule_function),
8085         (gst_opt_scheduler_pad_link):
8086         Added some more debug info and fixed a bug where the group
8087         type was set to LOOP but it was in fact unknown.
8088
8089 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8090
8091         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8092           make resetting scheduler work twice in a row
8093
8094 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8095
8096         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8097         (CREATE_USERIALIZATION), (_gst_value_initialize),
8098         (gst_value_compare_float), (gst_value_serialize_float),
8099         (gst_value_deserialize_float), (gst_value_compare_enum),
8100         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8101           add serialization and comparison functions for long, int64, enum and
8102           float values
8103         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8104           use best serialization function in type hierarchy instead of only a
8105           matching one. This is required for enums to work.
8106         * gst/parse/grammar.y:
8107           use gst_caps_deserialize
8108         * testsuite/parse/Makefile.am:
8109           parse1 now works
8110         * testsuite/parse/parse1.c: (main):
8111           remove aggregator check, aggregator is broken, this test works now
8112           but fails because of bug #138012
8113         * testsuite/parse/parse2.c: (main):
8114           s/xvideosink/xvimagesink - this test looks a lot like we should
8115           disable it
8116
8117 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8118
8119         * gst/gstelement.c: (gst_element_class_init):
8120           whoops, store the signal id correctly
8121         * gst/schedulers/gstbasicscheduler.c:
8122         (gst_basic_scheduler_chain_wrapper):
8123           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8124           chain function isn't linked
8125
8126 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8127         * configure.ac:
8128         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8129         support until we decide where the flags should be used
8130         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8131         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8132         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8133         Output refused caps in the debug info
8134
8135 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8136
8137         * gst/elements/gstidentity.c: (gst_identity_chain):
8138           add duration debug
8139         * gst/gstinfo.c: (gst_debug_log_default):
8140           add timestamp
8141
8142 2004-05-13  Benjamin Otte  <otte@gnome.org>
8143
8144         * gst/gstpipeline.c: (gst_pipeline_dispose),
8145         (gst_pipeline_change_state):
8146           call gst_scheduler_reset on dispose (fixes #141416)
8147
8148 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8149
8150         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8151           compute mapsize correctly
8152         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8153           use correct datatypes when calling a varargs function
8154         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8155           push a DISCONT event as first thing
8156         * gst/gst_private.h:
8157         * gst/gstinfo.c: (_gst_debug_init):
8158           remove GST_DATAFLOW debugging category
8159         * gst/gstbin.c: (gst_bin_iterate):
8160           use GST_SCHEDULING category
8161         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8162         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8163         (gst_pad_call_get_function):
8164           add GST_DATAFLOW to easily track flow of buffers or events.
8165         * gst/gstqueue.c: (gst_queue_get_type),
8166         (gst_queue_handle_pending_events), (gst_queue_chain),
8167         (gst_queue_get), (gst_queue_handle_src_event):
8168           use own static debugging category GST_DATAFLOW for dataflow,
8169           use DEBUG category for showing which path events go, use LOG
8170           category for buffers.
8171
8172 2004-05-10  David Schleef  <ds@schleef.org>
8173
8174         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8175
8176 2004-05-10  David Schleef  <ds@schleef.org>
8177
8178         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8179         symbols, because otherwise we don't know what they are.  Thanks,
8180         the GStreamer team.
8181         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8182
8183 2004-05-10  David Schleef  <ds@schleef.org>
8184
8185         (from Steve Lhomme)
8186         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8187         are deleted.  Fix.
8188         * win32/Makefile.inspect:
8189         * win32/Makefile.launch:
8190         * win32/Makefile.register:
8191
8192 2004-05-10  David Schleef  <ds@schleef.org>
8193
8194         * gst/gstinfo.h: Add missing inline function.
8195         * gst/gsttrace.c: add include
8196         * gst/parse/grammar.y: remove unused code
8197         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8198         more portable.
8199         * tools/gst-register.c: wrap unistd.h
8200         
8201         More additions/fixes from Steve for the MSVC build.
8202         * win32/GStreamer.vcproj:
8203         * win32/Makefile:
8204         * win32/Makefile.inspect:
8205         * win32/Makefile.launch:
8206         * win32/Makefile.register:
8207         * win32/README.txt:
8208         * win32/gst-inspect.vcproj:
8209         * win32/gst-launch.vcproj:
8210         * win32/gst-register.vcproj:
8211         * win32/gstbytestream.def:
8212         * win32/gstbytestream.vcproj:
8213         * win32/gstconfig.h:
8214         * win32/gstelements.def:
8215         * win32/gstelements.vcproj:
8216         * win32/gstenumtypes.c:
8217         * win32/gstenumtypes.h:
8218         * win32/gstoptimalscheduler.def:
8219         * win32/gstoptimalscheduler.vcproj:
8220         * win32/gstreamer.def:
8221         * win32/gstspider.def:
8222         * win32/gstspider.vcproj:
8223         * win32/gstversion.h:
8224         * win32/msvc71.sln:
8225
8226 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8227
8228         * gst/gstelement.c: (gst_element_class_init),
8229         (gst_element_no_more_pads):
8230         * gst/gstelement.h:
8231           add gst_element_no_more_pads and the "no-more-pads" signal
8232
8233 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8234
8235         * gst/gstregistry.c: (gst_registry_add_plugin):
8236           refuse to add plugins when a plugin with same name is already
8237           registered. Fixes a bunch of "How to remove plugins?" issues.
8238           May lead to other problems though, let's test
8239
8240 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8241
8242         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8243         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8244         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8245
8246 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8247
8248         * tests/Makefile.am: fix am16 issue
8249
8250 2004-05-09  Benjamin Otte  <otte@gnome.org>
8251
8252         * libs/gst/bytestream/Makefile.am:
8253           we should indeed add .c files to makefiles or they won't be built
8254           (d'oh)
8255
8256 2004-05-08  Benjamin Otte  <otte@gnome.org>
8257
8258         * gst/gstpad.c: (gst_pad_proxy_fixate):
8259           really reduce the set of caps
8260
8261 2004-05-08  Benjamin Otte  <otte@gnome.org>
8262
8263         * tests/Makefile.am:
8264         * tests/spidey_bench.c: (handoff), (main):
8265           add benchmark to test how long spider needs to create a pipeline
8266
8267 2004-05-08  Benjamin Otte  <otte@gnome.org>
8268
8269         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8270           mark links as unengaged when unnegotiating instead of deactivating.
8271           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8272
8273 2004-05-08  Benjamin Otte  <otte@gnome.org>
8274
8275         * docs/manual/helloworld.xml:
8276           s/audiosink/osssink (patch by Patrick Guimond)
8277
8278 2004-05-07  David Schleef  <ds@schleef.org>
8279
8280         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8281         since it contains important stuff.
8282
8283 2004-05-07  David Schleef  <ds@schleef.org>
8284
8285         * testsuite/caps/caps.c: (test3), (main): A check for appending
8286         ANY caps.
8287
8288 2004-05-07  David Schleef  <ds@schleef.org>
8289
8290         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8291         which may contain commas.  Fixes detection of -Wa,-mregnames
8292
8293 2004-05-06  David Schleef  <ds@schleef.org>
8294
8295         Changes to handle compilers that don't have variadic macro
8296         support.  In particular, glib headers define some inlines
8297         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8298         builds.
8299         * gst/Makefile.am:
8300         * gst/cothreads.c:
8301         * gst/elements/gstfdsink.c:
8302         * gst/elements/gstfdsrc.c:
8303         * gst/elements/gstfilesink.c:
8304         * gst/elements/gstfilesrc.c:
8305         * gst/gst_private.h:
8306         * gst/gstatomic.c:
8307         * gst/gstcaps.c: (gst_caps_append):
8308         * gst/gstcpu.c: (gst_cpuid_i386):
8309         * gst/gstelement.c:
8310         * gst/gsterror.c:
8311         * gst/gstfilter.c:
8312         * gst/gstinfo.h:
8313         * gst/gstprobe.c:
8314         * gst/gstquery.c:
8315         * gst/gstregistry.c:
8316         * gst/gststructure.c:
8317         * gst/gsttaginterface.c:
8318         * gst/gsttrace.c: (gst_trace_new):
8319         * gst/gsttrashstack.c:
8320         * gst/gsturi.c:
8321         * gst/gstvalue.c:
8322         * gst/parse/grammar.y:
8323         * gst/parse/parse.l:
8324         * tools/gst-inspect.c: (main):
8325         * tools/gst-launch.c: (main):
8326         * tools/gst-xmlinspect.c: (PUT_STRING):
8327
8328 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8329
8330         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8331         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8332         * gst/elements/gstfilesrc.h:
8333           send NEW_MEDIA events correctly
8334         * gst/elements/gsttypefindelement.c: (start_typefinding),
8335         (gst_type_find_element_handle_event):
8336           restart typefinding when we get a NEW_MEDIA event
8337         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8338         (gst_bin_dispose):
8339           don't die when someone removes elements in callbacks
8340         * gst/gstelement.c: (gst_element_change_state):
8341           improve debugging
8342         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8343           we need a NEW_MEDIA event to engage a link
8344         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8345           don't g_print debugging stuff
8346         * testsuite/caps/simplify.c: (check_caps):
8347
8348 2004-05-04  Benjamin Otte  <otte@gnome.org>
8349
8350         * gst/parse/grammar.y:
8351           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8352
8353 2004-05-04  Benjamin Otte  <otte@gnome.org>
8354
8355         * testsuite/caps/renegotiate.c: (main):
8356           improve output in error case
8357
8358 2004-05-04  Benjamin Otte  <otte@gnome.org>
8359
8360         * gst/parse/grammar.y:
8361           fix assert to not trigger when there's no error argument
8362         * gst/parse/parse.l:
8363           fix definition of caps to allow more than two structures
8364         * testsuite/caps/Makefile.am:
8365         * testsuite/caps/renegotiate.c: (main):
8366           it's sinesrc and works in that case
8367
8368 2004-05-04  Wim Taymans  <wim@fluendo.com>
8369
8370         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8371         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8372         when removing an element from a group, we always need to
8373         decrement the link count that this group had with other 
8374         groups through the element.
8375         added an extra assert to catch inconsistencies when decrementing
8376         the link count.
8377
8378 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8379
8380         * configure.ac:
8381         * docs/gst/Makefile.am:
8382         * docs/gst/gstreamer-sections.txt:
8383         * docs/gst/tmpl/gstcompat.sgml:
8384         * examples/appreader/Makefile.am:
8385         * examples/cutter/Makefile.am:
8386         * examples/events/Makefile.am:
8387         * examples/helloworld/Makefile.am:
8388         * examples/helloworld2/Makefile.am:
8389         * examples/launch/Makefile.am:
8390         * examples/manual/Makefile.am:
8391         * examples/mixer/Makefile.am:
8392         * examples/pingpong/Makefile.am:
8393         * examples/plugins/Makefile.am:
8394         * examples/queue/Makefile.am:
8395         * examples/queue2/Makefile.am:
8396         * examples/queue3/Makefile.am:
8397         * examples/queue4/Makefile.am:
8398         * examples/retag/Makefile.am:
8399         * examples/thread/Makefile.am:
8400         * examples/typefind/Makefile.am:
8401         * examples/xml/Makefile.am:
8402         * gst/Makefile.am:
8403         * gst/autoplug/Makefile.am:
8404         * gst/elements/Makefile.am:
8405         * gst/gstcompat.h:
8406         * gst/indexers/Makefile.am:
8407         * gst/parse/Makefile.am:
8408         * gst/registries/Makefile.am:
8409         * gst/schedulers/Makefile.am:
8410         * libs/gst/bytestream/Makefile.am:
8411         * libs/gst/control/Makefile.am:
8412         * libs/gst/getbits/Makefile.am:
8413         * po/af.po:
8414         * po/az.po:
8415         * po/en_GB.po:
8416         * po/fr.po:
8417         * po/nl.po:
8418         * po/sr.po:
8419         * po/sv.po:
8420         * po/tr.po:
8421         * po/uk.po:
8422         * tests/Makefile.am:
8423         * tests/bufspeed/Makefile.am:
8424         * tests/instantiate/Makefile.am:
8425         * tests/memchunk/Makefile.am:
8426         * tests/muxing/Makefile.am:
8427         * tests/negotiation/Makefile.am:
8428         * tests/probes/Makefile.am:
8429         * tests/sched/Makefile.am:
8430         * tests/seeking/Makefile.am:
8431         * tests/threadstate/Makefile.am:
8432         * testsuite/caps/Makefile.am:
8433         * testsuite/cleanup/Makefile.am:
8434         * testsuite/dlopen/Makefile.am:
8435         * testsuite/dynparams/Makefile.am:
8436         * testsuite/plugin/Makefile.am:
8437         * testsuite/states/Makefile.am:
8438         * tools/Makefile.am:
8439           reorganize compile/link flags to be consistent
8440           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8441
8442 2004-05-04  David Schleef  <ds@schleef.org>
8443
8444         The "once more, with feeling" check-in.
8445         * testsuite/caps/Makefile.am: dist caps_strings
8446         * testsuite/caps/renegotiate.c: (main): This test triggers a
8447           segfault in the core.  Marking as failing.
8448
8449 2004-05-03  David Schleef  <ds@schleef.org>
8450
8451         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8452           by the build bots.
8453         * testsuite/caps/renegotiate.c: (main): Same.
8454
8455 2004-05-03  David Schleef  <ds@schleef.org>
8456
8457         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8458
8459 2004-05-03  David Schleef  <ds@schleef.org>
8460
8461         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8462           variable to find our source file.
8463
8464 2004-05-03  David Schleef  <ds@schleef.org>
8465
8466         * configure.ac:  Link plugins with libgstreamer and dependent
8467           libraries
8468         * testsuite/caps/Makefile.am:
8469         * testsuite/caps/caps_strings:
8470         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8471           through a file of caps strings and test each one
8472
8473 2004-05-04  Benjamin Otte  <otte@gnome.org>
8474
8475         * libs/gst/bytestream/Makefile.am:
8476         * libs/gst/bytestream/adapter.c: 
8477         * libs/gst/bytestream/adapter.h:
8478           add GstAdapter, similar to bytestream, but doesn't require ugly event
8479           handling or uglier loopbased elements
8480
8481 2004-05-03  David Schleef  <ds@schleef.org>
8482
8483         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8484         * testsuite/caps/erathostenes.c:
8485         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8486
8487 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8488
8489         * docs/pwg/pwg.xml:
8490           remove hardcoded stylesheet path (duh)
8491         * docs/random/release:
8492         * docs/gst/gstreamer-sections.txt:
8493         * gst/Makefile.am:
8494         * gst/gst.h:
8495         * gst/gst_private.h:
8496         * gst/gstcaps.c:
8497         * gst/gstevent.c:
8498         * gst/gstformat.c:
8499         * gst/gstinfo.c:
8500         * gst/gstinfo.h:
8501         * gst/gstinterface.c:
8502         * gst/gstmemchunk.c:
8503         * gst/gstprobe.c:
8504         * gst/gstquery.c:
8505         * gst/gstregistry.c:
8506         * gst/gstregistrypool.c:
8507         * gst/gststructure.c:
8508         * gst/gsttaginterface.c:
8509         * gst/gstthread.c:
8510         * gst/gsttrace.c:
8511         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8512         * gst/gsturi.c:
8513         * gst/gstvalue.c:
8514           deprecate gst_info; remove gstlog.h
8515    
8516
8517 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8518
8519         * Makefile.am:
8520         * po/en_GB.po:
8521         * po/sv.po:
8522         * po/uk.po:
8523           updated translations
8524
8525 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8526
8527         * gst/gstbin.c: (gst_bin_dispose):
8528           better debugging
8529
8530 2004-05-03  Johan Dahlin  <johan@gnome.org>
8531
8532         * gst/schedulers/gstoptimalscheduler.c
8533         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8534         really is a GstElement. Avoids critical when running gst-launch -v
8535         and a oggdemux/decoding pipeline.
8536
8537 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8538
8539         * docs/gst/tmpl/gstpipeline.sgml :
8540         * docs/manual/elements-api.xml :
8541                 doc fix by Patrick Guimond (Protector) from devel ML
8542                 reviewed by ronald
8543
8544 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8545
8546         * docs/gst/Makefile.am :
8547         * docs/libs/Makefile.am :
8548                 apply a patch from Arwed v. Merkatz so that gtk-doc
8549                 generated docs install (same for .devhelp file)
8550                 (fixes part 1 of #138836)
8551
8552 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8553
8554         * docs/faq/dependencies.xml: typo
8555         * docs/faq/getting.xml :
8556             - fix download URL for new gstreamer site
8557             - hide sf.net download page as latest version aren't there
8558             - fix apt URLs
8559             - fill "get via CVS" paragraph (link to dev page on the site)
8560         * docs/faq/general.xml:
8561             hide status tables as they no more exists
8562             change case on plugins license file to reflect reality
8563         * docs/faq/troubleshooting.xml:
8564             remove the wiki question/answer as there is no more wiki
8565
8566 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8567
8568         * gst/gsterror.h:
8569           include the headers needed for declarations used in this header
8570
8571 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8572
8573         * docs/random/uraeus/gstreamer_and_midi.txt :
8574           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8575           (fixes #132288)
8576
8577 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8578
8579         reviewed by Benjamin Otte  <otte@gnome.org>
8580
8581         * gst/schedulers/gthread-cothreads.h:
8582           free allocated data for main cothread, too when destroying context
8583           (fixes #141417)
8584
8585 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8586
8587         * docs/manual/goals.xml : remove duplicated paragraph at end 
8588         of doc page (fixes #141448)
8589
8590 2004-04-29  David Schleef  <ds@schleef.org>
8591
8592         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8593         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8594
8595 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8596
8597         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8598           fix property
8599         * gst/gstcaps.c:
8600           fix doc string
8601         * po/POTFILES.in:
8602           rename typefind source file
8603
8604 2004-04-28  David Schleef  <ds@schleef.org>
8605
8606         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8607         * win32/GStreamer.vcproj:
8608         * win32/Makefile:
8609         * win32/config.h:
8610         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8611         (_trewinddir), (_ttelldir), (_tseekdir):
8612         * win32/dirent.h:
8613         * win32/gst-inspect.vcproj:
8614         * win32/gst-launch.vcproj:
8615         * win32/gst-register.vcproj:
8616         * win32/gstbytestream.vcproj:
8617         * win32/gstelements.vcproj:
8618         * win32/gstoptimalscheduler.vcproj:
8619         * win32/gstspider.vcproj:
8620         * win32/gtchar.h:
8621         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8622         * win32/mman.h:
8623         * win32/mman.inl:
8624         * win32/msvc71.sln:
8625
8626 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8627
8628         * gst/gst.c: (init_post):
8629         * gst/gstinfo.c:
8630           remove useless _gst_progname stuff
8631         * tools/gst-inspect.c: (print_field), (print_caps):
8632           improve caps output
8633
8634 2004-04-28  David Schleef  <ds@schleef.org>
8635
8636         Disable parsing of a lot of files that aren't part of the
8637         exported API.  Move corresponding template files to old/,
8638         waiting for removal when they don't contain anything
8639         interesting.
8640         * docs/gst/Makefile.am:
8641         * docs/gst/gstreamer-sections.txt:
8642         * docs/gst/tmpl/cothreads.sgml:
8643         * docs/gst/tmpl/cothreads_compat.sgml:
8644         * docs/gst/tmpl/gettext.sgml:
8645         * docs/gst/tmpl/gobject2gtk.sgml:
8646         * docs/gst/tmpl/grammar.tab.sgml:
8647         * docs/gst/tmpl/gst-i18n-app.sgml:
8648         * docs/gst/tmpl/gst-i18n-lib.sgml:
8649         * docs/gst/tmpl/gst_private.sgml:
8650         * docs/gst/tmpl/gstaggregator.sgml:
8651         * docs/gst/tmpl/gstarch.sgml:
8652         * docs/gst/tmpl/gstatomic_impl.sgml:
8653         * docs/gst/tmpl/gstbufferstore.sgml:
8654         * docs/gst/tmpl/gstdata_private.sgml:
8655         * docs/gst/tmpl/gstdisksink.sgml:
8656         * docs/gst/tmpl/gstdisksrc.sgml:
8657         * docs/gst/tmpl/gstelementfactory.sgml:
8658         * docs/gst/tmpl/gstextratypes.sgml:
8659         * docs/gst/tmpl/gstfakesink.sgml:
8660         * docs/gst/tmpl/gstfakesrc.sgml:
8661         * docs/gst/tmpl/gstfdsink.sgml:
8662         * docs/gst/tmpl/gstfdsrc.sgml:
8663         * docs/gst/tmpl/gstfilesink.sgml:
8664         * docs/gst/tmpl/gstfilesrc.sgml:
8665         * docs/gst/tmpl/gsthttpsrc.sgml:
8666         * docs/gst/tmpl/gstidentity.sgml:
8667         * docs/gst/tmpl/gstindexfactory.sgml:
8668         * docs/gst/tmpl/gstmarshal.sgml:
8669         * docs/gst/tmpl/gstmd5sink.sgml:
8670         * docs/gst/tmpl/gstmultidisksrc.sgml:
8671         * docs/gst/tmpl/gstmultifilesrc.sgml:
8672         * docs/gst/tmpl/gstpadtemplate.sgml:
8673         * docs/gst/tmpl/gstpipefilter.sgml:
8674         * docs/gst/tmpl/gstschedulerfactory.sgml:
8675         * docs/gst/tmpl/gstsearchfuncs.sgml:
8676         * docs/gst/tmpl/gstshaper.sgml:
8677         * docs/gst/tmpl/gstspider.sgml:
8678         * docs/gst/tmpl/gstspideridentity.sgml:
8679         * docs/gst/tmpl/gststatistics.sgml:
8680         * docs/gst/tmpl/gsttee.sgml:
8681         * docs/gst/tmpl/gsttimecache.sgml:
8682         * docs/gst/tmpl/gsttypefind.sgml:
8683         * docs/gst/tmpl/gsttypefindfactory.sgml:
8684         * docs/gst/tmpl/gstxmlregistry.sgml:
8685         * docs/gst/tmpl/gthread-cothreads.sgml:
8686         * docs/gst/tmpl/old/cothreads.sgml:
8687         * docs/gst/tmpl/old/cothreads_compat.sgml:
8688         * docs/gst/tmpl/old/gettext.sgml:
8689         * docs/gst/tmpl/old/gobject2gtk.sgml:
8690         * docs/gst/tmpl/old/grammar.tab.sgml:
8691         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8692         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8693         * docs/gst/tmpl/old/gst_private.sgml:
8694         * docs/gst/tmpl/old/gstaggregator.sgml:
8695         * docs/gst/tmpl/old/gstarch.sgml:
8696         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8697         * docs/gst/tmpl/old/gstbufferstore.sgml:
8698         * docs/gst/tmpl/old/gstdata_private.sgml:
8699         * docs/gst/tmpl/old/gstdisksink.sgml:
8700         * docs/gst/tmpl/old/gstdisksrc.sgml:
8701         * docs/gst/tmpl/old/gstelementfactory.sgml:
8702         * docs/gst/tmpl/old/gstextratypes.sgml:
8703         * docs/gst/tmpl/old/gstfakesink.sgml:
8704         * docs/gst/tmpl/old/gstfakesrc.sgml:
8705         * docs/gst/tmpl/old/gstfdsink.sgml:
8706         * docs/gst/tmpl/old/gstfdsrc.sgml:
8707         * docs/gst/tmpl/old/gstfilesink.sgml:
8708         * docs/gst/tmpl/old/gstfilesrc.sgml:
8709         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8710         * docs/gst/tmpl/old/gstidentity.sgml:
8711         * docs/gst/tmpl/old/gstindexfactory.sgml:
8712         * docs/gst/tmpl/old/gstmarshal.sgml:
8713         * docs/gst/tmpl/old/gstmd5sink.sgml:
8714         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8715         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8716         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8717         * docs/gst/tmpl/old/gstpipefilter.sgml:
8718         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8719         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8720         * docs/gst/tmpl/old/gstshaper.sgml:
8721         * docs/gst/tmpl/old/gstspider.sgml:
8722         * docs/gst/tmpl/old/gstspideridentity.sgml:
8723         * docs/gst/tmpl/old/gststatistics.sgml:
8724         * docs/gst/tmpl/old/gsttee.sgml:
8725         * docs/gst/tmpl/old/gsttimecache.sgml:
8726         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8727         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8728         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8729         * docs/gst/tmpl/old/types.sgml:
8730         * docs/gst/tmpl/types.sgml:
8731
8732         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8733         gtkdoc-scan doesn't like files with the same name in different
8734         directories.
8735         * gst/elements/Makefile.am:
8736         * gst/elements/gstelements.c:
8737         * gst/elements/gsttypefind.c: 
8738         * gst/elements/gsttypefind.h:
8739         * gst/elements/gsttypefindelement.c:
8740         * gst/elements/gsttypefindelement.h:
8741
8742 2004-04-28  David Schleef  <ds@schleef.org>
8743
8744         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8745         patch (bug #141317):
8746         * gst/gst-i18n-lib.h: Allow disabling gettext.
8747         * gst/gstatomic_impl.h: disable warning when it's dumb.
8748         * gst/gstclock.c: fix include
8749         * gst/gstcompat.h: fix variadic macro
8750         * gst/gstinfo.c: fix include
8751         * gst/gstmacros.h: add defines for inlines on MSVC
8752         * gst/gstplugin.c: fix includes
8753         * gst/gstregistry.c: fix includes
8754         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
8755         * gst/gstsystemclock.c: fix include
8756         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
8757         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
8758         * gst/registries/gstxmlregistry.c:
8759         (gst_xml_registry_parse_element_factory): fix use of non-portable
8760         functions
8761         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
8762         * libs/gst/control/dparammanager.h: same
8763
8764 2004-04-28  David Schleef  <ds@schleef.org>
8765
8766         Move a bunch of unused files to old/ with names that are
8767         not case-insensitive-unique.  These files still contain some
8768         useful information that needs to be merged into gstbin.sgml,
8769         etc., so they shouldn't be deleted yet.
8770         * docs/gst/tmpl/GstBin.sgml:
8771         * docs/gst/tmpl/GstBuffer.sgml:
8772         * docs/gst/tmpl/GstCaps.sgml:
8773         * docs/gst/tmpl/GstClock.sgml:
8774         * docs/gst/tmpl/GstCompat.sgml:
8775         * docs/gst/tmpl/GstData.sgml:
8776         * docs/gst/tmpl/GstElement.sgml:
8777         * docs/gst/tmpl/GstEvent.sgml:
8778         * docs/gst/tmpl/GstIndex.sgml:
8779         * docs/gst/tmpl/GstStructure.sgml:
8780         * docs/gst/tmpl/GstTag.sgml:
8781         * docs/gst/tmpl/old/GstBin.sgml:
8782         * docs/gst/tmpl/old/GstBuffer.sgml:
8783         * docs/gst/tmpl/old/GstCaps.sgml:
8784         * docs/gst/tmpl/old/GstClock.sgml:
8785         * docs/gst/tmpl/old/GstCompat.sgml:
8786         * docs/gst/tmpl/old/GstData.sgml:
8787         * docs/gst/tmpl/old/GstElement.sgml:
8788         * docs/gst/tmpl/old/GstEvent.sgml:
8789         * docs/gst/tmpl/old/GstIndex.sgml:
8790         * docs/gst/tmpl/old/GstStructure.sgml:
8791         * docs/gst/tmpl/old/GstTag.sgml:
8792
8793 2004-04-28  David Schleef  <ds@schleef.org>
8794
8795         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
8796         (gst_caps_append), (gst_caps_append_structure),
8797         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
8798         (gst_caps_set_simple), (gst_caps_set_simple_valist),
8799         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
8800         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
8801         (gst_caps_intersect), (gst_caps_normalize),
8802         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
8803         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
8804         * gst/gstcaps.h: use GST_IS_CAPS().
8805
8806 2004-04-26  David Schleef  <ds@schleef.org>
8807
8808         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
8809         assembly.  gcc doesn't handle it correctly. (bug #141083)
8810         * gst/gsttrashstack.h: same
8811
8812 2004-04-25  Benjamin Otte  <otte@gnome.org>
8813
8814         * gst/gstelement.c: (gst_element_change_state):
8815           fix assertion to do an int comparison
8816
8817 2004-04-25  Benjamin Otte  <otte@gnome.org>
8818
8819         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8820           better debugging output on error
8821
8822 2004-04-25  Benjamin Otte  <otte@gnome.org>
8823
8824         * gst/gstcaps.c: (gst_caps_subtract):
8825           fix memleak
8826
8827 2004-04-23  Benjamin Otte  <otte@gnome.org>
8828
8829         * gst/gstvalue.c: (gst_value_compare_buffer),
8830         (_gst_value_initialize):
8831           add comparison function for buffers
8832
8833 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8834
8835         * docs/pwg/pwg.xml:
8836           Just found out that this so-called "ima-wav" format is really
8837           just "dvi adpcm" (according to the MS WAV documentation). So
8838           renaming it. We didn't use it yet anyway.
8839
8840 2004-04-23  Benjamin Otte  <otte@gnome.org>
8841
8842         * gst/gstcaps.c: (gst_caps_is_always_compatible):
8843           call gst_caps_is_subset
8844
8845 2004-04-23  Benjamin Otte  <otte@gnome.org>
8846
8847         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
8848         (gst_caps_is_subset):
8849           add documentation
8850
8851 2004-04-23  Benjamin Otte  <otte@gnome.org>
8852           
8853         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
8854         (gst_caps_structure_subtract), (gst_caps_subtract),
8855         (gst_caps_structure_figure_out_union),
8856         (gst_caps_structure_simplify), (gst_caps_do_simplify):
8857           fix simplifying and subtracting not working correctly with optional
8858           properties
8859           solve assorted problems that make it now simplify ebven more
8860         * docs/gst/tmpl/gstcaps.sgml:
8861         * gst/gstcaps.h:
8862           make gst_caps_do_simplify return a bool to indicate if it simplified
8863         * testsuite/caps/simplify.c: (main):
8864           add more checks. The tests is quite a bit useless right now because
8865           the core is heavily simplifying itself.
8866         * testsuite/caps/caps.h:
8867           fix caps to contain all optional properties
8868
8869 2004-04-22  Benjamin Otte  <otte@gnome.org>
8870
8871         * docs/gst/tmpl/gstcaps.sgml:
8872         * docs/gst/tmpl/gstfilesrc.sgml:
8873         * docs/gst/tmpl/gststructure.sgml:
8874         * docs/gst/tmpl/gstvalue.sgml:
8875           update for recent API changes
8876         * gst/gstcaps.c: (gst_caps_do_simplify):
8877           fix to stop trying with a freed structure
8878         * gst/gstpad.c: (gst_pad_link_fixate):
8879           simplify caps
8880         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
8881           remove C++ comment
8882         * gst/gstpad.h:
8883           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
8884         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8885         (gst_structure_to_string):
8886           keep the correct type when using lists of ranges
8887         * gst/gstvalue.c: (gst_value_list_prepend_value),
8888         (gst_value_list_append_value):
8889           copy the value before adding to the list (d'oh)
8890         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
8891         (gst_value_subtract_int_range_int_range):
8892           handle overflows correctly
8893         * gst/gstvalue.c: (gst_value_subtract_from_list):
8894           fix memleak
8895         * testsuite/caps/caps.h:
8896           add a caps that caused segfaults
8897
8898 2004-04-22  Benjamin Otte  <otte@gnome.org>
8899
8900         * testsuite/refcounting/pad.c: (main):
8901           fix test
8902
8903 2004-04-22  Benjamin Otte  <otte@gnome.org>
8904
8905         * gst/gstcaps.c: (gst_caps_subtract):
8906           allow subtracting ANY and EMPTY from ANY caps
8907
8908 2004-04-22  Benjamin Otte  <otte@gnome.org>
8909
8910         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
8911         (gst_caps_union):
8912           only simplify in functions that create new caps. Simplifying in
8913           gst_caps_append breaks tests.
8914
8915 2004-04-22  Benjamin Otte  <otte@gnome.org>
8916
8917         * gst/gstcaps.c: (gst_caps_structure_simplify):
8918           unset GValue after use
8919         * gst/gstcaps.c: (gst_caps_append), 
8920         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
8921           use gst_caps_simplify (reduces registry size by 30%)
8922         * gst/gstpad.c: (gst_pad_template_new):
8923           don't allow NULL caps
8924
8925 2004-04-22  Benjamin Otte  <otte@gnome.org>
8926
8927         * docs/gst/gstreamer-sections.txt:
8928           add gst_caps_do_simplify
8929         * gst/gstcaps.c:
8930           add documentation for gst_caps_do_simplify
8931         * gst/gstvalue.h:
8932           fix typo in gst_value_register_subtract_func declaration for gst-doc
8933
8934 2004-04-22  Benjamin Otte  <otte@gnome.org>
8935
8936         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8937           fix bug when converting from empty string.
8938         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
8939         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
8940           use gst_caps_new_empty to allocate a new caps. Only that function
8941           allocates memory for caps now.
8942         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
8943         (gst_caps_remove_structure):
8944           add ability to remove one structure (but not to header yet)
8945         * gst/gstcaps.c: (gst_caps_compare_structures),
8946         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
8947         (gst_caps_structure_simplify), (gst_caps_do_simplify),
8948         * gst/gstcaps.h:
8949           add gst_caps_do_simplify that tries to simplify a caps in place.
8950           Deprecate old gst_caps_simplify function.
8951         * testsuite/caps/caps.h:
8952           add caps.h containing a common set of caps to test against.
8953         * testsuite/caps/sets.c: (check_caps), (main):
8954           use it.
8955         * testsuite/caps/.cvsignore:
8956         * testsuite/caps/Makefile.am:
8957         * testsuite/caps/simplify.c: (check_caps), (main):
8958           add test to check correctness and efficency of caps simplification.
8959
8960 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
8961
8962         reviewed by Benjamin Otte  <otte@gnome.org>
8963
8964         * gst/gstparse.c: (_gst_parse_escape):
8965           Free the GString used in _gst_parse_escape()
8966
8967 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8968
8969         * gst/gstpad.c: (gst_pad_link_negotiate):
8970           refuse to link if the link is not possible
8971         * configure.ac:
8972         * testsuite/Makefile.am:
8973         * testsuite/negotiation/.cvsignore:
8974         * testsuite/negotiation/Makefile.am:
8975         * testsuite/negotiation/pad_link.c: (main):
8976           add test that checks the above behaviour
8977
8978 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8979
8980         * docs/gst/gstreamer-sections.txt:
8981           add newly added API
8982
8983 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8984
8985         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8986         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
8987         (gst_filesrc_open_file), (gst_filesrc_close_file),
8988         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
8989         * gst/elements/gstfilesrc.h:
8990           add support for non-regular files (#140734)
8991
8992 2004-04-21  Benjamin Otte  <otte@gnome.org>
8993
8994         * gst/gstpad.c: (gst_pad_link_fixate):
8995           add sophisticated error checking code to see if fixation functions
8996           did their fixation right
8997
8998 2004-04-21  Benjamin Otte  <otte@gnome.org>
8999
9000         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9001           check for ANY caps before appending/unioning
9002         * gst/gstcaps.c: (gst_caps_is_subset),
9003         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9004         (gst_caps_structure_subtract), (gst_caps_subtract):
9005         * gst/gstcaps.h:
9006           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9007           the API. deprecate gst_caps_is_equal_fixed
9008         * gst/gstpad.c: (gst_pad_try_set_caps):
9009         * gst/gstqueue.c: (gst_queue_link):
9010           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9011         * gst/gststructure.c: (gst_structure_get_name_id):
9012         * gst/gststructure.h:
9013           add function gst_structure_get_name_id
9014         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9015         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9016         (gst_value_subtract_int_range_int_range),
9017         (gst_value_subtract_double_double_range),
9018         (gst_value_subtract_double_range_double),
9019         (gst_value_subtract_double_range_double_range),
9020         (gst_value_subtract_from_list), (gst_value_subtract_list),
9021         (gst_value_can_intersect), (gst_value_subtract),
9022         (gst_value_can_subtract), (gst_value_register_subtract_func),
9023         (_gst_value_initialize):
9024         * gst/gstvalue.h:
9025           add support for subtracting values from each other. Note that
9026           subtracting means subtracting as in set theory. Required for caps
9027           stuff above.
9028         * testsuite/caps/.cvsignore:
9029         * testsuite/caps/Makefile.am:
9030         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9031         * testsuite/caps/sets.c: (check_caps), (main):
9032         * testsuite/caps/subtract.c: (check_caps), (main):
9033           add tests for subtraction and equality code.
9034
9035 2004-04-20  David Schleef  <ds@schleef.org>
9036
9037         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9038         * gst/indexers/Makefile.am:
9039         * gst/schedulers/Makefile.am:
9040         * libs/gst/bytestream/Makefile.am:
9041         * libs/gst/control/Makefile.am:
9042         * libs/gst/getbits/Makefile.am:
9043
9044 2004-04-20  David Schleef  <ds@schleef.org>
9045
9046         * common/as-libtool.mak: Fine-tune DLL building.
9047         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9048         (like gst-plugins)
9049         * examples/plugins/Makefile.am: remove plugindir
9050         * gst/autoplug/Makefile.am: DLL building fixes
9051         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9052         Windows.
9053         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9054         * gst/indexers/Makefile.am: DLL building fixes
9055         * gst/schedulers/Makefile.am: DLL building fixes.
9056         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9057         * libs/gst/control/Makefile.am: same
9058         * libs/gst/getbits/Makefile.am: same
9059         * testsuite/Makefile.am: New dlopen directory
9060         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9061         when dlopened.
9062         * testsuite/dlopen/dlopen_gst.c: (main): same
9063         * testsuite/dlopen/loadgst.c: (do_test): same
9064
9065 2004-04-20  David Schleef  <ds@schleef.org>
9066
9067         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9068         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9069
9070 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9071
9072         * gst/gstelement.c: (gst_element_wait),
9073         (gst_element_set_time_delay), (gst_element_change_state):
9074           Use GST_TIME_*
9075
9076 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9077
9078         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9079         (gst_spider_identity_plug):
9080           improve debugging messages
9081         * gst/gstbin.c: (gst_bin_remove_func):
9082           make sure the state_change function is only called with simple state
9083           transitions
9084
9085 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9086
9087         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9088         (gst_fakesink_set_property), (gst_fakesink_chain):
9089         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9090         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9091         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9092         * gst/elements/gstidentity.c: (gst_identity_chain),
9093         (gst_identity_set_property):
9094         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9095         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9096           add warnings to _set_property for unknown arguments
9097           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9098
9099 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9100
9101         * Makefile.am:
9102         * docs/manuals.mak:
9103           add .po file download snippet
9104           fix a bug in the doc makefile
9105
9106 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9107
9108         * Makefile.am:
9109         * po/LINGUAS:
9110         * po/en_GB.po:
9111           Added en_GB translation (Gareth Owen)
9112
9113 2004-04-20  Johan Dahlin  <johan@gnome.org>
9114
9115         * gst/gstpad.c (_invent_event): Clean up
9116
9117 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9118
9119         * testsuite/caps/filtercaps.c: (main):
9120           fix test to test things correctly (caps are complicated)
9121
9122 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9123
9124         * testsuite/caps/Makefile.am:
9125         * testsuite/caps/filtercaps.c: (main):
9126           add test (that doesn't work right now, but should)
9127
9128 2004-04-19  David Schleef  <ds@schleef.org>
9129
9130         * configure.ac: Add test for allowing unaligned access.  Add define
9131         to put in gstconfig.h.
9132         * docs/gst/gstreamer-sections.txt: New symbols
9133         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9134         * docs/gst/tmpl/gstfilesrc.sgml:
9135         * docs/gst/tmpl/gstparse.sgml:
9136         * docs/gst/tmpl/gsttypes.sgml:
9137         * docs/gst/tmpl/gstutils.sgml:
9138         * docs/gst/tmpl/gstvalue.sgml:
9139         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9140         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9141         on most !i386/!powerpc architectures.  From Daniel Gazard
9142         <daniel.gazard@free.fr>.  (bug #140156)
9143         * po/af.po: Check in changes made by gettext.
9144         * po/az.po:
9145         * po/fr.po:
9146         * po/nl.po:
9147         * po/sr.po:
9148         * po/sv.po:
9149
9150 2004-04-20  Benjamin Otte  <otte@gnome.org>
9151
9152         * gst/schedulers/entryscheduler.c: 
9153         (gst_entry_scheduler_yield):
9154           refuse to yield when decoupled elements insist on doing that.
9155           At least it's better than crashing
9156
9157 2004-04-19  David Schleef  <ds@schleef.org>
9158
9159         * docs/libs/Makefile.am: Change sinclude to include
9160         * docs/gst/Makefile.am: same
9161         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9162
9163 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9164
9165         * po/LINGUAS:
9166         * po/uk.po:
9167           Added Ukrainian translation (Maxim V. Dziumanenko)
9168
9169 2004-04-19  Johan Dahlin  <johan@gnome.org>
9170
9171         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9172         checking here, do it before calling the function.
9173         Clean up, use for loops instead of while loops while iterating
9174         over lists.
9175
9176         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9177         in debug message.
9178         (gst_spider_create_and_plug): Improve debug message.
9179         General: Replace while loops which iterates over GLists with for
9180         loops. Which are much cleaner, improves readability, especially
9181         for gst_spider_identity_plug
9182
9183         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9184         fixes bug 140477
9185
9186 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9187
9188         * po/LINGUAS:
9189         * po/tr.po:
9190           Added Turkish translation (Baris Cicek)
9191
9192 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9193
9194         * docs/faq/troubleshooting.xml:
9195           Mention gst-register in the FAQ (fixes 139045).
9196
9197 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9198
9199         * docs/gst/gstreamer-sections.txt:
9200
9201 2004-04-17  Benjamin Otte  <otte@gnome.org>
9202
9203         * gst/gstelement.c: (gst_element_dispose):
9204           simplify
9205         * gst/gstpad.c: (gst_pad_call_chain_function):
9206           don't create loads of events due to bad macro usage
9207
9208 2004-04-16  David Schleef  <ds@schleef.org>
9209
9210         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9211         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9212         * gst/gstvalue.c: (gst_value_serialize_buffer),
9213         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9214         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9215         to indicate types that are fixed wrt caps or not.  Switching to
9216         this function fixes (bug #140298).
9217         * gst/gstvalue.h:
9218
9219 2004-04-16  David Schleef  <ds@schleef.org>
9220
9221         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9222         for GST_UNALIGNED_ACESS, since we essentially know which archs
9223         are ok.
9224
9225 2004-04-17  Benjamin Otte  <otte@gnome.org>
9226
9227         * docs/gst/Makefile.am:
9228           ignore gst/parse directory when building docs (fixes #140205)
9229
9230 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9231
9232         * testsuite/refcounting/mem.c: (vmsize):
9233           do error checking
9234
9235 2004-04-16  Johan Dahlin  <johan@gnome.org>
9236
9237         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9238         and gst_pad_call_get_function.
9239
9240 2004-04-15  David Schleef  <ds@schleef.org>
9241
9242         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9243         checks if we can access unaligned memory.
9244         * configure.ac: Use it.
9245
9246 2004-04-16  Benjamin Otte  <otte@gnome.org>
9247
9248         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9249         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9250         * gst/elements/gstfilesrc.h:
9251           s/seek_happened/need_discont/ and require discont before sending any
9252           data
9253
9254 2004-04-15  David Schleef  <ds@schleef.org>
9255
9256         * gst/gstvalue.c: (gst_value_serialize_buffer),
9257         (gst_value_deserialize_buffer), (_gst_value_initialize):
9258         Register these types as fundamental types. (bug #140015)
9259
9260 2004-04-16  Benjamin Otte  <otte@gnome.org>
9261
9262         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9263         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9264         (gst_pad_pull):
9265           implement enforcing discont events before buffers are passed. This
9266           allows state changes of only some elements and later correctly going
9267           on where they left off (or in short: you can now set audio sinks to
9268           NULL to release the device when the pipeline is paused)
9269         * gst/gstpad.c: (gst_pad_call_chain_function),
9270         (gst_pad_call_get_function):
9271         * gst/gstpad.h:
9272           add gst_pad_call_chain_function and gst_pad_call_get_function for
9273           scheduler interaction. They are required because of the changes
9274           above.
9275         * gst/schedulers/entryscheduler.c: (get_buffer),
9276         (gst_entry_scheduler_chain_wrapper),
9277         (gst_entry_scheduler_get_wrapper),
9278         (gst_entry_scheduler_state_transition),
9279         (gst_entry_scheduler_pad_link):
9280         * gst/schedulers/gstbasicscheduler.c:
9281         (gst_basic_scheduler_chain_wrapper),
9282         (gst_basic_scheduler_src_wrapper),
9283         (gst_basic_scheduler_chainhandler_proxy),
9284         (gst_basic_scheduler_gethandler_proxy),
9285         (gst_basic_scheduler_cothreaded_chain),
9286         (gst_basic_scheduler_chain_elements):
9287         * gst/schedulers/gstoptimalscheduler.c:
9288         (get_group_schedule_function), (pad_clear_queued),
9289         (gst_opt_scheduler_pad_link):
9290           use the new functions instead of calling get/chain-functions
9291           directly.
9292
9293 2004-04-15  David Schleef  <ds@schleef.org>
9294
9295         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9296         * docs/gst/tmpl/gstinfo.sgml: same
9297         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9298         gtk-doc put here.
9299         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9300         * examples/queue/queue.c: (main):  We iterate pipelines, not
9301         bins.  (bug #139996)
9302
9303 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9304
9305         * docs/pwg/advanced-types.xml:
9306           Add MS RLE support. Also document Qt RLE although I have no sample
9307           files for that yet. And document an extra property for ADPCM.
9308
9309 2004-04-15  David Schleef  <ds@schleef.org>
9310
9311         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9312         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9313         Windows.
9314
9315 2004-04-15  David Schleef  <ds@schleef.org>
9316
9317         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9318         symbol names to not conflict with new gstinfo.h symbols.
9319         * gst/gstinfo.h: Add inline functions for all those crazy
9320         compilers that don't know how to handle variadic macros (MSVC).
9321
9322 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9323
9324         * configure.ac: bump nano to 1
9325
9326 === release 0.8.1 ===
9327
9328 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9329
9330         * NEWS:
9331         * RELEASE:
9332         * configure.ac:
9333           releasing 0.8.1, "Snow Brigade"
9334
9335 2004-04-14  David Schleef  <ds@schleef.org>
9336
9337         * testsuite/Makefile.am: define tests_ignore
9338         * testsuite/Rules: Added new tests_ignore, which get compiled,
9339         but not run (generally because they're inconsistent or have
9340         heisenbugs).  Now we can ensure all the .c files compile in
9341         testsuite/.
9342         * testsuite/bins/Makefile.am: define tests_ignore
9343         * testsuite/bytestream/Makefile.am:
9344         * testsuite/caps/Makefile.am:
9345         * testsuite/clock/Makefile.am:
9346         * testsuite/debug/Makefile.am:
9347         * testsuite/debug/global.c: (gst_debug_log_one),
9348         (gst_debug_log_two): Fix compilation problem.
9349         * testsuite/dynparams/Makefile.am:
9350         * testsuite/elements/Makefile.am:
9351         * testsuite/ghostpads/Makefile.am:
9352         * testsuite/indexers/Makefile.am:
9353         * testsuite/parse/Makefile.am:
9354         * testsuite/plugin/Makefile.am:
9355         * testsuite/refcounting/Makefile.am:
9356         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9357         results, because it's not calculated correctly.
9358         * testsuite/refcounting/pad.c: (main): same
9359         * testsuite/states/Makefile.am:
9360         * testsuite/tags/Makefile.am:
9361         * testsuite/threads/Makefile.am:
9362
9363 2004-04-14  David Schleef  <ds@schleef.org>
9364
9365         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9366         generating bad code around the cpu detection asm code.
9367
9368 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9369
9370         * tools/gst-inspect.c: (print_element_info):
9371           print numeric version of rank as well, since we added some - 1
9372           rank values to elements
9373
9374 2004-04-13  David Schleef  <ds@schleef.org>
9375
9376         * configure.ac:  Disable various code when compiling for MinGW.
9377         * gst/elements/Makefile.am:
9378         * gst/elements/gstelements.c:
9379         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9380         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9381         * gst/registries/gstxmlregistry.c: (make_dir):
9382
9383 2004-04-13  David Schleef  <ds@schleef.org>
9384
9385         * gst/Makefile.am:
9386         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9387         assembly.
9388         * gst/gstcpuid_i386.s: remove
9389
9390 2004-04-13  David Schleef  <ds@schleef.org>
9391
9392         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9393         seems to think it needs to be done.
9394         * docs/gst/tmpl/gstfakesink.sgml:
9395         * docs/gst/tmpl/gstfakesrc.sgml:
9396         * docs/gst/tmpl/gstfdsink.sgml:
9397         * docs/gst/tmpl/gstfdsrc.sgml:
9398         * docs/gst/tmpl/gstfilesink.sgml:
9399         * docs/gst/tmpl/gstfilesrc.sgml:
9400         * docs/gst/tmpl/gstidentity.sgml:
9401         * docs/gst/tmpl/gstmd5sink.sgml:
9402         * docs/gst/tmpl/gstmultifilesrc.sgml:
9403         * docs/gst/tmpl/gstpipefilter.sgml:
9404         * docs/gst/tmpl/gstshaper.sgml:
9405         * docs/gst/tmpl/gstspider.sgml:
9406         * docs/gst/tmpl/gstspideridentity.sgml:
9407         * docs/gst/tmpl/gststatistics.sgml:
9408         * docs/gst/tmpl/gsttee.sgml:
9409         * docs/gst/tmpl/gsttypefind.sgml:
9410         * docs/gst/tmpl/gstutils.sgml:
9411
9412 2004-04-13  David Schleef  <ds@schleef.org>
9413
9414         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9415         and to build DLLs on Windows.
9416         * gst/Makefile.am:
9417         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9418         (gst_filesrc_open_file):
9419         * gst/schedulers/Makefile.am:
9420
9421 2004-04-13  David Schleef  <ds@schleef.org>
9422
9423         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9424         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9425         fixating lists.
9426
9427 2004-04-12  David Schleef  <ds@schleef.org>
9428
9429         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9430         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9431         to using it.
9432         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9433         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9434         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9435         * gst/gststructure.c: (gst_structure_set_valist),
9436         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9437         support for buffers.
9438         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9439         intended to be const.
9440         * gst/gsttag.h: same
9441         * gst/gstvalue.c: (gst_value_serialize_buffer),
9442         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9443         to (de)serialize buffers.
9444         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9445         * testsuite/caps/string-conversions.c: (main):
9446         * testsuite/caps/value_serialize.c: add new test
9447
9448 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9449
9450         * docs/pwg/advanced-types.xml:
9451           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9452
9453 2004-04-11  Benjamin Otte  <otte@gnome.org>
9454
9455         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9456           rename categories to basic_*
9457         * gst/schedulers/gstbasicscheduler.c: 
9458         (gst_basic_scheduler_chain_wrapper),
9459         (gst_basic_scheduler_chainhandler_proxy),
9460         (gst_basic_scheduler_gethandler_proxy),
9461         (gst_basic_scheduler_eventhandler_proxy):
9462           debugging category fixes - put common stuff in log category
9463         * gst/schedulers/gstbasicscheduler.c: 
9464         (gst_basic_scheduler_chain_elements):
9465           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9466           active and linking two active chains
9467
9468 2004-04-10  Benjamin Otte  <otte@gnome.org>
9469
9470         * docs/pwg/intro-preface.xml:
9471           fix dead links and remove reference to Wiki
9472
9473 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9474
9475         * gst/schedulers/gstbasicscheduler.c:
9476           make sure we can switch back to the main function if we're still in
9477           the main function (supposed to fix #139617)
9478         * gst/schedulers/gthread-cothreads.h:
9479           don't throw an error when switching to the same cothread
9480
9481 2004-04-09  Benjamin Otte  <otte@gnome.org>
9482
9483         * gst/gstbin.c: (gst_bin_get_type):
9484         * gst/gstclock.c: (gst_clock_get_type):
9485         * gst/gstindex.c: (gst_index_get_type):
9486         * gst/gstobject.c: (gst_object_get_type),
9487         (gst_signal_object_get_type):
9488         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9489         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9490         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9491         * gst/gstqueue.c: (gst_queue_get_type):
9492         * gst/gstregistry.c: (gst_registry_get_type):
9493         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9494         * gst/gstthread.c: (gst_thread_get_type):
9495           don't use memchunks for these objects, use malloc instead
9496
9497 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9498
9499         * docs/gst/.cvsignore:
9500         * docs/gst/Makefile.am:
9501         * docs/gst/gstreamer-sections.txt:
9502         * docs/gst/tmpl/gstaggregator.sgml:
9503         * docs/gst/tmpl/gstbuffer.sgml:
9504         * docs/gst/tmpl/gstclock.sgml:
9505         * docs/gst/tmpl/gstelement.sgml:
9506         * docs/gst/tmpl/gstfakesink.sgml:
9507         * docs/gst/tmpl/gstfakesrc.sgml:
9508         * docs/gst/tmpl/gstfdsink.sgml:
9509         * docs/gst/tmpl/gstfdsrc.sgml:
9510         * docs/gst/tmpl/gstfilesink.sgml:
9511         * docs/gst/tmpl/gstfilesrc.sgml:
9512         * docs/gst/tmpl/gstidentity.sgml:
9513         * docs/gst/tmpl/gstindex.sgml:
9514         * docs/gst/tmpl/gstinfo.sgml:
9515         * docs/gst/tmpl/gstmd5sink.sgml:
9516         * docs/gst/tmpl/gstmultifilesrc.sgml:
9517         * docs/gst/tmpl/gstpad.sgml:
9518         * docs/gst/tmpl/gstpipefilter.sgml:
9519         * docs/gst/tmpl/gstpipeline.sgml:
9520         * docs/gst/tmpl/gstpluginfeature.sgml:
9521         * docs/gst/tmpl/gstqueue.sgml:
9522         * docs/gst/tmpl/gstregistry.sgml:
9523         * docs/gst/tmpl/gstscheduler.sgml:
9524         * docs/gst/tmpl/gstshaper.sgml:
9525         * docs/gst/tmpl/gstspider.sgml:
9526         * docs/gst/tmpl/gstspideridentity.sgml:
9527         * docs/gst/tmpl/gststatistics.sgml:
9528         * docs/gst/tmpl/gstsystemclock.sgml:
9529         * docs/gst/tmpl/gsttee.sgml:
9530         * docs/gst/tmpl/gstthread.sgml:
9531         * docs/gst/tmpl/gsttypefind.sgml:
9532         * docs/gst/tmpl/gstutils.sgml:
9533           further doc build fixes
9534
9535 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9536
9537         * docs/gst/Makefile.am:
9538           make docs exit on scanning problems
9539           fix nonsrcdir build issues
9540         * docs/gst/gstreamer-sections.txt:
9541           adding stuff from -unused
9542         * gst/gstqueue.h:
9543           create GstQueueSize
9544         * gst/schedulers/cothreads_compat.h:
9545           fix cothread warnings
9546
9547 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9548
9549         * docs/gst/gstreamer-sections.txt:
9550           remove defines deprecated by Benjamin
9551
9552 2004-04-07  Benjamin Otte  <otte@gnome.org>
9553
9554         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9555           when the buffer is complete, don't check if other buffers are needed
9556         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9557           check that the offset is >0 so we don't try to read before the
9558           beginning of the file
9559         * gst/gstpad.c: (gst_pad_set_pad_template):
9560           sink the template, so we don't end up with 130k pad templates
9561
9562 2004-04-06  Benjamin Otte  <otte@gnome.org>
9563
9564         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9565           don't ref the element, adding already reffed it. And we didn't unref
9566           it later anyway... (huge memleak when you used many spider elements)
9567         * gst/gstelement.c: (gst_element_base_class_finalize):
9568         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9569         (gst_element_register):
9570         * gst/gsturi.c: (gst_element_make_from_uri):
9571           use gst_object_(un)ref instead of g_object(un)ref
9572
9573 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9574
9575         * gst/gstbuffer.h:
9576           remove macro that wouldn't work anymore because struct member has
9577           been removed.
9578         * gst/schedulers/entryscheduler.c: (schedule_forward):
9579           fix segfault for unconnected pads
9580         
9581 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9582
9583         reviewed by David Schleef <ds@schleef.org>
9584
9585         * gst/gstinfo.h:
9586           *_FORMAT modifiers should require putting a % in front of them for
9587           consistency reasons.
9588
9589 2004-04-05  Colin Walters  <walters@redhat.com>
9590
9591         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9592         space.
9593
9594 2004-04-05  Benjamin Otte  <otte@gnome.org>
9595
9596         * configure.ac:
9597         * gst/Makefile.am:
9598         * gst/gst_private.h:
9599         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9600           add support for detecting if GStreamer runs inside valgrind.
9601           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9602           print a big message in valgrind that GStreamer has detected it's
9603           running inside and might now use different code.
9604         * gst/gstmemchunk.c: (populate), (free_area),
9605         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9606         (gst_mem_chunk_free):
9607           flag memchunks for valgrind, so it can detect leaking of chunks.
9608           This allows detecting leaks of GstBuffer and GstEvent correctly
9609           inside valgrind.
9610
9611 2004-04-05  David Schleef  <ds@schleef.org>
9612
9613         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9614           jensgr@gmx.net (Jens Granseuer)
9615
9616 2004-04-05  David Schleef  <ds@schleef.org>
9617
9618         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9619         (gst_buffer_default_free), (gst_buffer_default_copy),
9620         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9621         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9622         structures in one place.
9623
9624 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9625
9626         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9627           (GST_TIME_FORMAT, GST_TIME_ARGS)
9628
9629 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9630
9631         * testsuite/elements/Makefile.am:
9632           disable test until it stops breaking make distcheck
9633
9634 2004-04-05  Johan Dahlin  <johan@gnome.org>
9635
9636         * po/sv.po: Updated translation
9637
9638 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9639
9640         * gst/gstplugin.c: (gst_plugin_load_file):
9641           fix segfault for when original plugin was loaded statically
9642
9643 2004-04-05  Benjamin Otte  <otte@gnome.org>
9644
9645         * testsuite/debug/category.c: (main):
9646         * testsuite/debug/commandline.c: (main):
9647         * testsuite/debug/output.c: (main):
9648           fix tests to work again with debugging enabled
9649
9650 2004-04-05  Benjamin Otte  <otte@gnome.org>
9651
9652         * gst/schedulers/gstbasicscheduler.c:
9653         (gst_basic_scheduler_pad_link):
9654           fix to work with recent scheduling changes
9655
9656 2004-04-05  Benjamin Otte  <otte@gnome.org>
9657
9658         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9659         prepareChangeLog doesn't work when cvs indents):
9660           don't throw an error when no element can be scheduled, there's too
9661           many weird reasons why it doesn't work. Return STOPPED instead.
9662           decoupled elemts' schedulability doesn't depend on bufpens.
9663
9664 2004-04-04  Benjamin Otte  <otte@gnome.org>
9665
9666         * gst/schedulers/gstbasicscheduler.c:
9667         (gst_basic_scheduler_pad_select):
9668           fix uninitialized variable warnings
9669
9670 2004-04-04  Benjamin Otte  <otte@gnome.org>
9671
9672         * gst/gstpad.c: (gst_pad_collect_valist):
9673           fix uninitialized variable warning
9674         * gst/schedulers/entryscheduler.c: (schedule_forward):
9675           fix shadowed variable
9676
9677 2004-04-04  Benjamin Otte  <otte@gnome.org>
9678
9679         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9680         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9681         (gst_pad_select):
9682         * gst/gstpad.h:
9683         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9684         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9685         * gst/gstscheduler.h:
9686           implement gst_pad_collect as replacement for gst_pad_select.
9687           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9688           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9689           new pad_select, lock and unlock calls.
9690         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9691         * gst/cothreads.h:
9692         * gst/schedulers/cothreads_compat.h:
9693         * gst/schedulers/gthread-cothreads.h:
9694           remove unused cothread_lock and cothread_unlock calls
9695         * gst/schedulers/entryscheduler.c:
9696         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9697         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9698         (gst_entry_scheduler_pad_select):
9699           update to new API
9700         * gst/schedulers/gstbasicscheduler.c:
9701         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9702         (gst_basic_scheduler_pad_select):
9703           remove useless lock and unlock calls, update pad_select to new API
9704           (untested)
9705         * gst/schedulers/gstoptimalscheduler.c:
9706         (gst_opt_scheduler_class_init):
9707           remove useless select, lock and unlock function calls
9708         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9709           use gst_pad_collect instead of gst_pad_select
9710
9711 2004-04-04  Benjamin Otte  <otte@gnome.org>
9712
9713         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9714         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9715         (schedule_next_element), (print_entry):
9716           add can_schedule_pad to handle element states.
9717           add schedule_forward to select the correct entry to schedule next
9718
9719 2004-04-03  Benjamin Otte  <otte@gnome.org>
9720
9721         * gst/schedulers/entryscheduler.c: 
9722           remove unused variable, fix error inside Rb, fix compile warning in
9723           unreachable code
9724
9725 2004-04-03  Benjamin Otte  <otte@gnome.org>
9726
9727         * gst/schedulers/entryscheduler.c:
9728           completely revamp the inner workings, so it's a lot easier to
9729           understand and extend
9730
9731 2004-04-03  Andy Wingo  <wingo@pobox.com>
9732
9733         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9734         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9735         This allows better introspection of pipeline topology.
9736         (add_to_chain): Don't do trickery to put loop elements first;
9737         rather, queue a chain sort by marking the chain as dirty.
9738         (remove_from_chain): Mark the chain dirty.
9739         (sort_chain): New function. Sorts the group list so that terminal
9740         sinks are first. This means elements on the sink side will be
9741         preferentially sscheduled before elements on the src side of the
9742         pipeline.
9743         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9744         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9745         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9746         (group_inc_link): Change argument and variable names to match the
9747         new link structure member names (src and sink).
9748         (group_dec_link): Add some description
9749
9750 2004-04-03  Benjamin Otte  <otte@gnome.org>
9751
9752         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9753         * gst/gstinfo.h:
9754         * testsuite/debug/category.c: (main):
9755         * testsuite/debug/commandline.c: (main):
9756         * testsuite/debug/output.c: (main):
9757         * testsuite/debug/printf_extension.c: (main):
9758           fix to successfully build and test with --disable-gst-debug
9759           configure switch (fixes #138705)
9760
9761 2004-04-03  Benjamin Otte  <otte@gnome.org>
9762
9763         * docs/pwg/building-boiler.xml:
9764           add cvs login line and s/anonymous/anoncvs/
9765
9766 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
9767
9768         reviewed by Benjamin Otte  <otte@gnome.org>
9769
9770         * gst/gststructure.c: (gst_structure_free):
9771           memleak fix: free fields array (partial fix for #134839)
9772
9773 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9774
9775         * docs/random/ds/0.9-suggested-changes:
9776           Add a note to change handoff use in fakesrc to be usable in
9777           a more generic way (fakesrc should be renamed to appsrc or so).
9778         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9779           Change signal type to scope, so we can fill the buffer in the
9780           handoff handler (that's the whole use of this signal...).
9781
9782 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9783
9784         * docs/pwg/other-ntoone.xml:
9785           Document muxers and n-to-1 elements.
9786
9787 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
9788
9789         * gst/registries/gstxmlregistry.c
9790         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
9791         determine if a file is a G_MODULE. The old one discards paths
9792         containing "so" somewhere in the middle. My home directory is
9793         called "soto". Go figure...
9794
9795 2004-03-31  David Schleef  <ds@schleef.org>
9796
9797         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
9798         to eventually deprecate gst_buffer_merge().  (bug: #136408)
9799         * gst/gstbuffer.h:
9800
9801 2004-03-31  David Schleef  <ds@schleef.org>
9802
9803         * gst/gstvalue.c: (gst_value_union_int_int_range),
9804         (gst_value_union_int_range_int_range), (gst_value_can_union),
9805         (gst_value_union), (_gst_value_initialize):  Add some union
9806         implementations.  We didn't have any previously.
9807         * testsuite/caps/Makefile.am:
9808         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
9809         (gst_audioscale_getcaps), (test_caps), (main): A little test
9810         that is the same as the caps manipulation in audioscale.
9811
9812 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9813
9814         * docs/faq/general.xml:
9815           add entry about "does gst support format X?"
9816
9817 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9818
9819         * gst/gstthread.c:
9820           fix docs
9821         * gst/gstutils.h:
9822           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
9823
9824 2004-03-30  Benjamin Otte  <otte@gnome.org>
9825
9826         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9827           set the offset of the buffer to the requested offset
9828         * gst/elements/gsttypefind.c: (stop_typefinding):
9829           revert patch 1.18 (which I unfortunately don't know the reason for).
9830           This is needed to allow downstream elements to seek. Otherwise
9831           typefind might overwrite a previous seek by downstream elements.
9832           This lead to errors with id3tag and typefind on some mp3s.
9833         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9834         (gst_entry_scheduler_iterate):
9835           be more verbose when debugging
9836
9837 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9838
9839         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9840           make sure we don't get NULL strings
9841
9842 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9843
9844         * gst/gstcaps.c:
9845         * gst/gstelement.c:
9846         * gst/gstelementfactory.c: (gst_element_factory_get_type):
9847         * gst/gstindex.c: (gst_index_resolver_get_type),
9848         (gst_index_get_type), (gst_index_factory_get_type):
9849         * gst/gstinfo.c:
9850         * gst/gstpad.c:
9851         * gst/gstplugin.c:
9852         * gst/gsturi.c: (gst_uri_handler_get_type):
9853         * gst/gstvalue.c:
9854           first batch of documentation fixes
9855
9856 2004-03-29  David Schleef  <ds@schleef.org>
9857
9858         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
9859         * docs/gst/gstreamer-docs.sgml:  More hacking
9860         * docs/gst/gstreamer-sections.txt:
9861         * docs/gst/tmpl/cothreads_compat.sgml:
9862         * docs/gst/tmpl/gstcaps.sgml:
9863         * docs/gst/tmpl/gstclock.sgml:
9864         * docs/gst/tmpl/gstelement.sgml:
9865         * docs/gst/tmpl/gstevent.sgml:
9866         * docs/gst/tmpl/gstpad.sgml:
9867         * docs/gst/tmpl/gstutils.sgml:
9868         * docs/gst/tmpl/gstxml.sgml:
9869         * docs/gst/tmpl/gthread-cothreads.sgml:
9870         * docs/random/ds/0.9-suggested-changes:
9871         * gst/elements/gstfakesink.h: doc fixes
9872         * gst/elements/gstfakesrc.h: doc fixes
9873         * gst/gstcaps.c: doc fixes
9874         * gst/gstcaps.h: doc fixes
9875         * gst/gstelement.c: doc fixes
9876         * gst/gstelement.h: doc fixes
9877         * gst/gstindex.c: doc fixes
9878         * gst/gstinfo.c: doc fixes
9879         * gst/gstpad.c: doc fixes
9880         * gst/gstpad.h: doc fixes
9881         * gst/gstplugin.c: doc fixes
9882         * gst/gsttypefind.h: doc fixes
9883         * gst/gsturi.c: doc fixes
9884         * gst/gstvalue.c: doc fixes
9885
9886 2004-03-29  Colin Walters  <walters@redhat.com>
9887
9888         * gst/registries/gstxmlregistry.c (get_time)
9889         (plugin_times_older_than_recurse):
9890         Use the result of stat to determine whether a path is a file,
9891         so we don't attempt to opendir() files.
9892
9893 2004-03-29  Benjamin Otte  <otte@gnome.org>
9894
9895         * gst/gstpad.c: (gst_pad_set_explicit_caps):
9896           print caps in debugging output when setting caps failed
9897         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9898         (schedule_next_element), (get_buffer), (run_chainhandler),
9899         (element_may_start), (gst_entry_scheduler_chain_handler),
9900         (gst_entry_scheduler_get_handler),
9901         (gst_entry_scheduler_state_transition),
9902         (gst_entry_scheduler_pad_link):
9903           make this scheduler a testcase for mandatory
9904           discont-before-first-buffer which is needed if we want to allow apps
9905           to release the sound device.
9906           add SCHED_ASSERT macro to print scheduler state before an assertion
9907           triggers.
9908
9909 2004-03-29  Benjamin Otte  <otte@gnome.org>
9910
9911         * COPYING:
9912           replace by LGPL (former COPYING.LIB). The core is completely
9913           licensed LGPL.
9914         * COPYING.LIB:
9915           remove
9916
9917 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9918
9919         * po/af.po:
9920         * po/sv.po:
9921           updated Afrikaans and Swedish
9922
9923 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9924
9925         * po/LINGUAS:
9926         * po/az.po:
9927           adding Azerbaijani (Mətin Əmirov)
9928
9929 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
9930
9931         * gst/gstelement.h: 
9932         * gst/gstelement.c (gst_element_set_time_delay): New function for
9933         setting element time taking into account a hardware buffering
9934         delay.
9935         (gst_element_set_time): Now just an invocation of
9936         gst_element_set_time_delay.
9937         * gst/gstclock.h: 
9938         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
9939         allowing to set event times in the future.
9940         (gst_clock_get_event_time): Now just an invocation of
9941         gst_clock_get_event_time_delay.
9942
9943 2004-03-28  Benjamin Otte  <otte@gnome.org>
9944
9945         * gst/gstbin.c: (gst_bin_set_element_sched),
9946         (gst_bin_unset_element_sched):
9947           don't add decoupled elements to schedulers - otherwise it's
9948           impossible to control if a link to a decoupled element was already
9949           removed from a scheduler or not.
9950         * gst/schedulers/cothreads_compat.h:
9951         * gst/schedulers/gthread-cothreads.h:
9952           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
9953           is no "unused" warning.
9954         * gst/schedulers/Makefile.am:
9955         * gst/schedulers/entryscheduler.c:
9956           add new scheduler, based on ideas from talking to David and Martin.
9957           It's supposed to be small and correct. Currently it's also slow (but
9958           it's not noticable)
9959         * examples/retag/retag.c: (main):
9960         * testsuite/bytestream/test1.c: (main):
9961           fix missing NULLs at end of variadic functions
9962         * testsuite/elements/.cvsignore:
9963           update
9964
9965 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
9966
9967         * gst/gstevent.h:
9968         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
9969
9970 2004-03-25  David Schleef  <ds@schleef.org>
9971
9972         * docs/gst/gstreamer-sections.txt:  More doc hacking.
9973         * docs/gst/tmpl/gstaggregator.sgml:
9974         * docs/gst/tmpl/gstautoplugfactory.sgml:
9975         * docs/gst/tmpl/gstbin.sgml:
9976         * docs/gst/tmpl/gstbuffer.sgml:
9977         * docs/gst/tmpl/gstbufferstore.sgml:
9978         * docs/gst/tmpl/gstfakesink.sgml:
9979         * docs/gst/tmpl/gstfakesrc.sgml:
9980         * docs/gst/tmpl/gstmd5sink.sgml:
9981         * docs/gst/tmpl/gstreamer-unused.sgml:
9982         * docs/gst/tmpl/gstsearchfuncs.sgml:
9983         * docs/gst/tmpl/gstshaper.sgml:
9984         * docs/gst/tmpl/gstspider.sgml:
9985         * docs/gst/tmpl/gsttee.sgml:
9986         * docs/gst/tmpl/gstutils.sgml:
9987         * docs/gst/tmpl/gstvalue.sgml:
9988         * docs/gst/tmpl/gstxml.sgml:
9989         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
9990         and we don't support it.
9991         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
9992         (gst_use_threads), (gst_has_threads): same
9993         * gst/gstthreaddummy.c: same
9994         * gst/autoplug/gstspider.c: Make gst_spider_details static.
9995         * gst/autoplug/gstspider.h: same
9996         * gst/elements/gstaggregator.h: Remove bogus function from header
9997         * gst/elements/gstfakesink.h: same
9998         * gst/elements/gstfakesrc.h: same
9999         * gst/elements/gstmd5sink.h: same
10000         * gst/elements/gstshaper.h: same
10001         * gst/elements/gsttee.h: same
10002         * gst/gstbin.c: doc fixes
10003         * gst/gstbin.h: Remove unused definition.
10004         * gst/gstbuffer.c: doc fixes
10005         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10006         * gst/gstfilter.c: doc fixes
10007         * gst/gsttag.c: doc fixes
10008         * gst/gstvalue.c: doc fixes
10009
10010 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10011
10012         * docs/pwg/advanced-types.xml:
10013           Document typefinding.
10014         * docs/pwg/other-oneton.xml:
10015           Document one-to-n elements, demuxers and parsers.
10016
10017 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10018
10019         reviewed by: David Schleef  <ds@schleef.org>
10020
10021         * configure.ac: Check bison version (bug #127838)
10022
10023 2004-03-25  David Schleef  <ds@schleef.org>
10024
10025         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10026         * docs/gst/gstreamer-sections.txt:
10027         * docs/gst/tmpl/gstautoplug.sgml:
10028         * docs/gst/tmpl/gststaticautoplug.sgml:
10029         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10030         * docs/gst/tmpl/gstutils.sgml:
10031         * docs/gst/tmpl/gstxml.sgml:
10032
10033 2004-03-24  David Schleef  <ds@schleef.org>
10034
10035         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10036         manual being such complete crap, that I decided to do major
10037         hacking of it.  This checkin replaces any fine tuning that
10038         may have been done previously, with the benefit of actually
10039         being complete for much of the API that was changed since
10040         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10041         * docs/gst/gstreamer-sections.txt:
10042         * docs/gst/tmpl/GstBin.sgml:
10043         * docs/gst/tmpl/GstBuffer.sgml:
10044         * docs/gst/tmpl/GstCaps.sgml:
10045         * docs/gst/tmpl/GstClock.sgml:
10046         * docs/gst/tmpl/GstCompat.sgml:
10047         * docs/gst/tmpl/GstData.sgml:
10048         * docs/gst/tmpl/GstElement.sgml:
10049         * docs/gst/tmpl/GstEvent.sgml:
10050         * docs/gst/tmpl/GstIndex.sgml:
10051         * docs/gst/tmpl/GstStructure.sgml:
10052         * docs/gst/tmpl/GstTag.sgml:
10053         * docs/gst/tmpl/cothreads.sgml:
10054         * docs/gst/tmpl/cothreads_compat.sgml:
10055         * docs/gst/tmpl/gettext.sgml:
10056         * docs/gst/tmpl/grammar.tab.sgml:
10057         * docs/gst/tmpl/gst-i18n-app.sgml:
10058         * docs/gst/tmpl/gst-i18n-lib.sgml:
10059         * docs/gst/tmpl/gst.sgml:
10060         * docs/gst/tmpl/gst_private.sgml:
10061         * docs/gst/tmpl/gstaggregator.sgml:
10062         * docs/gst/tmpl/gstarch.sgml:
10063         * docs/gst/tmpl/gstatomic.sgml:
10064         * docs/gst/tmpl/gstatomic_impl.sgml:
10065         * docs/gst/tmpl/gstbin.sgml:
10066         * docs/gst/tmpl/gstbuffer.sgml:
10067         * docs/gst/tmpl/gstbufferstore.sgml:
10068         * docs/gst/tmpl/gstcaps.sgml:
10069         * docs/gst/tmpl/gstclock.sgml:
10070         * docs/gst/tmpl/gstcompat.sgml:
10071         * docs/gst/tmpl/gstconfig.sgml:
10072         * docs/gst/tmpl/gstcpu.sgml:
10073         * docs/gst/tmpl/gstdata.sgml:
10074         * docs/gst/tmpl/gstdata_private.sgml:
10075         * docs/gst/tmpl/gstelement.sgml:
10076         * docs/gst/tmpl/gstenumtypes.sgml:
10077         * docs/gst/tmpl/gsterror.sgml:
10078         * docs/gst/tmpl/gstevent.sgml:
10079         * docs/gst/tmpl/gstfakesink.sgml:
10080         * docs/gst/tmpl/gstfakesrc.sgml:
10081         * docs/gst/tmpl/gstfilesink.sgml:
10082         * docs/gst/tmpl/gstfilter.sgml:
10083         * docs/gst/tmpl/gstindex.sgml:
10084         * docs/gst/tmpl/gstinfo.sgml:
10085         * docs/gst/tmpl/gstinterface.sgml:
10086         * docs/gst/tmpl/gstlog.sgml:
10087         * docs/gst/tmpl/gstmacros.sgml:
10088         * docs/gst/tmpl/gstmarshal.sgml:
10089         * docs/gst/tmpl/gstmd5sink.sgml:
10090         * docs/gst/tmpl/gstmultifilesrc.sgml:
10091         * docs/gst/tmpl/gstobject.sgml:
10092         * docs/gst/tmpl/gstpad.sgml:
10093         * docs/gst/tmpl/gstparse.sgml:
10094         * docs/gst/tmpl/gstpipeline.sgml:
10095         * docs/gst/tmpl/gstplugin.sgml:
10096         * docs/gst/tmpl/gstpluginfeature.sgml:
10097         * docs/gst/tmpl/gstqueue.sgml:
10098         * docs/gst/tmpl/gstreamer-unused.sgml:
10099         * docs/gst/tmpl/gstregistry.sgml:
10100         * docs/gst/tmpl/gstregistrypool.sgml:
10101         * docs/gst/tmpl/gstscheduler.sgml:
10102         * docs/gst/tmpl/gstsearchfuncs.sgml:
10103         * docs/gst/tmpl/gstshaper.sgml:
10104         * docs/gst/tmpl/gstspider.sgml:
10105         * docs/gst/tmpl/gstspideridentity.sgml:
10106         * docs/gst/tmpl/gststructure.sgml:
10107         * docs/gst/tmpl/gstsystemclock.sgml:
10108         * docs/gst/tmpl/gsttag.sgml:
10109         * docs/gst/tmpl/gsttaginterface.sgml:
10110         * docs/gst/tmpl/gsttee.sgml:
10111         * docs/gst/tmpl/gstthread.sgml:
10112         * docs/gst/tmpl/gsttrace.sgml:
10113         * docs/gst/tmpl/gsttrashstack.sgml:
10114         * docs/gst/tmpl/gsttypefind.sgml:
10115         * docs/gst/tmpl/gsttypes.sgml:
10116         * docs/gst/tmpl/gsturi.sgml:
10117         * docs/gst/tmpl/gsturitype.sgml:
10118         * docs/gst/tmpl/gstutils.sgml:
10119         * docs/gst/tmpl/gstvalue.sgml:
10120         * docs/gst/tmpl/gstversion.sgml:
10121         * docs/gst/tmpl/gstxml.sgml:
10122         * docs/gst/tmpl/gstxmlregistry.sgml:
10123         * docs/gst/tmpl/gthread-cothreads.sgml:
10124         * docs/gst/tmpl/types.sgml:
10125
10126 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10127
10128         * docs/pwg/other-sink.xml:
10129         * docs/pwg/other-source.xml:
10130           Documentation on how to write source and sink elements. Other
10131           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10132           manager, autoplugger) are all still pending.
10133
10134 2004-03-25  Benjamin Otte  <otte@gnome.org>
10135
10136         * testsuite/elements/Makefile.am:
10137         * testsuite/elements/gst-compprep-check:
10138           add check to make sure gst-compprep works
10139         * testsuite/elements/gst-inspect-check.in:
10140           improve initialization output
10141         * testsuite/Makefile.am:
10142         * testsuite/gst-inspect-check:
10143           remove old file
10144
10145 2004-03-24  David Schleef  <ds@schleef.org>
10146
10147         * testsuite/elements/Makefile.am:
10148         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10149         to the testsuite.
10150
10151 2004-03-24  Benjamin Otte  <otte@gnome.org>
10152
10153         * libs/gst/control/dparam.c: (gst_dparam_attach),
10154         (gst_dparam_detach):
10155         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10156           fix lvalue casts for real
10157
10158 2004-03-24  Benjamin Otte  <otte@gnome.org>
10159
10160         * gst/schedulers/gstbasicscheduler.c:
10161         (gst_basic_scheduler_src_wrapper):
10162         * gst/schedulers/gstoptimalscheduler.c:
10163         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10164         (pad_clear_queued), (gst_opt_scheduler_add_element),
10165         (gst_opt_scheduler_remove_element):
10166           fix GStreamer to not have issues with lvalue casts anymore (fixes
10167           #136841)
10168
10169 2004-03-24  Benjamin Otte  <otte@gnome.org>
10170
10171         * gst/gstelement.c:
10172           add documentation about a gobject quirk where the object hasn't the
10173           correct class pointer set on initialization
10174         * gst/schedulers/gstbasicscheduler.c:
10175         (gst_basic_scheduler_src_wrapper):
10176           make sure to not run into an infinite loop
10177
10178 2004-03-22  Benjamin Otte  <otte@gnome.org>
10179
10180         * gst/gstutils.c: (gst_util_dump_mem):
10181         * gst/gstutils.h:
10182           first argument of gst_util_dump_mem should be const
10183
10184 2004-03-22  Johan Dahlin  <johan@gnome.org>
10185
10186         * gst/gstvalue.h: Clean up a little bit.
10187
10188 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10189
10190         reviewed by Benjamin Otte  <otte@gnome.org>
10191
10192         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10193         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10194         (gst_aggregator_class_init), (gst_aggregator_init):
10195         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10196         (gst_filesrc_dispose), (gst_filesrc_set_location):
10197         * gst/elements/gstidentity.c: (gst_identity_finalize),
10198         (gst_identity_class_init), (gst_identity_chain):
10199         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10200         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10201         (gst_statistics_class_init):
10202         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10203         (gst_tee_get_property):
10204           clean up used memory in this elements correctly on teardown (closes
10205           #137279)
10206
10207 2004-03-20  Colin Walters  <walters@redhat.com>
10208
10209         * gst/registries/gstxmlregistry.c:
10210         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10211         registry saving atomic.
10212
10213 2004-03-20  Colin Walters  <walters@redhat.com>
10214
10215         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10216         Just use
10217         access() instead of actually creating and deleting files.
10218
10219 2004-03-18  David Schleef  <ds@schleef.org>
10220
10221         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10222         (bug #137625)
10223
10224 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10225
10226         * po/sv.po: updated translation (Christian Rose)
10227
10228 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10229
10230         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10231         (gst_filesink_get_query_types), (_do_init),
10232         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10233           return FALSE silently
10234         * po/af.po: updated translation (Petri Jooste)
10235
10236 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10237
10238         * Makefile.am:
10239         * configure.ac:
10240           dist common properly
10241         * po/af.po:
10242         * po/fr.po:
10243         * po/nl.po:
10244         * po/sr.po:
10245         * po/sv.po:
10246           refreshing translations
10247
10248 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10249
10250         * po/LINGUAS:
10251         * po/sv.po:
10252         * po/af.po:
10253           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10254
10255 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10256
10257         * Makefile.am: use common/release.mak
10258
10259 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10260
10261         * docs/faq/gst-uninstalled:
10262           adding gst-monkeysaudio to the list of possible plugin dirs
10263
10264 2004-03-16  David Schleef  <ds@schleef.org>
10265
10266         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10267         (gst_init_check_with_popt_table):  Fix some gettext strings to
10268         make them easier to translate.  Required making the strings
10269         non-const.
10270
10271 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10272
10273         * configure.ac: bump nano to 1
10274
10275 === release 0.8.0 ===
10276
10277 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10278
10279         * configure.ac: release 0.8.0, "Executive Slacks"
10280
10281 2004-03-16  Johan Dahlin  <johan@gnome.org>
10282
10283         * gst/schedulers/gstoptimalscheduler.c
10284         (gst_opt_scheduler_pad_unlink): Remove double ;,
10285         spotted by Scott Wheeler
10286
10287 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10288
10289         * configure.ac: bump libtool version
10290
10291 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10292
10293         * gst/gstcaps.h:
10294         * gst/gststructure.h:
10295           add reserved padding
10296
10297 2004-03-15  Benjamin Otte  <otte@gnome.org>
10298
10299         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10300           set the first parameter for select call correctly.
10301           (fixes #137230)
10302
10303 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10304
10305         * *.c,*.h: don't mix tabs and spaces
10306
10307 2004-03-15  Johan Dahlin  <johan@gnome.org>
10308
10309         * gst/schedulers/gstoptimalscheduler.c
10310         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10311         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10312
10313         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10314         
10315 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10316
10317         * testsuite/Rules:
10318           fix gst-register rules
10319
10320 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10321
10322         * testsuite/Rules:
10323           use versioned gst-register
10324
10325 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10326
10327         * docs/libs/gstreamer-libs-sections.txt:
10328           remove </SUBSECTION>
10329         * gst/gstplugin.c:
10330         * gst/gstregistry.c: (gst_registry_add_plugin):
10331         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10332         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10333           add debugging and fix some comment blocks
10334
10335 2004-03-15  Johan Dahlin  <johan@gnome.org>
10336
10337         * *.h: Revert indent changes.
10338         
10339 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10340
10341         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10342           g_error_free the g_error
10343         * tools/gst-feedback-m.m:
10344           check for other versions of gstreamer
10345         * tools/gst-indent:
10346           use sh, not bash
10347
10348 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10349
10350         * tools/gst-register.c: do not spill paths when registries are not
10351           writable, until we fix the "user running gst-register" case.
10352
10353 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10354
10355         * *.c, *.h: commit of gst-indent run on core
10356
10357 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10358
10359         * tools/gst-indent:
10360         * tools/Makefile.am:
10361           add our indentation style as a script
10362
10363 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10364
10365         * po/sr.po:
10366         * po/LINGUAS:
10367           added Serbian translation
10368
10369 2004-03-13  Benjamin Otte  <otte@gnome.org>
10370
10371         * gst/gstelement.c:
10372           add documentation note about gst_element_found_tags_for_pad not
10373           being usable in getfunctions. (see #137042)
10374
10375 2004-03-12  David Schleef  <ds@schleef.org>
10376
10377         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10378         change API right now!  Readd gst_caps_is_simple() macro.
10379         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10380         uninitialized variable.  I'd bet this caused crashes.
10381         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10382
10383 2004-03-12  Johan Dahlin  <johan@gnome.org>
10384
10385         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10386         * gst/gstcaps.h: Clean up
10387
10388         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10389         _gst_caps_initalize()
10390
10391         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10392         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10393
10394         * gst/gststructure.c (gst_structure_get_type): Ditto
10395
10396         * gst/gststructure.h: Ditto
10397         
10398 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10399
10400         * gst/gstqueue.c: (gst_queue_init):
10401           Reset default max. values in queues. Reason is simply to avoid
10402           braindead use. If you want wider values, use the properties. The
10403           default is supposed to always work. Wider values would make this
10404           beast a memory hog by default (250 full-PAL RGB32 video frames?
10405           That's 440 MB! No thank you).
10406
10407 2004-03-10  David Schleef  <ds@schleef.org>
10408
10409         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10410         were found.  (bug #136793)
10411
10412 2004-03-10  Johan Dahlin  <johan@gnome.org>
10413
10414         * gst/schedulers/gstoptimalscheduler.c
10415         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10416         links to elements within the same group, so we can finally remove
10417         that annoying warning. Refactor the code a little bit
10418         (group_dec_links_for_element): Split out
10419
10420 2004-03-09  David Schleef  <ds@schleef.org>
10421
10422         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10423         (bug #134863)
10424
10425 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10426
10427         * configure.ac: first bug fix due to major/minor bump
10428
10429 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10430
10431         * configure.ac: bump nano to 1
10432
10433 === release 0.7.6 ===
10434
10435 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10436
10437         * NEWS:
10438         * RELEASE:
10439         * configure.ac:
10440           releasing 0.7.6, "Almost"
10441         * po/fr.po:
10442         * po/nl.po:
10443         * tools/Makefile.am:
10444         * tools/gst-feedback-m.m:
10445           unversioned source
10446
10447 2004-03-09  Johan Dahlin  <johan@gnome.org>
10448
10449         Reviewed by: Thomas Vander Stichele
10450
10451         * gst/gstelement.c (gst_element_class_init): register second
10452         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10453         language bindings can (de)marshall correctly.
10454
10455         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10456
10457         * gst/gsterror.c (gst_g_error_get_type): New function
10458
10459         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10460         with VOID:OBJECT,OBJECT,STRING 
10461
10462 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10463
10464         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10465         Free a leaked g_timer on early returns.
10466
10467 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10468
10469         * docs/pwg/advanced-types.xml:
10470           Add cinepak description.
10471
10472 2004-03-07  David Schleef  <ds@schleef.org>
10473
10474         * docs/random/mimetypes:  Added cinepak description
10475
10476 2004-03-07  Andy Wingo  <wingo@pobox.com>
10477
10478         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10479
10480         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10481         there are no links to other groups when a group is destroyed.
10482         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10483         removed from a group, make sure the link count to elements linked
10484         to other pads is appropriately decremented. This really fixes
10485         #135672.
10486
10487         The 1.60->1.61 patch has been reapplied in light of this fix.
10488
10489         * gst/gstelement.c (gst_element_dispose): Really protect against
10490         multiple invocations this time.
10491
10492 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10493
10494         * docs/gst/gstreamer-sections.txt:
10495         * docs/gst/tmpl/gsttag.sgml:
10496           remove some deprecated functions, document some existing ones
10497         * gst/gsttag.c: (gst_tag_get_flag):
10498         * gst/gsttag.h:
10499           add accessor function
10500
10501 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10502
10503         * docs/gst/gstreamer-sections.txt:
10504         * docs/gst/tmpl/gsttag.sgml:
10505         * docs/gst/tmpl/gstxml.sgml:
10506         * gst/gsttag.c: (gst_tag_get_flag):
10507         * gst/gsttag.h:
10508
10509 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10510
10511         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10512         leak
10513
10514 2004-03-05  David Schleef  <ds@schleef.org>
10515
10516         * REQUIREMENTS: Add bison and flex.
10517         * configure.ac: Fix comment about bison.
10518         * docs/random/ds/0.9-suggested-changes: yer ma
10519         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10520
10521 2004-03-05  Benjamin Otte  <otte@gnome.org>
10522
10523         * gst/gstelement.c: (gst_element_error_full):
10524           revert recent recursive state changing commit - messing with other
10525           elements' states is evil and should be done by apps only.
10526
10527 2004-03-05  Benjamin Otte  <otte@gnome.org>
10528
10529         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10530           check for empty intersection instead of NULL caps
10531         (gst_element_get_compatible_pad_filtered):
10532           remove old workaround that is only a bug nowadays
10533
10534 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10535
10536         * gst/gstelement.c: (gst_element_error_full):
10537           make elements try to recursively change state to PAUSED on all
10538           parents after an error to suppress ensuing warnings
10539         * gst/parse/grammar.y:
10540           make it check if it was able to sync the state, and throw an error
10541           if not, so stuff like
10542           oggdemux ! vorbisdec ! osssink gets caught
10543
10544 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10545
10546         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10547           it contains lib64; use AS_AC_EXPAND to handle it properly
10548
10549 2004-03-05  David Schleef  <ds@schleef.org>
10550
10551         * gst/gstcpuid_i386.s:  Remove unused code
10552         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10553         (gst_getbits_newbuf): Remove MMX code
10554         * libs/gst/getbits/getbits.h: Remove MMX code
10555
10556 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10557
10558         * debian/.cvsignore:
10559         * debian/README.Debian:
10560         * debian/changelog:
10561         * debian/control:
10562         * debian/control.in:
10563         * debian/copyright:
10564         * debian/gstreamer-core-libs-dev.files:
10565         * debian/gstreamer-core-libs.files:
10566         * debian/gstreamer-core.files:
10567         * debian/gstreamer-core.postinst:
10568         * debian/gstreamer-core.postrm:
10569         * debian/gstreamer-doc.files:
10570         * debian/gstreamer-doc.links:
10571         * debian/gstreamer-doc.lintian:
10572         * debian/gstreamer-runtime.files:
10573         * debian/gstreamer-runtime.manpages:
10574         * debian/gstreamer-runtime.postinst:
10575         * debian/gstreamer-runtime.postrm:
10576         * debian/gstreamer-tools.files:
10577         * debian/gstreamer-tools.manpages:
10578         * debian/libgstreamer-dev.files:
10579         * debian/libgstreamer0.4.1.files:
10580         * debian/libgstreamerVERSION.files:
10581         * debian/rules:
10582         Debian package info not maintained here.
10583
10584 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10585
10586         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10587         * gst/gstbin.c: (gst_bin_class_init):
10588         * gst/gstelement.c: (gst_element_class_init):
10589         * gst/gstindex.c: (gst_index_class_init):
10590         * gst/gstobject.c: (gst_object_class_init),
10591         (gst_signal_object_class_init):
10592         * gst/gstpad.c: (gst_pad_template_class_init):
10593         * gst/gstregistry.c: (gst_registry_class_init):
10594         * gst/gsturi.c: (gst_uri_handler_base_init):
10595         * gst/gstxml.c: (gst_xml_class_init):
10596         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10597         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10598           make all signal names use dashes instead of underscore
10599
10600 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10601
10602         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10603
10604 2004-03-03  Benjamin Otte  <otte@gnome.org>
10605
10606         * gst/schedulers/gstoptimalscheduler.c:
10607           revert last commit by Andy Wingo. It causes segfaults on unreffing
10608           in Rhythmbox. (see bug #135672)
10609
10610 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10611
10612         * po/fr.po: fix typo
10613
10614 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10615
10616         * tools/gst-inspect.c: (main): 
10617         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10618
10619 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10620
10621         * configure.ac:
10622           get GLIB_ONLY and POPT flags for the nonversioned binaries
10623         * tools/Makefile.am:
10624           use them
10625
10626 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10627
10628         * gst/gst.c: (init_post):
10629           change so that GST_REGISTRY now is where the global registry gets
10630           saved, since that is where plugins now get attached to first, and
10631           spilled over to the user registry.  Note that in the case of using
10632           GST_REGISTRY env var, we don't want to affect any real registries
10633           beyond the one given by this var, and thus we don't set a user
10634           registry to spill to.  So make sure GST_REGISTRY is writable.
10635
10636 2004-03-01  David Schleef  <ds@schleef.org>
10637
10638         * AUTHORS:  Added some names.  Add yourself if you're missing.
10639
10640 2004-03-01  David Schleef  <ds@schleef.org>
10641
10642         * MAINTAINERS: Add
10643
10644 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10645
10646         * configure.ac:
10647           remove whitespace
10648         * docs/gst/tmpl/gstbuffer.sgml:
10649         * docs/gst/tmpl/gstdata.sgml:
10650         * docs/gst/tmpl/gstreamer-unused.sgml:
10651         * docs/gst/tmpl/gstxml.sgml:
10652           doc update
10653         * docs/manuals.mak:
10654           add a FIXME
10655         * docs/pwg/intro-preface.xml:
10656         * docs/pwg/pwg.xml:
10657           remove GNOME
10658         * gst/gst.c: (init_post):
10659           try GST_PLUGIN_PATH paths for the _global_registry first
10660         * gst/gstelement.h:
10661           add the error message as well, otherwise (null) debug info doesn't
10662           make much sense
10663         * tools/gst-register.c: (main):
10664           spill paths to next registry if this registry is not writable
10665         * po/fr.po:
10666         * po/nl.po:
10667           translation updates
10668
10669 2004-03-01  Johan Dahlin  <johan@gnome.org>
10670
10671         * gst/gstbuffer.c (_gst_buffer_initialize): 
10672         * gst/gstdata.c (gst_data_get_type): 
10673         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10674         instead of ref, since some applications that uses GBoxed
10675         routines depends on a function that actually returns a copy.
10676
10677 2004-02-27  Benjamin Otte  <otte@gnome.org>
10678
10679         * gst/gstbuffer.h:
10680           remove gst_buffer_free, use gst_data_unref
10681         * gst/gstdata.c: (gst_data_get_type):
10682           use refcounting in GstData GBoxed registration
10683         * gst/gstdata.h:
10684           remove gst_data_free, use gst_data_unref
10685
10686 2004-02-27  Johan Dahlin  <johan@gnome.org>
10687
10688         * gst/gstdata.c (gst_data_get_type): New function, register
10689         GstData as a GBoxed type.
10690
10691         * gst/gstdata.h (GST_TYPE_DATA): New macro
10692
10693 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10694
10695         * Makefile.am:
10696         * gstreamer.spec.in:
10697           put back RELEASE
10698         * gst/Makefile.am:
10699           clean up non-disting of built files
10700         * testsuite/debug/commandline.c:
10701           test fix for option rename
10702
10703 2004-02-26  David Schleef  <ds@schleef.org>
10704
10705         * configure.ac:  We don't really need glib-2.3.  Also remove
10706         some unneeded checks for library functions.
10707         * gst/Makefile.am:  Instead, we need to not dist files created
10708         by glib-genmarshal.
10709
10710 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10711
10712         * configure.ac:
10713           bump glib required version to 2.3.0 for g_value_takes_boxed
10714
10715  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10716
10717         * common/m4/gst-docs.m4
10718         change flavour text from enable to disable as enable is our default
10719         closes bug Bug 135304
10720
10721 === release 0.7.5 ===
10722  
10723  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10724  
10725         * NEWS:
10726           instate NEWS file
10727         * Makefile.am:
10728         * gstreamer.spec.in:
10729         * RELEASE:
10730           put back release
10731         * configure.ac:
10732         * docs/random/release:
10733           more updates
10734
10735 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10736
10737         * gst/gsttag.c: (_gst_tag_initialize):
10738         * po/fr.po:
10739         * po/nl.po:
10740           remove hyphen from codec tags
10741
10742 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10743
10744         * gst/parse/Makefile.am:
10745           fix dependency so that a make from a clean build works the first
10746           time
10747
10748 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10749
10750         * docs/random/release:
10751           update release strategy
10752         * po/fr.po:
10753           auto-update po file
10754         * po/nl.po:
10755           update dutch translation
10756
10757 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10758
10759         * docs/manual/debugging.xml:
10760         fix manual for new debugging system
10761
10762 2004-02-25  Andy Wingo  <wingo@pobox.com>
10763
10764         * gst/gstpad.c (gst_pad_link_prepare): Re-add
10765         gst_pad_link_prepare. Please email the list with specific reasons
10766         for reverting.
10767
10768 2004-02-24  Andy Wingo  <wingo@pobox.com>
10769
10770         * gst/gstelement.c (gst_element_dispose): Protect against multiple
10771         invocations.
10772
10773         * gst/schedulers/gstoptimalscheduler.c:
10774         I added a mess of prototypes at the top of the file by way of
10775         documentation. Some of the operations on chains and groups were
10776         re-organized.
10777
10778         (create_group): Added a type argument so if the group is enabled,
10779         the setup_group_scheduler knows what to do.
10780         (group_elements): Added a type argument here, too, to be passed on
10781         to create_group.
10782         (group_element_set_enabled): If an unlinked PLAYING element is
10783         added to a bin, we have to create a new group to hold the element,
10784         and this function will be called before the group is added to the
10785         chain. Thus we have a valid case for group->chain==NULL. Instead
10786         of calling chain_group_set_enabled, just set the flag on the group
10787         (the chain's status will be set when the group is added to it).
10788         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
10789         Setup the group scheduler when the group is enabled, not
10790         specifically when an element goes PAUSED->PLAYING. This means
10791         PLAYING elements can be added, linked, and scheduled into a
10792         PLAYING pipeline, as was intended.
10793         (add_to_group): Don't ref the group twice. I don't know when this
10794         double-ref got in here. Removing it has the potential to cause
10795         segfaults if other parts of the scheduler are buggy. If you find
10796         that the scheduler is segfaulting for you, put in an extra ref
10797         here and see if that hacks over the underlying issue. Of course,
10798         then find out what code is unreffing a group it doesn't own...
10799         (create_group): Make the extra refcount floating, and remove it
10800         after adding the element. This means that...
10801         (unref_group): Destroy when the refcount reaches 0, not 1, like
10802         every other refcounted object in the known universe.
10803         (remove_from_group): When a group becomes empty, set it to be not
10804         active, and remove it from its chain. Don't unref it again,
10805         there's no floating reference any more.
10806         (destroy_group): We have to remove the group from the chain in
10807         remove_from_group (rather than here) to break refcounting cycles
10808         (the chain always has a ref on the group). So assert that
10809         group->chain==NULL.
10810         (ref_group_by_count): Removed, it was commented out anyway.
10811         (merge_chains): Use the remove_from_chain and add_to_chain
10812         primitives to do the reparenting, instead of rolling our own
10813         implementation.
10814         (add_to_chain): The first non-disabled group in the chain's group
10815         list will be the entry point for the chain. Because buffers can
10816         accumulate in loop elements' peer bufpens, we preferentially
10817         schedule loop groups before get groups to avoid unnecessary
10818         execution of get-based groups when the bufpens are already full.
10819         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
10820         (get_group_schedule_function): Ditto.
10821         (loop_group_schedule_function): Ditto.
10822         (gst_opt_scheduler_loop_wrapper): Ditto.
10823         (gst_opt_scheduler_iterate): Ditto.
10824
10825         I understand the opt scheduler now, yippee!
10826
10827         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
10828         (gst_pad_get_name, gst_pad_set_chain_function) 
10829         (gst_pad_set_get_function, gst_pad_set_event_function) 
10830         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
10831         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
10832         (gst_pad_set_query_function, gst_pad_get_query_types) 
10833         (gst_pad_get_query_types_default) 
10834         (gst_pad_set_internal_link_function) 
10835         (gst_pad_set_formats_function, gst_pad_set_link_function) 
10836         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
10837         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
10838         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
10839         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
10840         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
10841         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
10842         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
10843         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
10844         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
10845         (gst_pad_event_default_dispatch, gst_pad_event_default) 
10846         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
10847         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
10848         (gst_pad_get_formats_default, gst_pad_get_formats): Better
10849         argument checks, and some doc fixes.
10850
10851         (gst_pad_custom_new_from_template): Um, does anyone
10852         use these functions? Actually make a custom pad instead of a
10853         normal one.
10854         (gst_pad_try_set_caps): Transpose some checks.
10855         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
10856         the pad is in negotiation.
10857         (gst_pad_try_relink_filtered): Use pad_link_prepare.
10858         
10859         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
10860
10861         * gst/gstelement.h: 
10862         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
10863         on the list.
10864
10865 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10866
10867         * gst/gstbin.c: (gst_bin_add):
10868           add error for not being able to add elements
10869
10870 2004-02-22  Julien MOUTTE <julien@moutte.net>
10871
10872         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
10873         audio-codec and video-codec.
10874
10875 2004-02-22  Benjamin Otte  <otte@gnome.org>
10876
10877         reported by: Padraig O'Briain <padraig.obriain@sun.com>
10878
10879         * autogen.sh:
10880           replace test -e with test -x for mkinstalldirs to be more portable.
10881           (fixes #134816)
10882
10883 2004-02-22  Benjamin Otte  <otte@gnome.org>
10884
10885         * gst/gstpad.c:
10886           revert last patch from Andy, it makes gst_pad_can_link_filtered much
10887           too noisy
10888         * gst/gsttag.c: (_gst_tag_initialize):
10889         * gst/gsttag.h:
10890           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
10891         * libs/gst/control/dparam.c: (gst_dparam_attach):
10892         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
10893           check that types for attached dparams match
10894
10895 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10896
10897         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10898         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10899         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10900           fix errors
10901
10902 2004-02-20  Andy Wingo  <wingo@pobox.com>
10903
10904         * gst/gstbin.c:
10905         * gst/gstbuffer.c:
10906         * gst/gstplugin.c:
10907         * gst/registries/gstxmlregistry.c: 
10908         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
10909
10910         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
10911         (gst_element_add_pad): DEBUG->INFO, some fixes.
10912         (gst_element_get_compatible_pad_template): Just see if the
10913         templates' caps intersect, not if one is a strict subset of the
10914         other. This conforms more to what gst_pad_link_intersect() does.
10915         (gst_element_class_add_pad_template): Don't memcpy the pad
10916         template, just ref it.
10917         (gst_element_get_compatible_pad_filtered): Clean up debug messages
10918
10919         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
10920         (gst_pad_link_filtered): Debug changes.
10921         (gst_pad_link_prepare): New function, consolidated from
10922         can_link_filtered and link_filtered.
10923
10924         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
10925         look more like that of the functions in gstelement.c
10926
10927         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
10928         object, and return the empty string if object is NULL.
10929
10930         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
10931         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
10932         LOG, not DEBUG. We still get flex info on debug.
10933
10934         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
10935         debug string more verbose.
10936         (plugin_times_older_than): DEBUG->LOG.
10937
10938 2004-02-20  Julien MOUTTE <julien@moutte.net>
10939
10940         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
10941         will emit found_tag for each stream they demux with the codec.
10942
10943 2004-02-20  Benjamin Otte  <otte@gnome.org>
10944
10945         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
10946           copy navigation event correctly. Check freeing tag lists. 
10947         * gst/gstthread.c: (gst_thread_change_state):
10948           don't abort() on state changing mess - it might happen because of
10949           bugs.
10950         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
10951           use boxed functions
10952         * gst/gstvalue.h:
10953           fix GST_VALUE_HOLDS_CAPS
10954
10955 2004-02-19  David Schleef  <ds@schleef.org>
10956
10957         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
10958         and use it for GST_FUNCTION.  (bug #134750)
10959
10960 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10961
10962         * po/fr.po:
10963         * po/nl.po:
10964           updating translations
10965
10966 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10967
10968         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
10969
10970 2004-02-18  kost@imn.htwk-leipzig.de
10971
10972         reviewed by: David Schleef  <ds@schleef.org>
10973
10974         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
10975         for libgstcontrol.
10976
10977 2004-02-18  David Schleef  <ds@schleef.org>
10978
10979         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10980         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10981         (gst_dpsmooth_new): Additional fixes to get double dparams working.
10982         * tools/gst-inspect.c: (print_element_info): Support dumping of
10983         double dparam information.
10984
10985 2004-02-17  David Schleef  <ds@schleef.org>
10986
10987         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10988         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
10989         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
10990         Use GST_TYPE_CAPS in signal prototype.
10991         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
10992         Convert GST_TYPE_CAPS to boxed.
10993         * gst/gstelement.c: (gst_element_class_init):
10994         Use GST_TYPE_TAG_LIST in signal prototype.
10995         * gst/gstindex.c: (gst_index_class_init):
10996         * gst/gstindex.h:
10997         Add GST_TYPE_INDEX_ENTRY type.
10998         * gst/gstmarshal.list:
10999         Add necessary marshal types.
11000         * gst/gstpad.c: (gst_real_pad_class_init),
11001         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11002         (gst_pad_recover_caps_error):
11003         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11004         * gst/gststructure.c: (_gst_structure_initialize),
11005         (gst_structure_copy), (_gst_structure_copy_conditional):
11006         * gst/gststructure.h:
11007         Convert GST_TYPE_STRUCTURE to boxed.
11008         * gst/gsttag.c: (gst_tag_list_get_type):
11009         * gst/gsttag.h:
11010         Add GST_TYPE_TAG_LIST type.
11011
11012 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11013
11014         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11015         to what we agreed with david.
11016         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11017
11018 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11019
11020         * po/nl.po: update translation
11021
11022 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11023
11024         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11025           throw an error if spider is trying to play a mime type there is
11026           no decoder for
11027         * po/POTFILES.in:
11028           add gst/autoplug/gstspider.c for translation
11029
11030 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11031
11032         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11033         silently when the pad is negotiating.
11034
11035 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11036
11037         * docs/faq/Makefile.am:
11038           add script to run gstreamer uninstalled 
11039         * docs/faq/faq.xml:
11040         * docs/faq/developing.xml:
11041         * docs/faq/gst-uninstalled:
11042           extract script to run gstreamer uninstalled
11043         * docs/manuals.mak:
11044           add EXTRA_SOURCES variable for Makefile.am's to set to
11045           use additional SOURCE files for the doc build
11046
11047 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11048
11049         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11050
11051 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11052
11053         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11054         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11055         an error was thrown by osssink. Basically a state change failure for
11056         an element in a different scheduling group was considered as
11057         successful, which means that caps nego was going on and weird stuff
11058         happened. Like I wrote in the comment there, if someone wants to
11059         revert that please drop me a mail explaining why because I really see
11060         no point in keeping that broken behaviour there.
11061         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11062         be empty, we then return NULL which will trigger a nice error when 
11063         pulling from the pad.
11064
11065 2004-02-13  David Schleef  <ds@schleef.org>
11066
11067         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11068         (gst_dparam_get_property), (gst_dparam_set_property),
11069         (gst_dparam_do_update_default):
11070         * libs/gst/control/dparam.h:
11071         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11072         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11073         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11074         (gst_dpsmooth_do_update_double):
11075         * libs/gst/control/dparam_smooth.h:
11076         * libs/gst/control/dparammanager.c:
11077         (gst_dpman_inline_direct_update):
11078         Add support for double dparams.
11079
11080 2004-02-13  David Schleef  <ds@schleef.org>
11081
11082         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11083         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11084
11085 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11086
11087         reviewed by: David Schleef  <ds@schleef.org>
11088
11089         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11090         (gst_fdsrc_init), (gst_fdsrc_set_property),
11091         (gst_fdsrc_get_property), (gst_fdsrc_get):
11092         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11093         and sends an EOS event if file descriptor reading times out.
11094
11095 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11096
11097         * configure.ac:
11098           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11099
11100 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11101
11102         * configure.ac: pass required libxml version as argument
11103         (bug reported by Christophe Fergeau)
11104
11105 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11106   
11107         * docs/gst/gstreamer-docs.sgml:
11108         * docs/gst/tmpl/gstxml.sgml:
11109         * docs/libs/gstreamer-libs-docs.sgml:
11110           version API docs
11111
11112 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11113
11114         * gst/gstinfo.c:
11115         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11116         (gst_registry_pool_feature_filter):
11117         * gst/gstthread.c: (gst_thread_class_init):
11118         * gst/gstvalue.c:
11119           add includes exposed by building without libxml
11120         * gst/indexers/Makefile.am:
11121           do not build fileindex when LOADSAVE disabled; we should have
11122           a better libxml check later since fileindex depends on xml, not
11123           LOADSAVE or REGISTRY
11124         * libs/gst/control/Makefile.am:
11125           link with m
11126         * tools/Makefile.am:
11127           fix wrong source code for gst-xmlinspect
11128
11129 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11130
11131         * configure.ac:
11132           fix gcov help output
11133           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11134         * docs/random/release:
11135           some updated releasing notes
11136         * gstreamer.spec.in:
11137           more updates
11138
11139 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11140
11141         * docs/faq/faq.xml:
11142         * docs/manual/manual.xml:
11143         * docs/pwg/pwg.xml:
11144         * docs/pwg/titlepage.xml:
11145           put version in documentation
11146
11147 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11148
11149         * tools/Makefile.am: fix man page installation
11150
11151 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11152
11153         * configure.ac:
11154           don't check for libxml when load/save and registry disabled (#105844)
11155         * gstreamer.spec.in:
11156           sync with fedora candidate spec
11157
11158 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11159
11160         * po/fr.po:
11161         * po/nl.po:
11162           replace multidisksrc with multifilesrc
11163
11164 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11165
11166         * po/POTFILES.in:
11167           update to multidisksrc => multifilesrc file renaming (#134145)
11168
11169 2004-02-11  David Schleef  <ds@schleef.org>
11170
11171         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11172         * docs/gst/tmpl/gstpadtemplate.sgml: same
11173         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11174         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11175         fixing dance.
11176         * gst/gstutils.c: Remove disabled code that uses GstProps.
11177         * gst/registries/gstxmlregistry.h: same
11178         * docs/random/ds/0.9-suggested-changes: random notes
11179
11180 2004-02-11  kost@imn.htwk-leipzig.de
11181
11182         reviewed by: David Schleef  <ds@schleef.org>
11183
11184         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11185         initialisation of clock (bug #134128)
11186
11187 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11188
11189         * configure.ac:
11190         * gst/elements/Makefile.am:
11191         * gst/elements/gstelements.c:
11192         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11193         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11194         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11195         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11196         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11197         * gst/elements/gstmultifilesrc.h:
11198           rename multidisksrc to multifilesrc (part of #122200)
11199
11200 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11201
11202         * docs/manuals.mak:
11203           fix automake complaints
11204         * gst-element-check.m4:
11205           fix unquotedness
11206
11207 2004-02-11  David Schleef  <ds@schleef.org>
11208
11209         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11210         * gst/gstatomic_impl.h: Disable sparc implementation.
11211
11212 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11213
11214         * gst-element-check.m4:
11215           fix underquoted macros as reported by automake 1.8.x (#133800)
11216         * configure.ac:
11217           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11218           by autopoint (fixes #132996)
11219
11220 2004-02-10  Andy Wingo  <wingo@pobox.com>
11221
11222         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11223         way to do inheritance.
11224         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11225         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11226         Routine docs.
11227         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11228         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11229         doc.
11230         (gst_pad_unlink, gst_pad_is_linked): Docs.
11231         (gst_pad_renegotiate): A brief description of capsnego.
11232         (gst_pad_try_set_caps): Document.
11233         (gst_pad_try_set_caps_nonfixed): Document.
11234         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11235         (gst_pad_set_parent): Deprecated (although not out of the API).
11236         (gst_pad_get_parent): Deprecated, although many plugins use this.
11237         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11238         are private and will go away in 0.9.
11239         (gst_pad_perform_negotiate): Doc.
11240         (gst_pad_link_unnegotiate): I think this is meant to be static.
11241         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11242         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11243         (gst_pad_get_peer): Doc updates.
11244         (gst_pad_caps_change_notify): Doc.
11245         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11246         (gst_ghost_pad_new): Doc fixes.
11247
11248         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11249         (gst_object_check_uniqueness): 
11250
11251         * gst/gstelement.c (gst_element_add_pad) 
11252         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11253         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11254         (gst_element_get_static_pad, gst_element_get_pad_list) 
11255         (gst_element_class_get_pad_template_list) 
11256         (gst_element_class_get_pad_template): Work on the docs.
11257         (gst_element_get_pad_template_list): Uses the class method.
11258         (gst_element_get_compatible_pad_template): Docs, and consolidate
11259         some test conditions. 
11260         (gst_element_get_pad_from_template): New static function.
11261         (gst_element_request_compatible_pad): Docs, and work with
11262         non-request compatible templates. 
11263         (gst_element_get_compatible_pad_filtered): Docs and remove
11264         redundant checks.
11265         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11266         (gst_element_link_filtered, gst_element_link_many) 
11267         (gst_element_link, gst_element_link_pads) 
11268         (gst_element_unlink_many): Docs.
11269
11270 2004-02-05  Andy Wingo  <wingo@pobox.com>
11271
11272         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11273         s/pointer/boxed/.
11274
11275         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11276
11277         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11278         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11279         with the type=GST_TYPE_CAPS. This allows language bindings to know
11280         what kind of data they're dealing with.
11281
11282         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11283         to NULL when g_value_init is called. GstCaps, which rolls its own
11284         type implementation, now does the same instead of allocating empty
11285         caps.
11286         (_gst_caps_initialize, _gst_caps_collect_value,
11287         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11288         table methods. This allows G_VALUE_COLLECT to work.
11289
11290 2004-02-05  Andy Wingo  <wingo@pobox.com>
11291
11292         * configure.ac:
11293         * testsuite/Makefile.am (SUBDIRS): 
11294         * testsuite/ghostpads/Makefile.am: 
11295         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11296
11297         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11298         These two routines are the only ones that set
11299         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11300         pad template. They should be made static, depending on ABI needs.
11301         (gst_real_pad_dispose): Handle the case of ghost pads without a
11302         parent. Assert after dealing with ghost pads that the ghost pad
11303         list is empty.
11304         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11305         set after creation.
11306         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11307         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11308         functions. set_property will call add_ghost_pad/remove_ghost_pad
11309         as appropriate.
11310         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11311
11312         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11313         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11314         (gst_element_remove_pad): Handle ghost pads as well.
11315         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11316         depending on API-stability needs).
11317
11318 2004-02-05  Andy Wingo  <wingo@pobox.com>
11319
11320         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11321         of course they're const
11322
11323 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11324
11325         * tools/Makefile.am:
11326         * tools/gst-feedback:
11327         * tools/gst-feedback-0.7:
11328           make gst-feedback versioned too for consistency
11329
11330 2004-02-11  David Schleef  <ds@schleef.org>
11331
11332         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11333         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11334
11335 2004-02-10  Julien MOUTTE <julien@moutte.net>
11336
11337         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11338         the structure does not contain a valid tag list. Adding a safety check
11339         to remove a noisy warning in that case.
11340
11341 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11342
11343         * gst/gst.c: fix name to be in line with others
11344
11345 2004-02-09  Julien MOUTTE <julien@moutte.net>
11346
11347         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11348         not shout that loud when len is 0. Just return 0 silently.
11349
11350 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11351
11352         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11353         because data_unref has one and I prefer the debug to be symetric.
11354         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11355         were refed when added to the queue and unrefed only once when the queue
11356         was flushed. Now the flush handler unref the buffers two times : first
11357         unref for the ref added when pushing in the queue's tail and second
11358         unref to destroy the flushed buffer.
11359
11360 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11361
11362         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11363
11364 2004-02-06  David Schleef  <ds@schleef.org>
11365
11366         * docs/random/ds/0.9-suggested-changes: Random ramblings
11367         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11368         to int before printing.
11369         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11370         * gst/parse/parse.l: same.  See bug #129600
11371
11372 2004-02-06  David Schleef  <ds@schleef.org>
11373
11374         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11375         (gst_index_add_entry), (gst_index_add_associationv),
11376         (gst_index_add_association): Add gst_index_add_associationv()
11377         and clean up gst_index_add_association(). #127133
11378
11379 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11380
11381         * autogen.sh: check out common with right tag if CVS/Tag exists
11382
11383 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11384
11385         * testsuite/ghostpads/ghostpads.c: (main):
11386           fix testsuite from segfaulting
11387
11388 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11389
11390         * Makefile.am: add release target
11391         * configure.ac: bump nano to 1
11392         * docs/random/release:
11393
11394 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11395
11396         * gst/gstcaps.h:
11397         * gst/gstelement.c: (gst_element_base_class_init),
11398         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11399         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11400         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11401         (gst_real_pad_dispose):
11402         * gst/gststructure.c: (gst_structure_free),
11403         (gst_structure_from_string):
11404           put reverted patch back in
11405         * gst/gstelement.c: (gst_element_remove_pad):
11406           free explicit caps if they're set
11407         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11408           copy the structure when fixating
11409
11410 2004-02-05  David Schleef  <ds@schleef.org>
11411
11412         * gst/gstmarshal.list:
11413         * gst/gstpad.c: (gst_real_pad_class_init),
11414         (_gst_real_pad_fixate_accumulator):
11415         Revert POINTER->BOXED change in signal marshaller.
11416
11417 === release 0.7.4 ===
11418                                                                                 
11419 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11420                                                                                 
11421         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11422         * configure.ac: changed for release
11423
11424 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11425
11426         * gstreamer.spec.in:
11427           bump required version of gtk-doc
11428
11429 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11430
11431         * gst/gstcaps.h:
11432         * gst/gstelement.c: (gst_element_base_class_init),
11433         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11434         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11435         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11436         (gst_real_pad_dispose):
11437         * gst/gststructure.c: (gst_structure_free),
11438         (gst_structure_from_string):
11439           revert patch that breaks applications, reapply after release
11440           to get this fixed properly
11441
11442 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11443
11444         * gst/gsttag.c: (_gst_tag_initialize):
11445         * gst/gsttag.h:
11446           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11447
11448 2004-02-04  David Schleef  <ds@schleef.org>
11449
11450         Fix some memleaks:
11451         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11452         (gst_spider_plug_from_srcpad):
11453         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11454
11455 2004-02-04  David Schleef  <ds@schleef.org>
11456
11457         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11458         a GstRealPad before accessing its structure members.
11459
11460 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11461
11462         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11463         (gst_clock_get_speed):
11464         * gst/gstclock.h:
11465           reset padding, remove unused fields
11466
11467 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11468
11469         * gst/autoplug/gstspideridentity.c:
11470         (gst_spider_identity_sink_loop_type_finding):
11471           use get_allowed_caps, not get_caps (fixes #132519)
11472         * gst/elements/gsttypefind.c: (stop_typefinding):
11473           use correct order when sending buffers and seeking
11474
11475 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11476
11477         * configure.ac:
11478         * gst/gstelement.h:
11479         * gst/gstpad.h:
11480         * gst/gstqueue.h:
11481           upgrade libtool CURRENT, reset padding
11482
11483 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11484
11485         * configure.ac:
11486           bump to prerelease
11487           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11488
11489 2004-02-04  David Schleef  <ds@schleef.org>
11490
11491         * docs/random/ds/0.9-suggested-changes: random notes
11492         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11493         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11494         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11495         expansion.
11496         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11497         (gst_filesink_get_query_types): same
11498         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11499         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11500         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11501         to use new GST_PTR_FORMAT.
11502         * gst/gstelement.h: deprecate function factory macros
11503         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11504         These are our last variadic macros that can't be replaced with
11505         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11506         attempting to deprecate gst_element_clock_wait().
11507         * gst/gstevent.h: same
11508         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11509         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11510         * gst/gstpad.h: deprecate function factory macros similar to above.
11511
11512 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11513
11514         * configure.ac:
11515         * tools/Makefile.am:
11516         * tools/gst-run.c: (popt_callback), (hash_print_key),
11517         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11518         (get_candidates), (main):
11519           add new source file to generate non-versioned wrapper binaries
11520           for our tools.
11521
11522 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11523
11524         * gst/gstevent.c: (_gst_event_free):
11525           actually break; inside the switch statement
11526         * gst/parse/grammar.y:
11527           fix memleak where GValues weren't unset
11528
11529 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11530
11531         * gst/gststructure.c: (gst_structure_from_string):
11532           fix huge memleak
11533         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11534         (new_entry), (gst_type_find_element_chain):
11535         * gst/gstelement.c: (gst_element_base_class_init),
11536         (gst_element_class_set_details):
11537         * gst/gstpad.c: (gst_pad_can_link_filtered):
11538           fix smaller memleaks
11539         * gst/gstpad.c: (gst_real_pad_dispose):
11540           check that explicit caps are gone
11541         * gst/gststructure.c: (gst_structure_free):
11542           actually free the structure
11543         * gst/gstelement.c: (gst_element_clear_pad_caps):
11544           unset explicit caps
11545
11546 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11547
11548         * tools/Makefile.am:
11549           use AM_CFLAGS since all the CFLAGS are the same
11550           use AM_LDFAGS
11551
11552 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11553
11554         * docs/manual/gnome.xml:
11555           expand example a little
11556         * gst/gst.c: (gst_init_with_popt_table),
11557         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11558           make sure popt option displays are done with right textdomain
11559           use GstPoptOption type
11560         * gst/gst.h:
11561           create GstPoptOption type
11562
11563 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11564
11565         * gst/gsterror.c: (_gst_stream_errors_init):
11566         * gst/gsterror.h:
11567           adding error type for no codec
11568         * po/POTFILES.in:
11569           add gst-inspect
11570         * po/nl.po:
11571           update dutch translation
11572         * tools/gst-inspect.c: (print_element_list), (main):
11573           do proper internationalization
11574         * tools/gst-launch.c: (idle_func):
11575           remove commented out function call
11576
11577 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11578
11579         * docs/README:
11580           add some error fixing notes
11581         * docs/gst/gstreamer-sections.txt:
11582           remove double entries
11583         * docs/gst/tmpl/gstbin.sgml:
11584         * docs/gst/tmpl/gstclock.sgml:
11585           remove override
11586         * docs/gst/tmpl/gstelement.sgml:
11587         * docs/gst/tmpl/gstindex.sgml:
11588         * docs/gst/tmpl/gstobject.sgml:
11589         * docs/gst/tmpl/gstpadtemplate.sgml:
11590         * docs/gst/tmpl/gstreamer-unused.sgml:
11591         * docs/gst/tmpl/gsttag.sgml:
11592         * docs/gst/tmpl/gstthread.sgml:
11593         * docs/gst/tmpl/gstxml.sgml:
11594         * gst/gsttag.h:
11595           sync header prototypes with c decls
11596         * gst/gsttaginterface.c:
11597           fix doc headers
11598
11599 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11600
11601         * gst/parse/Makefile.am:
11602         * gst/gstobject.h:
11603           get rid of gstmarshal.h dependency. It's not needed.
11604         * gst/gst.h:
11605         * gst/elements/gstfakesink.c:
11606         * gst/elements/gstfakesrc.c:
11607         * gst/elements/gstidentity.c:
11608         * gst/gstbin.c:
11609         * gst/gstelement.c:
11610         * gst/gstindex.c:
11611         * gst/gstobject.c:
11612         * gst/gstpad.c:
11613         * gst/gstthread.c:
11614         * gst/gstxml.c:
11615         * libs/gst/control/dparam.c:
11616         * libs/gst/control/dparammanager.c:
11617           include gstmarshal.h.
11618         Fixes #132045
11619
11620 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11621
11622         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11623         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11624         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11625         * gst/elements/gstfilesrc.h:
11626           don't ref the filesrc when creating mmaped buffers. Don't keep a
11627           list of not-yet-destroyed buffers.
11628         * gst/gstbuffer.h:
11629           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11630
11631 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11632
11633         * gst/gst.c: (init_pre):
11634           remove textdomain
11635
11636 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11637
11638         * docs/pwg/advanced-events.xml:
11639         * docs/pwg/advanced-scheduling.xml:
11640         * docs/pwg/intro-basics.xml:
11641         * docs/pwg/other-manager.xml:
11642         * docs/pwg/other-nton.xml:
11643         * docs/pwg/other-ntoone.xml:
11644         * docs/pwg/other-oneton.xml:
11645         * docs/pwg/pwg.xml:
11646           All sort of documentation... Forgot what. Point is that I want this
11647           in before I leave. The 'other-*' will be the last section and will
11648           explain issues specific to these type of elements.
11649
11650 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11651
11652         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11653         (gst_filesrc_get_read):
11654           set all the values on buffers that we can
11655
11656 2004-02-02  David Schleef  <ds@schleef.org>
11657
11658         Change usage of isblah() to g_ascii_isblah() to be more locale
11659         independent.  (#133076)
11660         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11661         * gst/gstutils.c:
11662         * gst/parse/parse.l:
11663
11664 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11665
11666         reviewed by: David Schleef  <ds@schleef.org>
11667
11668         Fix memory leaks:
11669         * gst/gstcaps.c: (gst_caps_to_string):
11670         * gst/registries/gstxmlregistry.c:
11671         (gst_xml_registry_add_path_list_func),
11672         (gst_xml_registry_parse_padtemplate):
11673
11674 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11675
11676         * gst/gstelement.c: (gst_element_default_error):
11677           suffix error messages with period
11678
11679 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11680
11681         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11682         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11683         * gst/gsterror.c: (gst_error_get_message):
11684           Suffix with dots
11685         * po/fr.po:
11686         * po/nl.po:
11687           Update translation files
11688
11689 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11690
11691         * gst/autoplug/gstspideridentity.c:
11692         (gst_spider_identity_sink_loop_type_finding):
11693         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11694         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11695         (gst_filesink_close_file), (gst_filesink_handle_event),
11696         (gst_filesink_chain):
11697         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11698         (gst_filesrc_get_read), (gst_filesrc_open_file):
11699         * gst/elements/gstidentity.c: (gst_identity_chain):
11700         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11701         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11702         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11703         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11704         * gst/gsterror.c: (_gst_core_errors_init),
11705         (_gst_library_errors_init), (_gst_resource_errors_init),
11706         (_gst_stream_errors_init), (gst_error_get_message):
11707         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11708         (gst_pad_recover_caps_error), (gst_pad_pull):
11709         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11710         * gst/schedulers/gstbasicscheduler.c:
11711         (gst_basic_scheduler_chainhandler_proxy),
11712         (gst_basic_scheduler_gethandler_proxy),
11713         (gst_basic_scheduler_cothreaded_chain):
11714           Suffix error messages with period.
11715           Use (NULL) instead of NULL
11716
11717 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11718
11719         * docs/gst/tmpl/gstelement.sgml:
11720         * docs/gst/tmpl/gstxml.sgml:
11721         * gst/gstelement.c: (gst_element_error_full):
11722           add element path to error
11723
11724 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11725
11726         * docs/random/mimetypes:
11727           update raw int/float info
11728         * gst/gsttag.c: (_gst_tag_initialize):
11729         * gst/gsttag.h:
11730           add GST_TAG_ENCODER
11731
11732 2004-01-30  David Schleef  <ds@schleef.org>
11733
11734         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11735           missing (#132991)
11736
11737 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11738
11739         reviewed by Benjamin Otte 
11740           parts of the patch submitted in bug #113913
11741
11742         * configure.ac:
11743           use AC_C_INLINE. Use = instead of == with test
11744         * examples/plugins/example.c:
11745         * gst/autoplug/gstspideridentity.c:
11746         * gst/elements/gstfdsrc.c:
11747         * gst/elements/gstfilesrc.c:
11748         * gst/elements/gstidentity.c:
11749         * gst/elements/gstmultidisksrc.c:
11750         * gst/elements/gststatistics.c:
11751         * gst/gstelement.c:
11752         * gst/gstobject.c:
11753         * gst/gstpad.c:
11754         * gst/gstpipeline.c:
11755         * gst/gstthread.c:
11756           don't end enums with a comma
11757         * gst/gstindex.c: (gst_index_compare_func):
11758           do explicit casting to gint
11759         * gst/gsttrace.c: (gst_trace_text_flush):
11760           #define strsize as a macro
11761
11762 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11763
11764         * docs/README:
11765         * docs/gst/gstreamer-docs.sgml:
11766         * docs/gst/gstreamer-sections.txt:
11767         * docs/gst/tmpl/gstelement.sgml:
11768         * docs/gst/tmpl/gsterror.sgml:
11769         * docs/gst/tmpl/gstinterface.sgml:
11770         * docs/gst/tmpl/gstreamer-unused.sgml:
11771         * docs/gst/tmpl/gststructure.sgml:
11772         * docs/gst/tmpl/gsttag.sgml:
11773         * docs/gst/tmpl/gsttaginterface.sgml:
11774         * docs/gst/tmpl/gstvalue.sgml:
11775         make sure all API ends up in the built docs
11776         * gst/gstinterface.c:
11777         * gst/gststructure.c: (gst_structure_id_set_value),
11778         (gst_structure_set_value), (gst_structure_id_get_value):
11779         * gst/gststructure.h:
11780         * gst/gstvalue.h:
11781         sync .h with .c declarations
11782
11783 2004-01-30  Julien Moutte  <julien@moutte.net>
11784
11785         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
11786         Ronald will fix riffread.
11787
11788 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11789
11790         * docs/pwg/advanced-interfaces.xml:
11791           Added tuner interface docs.
11792
11793 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11794
11795         * docs/random/mimetypes:
11796           correct Theora information
11797         * gst/gstelement.h:
11798           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
11799
11800 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11801
11802         * gst/gstelement.c: (gst_element_error_full):
11803         * gst/gstelement.h:
11804           GST_ELEMENT_ERROR in enum -> _IN_ERROR
11805
11806 2004-01-29  Julien MOUTTE  <julien@moutte.net>
11807
11808         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11809         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
11810         again and even before DISCONT.
11811         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
11812         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
11813         bytestream so that it's not stopping to fill the bytestream if events
11814         different than EOS or DISCONT are received. Instead it process them so
11815         that they go downstream.
11816
11817 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11818
11819         * docs/gst/tmpl/gstelement.sgml:
11820         * docs/gst/tmpl/gstreamer-unused.sgml:
11821         * docs/gst/tmpl/gstxml.sgml:
11822         * gst/autoplug/gstspideridentity.c:
11823         (gst_spider_identity_sink_loop_type_finding):
11824         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11825         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11826         (gst_filesink_close_file), (gst_filesink_handle_event),
11827         (gst_filesink_chain):
11828         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11829         (gst_filesrc_get_read), (gst_filesrc_open_file):
11830         * gst/elements/gstidentity.c: (gst_identity_chain):
11831         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11832         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11833         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11834         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11835         * gst/gstelement.h:
11836         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11837         (gst_pad_recover_caps_error), (gst_pad_pull):
11838         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11839         * gst/schedulers/gstbasicscheduler.c:
11840         (gst_basic_scheduler_chainhandler_proxy),
11841         (gst_basic_scheduler_gethandler_proxy),
11842         (gst_basic_scheduler_cothreaded_chain):
11843           gst_element_error -> GST_ELEMENT_ERROR
11844
11845 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11846
11847         * docs/Makefile.am:
11848         * docs/gst/tmpl/gstelement.sgml:
11849         * docs/gst/tmpl/gstxml.sgml:
11850         * docs/manuals.mak:
11851         * docs/pwg/advanced-request.xml:
11852         * docs/pwg/advanced-scheduling.xml:
11853         * docs/pwg/advanced-tagging.xml:
11854           fix non-validating docbook using CDATA
11855           make sure make check-local gets run first to check if it validates
11856
11857 2004-01-29  Julien MOUTTE <julien@moutte.net>
11858
11859         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
11860         handling (up and downstream).
11861         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
11862         my_filter thing.
11863
11864 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11865
11866         * docs/pwg/advanced-tagging.xml:
11867           Add docs about tag writing.
11868
11869 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11870
11871         * docs/pwg/advanced-tagging.xml:
11872           Add a part about tag reading and application signalling... Tag
11873           writing still needs to be documented.
11874         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11875           We can set file locations in READY, too.
11876
11877 2004-01-29  Julien MOUTTE <julien@moutte.net>
11878
11879         * docs/random/ds/element-checklist: Adding some notes about src
11880         events.
11881
11882 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11883
11884         * docs/random/mimetypes:
11885           Update docs to point to correct elements for various mimetypes, and
11886           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
11887           <stephane.loeuillet@tiscali.fr>.
11888
11889 2004-01-28  David Schleef  <ds@schleef.org>
11890
11891         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
11892
11893 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11894
11895         * docs/random/mimetypes:
11896           update docs for audio/x-raw-float. Add "buffer-frames=0 means
11897           undefined"
11898         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11899           make it only work in NULL.
11900         * gst/gstcaps.c:
11901           don't posion NULL caps
11902         * gst/gstelement.c: (gst_element_set_time):
11903           add debugging statement
11904         * gst/gstelement.c: (gst_element_emit_found_tag),
11905         (gst_element_found_tag_func), (gst_element_found_tags):
11906         * gst/gstelement.h:
11907           These functions take const taglists
11908         * gst/gstpad.c: (gst_pad_proxy_getcaps):
11909           fix memleak
11910         * gst/gstpad.c: (gst_pad_event_default):
11911           make more effort on handling discont and clocks, g_warn if everything
11912           fails
11913         * gst/gststructure.c: (gst_structure_remove_fields),
11914         (gst_structure_remove_fields_valist):
11915         * gst/gststructure.h:
11916           add gst_structure_remove_fields(_valist)
11917         * gst/gsttag.c:
11918           fix doc glitch
11919
11920 2004-01-28  David Schleef  <ds@schleef.org>
11921
11922         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
11923         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
11924         Fix memory leakage of gst_caps_to_string().
11925
11926         Use GST_PTR_FORMAT instead of gst_caps_to_string():
11927         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
11928         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
11929         (gst_spider_identity_sink_loop_type_finding):
11930         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11931         (find_suggest):
11932         * gst/gstpad.c: (gst_pad_try_relink_filtered),
11933         (gst_pad_set_explicit_caps):
11934         * gst/parse/grammar.y:
11935
11936 2004-01-28  David Schleef  <ds@schleef.org>
11937
11938         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
11939         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
11940         * docs/random/ds/0.9-suggested-changes: Notes from Company.
11941         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
11942         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
11943         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
11944         (gst_debug_log_default), (_gst_info_printf_extension),
11945         (_gst_info_printf_extension_arginfo):  Add printf extension.
11946         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
11947         * gst/gststructure.c: (gst_structure_to_string),
11948         (_gst_structure_parse_value): Use gst_value_deserialize() and
11949         remove old code.
11950         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
11951         (gst_value_deserialize_boolean), (gst_strtoi),
11952         (gst_value_deserialize_int), (gst_value_deserialize_double),
11953         (gst_value_deserialize_string), (gst_value_deserialize): Implement
11954         a bunch of deserialize functions and gst_value_deserialize.
11955         * gst/gstvalue.h: er, _de_serialize, not unserialize
11956         * testsuite/caps/string-conversions.c: (main): We don't currently
11957         handle (float) in caps, so convert these to (double).
11958         * testsuite/debug/Makefile.am: Add new test for the printf extension
11959         * testsuite/debug/printf_extension.c: (main): same
11960
11961 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11962
11963         * docs/random/company/time:
11964           Add some docs about clocking and time
11965
11966 2004-01-28  Julien MOUTTE <julien@moutte.net>
11967
11968         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
11969
11970 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11971
11972         * docs/pwg/advanced-clock.xml:
11973         * docs/pwg/advanced-dparams.xml:
11974         * docs/pwg/advanced-events.xml:
11975         * docs/pwg/advanced-interfaces.xml:
11976         * docs/pwg/advanced-midi.xml:
11977         * docs/pwg/advanced-request.xml:
11978         * docs/pwg/advanced-scheduling.xml:
11979         * docs/pwg/advanced-tagging.xml:
11980         * docs/pwg/advanced-types.xml:
11981         * docs/pwg/appendix-checklist.xml:
11982         * docs/pwg/building-boiler.xml:
11983         * docs/pwg/building-chainfn.xml:
11984         * docs/pwg/building-filterfactory.xml:
11985         * docs/pwg/building-pads.xml:
11986         * docs/pwg/building-props.xml:
11987         * docs/pwg/building-signals.xml:
11988         * docs/pwg/building-state.xml:
11989         * docs/pwg/building-testapp.xml:
11990         * docs/pwg/intro-basics.xml:
11991         * docs/pwg/intro-preface.xml:
11992         * docs/pwg/other-autoplugger.xml:
11993         * docs/pwg/other-sink.xml:
11994         * docs/pwg/other-source.xml:
11995         * docs/pwg/titlepage.xml:
11996           fix up id's
11997
11998 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11999
12000         * docs/95NonPath:
12001         * docs/HACKING:
12002         * docs/README:
12003         * docs/building-the-docs-on-debian:
12004           collect relevant bits of doc info
12005
12006 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12007
12008         * docs/pwg/advanced_tagging.xml:
12009           Half-assed commit so Thomas can re-arrange document IDs here to be
12010           consistent, too.
12011
12012 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12013
12014         * docs/manual/autoplugging.xml:
12015         * docs/manual/bins-api.xml:
12016         * docs/manual/bins.xml:
12017         * docs/manual/buffers-api.xml:
12018         * docs/manual/buffers.xml:
12019         * docs/manual/clocks.xml:
12020         * docs/manual/components.xml:
12021         * docs/manual/cothreads.xml:
12022         * docs/manual/debugging.xml:
12023         * docs/manual/dparams-app.xml:
12024         * docs/manual/dynamic.xml:
12025         * docs/manual/elements-api.xml:
12026         * docs/manual/elements.xml:
12027         * docs/manual/factories.xml:
12028         * docs/manual/gnome.xml:
12029         * docs/manual/goals.xml:
12030         * docs/manual/helloworld.xml:
12031         * docs/manual/helloworld2.xml:
12032         * docs/manual/init-api.xml:
12033         * docs/manual/intro.xml:
12034         * docs/manual/links-api.xml:
12035         * docs/manual/links.xml:
12036         * docs/manual/manual.xml:
12037         * docs/manual/motivation.xml:
12038         * docs/manual/pads-api.xml:
12039         * docs/manual/pads.xml:
12040         * docs/manual/plugins-api.xml:
12041         * docs/manual/plugins.xml:
12042         * docs/manual/programs.xml:
12043         * docs/manual/queues.xml:
12044         * docs/manual/quotes.xml:
12045         * docs/manual/schedulers.xml:
12046         * docs/manual/states-api.xml:
12047         * docs/manual/states.xml:
12048         * docs/manual/threads.xml:
12049         * docs/manual/typedetection.xml:
12050         * docs/manual/xml.xml:
12051           use chapter, part, section or misc as id starts for all bits
12052
12053 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12054
12055         * docs/gst/gstreamer-sections.txt:
12056           Fix up TITLE of the sections
12057
12058 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12059
12060         * docs/pwg/advanced_interfaces.xml:
12061           Add documentation on propertyprobing.
12062         * docs/pwg/advanced_events.xml:
12063         * docs/pwg/advanced_tagging.xml:
12064         * docs/pwg/building_boiler.xml:
12065         * docs/pwg/building_filterfactory.xml:
12066         * docs/pwg/pwg.xml:
12067           Move filterfactory and tagging into their own chapter, add a chapter
12068           on events. all these are empty placeholders that will be filled in
12069           some day.
12070
12071 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12072
12073         * docs/pwg/advanced_interfaces.xml:
12074           Docs for mixer interface. Also a check for website uploading.
12075
12076 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12077
12078         * docs/HACKING:
12079         * docs/Makefile.am:
12080         * docs/faq/Makefile.am:
12081         * docs/gst/Makefile.am:
12082         * docs/gst/tmpl/gstelement.sgml:
12083         * docs/gst/tmpl/gstplugin.sgml:
12084         * docs/gst/tmpl/gstreamer-unused.sgml:
12085         * docs/libs/Makefile.am:
12086         * docs/manual/Makefile.am:
12087         * docs/manuals.mak:
12088         * docs/pwg/Makefile.am:
12089         * docs/upload.mak:
12090           Separate out upload target and make it similar for
12091           both docbook and gtk-doc docs
12092
12093 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12094
12095         * docs/manuals.mak:
12096           Fix upload target to work with freedesktop
12097
12098 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12099
12100         * docs/pwg/advanced_types.xml:
12101           Add notes on creating your own types.
12102         * docs/pwg/building_boiler.xml:
12103         * docs/pwg/building_pads.xml:
12104         * docs/pwg/building_state.xml:
12105           Add some stuff about how to retrieve values from structures, how
12106           that relates to types and change layout slightly again to be almost
12107           perfect.
12108
12109 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12110
12111         * docs/pwg/advanced_dparams.xml:
12112         * docs/pwg/advanced_scheduling.xml:
12113           Change index layout slightly.
12114
12115 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12116
12117         * docs/pwg/advanced_clock.xml:
12118         * docs/pwg/advanced_interfaces.xml:
12119         * docs/pwg/advanced_midi.xml:
12120           General placeholders for now.
12121         * docs/pwg/advanced_request.xml:
12122           Explanation about sometimes and request pads.
12123         * docs/pwg/advanced_scheduling.xml:
12124           Concept of bytestream, loopfunctions and schedulers.
12125         * docs/pwg/building_boiler.xml:
12126           Add something about plugin-init.
12127
12128 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12129
12130         * docs/pwg/building_pads.xml:
12131           Fix broken docbook
12132
12133 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12134
12135         * docs/pwg/advanced_interfaces.xml:
12136         * docs/pwg/pwg.xml:
12137           Add as a placeholder for future filling-in.
12138         * docs/pwg/basics_autoplugging.xml:
12139         * docs/pwg/basics_buffers.xml:
12140         * docs/pwg/basics_elements.xml:
12141         * docs/pwg/basics_events.xml:
12142         * docs/pwg/basics_plugins.xml:
12143         * docs/pwg/basics_types.xml:
12144           Remove, because unused (this is all in intro_basics.xml).
12145         * docs/pwg/building_signals.xml:
12146           Short intro to signals + reference to GObject docs - we really
12147           shouldn't go into these sort of things to deply because we don't
12148           use them that extensively anyway.
12149         * docs/pwg/building_state.xml:
12150           Explanation of states. Benjamin, please check.
12151         * docs/pwg/building_testapp.xml:
12152           Put everything in one page - putting only a few lines of content
12153           per page doesn't really make sense.
12154
12155           Time to get into the advanced topics. ;).
12156
12157 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12158
12159         * docs/pwg/advanced_types.xml:
12160           Finish documenting the current state of mimetypes.
12161         * docs/pwg/building_boiler.xml:
12162         * docs/pwg/building_chainfn.xml:
12163         * docs/pwg/building_pads.xml:
12164         * docs/pwg/building_props.xml:
12165         * docs/pwg/building_testapp.xml:
12166           Start documenting the "how to build a simple audio filter" part
12167           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12168           states and (maybe?) a short introduction to capsnego in the chapter
12169           on pads (building_pads.xml). Capsnego should probably be explained
12170           fully in advanced_capsnego.xml or so.
12171
12172 2004-01-26  David Schleef  <ds@schleef.org>
12173
12174         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12175         * gst/gstpad.h: Add new function to allow element to (somewhat)
12176         specify non-fixed caps on a pad.
12177         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12178         that I added a few weeks ago.
12179
12180 2004-01-26  David Schleef  <ds@schleef.org>
12181
12182         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12183           making try_set_caps() work with non-fixed caps.
12184
12185 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12186
12187         * docs/pwg/advanced_types.xml:
12188         * docs/pwg/intro_basics.xml:
12189         * docs/pwg/intro_preface.xml:
12190         * docs/pwg/pwg.xml:
12191         * docs/pwg/titlepage.xml:
12192           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12193           in here (docs/random/mimetypes), and will from there on work on both
12194           updating outdated parts and adding missing parts.
12195           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12196
12197 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12198
12199         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12200           policy is set
12201
12202 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12203
12204         * gst/gstelement.h:
12205           remove gst_element_factory_get_version. It doesn't exist anymore.
12206         * gst/gstplugin.c:
12207         * gst/gstplugin.h:
12208           remove gst_plugin_set_name and change gst_plugin_get_longname to
12209           gst_plugin_get_description to match code.
12210         * gst/gsterror.h:
12211           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12212         * gst/gstpad.c: (gst_pad_try_set_caps):
12213           make it work with nonfixed caps.
12214           Note that even in the nonfixed case the link function of the pad
12215           that tries to set caps isn't called.
12216
12217 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12218
12219         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12220           fix bug where buffer was not assembled correctly
12221         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12222           silence by default
12223         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12224           only seek if there's no more buffers that could work without seeking
12225
12226 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12227
12228         * gst/gsttag.c: (_gst_tag_initialize):
12229         * gst/gsttag.h:
12230           Add application tag (for encoding/muxing app).
12231
12232 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12233
12234         * autogen.sh:
12235           make autopoint force, and libtoolize not copy
12236         * common/m4/as-docbook.m4:
12237           added docbook xml catalog setup check
12238         * common/m4/gst-doc.m4:
12239           use docbook check
12240
12241 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12242
12243         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12244         * gst/gsttag.h:
12245           add GstTagFlag
12246
12247 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12248
12249         * docs/gst/gstreamer-sections.txt:
12250         * docs/gst/tmpl/gst.sgml:
12251         * docs/gst/tmpl/gstbuffer.sgml:
12252         * docs/gst/tmpl/gstclock.sgml:
12253         * docs/gst/tmpl/gstelement.sgml:
12254         * docs/gst/tmpl/gstreamer-unused.sgml:
12255         * docs/gst/tmpl/gstxml.sgml:
12256           sync latest API changes to docs
12257
12258 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12259
12260         * gst/gstpluginfeature.c:
12261           fix doc snippet
12262         * tools/gst-inspect.c: (print_element_list):
12263           fix output of typefind
12264           add GPL header
12265         * tools/gst-launch.c:
12266           add GPL header
12267
12268 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12269
12270         * gst/elements/Makefile.am:
12271         * gst/elements/gstelements.c:
12272         * gst/elements/gsttypefindelement.c:
12273         * gst/elements/gsttypefindelement.h:
12274         * po/POTFILES.in:
12275         * po/fr.po:
12276         * po/nl.po:
12277           renamed gsttypefindelement to gsttypefind, conserving CVS history
12278
12279 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12280
12281         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12282         * gst/gsttag.h:
12283           add some tags used in ogg as well
12284           fix _ in replaygain tags
12285
12286 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12287
12288         * gst/gsterror.h:
12289           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12290
12291 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12292
12293         * gst/gstelement.c: (gst_element_error_full):
12294         * gst/gstelement.h:
12295           change _extended to _full
12296
12297 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12298
12299         reviewed by: <delete if not using a buddy>
12300
12301         * docs/gst/tmpl/gst.sgml:
12302         * docs/gst/tmpl/gstbuffer.sgml:
12303         * docs/gst/tmpl/gstclock.sgml:
12304         * docs/gst/tmpl/gstelement.sgml:
12305         * docs/gst/tmpl/gstreamer-unused.sgml:
12306         * docs/gst/tmpl/gstxml.sgml:
12307         * gst/gstelement.c: (gst_element_error_full):
12308         * gst/gstelement.h:
12309
12310 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12311
12312         * gst/gstelement.h: fix _gst_element_error_printf prototype
12313
12314 2004-01-20  David Schleef  <ds@schleef.org>
12315
12316         * gst/gststructure.c: (gst_structure_to_string):
12317         Convert function to use gst_value_serialize().
12318         * gst/gstvalue.c: (gst_value_serialize_list),
12319         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12320         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12321         (gst_value_serialize_int), (gst_value_serialize_double),
12322         (gst_string_wrap), (gst_value_serialize_string),
12323         (gst_value_serialize), (gst_value_deserialize):
12324         * gst/gstvalue.h:
12325         Add implementations for serialize.
12326
12327 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12328
12329         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12330         we want to keep that one in the future or change xvidenc.c to use 
12331         another error.
12332
12333 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12334
12335         * gst/gstelement.c: (_gst_element_error_printf):
12336         * gst/gstelement.h:
12337           privatise function
12338
12339 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12340
12341         * docs/random/error:
12342           doc explaining error system
12343         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12344           cleanup
12345
12346 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12347
12348         * gst/gst-i18n-app.h:
12349         * gst/gst-i18n-lib.h:
12350           remove inclusion of config.h
12351         * po/POTFILES.in:
12352         * po/nl.po:
12353           add gst/gstelement.c
12354
12355 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12356
12357         * po/nl.po: updated Dutch translation
12358
12359 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12360
12361         * gst/gsterror.c: (_gst_core_errors_init),
12362         (_gst_library_errors_init), (_gst_resource_errors_init),
12363         (_gst_stream_errors_init):
12364         remove ending punctuation dots
12365
12366 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12367
12368         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12369         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12370         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12371         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12372         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12373         use GST_ERROR_SYSTEM
12374
12375 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12376
12377         * gst/gstelement.c: (gst_element_error_printf),
12378         (gst_element_error_extended):
12379         * gst/gstelement.h:
12380           add a helper printf function so we can have NULL values passed.
12381
12382 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12383
12384         * gst/gstelement.h:
12385           add G_STMT macros to gst_element_error, which isn't strictly
12386           necessary but people tell me to anyway.
12387
12388 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12389
12390         * gst/Makefile.am:
12391         * gst/autoplug/gstspideridentity.c:
12392         (gst_spider_identity_sink_loop_type_finding):
12393         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12394         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12395         (gst_filesink_close_file), (gst_filesink_handle_event),
12396         (gst_filesink_chain):
12397         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12398         (gst_filesrc_map_region), (gst_filesrc_get_read),
12399         (gst_filesrc_open_file):
12400         * gst/elements/gstidentity.c: (gst_identity_chain):
12401         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12402         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12403         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12404         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12405         * gst/gst.h:
12406         * gst/gst_private.h:
12407         * gst/gstelement.c: (gst_element_class_init),
12408         (gst_element_default_error), (gst_element_error_func),
12409         (gst_element_error_extended):
12410         * gst/gstelement.h:
12411         * gst/gsterror.c: (_gst_core_errors_init),
12412         (_gst_library_errors_init), (_gst_resource_errors_init),
12413         (_gst_stream_errors_init), (gst_error_get_message):
12414         * gst/gsterror.h:
12415         * gst/gstinfo.c: (_gst_debug_init):
12416         * gst/gstmarshal.list:
12417         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12418         (gst_pad_recover_caps_error), (gst_pad_pull):
12419         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12420         * gst/schedulers/gstbasicscheduler.c:
12421         (gst_basic_scheduler_chainhandler_proxy),
12422         (gst_basic_scheduler_gethandler_proxy),
12423         (gst_basic_scheduler_cothreaded_chain):
12424         * po/POTFILES.in:
12425         * po/fr.po:
12426         * po/nl.po:
12427           change error signal
12428           add error categories
12429
12430 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12431
12432         * gst/gsttag.c: (_gst_tag_initialize):
12433         * gst/gsttag.h:
12434         Add replaygain tag
12435
12436 2004-01-18  Colin Walters  <walters@verbum.org>
12437
12438         * examples/retag/retag.c: Call gst_init before processing
12439         program args.  Add g_assert to _link_many call.
12440
12441 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12442
12443         * gst/gstpad.c: (gst_pad_alloc_buffer):
12444           Return a newly allocated buffer when the pad has no peer.
12445
12446 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12447
12448         * gst/gstclock.c: (gst_clock_get_time):
12449           make it compile with gcc 2.95 again.
12450           Patch by Scott Wheeler
12451
12452 2004-01-15  David Schleef  <ds@schleef.org>
12453
12454         * gst/gstcaps.h:
12455         Added gst_caps_is_simple() macro.
12456         * testsuite/caps/caps.c: (test1):
12457         * testsuite/caps/intersect2.c: (main):
12458         * testsuite/caps/intersection.c: (main):
12459         Fixes to make 'make check' work again after removing
12460         gst_caps_is_chained().
12461
12462 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12463
12464         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12465         and additions to the MIDI document.
12466
12467 2004-01-15  David Schleef  <ds@schleef.org>
12468
12469         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12470         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12471         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12472
12473 2004-01-15  David Schleef  <ds@schleef.org>
12474
12475         * gst/gstqueue.c:
12476         * gst/gstqueue.h:
12477         Fix the spelling of "treshold" and make min_threshold actually
12478         affect the queue.
12479
12480 2004-01-15  David Schleef  <ds@schleef.org>
12481
12482         * gst/gstcaps.c:
12483         Add lots of documentation.
12484         * gst/gstcaps.h:
12485         Deprecate a few functions.
12486         * gst/gstpad.c:
12487         Removed use of deprecated functions.
12488
12489 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12490
12491         * gst/gstpad.c: (gst_pad_is_linked):
12492         * gst/gstpad.h:
12493           implement gst_pad_is_linked
12494         * gst/gstelement.h:
12495           reserve space for initiate_state_change
12496
12497 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12498
12499         * gst/autoplug/gstspideridentity.c:
12500         (gst_spider_identity_sink_loop_type_finding):
12501           break infinite loop by just returning instead of looping
12502         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12503           set event time difference correctly. Set it to 1 second instead
12504           of 100ms to be more tolerant
12505         * gst/gstelement.c: (gst_element_set_time):
12506           add debugging output
12507
12508 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12509
12510         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12511           query if buffers are inside the pool, ignore events
12512
12513 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12514
12515         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12516         (gst_clock_set_speed), (gst_clock_set_active),
12517         (gst_clock_is_active), (gst_clock_reset),
12518         (gst_clock_handle_discont):
12519         * gst/gstclock.h:
12520           deprecate old interface and disable functions that aren't in use
12521           anymore.
12522         * gst/gstelement.h:
12523         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12524         (gst_element_set_time), (gst_element_adjust_time):
12525           add concept of "element time" and functions to get/set this time.
12526         * gst/gstelement.c: (gst_element_change_state):
12527           update element time correctly.
12528         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12529           This is a debug message, not a g_critical.
12530         * gst/gstpad.c: (gst_pad_event_default):
12531           handle discontinuous events right with element time.
12532         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12533           update to clocking fixes.
12534           set clocks on elements in READY=>PAUSED. The old behaviour caused
12535           a wrong element time on the first element that started playing.
12536         * gst/schedulers/gstbasicscheduler.c:
12537         (gst_basic_scheduler_class_init):
12538         * gst/schedulers/gstoptimalscheduler.c:
12539         (gst_opt_scheduler_class_init):
12540           remove code that just implements the default behaviour.
12541         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12542           update to use new clocking functions
12543         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12544         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12545           update to test new element time.
12546         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12547           use _get_allowed_caps instead of _get_caps. This catches filtered
12548           caps correctly.
12549         * testsuite/debug/commandline.c:
12550           update for new GST_DEBUG syntax.
12551         * testsuite/threads/Makefile.am:
12552           disable a test that only works sometimes.
12553
12554 2004-01-13  Julien MOUTTE <julien@moutte.net>
12555
12556         * po/LINGUAS: Adding fr.
12557         * po/fr.po: Adding french translation.
12558
12559 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12560
12561         * gst/parse/grammar.y:
12562         * po/POTFILES.in:
12563         * po/nl.po:
12564         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12565           translate parsing error messages
12566
12567 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12568
12569         * po/POTFILES.in: adding gst-launch
12570         * po/nl.po: updated translation, all 99 strings translated
12571         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12572         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12573           fix strings for translation
12574
12575 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12576
12577         * gst/gst.c:
12578           - capitalize beginnings of popt options
12579           - fix strings for translation
12580           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12581
12582 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12583
12584         * po/README: add some notes on how to update translations
12585
12586 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12587
12588         * ABOUT-NLS: removed, is autogenerated from autopoint
12589         * autogen.sh: add autopoint stuff
12590         * configure.ac: fix up gettext stuff
12591         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12592         * gst/elements/gsttypefindelement.c: add header include
12593         * gst/gettext.h: add header, copy from system-installed header
12594         * gst/gst-i18n-app.h: to be included by each app having translations
12595         * gst/gst-i18n-lib.h: to be included by each lib having translations
12596         * gst/gst.c: (init_pre): fix up gettext calls
12597         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12598         * po/LINGUAS: the new way to specify translations present
12599         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12600         * po/Makevars: the variables filled in for GStreamer
12601         * po/POTFILES.in: added new files with translations
12602         * po/de.po: has new strings
12603         * po/nl.po: readded, has new strings
12604
12605 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12606
12607         * gst/gsttag.c: fix some strings marked for translation
12608
12609 2004-01-13  Iain <iain@prettypeople.org>
12610
12611         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12612         group when we add an element to it, cos we unref it when we remove one
12613
12614 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12615
12616         * testsuite/debug/commandline.c: (debug_not_reached):
12617         * testsuite/debug/output.c: (check_message):
12618           fix testsuite
12619
12620 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12621
12622         * examples/cutter/.cvsignore:
12623         * examples/helloworld/.cvsignore:
12624         * examples/launch/.cvsignore:
12625         * examples/manual/.cvsignore:
12626         * examples/mixer/.cvsignore:
12627         * examples/pingpong/.cvsignore:
12628         * examples/plugins/.cvsignore:
12629         * examples/queue/.cvsignore:
12630         * examples/queue2/.cvsignore:
12631         * examples/queue3/.cvsignore:
12632         * examples/queue4/.cvsignore:
12633         * examples/retag/.cvsignore:
12634         * examples/thread/.cvsignore:
12635         * examples/typefind/.cvsignore:
12636         * examples/xml/.cvsignore:
12637         * gst/.cvsignore:
12638         * gst/autoplug/.cvsignore:
12639         * gst/elements/.cvsignore:
12640         * gst/indexers/.cvsignore:
12641         * gst/parse/.cvsignore:
12642         * gst/registries/.cvsignore:
12643         * gst/schedulers/.cvsignore:
12644         * libs/gst/bytestream/.cvsignore:
12645         * libs/gst/control/.cvsignore:
12646         * libs/gst/getbits/.cvsignore:
12647         * tests/.cvsignore:
12648         * tests/bufspeed/.cvsignore:
12649         * tests/instantiate/.cvsignore:
12650         * tests/memchunk/.cvsignore:
12651         * tests/muxing/.cvsignore:
12652         * tests/sched/.cvsignore:
12653         * tests/seeking/.cvsignore:
12654         * tests/threadstate/.cvsignore:
12655         * testsuite/.cvsignore:
12656         * testsuite/caps/.cvsignore:
12657         * testsuite/cleanup/.cvsignore:
12658         * testsuite/dynparams/.cvsignore:
12659         * testsuite/plugin/.cvsignore:
12660         * tools/.cvsignore:
12661           update - this is huge, because it includes *.bb, *.bbg and *.da files
12662           which are generated for gcov.
12663
12664 2004-01-11  David Schleef  <ds@schleef.org>
12665
12666         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12667         a function to parse integers in ways that strto[u]l() does not.
12668
12669 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12670
12671         * tools/gst-inspect.c: (print_caps):
12672           improve output of caps a bit
12673
12674 2004-01-11  David Schleef  <ds@schleef.org>
12675
12676         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12677         inherit correct flags (READONLY and DONTKEEP).
12678
12679 2004-01-11  David Schleef  <ds@schleef.org>
12680
12681         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12682         (gst_filesrc_map_region):
12683         * gst/gstbuffer.c: (_gst_buffer_initialize),
12684         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12685         (gst_buffer_new), (gst_buffer_create_sub),
12686         (gst_buffer_is_span_fast), (gst_buffer_span):
12687         * gst/gstbuffer.h:
12688         Change GstBuffer private structure element names. (all files)
12689         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12690         (gst_queue_link):
12691         * gst/gstqueue.h:
12692         Implement getcaps/pad_link functions that handle the case where
12693         there are data in the queue.
12694
12695 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12696
12697         * gst/elements/gstbufferstore.c:
12698           initialize debugging structure correctly
12699         * gst/elements/gsttee.c: (gst_tee_set_property):
12700           g_object_notify when property was changed
12701         * gst/elements/gsttypefindelement.c:
12702         (gst_type_find_element_change_state):
12703           clear caps correctly
12704
12705 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12706
12707         * gst/gstqueue.c: (gst_queue_init):
12708           Use better defaults for when a queue should block. This
12709           gets rid of jerky playback for quite a few files.
12710           It takes more memory.
12711
12712 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12713
12714         (gst_xml_registry_parse_padtemplate):
12715           make critical message slightly more useful
12716
12717 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12718
12719         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12720         (gst_debug_message_get), (gst_debug_log_default):
12721         * gst/gstinfo.h:
12722           Change gst_debug_log(_valist) to take a const format string.
12723           Change prototype of log function and functions using those to 
12724           take a GstDebugMessage instead of a string that requires using
12725           gst_debug_message_get.
12726
12727 2004-01-08  David Schleef  <ds@schleef.org>
12728
12729         * Makefile.am:
12730         * configure.ac:
12731         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12732         and -ftest-coverage, which allows gcov to show information about
12733         testsuite coverage.
12734
12735 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12736
12737         * gst/gstutils.h:
12738           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12739           GST_PARENT_CALL_WITH_DEFAULT
12740         * gst/elements/gstaggregator.c: 
12741         * gst/elements/gstbufferstore.c: 
12742         * gst/elements/gstfakesink.c: 
12743         * gst/elements/gstfakesrc.c: 
12744         * gst/elements/gstfdsink.c: 
12745         * gst/elements/gstfdsrc.c: 
12746         * gst/elements/gstfilesink.c: 
12747         * gst/elements/gstfilesrc.c: 
12748         * gst/elements/gstidentity.c: 
12749         * gst/elements/gstmd5sink.c: 
12750         * gst/elements/gstmultidisksrc.c:
12751         * gst/elements/gstpipefilter.c: 
12752         * gst/elements/gstshaper.c:
12753         * gst/elements/gststatistics.c:
12754         * gst/elements/gsttee.c:
12755         * gst/elements/gsttypefindelement.c:
12756           use them.
12757
12758 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
12759
12760         * docs/gst/gstreamer-docs.sgml: remove props
12761         * docs/gst/gstreamer-sections.txt: remove props
12762         * docs/gst/tmpl/gst.sgml:
12763         * docs/gst/tmpl/gstbin.sgml:
12764         * docs/gst/tmpl/gstbuffer.sgml:
12765         * docs/gst/tmpl/gstcaps.sgml:
12766         * docs/gst/tmpl/gstclock.sgml:
12767         * docs/gst/tmpl/gstelement.sgml:
12768         * docs/gst/tmpl/gstindex.sgml:
12769         * docs/gst/tmpl/gstobject.sgml:
12770         * docs/gst/tmpl/gstpad.sgml:
12771         * docs/gst/tmpl/gstpadtemplate.sgml:
12772         * docs/gst/tmpl/gstreamer-unused.sgml:
12773         * docs/gst/tmpl/gstthread.sgml:
12774         * docs/gst/tmpl/gstxml.sgml:
12775           sync with code reorganization
12776
12777 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
12778
12779         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12780         Make the 'Could not find compatible pad' message more informative.
12781
12782 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12783                                                                                 
12784         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
12785           Fix for if we pass NULL as property to location.
12786         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
12787         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
12788           Fix for instantiate-test (see below).
12789         * gst/gststructure.c: (_gst_structure_parse_value):
12790           Fix compile error on gcc-2.96.
12791         * configure.ac:
12792         * tests/Makefile.am:
12793         * tests/instantiate/Makefile.am:
12794         * tests/instantiate/create.c: (create_all_elements), (main):
12795           Add a test that instantiates all elements. This makes it easy to
12796           track dead code for old API/design (like setting event functions
12797           on sink pads and so on).
12798
12799 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
12800
12801         * gst/gstcaps.c: (gst_caps_append_structure):
12802           Move the poisoning to allow a NULL structure
12803         * gst/gstevent.c: (_gst_event_free):
12804           When freeing a navigation event, free the structure
12805           also
12806
12807 2004-01-04  David Schleef  <ds@schleef.org>
12808
12809         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12810         Remove usage of gst_pad_proxy_fixate.
12811         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
12812         (gst_caps_split_one), (gst_caps_replace):
12813         Add poisoning code.
12814         * gst/gstmarshal.list:
12815         Add pointer__pointer for fixate signal
12816         * gst/gstpad.c: (gst_real_pad_class_init),
12817         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12818         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
12819         (gst_pad_set_explicit_caps), (gst_pad_template_new):
12820         Add poisoning code. Add fixate signal on RealPad. Change
12821         set_explicit_caps() to take const GstCaps, like try_set_caps().
12822         * gst/gstpad.h:
12823         * testsuite/caps/Makefile.am:
12824         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
12825
12826 2004-01-03  David Schleef  <ds@schleef.org>
12827
12828         * gst/elements/gsttypefindelement.c:
12829         (gst_type_find_element_have_type), (gst_type_find_element_init):
12830         Use gst_pad_use_explicit_caps for src pad.
12831         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
12832         before using it.
12833
12834 2004-01-03  David Schleef  <ds@schleef.org>
12835
12836         * gst/gstelement.c: (gst_element_link_pads_filtered),
12837         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
12838         that linking was successful.
12839         * gst/gstpad.c: (gst_pad_link_free),
12840         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
12841         (gst_pad_link_try), (gst_pad_link_unnegotiate),
12842         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
12843         GstPadLinkReturn correctly between functions, and don't fail
12844         when DELAYED is used (DELAYED is very important).  Better
12845         cleanup on unlinking and unnegotiation.  Should fix some spider
12846         bugs.
12847
12848 2004-01-02  David Schleef  <ds@schleef.org>
12849
12850         * gst/gstelement.c: (gst_element_class_init),
12851         (gst_element_base_class_init): ->padtemplates should be cleared
12852         in base_init, since we need to have a fresh list for every
12853         class.  (Alternately, we chould copy the list and share the
12854         actual pad templates (not the list), but that would require
12855         changing every plugin to move pad template registration from
12856         base_init to class_init.)
12857
12858 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12859
12860         * gst/gstelement.c: (gst_element_class_add_pad_template):
12861           Refuse registering a pad template if another pad template
12862           with the same name already exists (#114715).
12863
12864 2004-01-02  David Schleef  <ds@schleef.org>
12865
12866         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
12867         (gst_caps_is_equal_fixed): Add new function.
12868         * gst/gstcaps.h: ditto.
12869         * gst/gstpad.c: (gst_real_pad_class_init),
12870         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
12871         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
12872         check new caps against existing caps -- if they're the same, return
12873         OK without renegotiating.  caps-nego-failed signal fixed so that
12874         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
12875         to save an extra caps copy.  Don't complete negotiation if a pad
12876         link function returns DELAYED.
12877
12878 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12879
12880         * gst/gstpad.c: (gst_pad_try_relink_filtered):
12881           Fix wrong g_return_if_fail
12882
12883 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
12884
12885         * gst/gstbin.c: (gst_bin_class_init):
12886         Change the marshalling of element_added/element_removed
12887         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
12888         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
12889
12890 2004-01-01  David Schleef  <ds@schleef.org>
12891
12892         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12893         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
12894         (gst_pad_use_explicit_caps):
12895         * gst/gstpad.h:
12896         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
12897         to use an internal getcaps and link fuction so that negotiation
12898         always results in the explicitly set caps.
12899         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
12900         are particularly useful for decoders.
12901
12902 2003-12-31  David Schleef  <ds@schleef.org>
12903
12904         * gst/elements/gstidentity.c: (gst_identity_class_init),
12905         (gst_identity_init), (gst_identity_chain),
12906         (gst_identity_set_property), (gst_identity_get_property):
12907         * gst/elements/gstidentity.h:
12908         * gst/gstqueue.c: (gst_queue_init):
12909           Negotiation fixes.
12910
12911 2003-12-31  David Schleef  <ds@schleef.org>
12912
12913         * gst/gstcaps.c: (gst_caps_intersect),
12914         (_gst_caps_normalize_foreach), (gst_caps_normalize):
12915           Implement gst_caps_normalize().
12916         * testsuite/caps/normalisation.c: (main):
12917           Add an additional test
12918
12919 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12920
12921         * gst/gstqueue.c: (gst_queue_init):
12922           use gst_pad_proxy_getcaps()
12923
12924 2003-12-31  David Schleef  <ds@schleef.org>
12925
12926         * gst/elements/gstshaper.c: (gst_shaper_link):
12927         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12928         * gst/gstqueue.c: (gst_queue_link):
12929           Negotiation fixes.
12930
12931 2003-12-31  David Schleef  <ds@schleef.org>
12932
12933         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
12934         * gst/gstpad.h: Add functions that are useful as default pad
12935         link and fixate functions for elements.
12936
12937 2003-12-30  David Schleef  <ds@schleef.org>
12938
12939         * gst/gstpad.c: (gst_pad_link_try):
12940           Fix segfault when attempting to return to old caps
12941
12942 2003-12-29  David Schleef  <ds@schleef.org>
12943
12944         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
12945         (gst_caps_structure_simplify), (gst_caps_simplify):
12946         * gst/gstcaps.h:
12947           Add simplify function
12948         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
12949         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
12950         * gst/gstpad.h:
12951           Copy over srcnotify, sinknotify when calling old pad_link
12952           functions.  Add new is_negotiated() function.
12953         * gst/gststructure.c: (gst_structure_copy):
12954           Fix an incredibly stupid bug that should have been noticed
12955           weeks ago.  _copy() returned the argument, not the new copy.
12956
12957 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12958
12959         * gst/gstcaps.c: (gst_caps_append):
12960           add sanity checks
12961         * gst/gstcaps.h: (gst_caps_debug):
12962           remove, it doesn't exist anymore.
12963         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
12964         (gst_element_threadsafe_properties_post_run):
12965           make debugging messages not clutter up THREAD debug category
12966         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
12967         (gst_element_change_state):
12968           update to new caps API
12969         * gst/gstinterface.c: (gst_implements_interface_cast):
12970           don't put vital code in g_return_if_fail
12971         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
12972         (gst_pad_link_filtered):
12973           add pst_pad_try_link and use it.
12974         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
12975           implement correctly, deprecate first one.
12976         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
12977           add and implement.
12978         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
12979           implement.
12980         (gst_pad_get_negotiated_caps):
12981           add and implement. Make GST_PAD_CAPS call this function.
12982         (gst_pad_get_caps):
12983           remove unneeded check..
12984         (gst_pad_recover_caps_error):
12985           disable, always return FALSE.
12986         (gst_real_pad_dispose):
12987           don't free caps and appfilter anymore, they're unused.
12988         * gst/gstpad.h:
12989           Reflect changes mentioned above.
12990         * gst/gstsystemclock.c: (gst_system_clock_wait):
12991           Make 'clock is way behind' a debugging message.
12992         * gst/gstthread.c: (gst_thread_change_state):
12993           Fix debugging message
12994
12995 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12996
12997         * gst/gstinfo.h:
12998           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
12999         * docs/gst/tmpl/gstreamer-unused.sgml:
13000           removed all traces of cvs conflicts
13001
13002 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13003
13004         * configure.ac:
13005         * gst/schedulers/cothreads_compat.h:
13006         * libs/Makefile.am:
13007           remove last instances of wingo cothread usage
13008
13009 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13010
13011         * gst/gstplugin.c:
13012         * gst/gstversion.h.in:
13013         * gst/parse/grammar.y:
13014           change comment block from /** to /* when not gtk-doc comments
13015
13016 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13017
13018         * gst/gst.c: whitespace and doc style fixes
13019
13020 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13021
13022         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13023
13024 2003-12-24  Colin Walters  <walters@verbum.org>
13025
13026         * gst/elements/gsttypefindelement.c:
13027           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13028           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13029           Don't double-free caps.
13030
13031 2003-12-23  David Schleef  <ds@schleef.org>
13032
13033         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13034           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13035           Many little fixes and additions of debug statements to
13036           get rhythmbox working.
13037
13038 2003-12-23  Colin Walters  <walters@verbum.org>
13039
13040         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13041         Use GST_PAD_LINK_SUCCESSFUL.
13042
13043 2003-12-23  David Schleef  <ds@schleef.org>
13044
13045         * gst/elements/gstaggregator.c:
13046         * gst/elements/gsttee.c:
13047           Use gst_pad_proxy_getcaps().
13048         * gst/gstpad.c:
13049         * gst/gstpad.h:
13050           Add gst_pad_proxy_getcaps(), which filter elements can use
13051           as a generic getcaps implementation.
13052           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13053           was advertised.
13054
13055 2003-12-23  David Schleef  <ds@schleef.org>
13056
13057         * gst/gstpad.c:
13058           Rearrange/rewrite much of the pad negotiation code, since it
13059           resembled pasta.  This actually changes the way some
13060           negotiation works, since the previous code was inconsistent
13061           depending on how it was invoked.  Add (internal) structure
13062           GstPadLink, which is used to hold some information (more in
13063           the future) about the link between two pads.  Fixes a number
13064           of bugs, including random lossage of filter caps when the
13065           initial negotiation is delayed.  A few functions are still
13066           unimplemented.
13067         * gst/gstpad.h:
13068           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13069           these when testing GstPadLinkReturn values instead of comparing
13070           directly.
13071
13072 2003-12-23  David Schleef  <ds@schleef.org>
13073
13074         * gst/gstvalue.c: 
13075         * gst/gstvalue.h:
13076           Rearrange lots of code.  Change registration of compare function
13077           into registration of compare/serialize/deserialize functions.
13078           Doesn't include implementation of gst_value_[de]serialize(),
13079           but that should be easy.
13080
13081 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13082
13083         * docs/gst/gstreamer-sections.txt:
13084         * docs/gst/tmpl/gstprops.sgml: removed
13085         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13086           David removed props and caps code, so let's remove their docs as well.
13087           Removed all no longer existing symbols from gstreamer-sections.txt
13088           
13089 2003-12-22  Colin Walters  <walters@verbum.org>
13090
13091         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13092           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13093           of tags directly.
13094
13095 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13096
13097         * gst/elements/gstelements.c:
13098           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13099         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13100           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13101           gst_caps (peer).
13102
13103 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13104
13105         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13106         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13107         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13108         (gst_spider_identity_sink_loop_type_finding):
13109         * gst/autoplug/gstspideridentity.h:
13110           Fix autoplugging in spider element, so it works with new caps.
13111           This was mainly caused by identifying empty caps incorrectly.
13112
13113 2003-12-22  David Schleef  <ds@schleef.org>
13114
13115         * gststructure.c, gstvalue.c, gstvalue.h: Add
13116           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13117           using g_value_copy()
13118
13119 2003-12-21  David Schleef  <ds@schleef.org>
13120
13121         * many, many files: Merge CAPS branch.  This includes:
13122           - implemention of GstValue and several GstValue types
13123           - implemention of GstStructure
13124           - entire rewrite of GstCaps
13125           - removal of GstProps
13126           - many changes to GstPad to compensate for new caps paradigm
13127           - removal of GstBufferpool
13128         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13129         gstvalue.h, gst/gstcaps[2]*.[ch]:
13130           - rename gstcaps2.[ch] to gstcaps.[ch]
13131
13132 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13133
13134         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13135         (gst_queue_chain), (gst_queue_handle_src_event):
13136           implement timeout for sending events. Workaround for if the
13137           pipeline on this queue is not passing any data.
13138
13139 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13140                                                                                 
13141         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13142         * moved CVS to freedesktop.org
13143