docs/manual/appendix-porting.xml: Mention removal of libgstgconf-0.9.la and existence...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2
3         * docs/manual/appendix-porting.xml:
4           Mention removal of libgstgconf-0.9.la and existence of gconf
5           elements.
6
7 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8
9         * docs/pwg/advanced-clock.xml:
10         * docs/pwg/appendix-porting.xml:
11         * docs/pwg/intro-preface.xml:
12         * docs/pwg/other-base.xml:
13         * docs/pwg/other-manager.xml:
14         * docs/pwg/other-nton.xml:
15         * docs/pwg/other-ntoone.xml:
16         * docs/pwg/other-oneton.xml:
17         * docs/pwg/pwg.xml:
18           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
19           demuxer), remove n-to-n (was never written), fix some code examples
20           and links and update the porting section to include all this.
21
22 2005-07-19  Wim Taymans  <wim@fluendo.com>
23
24         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
25         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
26         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
27         (gst_queue_src_activate_push), (gst_queue_change_state),
28         (gst_queue_get_property):
29         * gst/gstqueue.h:
30         Propagate GstFlowReturn more intelligently upstream and output
31         an ERROR/EOS when streaming stopped due to fatal error.
32
33 2005-07-19  Wim Taymans  <wim@fluendo.com>
34
35         * tools/gst-launch.c: (check_intr), (event_loop), (main):
36         Don't block forever for the state change to complete, the
37         pipeline already did with a sensible timeout.
38
39 2005-07-19  Wim Taymans  <wim@fluendo.com>
40
41         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
42         Make sure we never call the create function is we
43         got deactivated.
44
45 2005-07-19  Andy Wingo  <wingo@pobox.com>
46
47         * gst/parse/parse.l: Attempt to solve bug #172815.
48
49 2005-07-19  Wim Taymans  <wim@fluendo.com>
50
51         * docs/design/part-clocks.txt:
52         * docs/design/part-events.txt:
53         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
54         Small docs updates.
55         Only update the seeking values when we are not
56         busy streaming.
57
58 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
59
60         * gst/base/gstbasesrc.c: (gst_base_src_loop):
61           Oops, ignore the result of gst_pad_push_event here.
62
63 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
64
65         * gst/base/gstbasesrc.c: (gst_base_src_loop),
66         (gst_base_src_activate_push):
67           Send discont event from the loop function, as pads
68           aren't activated yet in the activate_push handler.
69
70         * gst/gstbin.c: (bin_bus_handler):
71           Don't leak element name.
72
73 2005-07-18  Andy Wingo  <wingo@pobox.com>
74
75         * configure.ac: Use AS_LIBTOOL_TAGS.
76
77 2005-07-18  Wim Taymans  <wim@fluendo.com>
78
79         * docs/gst/gstreamer.types:
80         Remove deleted types.
81
82 2005-07-18  Wim Taymans  <wim@fluendo.com>
83
84         * check/elements/gstfakesrc.c: (GST_START_TEST):
85         * configure.ac:
86         * gst/Makefile.am:
87         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
88         (init_popt_callback):
89         * gst/gst.h:
90         * gst/gst_private.h:
91         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
92         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
93         * gst/gstbin.h:
94         * gst/gstbus.h:
95         * gst/gstconfig.h.in:
96         * gst/gstelement.c: (gst_element_class_init),
97         (gst_element_set_base_time), (gst_element_get_base_time),
98         (iterator_fold_with_resync), (gst_element_change_state),
99         (gst_element_dispose), (gst_element_get_bus):
100         * gst/gstelement.h:
101         * gst/gstelementfactory.h:
102         * gst/gsterror.c: (_gst_core_errors_init):
103         * gst/gsterror.h:
104         * gst/gstevent.h:
105         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
106         * gst/gstindex.c:
107         * gst/gstinfo.c: (_gst_debug_init):
108         * gst/gstmessage.c: (_gst_message_copy):
109         * gst/gstmessage.h:
110         * gst/gstminiobject.h:
111         * gst/gstobject.c:
112         * gst/gstobject.h:
113         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
114         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
115         * gst/gstpad.h:
116         * gst/gstparse.h:
117         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
118         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
119         (gst_pipeline_get_last_stream_time):
120         * gst/gstpipeline.h:
121         * gst/gstpluginfeature.h:
122         * gst/gstquery.h:
123         * gst/gstscheduler.c:
124         * gst/gstscheduler.h:
125         * gst/gststructure.h:
126         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
127         (gst_task_finalize), (gst_task_func), (gst_task_create),
128         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
129         (gst_task_stop), (gst_task_pause):
130         * gst/gsttask.h:
131         * gst/gsttypefind.h:
132         * gst/gsttypes.h:
133         * gst/registries/gstlibxmlregistry.c: (load_feature),
134         (gst_xml_registry_load), (gst_xml_registry_save_feature):
135         * gst/registries/gstxmlregistry.c:
136         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
137         * gst/schedulers/threadscheduler.c:
138         * libs/gst/control/dparammanager.h:
139         * tools/gst-inspect.c: (print_element_list),
140         (print_plugin_features), (print_element_features):
141         * tools/gst-xmlinspect.c: (print_element_list),
142         (print_plugin_info), (main):
143         Removed plugable schedulers.
144         Removed Scheduler/Manager from elements.
145         Removed gsttypes.h, rearranged includes.
146         Removed dependency pad<->element, element<>pipeline, and
147         various others,  fix includes.
148         implement gst_pad_get_parent() with gst_object_get_parent()
149         Make GstTask sefcontained.
150         Fix _get_state() on GstBin, it did not return ASYNC with a 0
151         timeout.
152         Fix endless loop in iterator_fold_with_resync.
153
154
155 2005-07-18  Wim Taymans  <wim@fluendo.com>
156
157         * gst/Makefile.am:
158         * gst/gstarch.h:
159         Remove old file.
160
161 2005-07-18  Wim Taymans  <wim@fluendo.com>
162
163         * gst/Makefile.am:
164         No more cothreads.h
165
166 2005-07-18  Wim Taymans  <wim@fluendo.com>
167
168         * gst/cothreads.c:
169         * gst/cothreads.h:
170         Let's remove these.
171
172 2005-07-18  Wim Taymans  <wim@fluendo.com>
173
174         * docs/design/part-dynamic.txt:
175         * docs/design/part-events.txt:
176         * docs/design/part-seeking.txt:
177         Some more docs in the works.
178
179         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
180         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
181         (gst_base_transform_setcaps), (gst_base_transform_get_size),
182         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
183         (gst_base_transform_handle_buffer),
184         (gst_base_transform_sink_activate_push),
185         (gst_base_transform_src_activate_pull),
186         (gst_base_transform_set_passthrough),
187         (gst_base_transform_is_passthrough):
188         Refcounting fixes.
189
190         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
191         Cleanups.
192
193         * gst/gstevent.c: (gst_event_finalize):
194         Set SRC to NULL.
195
196         * gst/gstutils.c: (gst_element_unlink),
197         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
198         (gst_pad_proxy_setcaps):
199         * gst/gstutils.h:
200         Add _get_parent_element() to get a pads parent as an element.
201
202 2005-07-18  Wim Taymans  <wim@fluendo.com>
203
204         * check/gst/gstbin.c: (GST_START_TEST):
205         Remove bogus test.
206
207 2005-07-18  Wim Taymans  <wim@fluendo.com>
208
209         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
210         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
211         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
212         (gst_base_sink_event), (gst_base_sink_do_sync),
213         (gst_base_sink_chain), (gst_base_sink_loop),
214         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
215         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
216         Refcounting fixes.
217         Fix logic for returning ASYNC when not prerolled.
218
219 2005-07-18  Wim Taymans  <wim@fluendo.com>
220
221         * gst/gstqueue.c: (gst_queue_handle_sink_event):
222         Fix nasty refcount bug.
223
224 2005-07-16 Philippe Khalaf <burger@speedy.org>
225         * gst/elements/gstfdsrc.c:
226         * gst/elements/gstfdsrc.h:
227         * gst/elements/gstelements.c:
228         * gst/elements/Makefile.am:
229         Ported fdsrc to 0.9.
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_do_sync):
235         Fix compile error.
236
237 2005-07-16  Wim Taymans  <wim@fluendo.com>
238
239         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
240         (gst_base_sink_event), (gst_base_sink_get_times),
241         (gst_base_sink_do_sync), (gst_base_sink_change_state):
242         * gst/base/gstbasesink.h:
243         Store and use discont values when syncing buffers as described
244         in design docs.
245         
246         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
247         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
248         (gst_base_src_activate_push):
249         Push discont event when starting.
250
251         * gst/elements/gstidentity.c: (gst_identity_transform):
252         Small cleanups.
253
254         * gst/gstbin.c: (gst_bin_change_state):
255         Small cleanups in base_time  distribution.
256
257         * gst/gstelement.c: (gst_element_set_base_time),
258         (gst_element_get_base_time), (gst_element_change_state):
259         * gst/gstelement.h:
260         Added methods for the base_time of the element.
261         Some MT fixes.
262
263         * gst/gstpipeline.c: (gst_pipeline_send_event),
264         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
265         (gst_pipeline_get_last_stream_time):
266         * gst/gstpipeline.h:
267         MT fixes.
268         Handle seeking as described in design doc, remove stream_time
269         hack.
270         Cleanups clock and stream_time selection code. Added accessors
271         for the stream_time.
272         
273
274 2005-07-16  Andy Wingo  <wingo@pobox.com>
275
276         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
277         (#305291).
278
279 2005-07-16  Wim Taymans  <wim@fluendo.com>
280
281         * check/gst/gstbin.c: (GST_START_TEST):
282         Make elements silent as the deep_notify refs the
283         parent, which might make the test fail.
284
285         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
286         Don't hold the lock for too long.
287
288 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
289
290         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
291           Don't unref the caps we passed to gst_caps_make_writable() after
292           passing them. gst_caps_make_writable() will do that for us.
293
294 2005-07-15  Andy Wingo  <wingo@pobox.com>
295
296         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
297         (#157311).
298
299         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
300         own marshalling function for the handoff signal. Properly type the
301         buffer as a buffer. Fixes some warnings. Should do a more general
302         solution.
303         (gst_identity_class_init): Plug into the right marshaller.
304
305 2005-07-15  Wim Taymans  <wim@fluendo.com>
306
307         * docs/design/part-TODO.txt:
308         * docs/design/part-clocks.txt:
309         * docs/design/part-element-sink.txt:
310         * docs/design/part-events.txt:
311         * docs/design/part-gstpipeline.txt:
312         Updated docs, mostly DISCONT related.
313
314 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
315
316         * docs/pwg/building-pads.xml:
317           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
318
319 2005-07-15  Andy Wingo  <wingo@pobox.com>
320
321         * tools/gst-typefind.c: Update, add copyright block.
322
323         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
324         Normalize and truncate caps before fixation.
325
326         * gst/gstcaps.h:
327         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
328         discards all but the first structure from its argument.
329
330 2005-07-15  Wim Taymans  <wim@fluendo.com>
331
332         * gst/base/gstbasetransform.c: (gst_base_transform_init),
333         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
334         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
335         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
336         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
337         (gst_base_transform_chain), (gst_base_transform_change_state),
338         (gst_base_transform_set_passthrough),
339         (gst_base_transform_is_passthrough):
340         * gst/base/gstbasetransform.h:
341         Make passthrough work using the bufferpools.
342         Changed API a bit, subclasses have to write into a buffer
343         provided by the base class.
344         More debug info in nego functions.
345         
346         * gst/elements/gstidentity.c: (gst_identity_init),
347         (gst_identity_transform):
348         Port to new base class.
349
350 2005-07-15  Wim Taymans  <wim@fluendo.com>
351
352         * gst/gstmessage.c: (gst_message_new_state_changed):
353         * tools/gst-launch.c: (event_loop), (main):
354         Totally dump messages in -launch with the -m option.
355         Fix message name for State messages,
356
357 2005-07-14  Wim Taymans  <wim@fluendo.com>
358
359         * gst/base/gstbasesrc.c: (gst_base_src_loop):
360         Post error messages on errors.
361
362 2005-07-14  Wim Taymans  <wim@fluendo.com>
363
364         * gst/gstcaps.c: (gst_caps_do_simplify):
365         Remove debug info.
366
367         * gst/gsterror.h:
368         Define error for stream stopped.
369
370         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
371         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
372         Do proper return values.
373
374         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
375         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
376         (gst_pad_get_range):
377         Better return values.
378
379         * gst/gstpad.h:
380         Reorganise return values, add macro to check for fatal errors.
381
382         * gst/gstqueue.c: (gst_queue_chain):
383         Return proper GstFlowReturn values,
384
385 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
386
387         * docs/gst/gstreamer-sections.txt:
388         * docs/gst/gstreamer.types:
389         * docs/gst/tmpl/gst.sgml:
390         * docs/gst/tmpl/gstbasesink.sgml:
391         * docs/gst/tmpl/gstbasesrc.sgml:
392         * docs/gst/tmpl/gstbasetransform.sgml:
393         * docs/gst/tmpl/gstbin.sgml:
394         * docs/gst/tmpl/gstbuffer.sgml:
395         * docs/gst/tmpl/gstcaps.sgml:
396         * docs/gst/tmpl/gstclock.sgml:
397         * docs/gst/tmpl/gstcompat.sgml:
398         * docs/gst/tmpl/gstconfig.sgml:
399         * docs/gst/tmpl/gstelement.sgml:
400         * docs/gst/tmpl/gstelementdetails.sgml:
401         * docs/gst/tmpl/gstelementfactory.sgml:
402         * docs/gst/tmpl/gstenumtypes.sgml:
403         * docs/gst/tmpl/gsterror.sgml:
404         * docs/gst/tmpl/gstevent.sgml:
405         * docs/gst/tmpl/gstfakesink.sgml:
406         * docs/gst/tmpl/gstfakesrc.sgml:
407         * docs/gst/tmpl/gstfilesink.sgml:
408         * docs/gst/tmpl/gstfilesrc.sgml:
409         * docs/gst/tmpl/gstfilter.sgml:
410         * docs/gst/tmpl/gstformat.sgml:
411         * docs/gst/tmpl/gstghostpad.sgml:
412         * docs/gst/tmpl/gstimplementsinterface.sgml:
413         * docs/gst/tmpl/gstindex.sgml:
414         * docs/gst/tmpl/gstindexfactory.sgml:
415         * docs/gst/tmpl/gstinfo.sgml:
416         * docs/gst/tmpl/gstiterator.sgml:
417         * docs/gst/tmpl/gstmacros.sgml:
418         * docs/gst/tmpl/gstmemchunk.sgml:
419         * docs/gst/tmpl/gstminiobject.sgml:
420         * docs/gst/tmpl/gstobject.sgml:
421         * docs/gst/tmpl/gstpad.sgml:
422         * docs/gst/tmpl/gstpadtemplate.sgml:
423         * docs/gst/tmpl/gstparse.sgml:
424         * docs/gst/tmpl/gstpipeline.sgml:
425         * docs/gst/tmpl/gstplugin.sgml:
426         * docs/gst/tmpl/gstpluginfeature.sgml:
427         * docs/gst/tmpl/gstquery.sgml:
428         * docs/gst/tmpl/gstqueue.sgml:
429         * docs/gst/tmpl/gstregistry.sgml:
430         * docs/gst/tmpl/gstregistrypool.sgml:
431         * docs/gst/tmpl/gstscheduler.sgml:
432         * docs/gst/tmpl/gstschedulerfactory.sgml:
433         * docs/gst/tmpl/gststructure.sgml:
434         * docs/gst/tmpl/gstsystemclock.sgml:
435         * docs/gst/tmpl/gsttaglist.sgml:
436         * docs/gst/tmpl/gsttagsetter.sgml:
437         * docs/gst/tmpl/gsttrace.sgml:
438         * docs/gst/tmpl/gsttrashstack.sgml:
439         * docs/gst/tmpl/gsttypefind.sgml:
440         * docs/gst/tmpl/gsttypefindfactory.sgml:
441         * docs/gst/tmpl/gsttypes.sgml:
442         * docs/gst/tmpl/gsturihandler.sgml:
443         * docs/gst/tmpl/gsturitype.sgml:
444         * docs/gst/tmpl/gstutils.sgml:
445         * docs/gst/tmpl/gstvalue.sgml:
446         * docs/gst/tmpl/gstversion.sgml:
447         * docs/gst/tmpl/gstxml.sgml:
448         * docs/libs/tmpl/gstcontrol.sgml:
449         * docs/libs/tmpl/gstdataprotocol.sgml:
450         * docs/libs/tmpl/gstdparam.sgml:
451         * docs/libs/tmpl/gstdplinint.sgml:
452         * docs/libs/tmpl/gstdpman.sgml:
453         * docs/libs/tmpl/gstdpsmooth.sgml:
454         * docs/libs/tmpl/gstgetbits.sgml:
455         * docs/libs/tmpl/gstunitconvert.sgml:
456         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
457         (gst_push_src_base_init), (gst_push_src_class_init),
458         (gst_push_src_init), (gst_push_src_create):
459         * gst/base/gstpushsrc.h:
460         * gst/elements/gstelements.c:
461         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
462         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
463         (gst_fake_sink_init), (gst_fake_sink_set_property),
464         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
465         (gst_fake_sink_event), (gst_fake_sink_preroll),
466         (gst_fake_sink_render), (gst_fake_sink_change_state):
467         * gst/elements/gstfakesink.h:
468         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
469         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
470         (gst_fake_src_base_init), (gst_fake_src_class_init),
471         (gst_fake_src_init), (gst_fake_src_event_handler),
472         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
473         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
474         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
475         (gst_fake_src_create_buffer), (gst_fake_src_create),
476         (gst_fake_src_start), (gst_fake_src_stop):
477         * gst/elements/gstfakesrc.h:
478         * gst/elements/gstfilesink.c: (_do_init),
479         (gst_file_sink_base_init), (gst_file_sink_class_init),
480         (gst_file_sink_init), (gst_file_sink_dispose),
481         (gst_file_sink_set_location), (gst_file_sink_set_property),
482         (gst_file_sink_get_property), (gst_file_sink_open_file),
483         (gst_file_sink_close_file), (gst_file_sink_query),
484         (gst_file_sink_event), (gst_file_sink_render),
485         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
486         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
487         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
488         * gst/elements/gstfilesink.h:
489         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
490         (gst_file_src_class_init), (gst_file_src_init),
491         (gst_file_src_finalize), (gst_file_src_set_location),
492         (gst_file_src_set_property), (gst_file_src_get_property),
493         (gst_file_src_map_region), (gst_file_src_map_small_region),
494         (gst_file_src_create_mmap), (gst_file_src_create_read),
495         (gst_file_src_create), (gst_file_src_is_seekable),
496         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
497         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
498         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
499         (gst_file_src_uri_handler_init):
500         * gst/elements/gstfilesrc.h:
501           more autistic cleanliness in functions/names/defines
502
503 2005-07-13  Andy Wingo  <wingo@pobox.com>
504
505         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
506         source couldn't negotiate.
507
508         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
509         connections again.
510
511         * gst/gstutils.h:
512         * gst/gstutils.c (gst_element_link_pads_filtered): New old
513         function. I am channeling Hades. Put your boots on suckers!!!
514
515 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
516
517         * testsuite/caps/Makefile.am:
518         * testsuite/caps/value_compare.c:
519         * testsuite/caps/value_intersect.c:
520         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
521           move two testsuite apps over to the check dir
522
523 2005-07-12  Wim Taymans  <wim@fluendo.com>
524
525         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
526         Added more debug info in the negotiate process.
527
528         * gst/gstmessage.h:
529         Prepare for segment playback.
530
531         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
532         Better debugging.
533
534         * gst/gstutils.c:
535         Some more docs.
536
537         * tools/gst-launch.c: (main):
538         NULL pipeline on errors.
539
540 2005-07-12  Andy Wingo  <wingo@pobox.com>
541
542         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
543         not it comes from a malloc region. Make sure our copy gets freed.
544
545 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
546
547         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
548         * check/gst/gstmessage.c: (GST_START_TEST):
549         * check/gst/gststructure.c: (GST_START_TEST),
550         (gst_structure_suite), (main):
551           more testing
552         * gst/gstelement.c: (gst_element_message_full):
553           clean up GError and debug string now that they get copied
554         * gst/gstmessage.c: (gst_message_new_error),
555         (gst_message_new_warning), (gst_message_parse_error),
556         (gst_message_parse_warning):
557           use GST_TYPE_G_ERROR for structure_new, and take copies of
558           arguments, so that we don't mess up refcounting
559
560 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
561
562         * check/Makefile.am:
563           add per-test valgrind targets
564         * check/gst-libs/gdp.c: (GST_START_TEST),
565         (gst_data_protocol_suite), (main):
566           clean up
567
568 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
569
570         * check/Makefile.am:
571           instate more valgrindable tests
572         * check/elements/gstfakesrc.c: (chain_func), (event_func),
573         (GST_START_TEST), (fakesrc_suite):
574         * check/gst/gstpad.c: (GST_START_TEST):
575         * check/gst/gststructure.c: (GST_START_TEST):
576           fix test leaks
577         * docs/gst/tmpl/gstminiobject.sgml:
578         * gst/gstpad.c: (gst_pad_finalize):
579           fix the static mutex leak
580
581 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
582
583         * check/Makefile.am:
584           add two more tests for valgrinding
585         * check/gst/gstvalue.c: (GST_START_TEST):
586           test refcount of deserialized buffer, found a leak
587         * docs/gst/gstreamer-docs.sgml:
588         * docs/gst/gstreamer-sections.txt:
589         * docs/gst/gstreamer.types:
590         * docs/gst/tmpl/gstminiobject.sgml:
591           add miniobject to docs
592         * gst/gstminiobject.c:
593           add some docs
594         * gst/gstvalue.c: (gst_value_deserialize_buffer),
595         (gst_string_unwrap):
596           fix a hard-to-find invalid write for one of the tests
597           fix a leak for deserialized buffers
598
599 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
600
601         * docs/pwg/advanced-events.xml:
602         * docs/pwg/advanced-request.xml:
603         * docs/pwg/advanced-scheduling.xml:
604         * docs/pwg/appendix-porting.xml:
605         * docs/pwg/building-boiler.xml:
606         * docs/pwg/intro-preface.xml:
607         * docs/pwg/other-ntoone.xml:
608           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
609           of example code and explanation for pad activation, loop() and
610           getrange() functions and a bit more. Remove old comments pointing
611           to loop-functions.
612         * examples/pwg/Makefile.am:
613           Add loop/getrange examples.
614
615 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
616
617         * configure.ac:
618           check for valgrind binary + some fixes
619         * check/gst.supp:
620           valgrind suppressions for the tests
621         * check/Makefile.am:
622           add a valgrind: target that valgrinds the unit tests
623         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
624         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
625         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
626         * check/gst/gstghostpad.c:
627           added some cleanup
628         * check/gst/gstdata.c:
629           removed
630         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
631         (thread_unref), (gst_mini_object_suite), (main):
632           added
633         * gst/gst.c: (gst_deinit):
634         * gst/gst.h:
635           add a method to clean up.
636         * gst/gstsystemclock.c: (gst_system_clock_dispose),
637         (gst_system_clock_obtain):
638           allow for disposing the system clock.
639         * tools/gst-launch.c: (main):
640           deinit
641
642 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
643
644         * docs/gst/tmpl/gstbasesrc.sgml:
645         * docs/gst/tmpl/gstfakesrc.sgml:
646         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
647         (gst_base_src_init), (gst_base_src_set_property),
648         (gst_base_src_get_property), (gst_base_src_get_range),
649         (gst_base_src_start):
650         * gst/base/gstbasesrc.h:
651           add num-buffers property
652         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
653         (gst_fakesrc_init), (gst_fakesrc_set_property),
654         (gst_fakesrc_get_property), (gst_fakesrc_create),
655         (gst_fakesrc_start):
656           remove num-buffers property
657
658 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
659
660         * docs/gst/gstreamer-sections.txt:
661         * docs/gst/tmpl/gstbasesink.sgml:
662         * docs/gst/tmpl/gstbasesrc.sgml:
663         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
664         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
665         (gst_base_sink_finalize), (gst_base_sink_set_clock),
666         (gst_base_sink_set_property), (gst_base_sink_get_property),
667         (gst_base_sink_handle_object), (gst_base_sink_event),
668         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
669         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
670         (gst_base_sink_loop), (gst_base_sink_deactivate),
671         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
672         (gst_base_sink_change_state):
673         * gst/base/gstbasesink.h:
674         * gst/base/gstbasesrc.h:
675         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
676         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
677         (gst_filesink_init):
678           more macro splitting
679
680 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
681
682         * gst/gstelement.c: (gst_element_get_bus):
683           add debug
684         * tools/gst-launch.c: (check_intr), (event_loop):
685           fix bus leaks
686
687 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
688
689         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
690           fix a caps leak
691
692 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
693
694         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
695         (gst_base_src_finalize):
696           add finalize method and clean up properly
697         * gst/gstpipeline.c: (gst_pipeline_dispose):
698           add debug
699
700 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
701
702         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
703         (gst_bin_suite):
704           add more things to check
705         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
706         * gst/gstelement.c:
707           more debug
708
709 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
710
711         * check/elements/gstfakesrc.c: (chain_func), (event_func),
712         (GST_START_TEST), (fakesrc_suite):
713         * check/gst-libs/gdp.c: (GST_START_TEST):
714         * check/gst/gst.c: (GST_START_TEST):
715         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
716         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
717         * check/gst/gstbus.c: (GST_START_TEST):
718         * check/gst/gstcaps.c: (GST_START_TEST):
719         * check/gst/gstdata.c: (GST_START_TEST):
720         * check/gst/gstelement.c: (GST_START_TEST):
721         * check/gst/gstghostpad.c: (GST_START_TEST):
722         * check/gst/gstiterator.c: (GST_START_TEST):
723         * check/gst/gstmessage.c: (GST_START_TEST):
724         * check/gst/gstobject.c: (GST_START_TEST):
725         * check/gst/gstpad.c: (GST_START_TEST):
726         * check/gst/gststructure.c: (GST_START_TEST):
727         * check/gst/gstsystemclock.c: (GST_START_TEST),
728         (gst_systemclock_suite):
729         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
730         * check/gst/gstvalue.c: (GST_START_TEST):
731         * check/pipelines/cleanup.c: (GST_START_TEST):
732         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
733         * check/states/sinks.c: (GST_START_TEST):
734         * check/gstcheck.c: (gst_check_init):
735         * check/gstcheck.h:
736           add debugging category
737           use GST_START_TEST now, so we add a debug line
738
739 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
740
741         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
742           add test for state change message on a bin
743         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
744           add another test
745         * gst/gstbin.c: (gst_bin_init):
746         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
747         * gst/gstelement.c: (gst_element_post_message),
748         (gst_element_set_state):
749         * gst/gstelementfactory.c: (gst_element_factory_create):
750         * gst/gstmessage.c: (gst_message_new):
751         * gst/gstscheduler.c:
752           various debugging additions and cleanups
753
754 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
755
756         * check/Makefile.am:
757         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
758         (main):
759           adding tests for elements
760         * gst/gstelement.c: (gst_element_dispose):
761
762 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
763
764         * gst/registries/gstlibxmlregistry.c: (load_feature):
765           plug more leaks.  A simple gst_init() now is leakfree, yay.
766
767 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
768
769         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
770         (gst_xml_registry_load):
771           plug another memleak
772
773 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
774
775         * configure.ac:
776           use GST_SET_ERROR_CFLAGS
777         * docs/faq/cvs.xml:
778           change to ERROR_CFLAGS
779
780 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
781
782         * configure.ac:
783           make GST_ERROR_CFLAGS overridable and re-enable Werror
784         * docs/faq/cvs.xml:
785           add a note about error CFLAGS
786         * docs/gst/tmpl/gstfakesrc.sgml:
787         * gst/elements/gstfakesrc.c:
788           comment out some unused code
789         * gst/gst.c: (split_and_iterate):
790         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
791         (load_feature):
792           plug some memleaks
793
794 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
795
796         * common/Makefile.am:
797         * common/gtk-doc.mak:
798         * docs/gst/Makefile.am:
799           factor out gtk-doc.mak
800
801 2005-07-07  Wim Taymans  <wim@fluendo.com>
802
803         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
804         (gst_thread_scheduler_dispose):
805         Unlock the STREAM_LOCK completely.
806
807 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
808
809         * check/Makefile.am:
810         * check/elements/.cvsignore:
811         * check/elements/gstfakesrc.c: (chain_func), (event_func),
812         (START_TEST), (fakesrc_suite), (main):
813         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
814         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
815         (gst_fakesrc_create), (gst_fakesrc_start):
816         * gst/elements/gstfakesrc.h:
817           adding a first element test
818
819 2005-07-07  Andy Wingo  <wingo@pobox.com>
820
821         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
822         debug message.
823
824 2005-07-07  Wim Taymans  <wim@fluendo.com>
825
826         * gst/gstquery.c:
827         * gst/gstquery.h:
828         Remove old types
829
830 2005-07-07  Wim Taymans  <wim@fluendo.com>
831
832         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
833         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
834         Allow subclasses to implement their own negotiation.
835
836 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
837
838         * docs/design/part-gstbin.txt:
839         * docs/design/part-gstpipeline.txt:
840           Update design notes to reflect the movement of
841           responsibility for bus handling from GstPipeline to
842           GstBin
843
844 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
845
846         * configure.ac:
847           Remove unnecessary queue2/3/4 examples.
848
849 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
850
851         * examples/Makefile.am:
852         * examples/helloworld/helloworld.c: (event_loop), (main):
853         * examples/queue/queue.c: (event_loop), (main):
854         * examples/queue2/queue2.c: (main):
855           Update a couple of the examples to work again.
856
857         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
858         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
859          Spelling corrections and extra debug.
860         
861         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
862         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
863         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
864         * gst/gstbin.h:
865         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
866         (gst_pipeline_change_state):
867         * gst/gstpipeline.h:
868           Move the bus handler for children to the GstBin, and create a
869           separate bus for receiving messages from children to the one the
870           bus sends 'upwards' on.
871
872 2005-07-06  Wim Taymans  <wim@fluendo.com>
873
874         * gst/base/README:
875         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
876         (gst_base_sink_handle_object), (gst_base_sink_loop),
877         (gst_base_sink_change_state):
878         * gst/base/gstbasesink.h:
879         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
880         (gst_base_src_init), (gst_base_src_setcaps),
881         (gst_base_src_getcaps), (gst_base_src_loop),
882         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
883         (gst_base_src_start), (gst_base_src_change_state):
884         * gst/base/gstbasesrc.h:
885         Make basesrc negotiate.
886         Handle the case where preroll fails in basesink.
887         Update README.
888
889 2005-07-06  Wim Taymans  <wim@fluendo.com>
890
891         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
892         Implement the fixate function.
893         Clean up acceptcaps.
894
895 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
896
897         * docs/pwg/building-filterfactory.xml:
898         * docs/pwg/pwg.xml:
899           Remove never-written filter-factory chapter; I'll add the various
900           base classes to part 4 ("other element types") later on.
901
902 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
903
904         * docs/pwg/advanced-negotiation.xml:
905         * docs/pwg/building-boiler.xml:
906         * docs/pwg/building-pads.xml:
907         * docs/pwg/pwg.xml:
908         * examples/pwg/Makefile.am:
909           Add a chapter on caps negotiation, simplify the original code
910           samples a bit w.r.t. caps negotiation, add link to the advanced
911           section. Add a bunch of examples showing different use cases of
912           different types of caps negotiation. Upstream renegotiation isn't
913           fully documented yet since nobody knows how that works.
914
915 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
916
917         * check/gst/gstpad.c:
918         * check/gstcheck.c:
919         * gst/gstpad.c: (gst_pad_get_internal_links_default):
920           if pad has no parent, return NULL as list of internal links
921
922 2005-07-05  Andy Wingo  <wingo@pobox.com>
923
924         * gst/elements/gstfilesrc.c:
925         * gst/elements/gstfakesrc.c: 
926         * gst/base/gstpushsrc.c:
927         * gst/base/gstbasesrc.h: 
928         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
929         
930 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
931
932         * Makefile.am:
933           better report generation target (lcov needs a patch)
934
935 2005-07-05  Andy Wingo  <wingo@pobox.com>
936
937         * gst/elements, testsuite: Null if we got it...
938
939 2005-07-05  Wim Taymans  <wim@fluendo.com>
940
941         * configure.ac:
942         * libs/gst/dataprotocol/Makefile.am:
943         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
944         * libs/gst/dataprotocol/dataprotocol.h:
945         * pkgconfig/Makefile.am:
946         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
947         * pkgconfig/gstreamer-dataprotocol.pc.in:
948         Ported dataprotol to 0.9. 
949         Added pkgconfig files.
950
951 2005-07-05  Andy Wingo  <wingo@pobox.com>
952
953         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
954         Default to returning TRUE for the case when tranform_caps returns
955         a fixed caps, like for identity or volume.
956
957         * check/gst/gstbus.c (pound_bus_with_messages): 
958         * check/gst/gstmessage.c (START_TEST): 
959         * check/pipelines/simple_launch_lines.c (got_handoff): Application
960         message API change.
961
962         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
963         logic weaks here: always run transform_caps, trying passthrough
964         operation only if the original caps intersects with the transform.
965
966         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
967         source and sink caps.
968
969         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
970         Intersect the peer caps with the pad template before going into
971         transform_caps.
972         (gst_base_transform_transform_caps): More debugging.
973
974         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
975         src argument.
976
977 2005-07-04  Edward Hervey  <edward@fluendo.com>
978
979         * gst/gstutils.c:
980         * gst/gstutils.h:
981         (gst_pad_add_*_probe): now returns the signal id for better wrapping
982         in bindings.
983
984 2005-07-04  Andy Wingo  <wingo@pobox.com>
985
986         * check/gst/gstpad.c: Only set explicit caps on pads.
987
988 2005-07-01  Andy Wingo  <wingo@pobox.com>
989
990         * tests/network-clock.scm: Commentary update.
991
992         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
993         Didn't really make sense, not implementable with basetransform,
994         etc.
995         (gst_identity_transform): Unref inbuf via make_writable. Feeble
996         attempt at implementing the sync property, needs an unlock method.
997
998         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
999         New func, by default returns the same caps (the identity
1000         transformation).
1001         (gst_base_transform_getcaps): Uses transform_caps to return
1002         something sensible.
1003         (gst_base_transform_setcaps): Complicated logic to get caps on
1004         both pads, even if they are different, and to call set_caps once
1005         for every time both pads get their caps set.
1006         (gst_base_transform_handle_buffer): Give the ref to the transform
1007         function. Allows in-place modification of the buffer.
1008
1009         * gst/base/gstbasetransform.h (transform_caps): New class method.
1010         Given caps on one side, what can I do on the other.
1011         (set_caps): Take two caps, one for each side of the element.
1012
1013         * gst/gstpad.h:
1014         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1015         caps in place. This is safe because we can check the mutability of
1016         the caps, and a good idea because fixate functions are just called
1017         as a matter of last resort. (Not actually implemented.)
1018         (gst_pad_set_caps): If the caps we're setting is actually the same
1019         as the existing pad caps, just update the pointer without calling
1020         setcaps. Assert that caps is either NULL or fixed, as per the
1021         docs.
1022
1023         * gst/gstghostpad.c: Update for fixate changes.
1024
1025 2005-07-02  Andy Wingo  <wingo@pobox.com>
1026
1027         * gst/gstcaps.c:
1028         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1029         two refcounts makes it immutable, which is enough. Doc more.
1030
1031 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1032
1033         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1034           Put the mini_object into GValue as a mini_object,
1035           not a gpointer, since that's how we declared
1036           the signal.
1037
1038 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1039
1040         * examples/pwg/Makefile.am:
1041           Fix buildbot again.
1042
1043 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1044
1045         * docs/pwg/building-testapp.xml:
1046           Add extra check.
1047         * examples/pwg/Makefile.am:
1048           Fix buildbot.
1049
1050 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1051
1052         * configure.ac:
1053         * examples/Makefile.am:
1054         * examples/pwg/Makefile.am:
1055         * examples/pwg/extract.pl:
1056           Enable building the PWG examples.
1057         * docs/pwg/advanced-interfaces.xml:
1058           Add URI interface stub.
1059         * docs/pwg/advanced-types.xml:
1060         * docs/pwg/other-autoplugger.xml:
1061         * docs/pwg/appendix-porting.xml:
1062         * docs/pwg/pwg.xml:
1063           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1064         * docs/pwg/building-boiler.xml:
1065         * docs/pwg/building-chainfn.xml:
1066         * docs/pwg/building-pads.xml:
1067         * docs/pwg/building-props.xml:
1068         * docs/pwg/building-state.xml:
1069         * docs/pwg/building-testapp.xml:
1070           Update the building-*.xml parts for 0.9 changes. All examples
1071           code blocks compile in examples/pwg/*.
1072
1073 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1074
1075         * docs/manual/advanced-autoplugging.xml:
1076         * docs/manual/appendix-checklist.xml:
1077         * docs/manual/appendix-integration.xml:
1078         * docs/manual/highlevel-components.xml:
1079           Fix playbin/decodebin examples, update docs a bit, mention bus
1080           instead of signals in various places, mention kmplayer and
1081           kaffeine since they have a working GStreamer backend in the KDE
1082           section.
1083
1084 2005-06-30  Wim Taymans  <wim@fluendo.com>
1085
1086         * CHANGES-0.9:
1087         * docs/design/draft-ghostpads.txt:
1088         * docs/design/draft-push-pull.txt:
1089         * docs/design/draft-query.txt:
1090         * docs/design/part-TODO.txt:
1091         * docs/design/part-query.txt:
1092         Added CHANGES-0.9 doc, updated status of other docs.
1093         
1094         * gst/gstquery.h:
1095         Remove "hmm" macro
1096
1097 2005-06-30  Wim Taymans  <wim@fluendo.com>
1098
1099         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1100         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1101         (gst_base_sink_change_state):
1102         * gst/base/gstbasesink.h:
1103         Some tweaks, only EOS and a buffer complete a preroll.
1104
1105 2005-06-30  Andy Wingo  <wingo@pobox.com>
1106
1107         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1108         activate_push down to the internal pad as well.
1109
1110 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1111
1112         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1113
1114         * gst/gsttaginterface.c:
1115           Some documentation fixes (#307394 and #307397).
1116
1117 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1118
1119         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1120
1121         * gst/gstvalue.c: (gst_value_intersect_list):
1122           Fix memleak (#309125).
1123
1124 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1125
1126         * docs/manual/advanced-dataaccess.xml:
1127           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1128         * docs/manual/basics-pads.xml:
1129           Add reference for filtered caps to above chapter.
1130
1131 2005-06-30  Wim Taymans  <wim@fluendo.com>
1132
1133         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1134         (gst_bin_change_state):
1135         Probes are gone.
1136         Lame attempt at making the state change function a bit
1137         more readable.
1138
1139 2005-06-30  Wim Taymans  <wim@fluendo.com>
1140
1141         * docs/design/part-clocks.txt:
1142         * docs/design/part-element-sink.txt:
1143         * docs/design/part-events.txt:
1144         * docs/design/part-preroll.txt:
1145         * docs/design/part-states.txt:
1146         Some more tweeks and additions to the docs.
1147
1148 2005-06-30  Wim Taymans  <wim@fluendo.com>
1149
1150         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1151         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1152         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1153         (gst_pad_check_pull_range), (gst_pad_get_range),
1154         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1155         * gst/gstpad.h:
1156         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1157         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1158         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1159         (gst_pad_remove_buffer_probe):
1160         Removed atomic operations, use existing LOCK.
1161         Move exception handling out of main code path.
1162
1163 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1164
1165         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1166         (silly_return_true_function), (gst_pad_class_init),
1167         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1168         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1169         (gst_pad_send_event):
1170           Fix accumulator, add default value by using _emitv() instead
1171           of _emit() for signal emission.
1172
1173 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1174
1175         * docs/manual/advanced-dataaccess.xml:
1176         * examples/manual/Makefile.am:
1177           Add probe example.
1178         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1179           Make work (??).
1180
1181 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1182
1183         * gst/elements/gstfilesink.c: (gst_filesink_render):
1184           Simplify code so that we don't have to handle short
1185           writes and return GST_FLOW_ERROR if an error occured.
1186
1187 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1188
1189         * docs/gst/gstreamer-docs.sgml:
1190           Remove probes more.
1191
1192 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1193
1194         * docs/gst/gstreamer-sections.txt:
1195         * docs/gst/tmpl/gstpad.sgml:
1196         * docs/gst/tmpl/gstprobe.sgml:
1197         * gst/Makefile.am:
1198         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1199         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1200         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1201         (gst_pad_push_event), (gst_pad_send_event):
1202         * gst/gstpad.h:
1203         * gst/gstutils.c: (gst_pad_add_data_probe),
1204         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1205         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1206         (gst_pad_remove_buffer_probe):
1207         * gst/gstutils.h:
1208           Remove old probes, add new g-signal-based probes and some utility
1209           functions.
1210
1211 2005-06-29  Edward Hervey  <edward@fluendo.com>
1212
1213         * gst/gstelementfactory.c:
1214         * gst/gstutils.h:
1215         * gst/gstutils.c:
1216         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1217         the definition to the header file.
1218
1219 2005-06-29  Andy Wingo  <wingo@pobox.com>
1220
1221         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1222         plugins from the source directory.
1223
1224 2005-06-29  Wim Taymans  <wim@fluendo.com>
1225
1226         * docs/gst/tmpl/gstbuffer.sgml:
1227         * docs/gst/tmpl/gstclock.sgml:
1228         Some fixings for blantently wrong text.
1229
1230 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1231
1232         * check/Makefile.am:
1233         * gst/gst.c: (add_path_func), (init_pre):
1234         * gst/gstregistry.c: (gst_registry_add_path):
1235           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1236           only scan the GST_PLUGIN_PATH locations, and not add
1237           system locations
1238
1239 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1240
1241         * docs/gst/gstreamer-sections.txt:
1242         * docs/gst/tmpl/gstbasesrc.sgml:
1243         * gst/gstelement.c:
1244         * gst/gstelement.h:
1245         * gst/gstevent.c:
1246         * gst/gstutils.c:
1247           doc fixes
1248
1249 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1250
1251         * docs/manual/advanced-autoplugging.xml:
1252           Fix autoplugging example.
1253
1254 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1255
1256         * docs/manual/advanced-autoplugging.xml:
1257         * docs/manual/mime-world.fig:
1258           Try to get autoplugging working, fix type detection. Fix text
1259           in hello-world image.
1260
1261 2005-06-29  Wim Taymans  <wim@fluendo.com>
1262
1263         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1264         (gst_base_sink_change_state):
1265         Small debug line.
1266
1267         * gst/gstclock.h:
1268         map SIGNAL and BROADCAST to the right function.
1269
1270         * gst/gstobject.h:
1271         Remove redundant braces.
1272
1273         * gst/gstpad.c: (gst_pad_set_caps):
1274         Don't call setcaps function when reseting caps to NULL.
1275
1276         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1277         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1278         (gst_system_clock_id_unschedule):
1279         Use BROADCAST as this is what we do.
1280
1281 2005-06-29  Wim Taymans  <wim@fluendo.com>
1282
1283         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1284         We are actually prerolling before commiting the state
1285         change. 
1286
1287 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1288
1289         * docs/manual/advanced-clocks.xml:
1290         * docs/manual/advanced-interfaces.xml:
1291         * docs/manual/advanced-metadata.xml:
1292         * docs/manual/advanced-position.xml:
1293         * docs/manual/advanced-schedulers.xml:
1294         * docs/manual/advanced-threads.xml:
1295         * docs/manual/appendix-porting.xml:
1296         * docs/manual/basics-bins.xml:
1297         * docs/manual/basics-bus.xml:
1298         * docs/manual/basics-elements.xml:
1299         * docs/manual/basics-helloworld.xml:
1300         * docs/manual/basics-pads.xml:
1301         * docs/manual/highlevel-components.xml:
1302         * docs/manual/manual.xml:
1303         * docs/manual/thread.fig:
1304           Update (until threads/scheduling) Application Development Manual;
1305           remove GstThread, add GstBus, add simple porting checklist, add
1306           documentation for tag writing, clocks, make all examples until this
1307           part compile and run.
1308         * examples/manual/Makefile.am:
1309           Update from changes to Application Development Manual; add bus
1310           example, remove thread example.
1311
1312 2005-06-28  Wim Taymans  <wim@fluendo.com>
1313
1314         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1315         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1316         (gst_bus_source_dispatch):
1317         Add debugging messages.
1318         Make internal methods static.
1319         Handle the case where the bus is flushed in the handler.
1320         
1321         * gst/gstelement.c: (gst_element_get_bus):
1322         Fix refcount in _get_bus();
1323
1324         * gst/gstpipeline.c: (gst_pipeline_change_state),
1325         (gst_pipeline_get_clock_func):
1326         Clock refcounting fixes.
1327         Handle the case where preroll timed out more gracefully.
1328         
1329         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1330         Clean up the internal thread in dispose. This is needed
1331         for subclasses that actually get disposed.
1332         
1333         * gst/schedulers/threadscheduler.c:
1334         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1335         (gst_thread_scheduler_dispose):
1336         Free thread pool in dispose.
1337
1338 2005-06-28  Andy Wingo  <wingo@pobox.com>
1339
1340         * tests/network-clock-utils.scm (debug, print-event): New utils.
1341
1342         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1343         (*packet-loss*): Unified loss probability.
1344         (network-time): Report out-of-band events.
1345
1346         * tests/plot-data: Add support for out-of-band events. Hack it
1347         into this script instead of passing it down the pipe; should fix
1348         this later.
1349
1350 2005-06-28  Wim Taymans  <wim@fluendo.com>
1351
1352         * docs/gst/gstreamer.types:
1353         * docs/gst/tmpl/gstbasesrc.sgml:
1354         * docs/gst/tmpl/gstpad.sgml:
1355         Docs fixes.
1356
1357 2005-06-28  Wim Taymans  <wim@fluendo.com>
1358
1359         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1360         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1361         (gst_proxy_pad_do_fixatecaps):
1362         Correctly proxy the check_pull_range function.
1363
1364 2005-06-28  Andy Wingo  <wingo@pobox.com>
1365
1366         * tests/network-clock.scm: Removed need for slib.
1367         
1368 2005-06-28  Wim Taymans  <wim@fluendo.com>
1369
1370         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1371         (gst_basesink_preroll_queue_flush):
1372         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1373         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1374         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1375         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1376         (gst_proxy_pad_set_property):
1377         * gst/gstpad.c:
1378         * gst/gstpad.h:
1379         * gst/gstqueue.c: (gst_queue_init):
1380         The deprecated pad loop function is removed now.
1381
1382 2005-06-28  Andy Wingo  <wingo@pobox.com>
1383
1384         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1385         New parameters, simulate network packet loss.
1386
1387         * tests/network-clock-utils.scm: Initialize the RNG.
1388
1389 2005-06-28  Wim Taymans  <wim@fluendo.com>
1390
1391         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1392         (gst_basesink_event), (gst_basesink_deactivate):
1393         Flushing the preroll queue always needs to unlock the waiters.
1394
1395 2005-06-28  Edward Hervey  <edward@fluendo.com>
1396
1397         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1398         Wheen a seek was successful on a pipeline, set the stream_time to the
1399         seek offset in order to have a synchronized stream_time.
1400
1401 2005-06-28  Wim Taymans  <wim@fluendo.com>
1402
1403         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1404         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1405         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1406         (gst_proxy_pad_do_fixatecaps):
1407         Call wrapper function instead of just calling the function
1408         pointers. This takes care of any locking and whatmore.
1409
1410 2005-06-28  Wim Taymans  <wim@fluendo.com>
1411
1412         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1413         (gst_pad_pull_range):
1414         * gst/gstpad.h:
1415         CONNECTED -> LINKED.
1416
1417 2005-06-28  Andy Wingo  <wingo@pobox.com>
1418
1419         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1420         source-munging commit!!!
1421
1422         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1423         (gst_object_sink): Take gpointer arguments, not GstObject --
1424         avoids casts. Like GLib.
1425
1426         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1427         activate.
1428
1429 2005-06-27  Andy Wingo  <wingo@pobox.com>
1430
1431         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1432         remaining buffer.
1433
1434         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1435         returns a sorted copy of the trace list.
1436         (gst_alloc_trace_print_live): New API, only prints traces with
1437         live objects. Sort the list.
1438         (gst_alloc_trace_print_all): Sort the list.
1439         (gst_alloc_trace_print): Align columns.
1440
1441         * gst/elements/gstttypefindelement.c:
1442         * gst/elements/gsttee.c:
1443         * gst/base/gstbasesrc.c:
1444         * gst/base/gstbasesink.c:
1445         * gst/base/gstbasetransform.c:
1446         * gst/gstqueue.c: Adapt for pad activation changes.
1447
1448         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1449         sched.
1450         (gst_pipeline_dispose): Drop ref on sched.
1451
1452         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1453         (gst_pad_activate_default): Push mode by default.
1454         (pre_activate_switch, post_activate_switch): New stubs, things to
1455         do before and after switching activation modes on pads.
1456         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1457         the pad's activate function to choose which mode to activate.
1458         Shortcut on deactivation and call the right function directly.
1459         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1460         mode.
1461         (gst_pad_activate_push): New API, same for push mode.
1462         (gst_pad_set_activate_function) 
1463         (gst_pad_set_activatepull_function) 
1464         (gst_pad_set_activatepush_function): Setters for new API.
1465
1466         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1467         Trace all miniobjects.
1468         (gst_mini_object_make_writable): Unref the arg if we copy, like
1469         gst_caps_make_writable.
1470
1471         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1472
1473         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1474         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1475         Adapt for new pad API.
1476
1477         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1478
1479         * gst/gstelement.h:
1480         * gst/gstelement.c (gst_element_iterate_src_pads) 
1481         (gst_element_iterate_sink_pads): New API functions.
1482         
1483         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1484         should fold into gstiterator.c in some form.
1485         (gst_element_pads_activate): Simplified via use of fold and
1486         delegation of decisions to gstpad->activate.
1487
1488         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1489         help in debugging.
1490
1491         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1492         class once in init, like gstmessage. Didn't run into this issue
1493         but it seems correct. Don't initialize a trace, gstminiobject does
1494         that.
1495
1496         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1497         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1498         to the bus.
1499         (assert_live_count): New util function, uses alloc traces to check
1500         cleanup.
1501
1502         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1503         To be modified when unlink drops the internal pad.
1504
1505 2005-06-27  Wim Taymans  <wim@fluendo.com>
1506
1507         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1508         (gst_bin_change_state):
1509         Cleanup the get_state() function a little, make sure it
1510         iterates the same set of elements.
1511         Added stub iterate_state_order().
1512
1513 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1514
1515         * docs/gst/gstreamer-docs.sgml:
1516         * docs/gst/gstreamer-sections.txt:
1517         * docs/gst/gstreamer.types:
1518         * docs/gst/tmpl/gstbasesink.sgml:
1519         * docs/gst/tmpl/gstbasesrc.sgml:
1520         * docs/gst/tmpl/gstbasetransform.sgml:
1521         * docs/gst/tmpl/gstelement.sgml:
1522         * docs/gst/tmpl/gstiterator.sgml:
1523         * gst/base/gstbasesrc.c:
1524         * gst/base/gstbasesrc.h:
1525         * gst/base/gstbasetransform.h:
1526         * gst/gstelement.c:
1527         * gst/gstiterator.h:
1528           adding basetransform and iterator docs
1529
1530 2005-06-27  Andy Wingo  <wingo@pobox.com>
1531
1532         * docs/design/part-activation.txt: Notes on how activation should
1533         work -- not quite implemented yet.
1534
1535 2005-06-25  Wim Taymans  <wim@fluendo.com>
1536
1537         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1538         At least get the chain function correct, needs more
1539         fixing.
1540
1541 2005-06-25  Wim Taymans  <wim@fluendo.com>
1542
1543         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1544         (gst_basesink_handle_object), (gst_basesink_event),
1545         (gst_basesink_do_sync), (gst_basesink_handle_event),
1546         (gst_basesink_change_state):
1547         * gst/gsttask.h:
1548         Right, two problems here: ghostpads don't take locks and
1549         glib _rec_mutex_lock_full() with depth==0 still locks.
1550         Catch illegal locking and g_warn them.
1551
1552 2005-06-25  Wim Taymans  <wim@fluendo.com>
1553
1554         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1555         Have to check for completion now...
1556
1557 2005-06-25  Wim Taymans  <wim@fluendo.com>
1558
1559         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1560         (gst_basesink_handle_object), (gst_basesink_event),
1561         (gst_basesink_do_sync), (gst_basesink_handle_event),
1562         (gst_basesink_change_state):
1563         * gst/gstpad.h:
1564         Unlock STREAM_LOCK whatever the recursion was.
1565
1566 2005-06-25  Wim Taymans  <wim@fluendo.com>
1567
1568         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1569         (gst_basesink_preroll_queue_empty),
1570         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1571         (gst_basesink_event), (gst_basesink_do_sync),
1572         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1573         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1574         (gst_basesink_change_state):
1575         Reworked the base sink, handle event and buffer serialisation
1576         correctly and removed possible deadlock.
1577         Handle EOS correctly.
1578
1579 2005-06-25  Wim Taymans  <wim@fluendo.com>
1580
1581         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1582         (gst_pipeline_change_state):
1583         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1584         Allow elements to post EOS in the state change function.
1585         Fix up -launch, make it exit the poll loop when the
1586         pipeline actually changed state.
1587         Fix up warning parsing in -launch.
1588
1589 2005-06-25  Wim Taymans  <wim@fluendo.com>
1590
1591         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1592         (gst_tee_sink_activate):
1593         Core takes STREAM_LOCK for us now.
1594
1595 2005-06-25  Wim Taymans  <wim@fluendo.com>
1596
1597         * gst/gstelement.c: (gst_element_get_state_func),
1598         (gst_element_set_state):
1599         * gst/gstelement.h:
1600         * gst/gstmessage.c: (gst_message_parse_error),
1601         (gst_message_parse_warning):
1602         Keep track of current target state while performing a state
1603         change so that subclasses can do something interesting.
1604         Fix parsing of warning/error messages when GError is NULL.
1605
1606 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1607
1608         * docs/gst/Makefile.am:
1609         * docs/gst/gstreamer-docs.sgml:
1610         * docs/gst/gstreamer-sections.txt:
1611         * docs/gst/gstreamer.types:
1612         * docs/gst/tmpl/gstbasesink.sgml:
1613         * docs/gst/tmpl/gstbasesrc.sgml:
1614         * docs/gst/tmpl/gstbin.sgml:
1615         * docs/gst/tmpl/gstcompat.sgml:
1616         * docs/gst/tmpl/gstfakesink.sgml:
1617         * docs/gst/tmpl/gstfakesrc.sgml:
1618         * docs/gst/tmpl/gstfilesink.sgml:
1619         * docs/gst/tmpl/gstfilesrc.sgml:
1620         * docs/gst/tmpl/gstindex.sgml:
1621         * docs/manual/appendix-quotes.xml:
1622         * gst/base/gstbasesrc.h:
1623         * gst/elements/gstfakesrc.h:
1624         * gst/gstmessage.h:
1625           start pulling in base classes and elements in our docs
1626
1627 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1628
1629         * docs/gst/Makefile.am:
1630         * docs/libs/Makefile.am:
1631           fixed make distcheck with gtk-doc 1.3
1632
1633 2005-06-23  Wim Taymans  <wim@fluendo.com>
1634
1635         * gst/gstelement.c: (gst_element_get_state_func),
1636         (gst_element_set_state), (gst_element_change_state):
1637         When the state did not change, also report NO_PREROLL
1638         when it matters.
1639
1640 2005-06-23  Wim Taymans  <wim@fluendo.com>
1641
1642         * gst/gstpad.c: (gst_pad_event_default):
1643         * gst/gstqueue.c: (gst_queue_loop):
1644         No unsafe task pausing please.
1645
1646 2005-06-23  Wim Taymans  <wim@fluendo.com>
1647
1648         * gst/schedulers/threadscheduler.c:
1649         (gst_thread_scheduler_task_start),
1650         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1651         Ref the task before pushing it on the threadpool. This
1652         makes sure that we have a ref when the threadfunction is
1653         actually called.
1654
1655 2005-06-23  Andy Wingo  <wingo@pobox.com>
1656
1657         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1658         offset is greater than the file's size.
1659
1660         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1661         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1662         * gst/gstobject.c (gst_object_class_init): Make the class lock
1663         recursive. Wim won't let me drop deep_notify. Decodebin works
1664         again, whoopdy doo.
1665
1666         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1667         internal pad, and hacks accordingly. Doesn't do it on the target
1668         pad because we change its caps. Probably catches all cases of
1669         interest tho.
1670         (gst_ghost_pad_set_property): Connect to notify::caps as
1671         appropritate.
1672
1673         * tests/network-clock.scm (plot-simulation): Pipe data to the
1674         elite python skript.
1675
1676         * tests/network-clock-utils.scm (define-parameter): New macro,
1677         defines a parameter that can be set via the command line.
1678         (set-parameter!, parse-parameter-arguments): Command line args
1679         parser.
1680
1681         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1682         stdin.
1683
1684 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1685
1686         * gst/elements/gsttypefindelement.c:
1687         (gst_type_find_element_handle_event):
1688           Don't restart typefinding on a discont.
1689         * gst/gstelement.c: (gst_element_set_state):
1690           Debug spelling fix.
1691         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1692           Allow changing mode of an active pad.
1693           Debug output fixes.
1694         * gst/registries/gstlibxmlregistry.c: (load_feature):
1695           Don't cast a static pad template to a normal pad template.
1696
1697 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1698
1699         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1700         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1701           remove gst_strtoll completely, since it didn't actually do
1702           anything more than what g_ascii_strtoull already does.
1703           check for range errors when deserializing
1704           do a cast for the unsigned cases; but further fixing needs
1705           a decision on what the interpretation of "(int)" and
1706           deserialization should be for values that fall outside the
1707           type's boundaries (ie, refuse, or interpret as casting)
1708
1709 2005-06-23  Wim Taymans  <wim@fluendo.com>
1710
1711         * check/Makefile.am:
1712         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1713         * docs/design/part-live-source.txt:
1714         * docs/design/part-states.txt:
1715         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1716         (gst_basesrc_set_live), (gst_basesrc_is_live),
1717         (gst_basesrc_get_range), (gst_basesrc_activate),
1718         (gst_basesrc_change_state):
1719         * gst/base/gstbasesrc.h:
1720         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1721         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1722         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1723         * gst/gstelement.c: (gst_element_get_state_func),
1724         (gst_element_set_state):
1725         * gst/gstelement.h:
1726         * gst/gsttypes.h:
1727         * tools/gst-launch.c: (event_loop), (main):
1728         Added support for live sources and other elements that
1729         cannot do preroll.
1730         Updated design docs, added live-source design doc.
1731         Implemented live source functionality in basesrc
1732         Fix error condition in _bin_get_state()
1733         Implement live source handling in -launch.
1734         Added check for live sources.
1735         Fixed case in GstBin where elements were changed state
1736         multiple times.
1737
1738
1739 2005-06-23  Andy Wingo  <wingo@pobox.com>
1740
1741         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1742         borken refcounting.
1743
1744         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1745         gst_caps_replace takes care of this for us.
1746
1747         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1748         gst_pad_set_caps on the target, not just its setcaps() function.
1749
1750         * tests/network-clock.scm: 
1751         * tests/network-clock-utils.scm: A network clock simulator.
1752         Something of an algorithmic testbed before doing something in C.
1753
1754 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1755
1756         * check/Makefile.am:
1757         * check/gst/capslist.h:
1758           copy over from 0.8, and add two with bitmasks specified with
1759           (int) 0xFF...
1760         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1761           add test to parse everything from capslist.h
1762         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
1763         (main):
1764           add test for structure deserialization
1765         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1766           add tests for deserialization of strings to int types
1767         * gst/gststructure.c: (gst_structure_nth_field_name):
1768         * gst/gststructure.h:
1769           add a way to get the name of a field referenced by index
1770         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1771           instead of checking if the resulting long long lies between
1772           min and max, we check if the long long would fit into
1773           a number of bytes for the final type.
1774           This fixes cases where a string represents 2^32 - 1, which
1775           when cast to int would be the (valid) -1, but is bigger than
1776           G_MAXINT
1777
1778 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1779
1780         * gst/parse/grammar.y:
1781           add a log line for type deserialization
1782
1783 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1784
1785         * check/gst/gstvalue.c: (START_TEST):
1786         * gst/gstvalue.c: (gst_value_deserialize):
1787           return long long, not int, so gint64 deserialization actually
1788           works.  Is there any flag that makes the compiler check this ?
1789           Fixes #308559
1790
1791 2005-06-22  Wim Taymans  <wim@fluendo.com>
1792
1793         * gst/gstbuffer.h:
1794         Added convenience macros for setting buffers in GValue.
1795
1796 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1797
1798         * check/gst/.cvsignore:
1799         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1800           add a test deserializing int64, and comment part out because
1801           it fails, yay !
1802
1803 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1804
1805         * check/Makefile.am:
1806         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
1807         * testsuite/Makefile.am:
1808         * testsuite/caps/Makefile.am:
1809         * testsuite/caps/value_serialize.c:
1810         * testsuite/test_gst_init.c:
1811           move a value_serialize test over
1812
1813 2005-06-20  Wim Taymans  <wim@fluendo.com>
1814
1815         * gst/gstpad.c:
1816         Small doc updates.
1817         
1818         * gst/gstvalue.c: (gst_value_compare_buffer),
1819         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
1820         (gst_value_compare_flags), (gst_value_serialize_flags),
1821         (gst_value_deserialize_flags), (_gst_value_initialize):
1822         Fix serialisation of buffers, they are not boxed types anymore
1823
1824 2005-06-20  Wim Taymans  <wim@fluendo.com>
1825
1826         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1827         Testcase to show error in buffer-on-caps serialisation.
1828
1829 2005-06-20  Andy Wingo  <wingo@pobox.com>
1830
1831         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
1832         will be adding to later.
1833
1834         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
1835         if its socks fill with rocks.
1836         (gst_system_clock_obtain): Set the name on object construction.
1837         Avoid double-checked locking.
1838
1839 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
1840
1841         * gst/gsturi.c: (gst_element_make_from_uri):
1842           Fix potential endless loop.
1843
1844 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1845
1846         * check/Makefile.am:
1847           add gsttag
1848         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
1849         (main):
1850           move over from testsuite dir and clean up
1851         * configure.ac:
1852         * gst/gsttag.c:
1853         * testsuite/Makefile.am:
1854         * testsuite/tags/.cvsignore:
1855         * testsuite/tags/Makefile.am:
1856         * testsuite/tags/merge.c:
1857           remove testsuite/tags
1858
1859 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1860
1861         * docs/gst/gstreamer-sections.txt:
1862         * docs/gst/tmpl/gstenumtypes.sgml:
1863         * win32/gstenumtypes.c:
1864           clean up documentation build a little
1865
1866 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1867
1868         * check/gstcheck.h:
1869           add macros for checking refcounts on objects and caps
1870         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
1871           add some more unit tests
1872         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1873         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
1874           fix leaked refcounts (I hope :)) so unittest works
1875         * gst/gstpad.h:
1876           whitespace removal
1877
1878 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1879
1880         * configure.ac: back to HEAD
1881
1882 === release 0.9.1 ===
1883
1884 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1885
1886         * NEWS:
1887         * RELEASE:
1888           updated
1889
1890 2005-06-17  Andy Wingo  <wingo@pobox.com>
1891
1892         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
1893         assert; it's always possible that the pad gets deactivated in
1894         between the checks in gstpad.c and the implementation. Rely on
1895         finish_preroll() to return a FLUSHING or similar instead of on the
1896         assert.
1897         
1898         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
1899         clock and post an EOS message if we come out of finish_preroll in
1900         the playing state.
1901
1902 2005-06-16  David Schleef  <ds@schleef.org>
1903
1904         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
1905         (gst_capsfilter_set_property): Allow NULL as possible value
1906         for filter_caps property, indicating GST_CAPS_ANY.
1907
1908 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1909
1910         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
1911           fix debug output
1912         * gst/schedulers/Makefile.am:
1913           use libgst prefix
1914         * gstreamer.spec.in:
1915           fix spec for it
1916
1917 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1918
1919         * gstreamer.spec.in:
1920           clean up
1921
1922 2005-06-08  Andy Wingo  <wingo@pobox.com>
1923
1924         * gst/gstutils.c: RPAD fixes all around.
1925         (gst_element_link_pads): Refcounting fixes.
1926
1927         * tools/gst-inspect.c:
1928         * tools/gst-xmlinspect.c:
1929         * parse/grammar.y:
1930         * gst/base/gsttypefindhelper.c:
1931         * gst/base/gstbasesink.c:
1932         * gst/gstqueue.c: RPAD fixes.
1933
1934         * gst/gstghostpad.h:
1935         * gst/gstghostpad.c: New ghost pad implementation as full proxy
1936         pads. The tricky thing is they provide both source and sink
1937         interfaces, since they proxy the internal pad for the external
1938         pad, and vice versa. Implement with lower-level ProxyPad objects,
1939         with the interior proxy pad as a child of the exterior ghost pad.
1940         Should write a doc on this.
1941         
1942         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
1943         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
1944         gst_object API.
1945         
1946         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
1947         pads are real pads. No ghost pads in this file. Not documenting
1948         the myriad s/RPAD/PAD/ and REALIZE fixes.
1949         (gst_pad_class_init): Add properties for "direction" and
1950         "template". Both are construct-only, so they can't change during
1951         the life of the pad. Fixes properly deriving from GstPad.
1952         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
1953         derived objects, just set properties when creating the objects via
1954         g_object_new.
1955         (gst_pad_get_parent): Implement as a function, return NULL if the
1956         parent is not an element.
1957         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
1958         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
1959         
1960         * gst/gstobject.c (gst_object_class_init): Make name a construct
1961         property. Don't set it in the object init.
1962
1963         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
1964         with UNKNOWN direction.
1965         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
1966         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
1967         (gst_element_remove_pad): Remove ghost-pad special cases.
1968         (gst_element_pads_activate): Remove rpad cruft.
1969
1970         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
1971         catch the pad's-parent-not-an-element case.
1972
1973         * gst/gst.h: Include gstghostpad.h.
1974
1975         * gst/gst.c (init_post): No more real, ghost pads.
1976
1977         * gst/Makefile.am: Add gstghostpad.[ch].
1978
1979         * check/Makefile.am:
1980         * check/gst/gstbin.c:
1981         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
1982         into a bin creates ghost pads, and that the refcounts are right.
1983         Partly moved from gstbin.c.
1984
1985 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1986
1987         * check/gst-libs/.cvsignore:
1988         * check/gst/.cvsignore:
1989         * check/pipelines/.cvsignore:
1990           ignore more
1991         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
1992         (START_TEST), (cleanup_suite), (main):
1993           add some tests related to cleanup after running pipelines
1994
1995 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1996
1997         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
1998           add a testsuite for GstBuffer
1999
2000 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2001
2002         * gst/gstminiobject.h:
2003           add defines for accessing the refcount
2004
2005 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2006
2007         * Makefile.am: added support for html unit test coverage reports
2008
2009 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2010
2011         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2012           Free existing caps if the capsfilter changes. Add a FIXME about
2013           setting those caps on the pads.
2014
2015         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2016           Before adding a ghost pad to a parent bin, check that there isn't
2017           already one for the element on the bin. Prevents infinite recursion
2018           when using decodebin in parse pipelines. Andy says he'll rewrite the
2019           way this works anyway, so ignore the hack.
2020
2021 2005-06-02  Andy Wingo  <wingo@pobox.com>
2022
2023         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2024         file size, pass it on to the type find helper.
2025
2026         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2027         segment_start and segment_end properly according to the seek
2028         method. Segment_end is still a bit flaky because offset can be
2029         negative for CUR and END cases, but it takes -1 as an "unset"
2030         value.
2031
2032 2005-06-02  Wim Taymans  <wim@fluendo.com>
2033
2034         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2035         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2036         (gst_basesink_activate):
2037         * gst/base/gstbasesink.h:
2038         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2039         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2040         (gst_pad_query), (gst_pad_start_task):
2041         * gst/gstpad.h:
2042         * gst/gstqueue.c: (gst_queue_bufferalloc),
2043         (gst_queue_handle_sink_event), (gst_queue_chain):
2044         Bufferalloc: return GstFlowReturn to more accuratly report
2045         why allocation failed.
2046
2047 2005-06-02  Wim Taymans  <wim@fluendo.com>
2048
2049         * gst/gstpipeline.c: (gst_pipeline_send_event):
2050         Take snapshot of state without blocking.
2051
2052 2005-06-02  Wim Taymans  <wim@fluendo.com>
2053
2054         * docs/design/part-TODO.txt:
2055         * docs/design/part-caps.txt:
2056         * docs/design/part-clocks.txt:
2057         * docs/design/part-negotiation.txt:
2058         * docs/design/part-preroll.txt:
2059         Small doc updates 
2060
2061 2005-05-30  Wim Taymans  <wim@fluendo.com>
2062
2063         * gst/elements/gstidentity.c: (gst_identity_event),
2064         (gst_identity_transform), (gst_identity_get_property):
2065         Protect last_message property as it is accessed from
2066         multiple threads.
2067
2068 2005-05-30  Wim Taymans  <wim@fluendo.com>
2069
2070         * gst/gstelement.c: (gst_element_init),
2071         (gst_element_pads_activate), (gst_element_change_state):
2072         Slicker pad activation code.
2073
2074 2005-05-30  Wim Taymans  <wim@fluendo.com>
2075
2076         * gst/Makefile.am:
2077         * gst/gstelement.h:
2078         * gst/gstelementfactory.h:
2079         * gst/gsttypes.h:
2080         Move elementfactory methods to separate .h file.
2081
2082 2005-05-30  Wim Taymans  <wim@fluendo.com>
2083
2084         * docs/design/part-overview.txt:
2085         * gst/gstsystemclock.h:
2086         Small typo fixes, doc updates.
2087
2088 2005-05-30  Wim Taymans  <wim@fluendo.com>
2089
2090         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2091         (init_popt_callback):
2092         Remove cpu-opt flag.
2093
2094 2005-05-30  Wim Taymans  <wim@fluendo.com>
2095
2096         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2097         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2098         * gst/gstbuffer.h:
2099         Avoid typechecking in places where not needed.
2100         Added accessor for malloc_data.
2101
2102 2005-05-30  Wim Taymans  <wim@fluendo.com>
2103
2104         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2105         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2106         (gst_pad_configure_sink), (gst_pad_configure_src),
2107         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2108         (gst_pad_start_task):
2109         Propagate errors from _set_caps() in configure_src/sink
2110         functions instead of returning TRUE.
2111         FLUSH events can travel up and downstream
2112
2113
2114 2005-05-30  Wim Taymans  <wim@fluendo.com>
2115
2116         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2117         (gst_basesink_activate):
2118         Handle EOS in preroll.
2119
2120 2005-05-30  Wim Taymans  <wim@fluendo.com>
2121
2122         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2123         (gst_queue_loop), (gst_queue_handle_src_event):
2124         Remove old pieces of code
2125         Flushing the queue in an upstream event is a very bad idea.
2126
2127 2005-05-26  Andy Wingo  <wingo@pobox.com>
2128
2129         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2130         gst_value_set_mini_object so as to add a ref on the object (which
2131         will be removed when the value is unset).
2132
2133         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2134         arg type in ::handoff.
2135
2136         * gst/gstelement.c (gst_element_change_state): Also deactivate
2137         pads in READY->NULL, just in case the element didn't make it to
2138         PAUSED. Wingo tested, Wim approved.
2139
2140 2005-05-26  Wim Taymans  <wim@fluendo.com>
2141
2142         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2143         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2144         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2145         A flushing pad cannot be used to alloc_buffer from.
2146
2147 2005-05-26  Wim Taymans  <wim@fluendo.com>
2148
2149         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2150         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2151         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2152         (gst_bus_create_watch), (gst_bus_add_watch_full):
2153         * gst/gstbus.h:
2154         Implement a real GSource and use g_main_context_wakeup() to
2155         signal new messages instead of the socketpair.
2156
2157 2005-05-25  Wim Taymans  <wim@fluendo.com>
2158
2159         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2160         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2161         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2162         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2163         (gst_pad_send_event), (gst_pad_start_task):
2164         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2165         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2166         (gst_queue_sink_activate), (gst_queue_src_activate),
2167         (gst_queue_change_state):
2168         * gst/gstqueue.h:
2169         Fix state changes for non sinks. We now change sinks, then elements
2170         with unconnected srcpads, then the rest.
2171         More efficient queue unlocking in flush and state changes.
2172         Set the pad activate mode even if it does not have an activate
2173         function.
2174
2175 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2176
2177         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2178           Don't go in pull mode for non-seekable sources.
2179         * gst/elements/gsttypefindelement.h:
2180         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2181         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2182         (free_entry), (stop_typefinding),
2183         (gst_type_find_element_handle_event), (find_peek),
2184         (gst_type_find_element_chain), (do_pull_typefind),
2185         (gst_type_find_element_change_state):
2186           Allow typefinding (w/o seeking) in push-mode, simplified version
2187           of what was in 0.8.
2188         * gst/gstutils.c: (gst_buffer_join):
2189         * gst/gstutils.h:
2190           gst_buffer_join() from 0.8.
2191
2192 2005-05-25  Wim Taymans  <wim@fluendo.com>
2193
2194         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2195         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2196         (gst_pad_send_event), (gst_pad_start_task):
2197         Disable attempt at mode switching until it is figured out.
2198
2199 2005-05-25  Wim Taymans  <wim@fluendo.com>
2200
2201         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2202         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2203         (gst_basesink_finish_preroll), (gst_basesink_chain),
2204         (gst_basesink_loop), (gst_basesink_activate),
2205         (gst_basesink_change_state):
2206         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2207         (gst_basesrc_get_range), (gst_basesrc_loop),
2208         (gst_basesrc_activate):
2209         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2210         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2211         (gst_real_pad_init), (gst_real_pad_set_property),
2212         (gst_real_pad_get_property), (gst_pad_set_active),
2213         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2214         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2215         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2216         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2217         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2218         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2219         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2220         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2221         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2222         (gst_pad_stop_task):
2223         * gst/gstpad.h:
2224         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2225         (gst_queue_loop), (gst_queue_src_activate):
2226         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2227         (gst_task_get_state):
2228         * gst/gsttask.h:
2229         * gst/schedulers/threadscheduler.c:
2230         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2231         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2232         in task function.
2233         Remove ACTIVE pad flag, use FLUSHING everywhere
2234         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2235         functions.
2236         Add locks around IS_FLUSHING when reading.
2237         Take STREAM lock in chain(), get_range() functions so plugins
2238         don't need to take it anymore.
2239         
2240
2241
2242 2005-05-25  Wim Taymans  <wim@fluendo.com>
2243
2244         * tools/gst-launch.c: (event_loop):
2245         Unref message after using its contents instead of
2246         before.
2247
2248 2005-05-24  Wim Taymans  <wim@fluendo.com>
2249
2250         * docs/design/draft-ghostpads.txt:
2251         * docs/design/draft-push-pull.txt:
2252         * docs/design/draft-query.txt:
2253         * docs/design/part-overview.txt:
2254         Docs updates, added general overview doc.
2255
2256 2005-05-21  David Schleef  <ds@schleef.org>
2257
2258         * docs/gst/tmpl/old/GstBin.sgml:
2259         * docs/gst/tmpl/old/GstBuffer.sgml:
2260         * docs/gst/tmpl/old/GstCaps.sgml:
2261         * docs/gst/tmpl/old/GstClock.sgml:
2262         * docs/gst/tmpl/old/GstCompat.sgml:
2263         * docs/gst/tmpl/old/GstData.sgml:
2264         * docs/gst/tmpl/old/GstElement.sgml:
2265         * docs/gst/tmpl/old/GstEvent.sgml:
2266         * docs/gst/tmpl/old/GstIndex.sgml:
2267         * docs/gst/tmpl/old/GstStructure.sgml:
2268         * docs/gst/tmpl/old/GstTag.sgml:
2269         * docs/gst/tmpl/old/cothreads.sgml:
2270         * docs/gst/tmpl/old/cothreads_compat.sgml:
2271         * docs/gst/tmpl/old/gettext.sgml:
2272         * docs/gst/tmpl/old/gobject2gtk.sgml:
2273         * docs/gst/tmpl/old/grammar.tab.sgml:
2274         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2275         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2276         * docs/gst/tmpl/old/gst_private.sgml:
2277         * docs/gst/tmpl/old/gstaggregator.sgml:
2278         * docs/gst/tmpl/old/gstarch.sgml:
2279         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2280         * docs/gst/tmpl/old/gstbufferstore.sgml:
2281         * docs/gst/tmpl/old/gstdata_private.sgml:
2282         * docs/gst/tmpl/old/gstdisksink.sgml:
2283         * docs/gst/tmpl/old/gstdisksrc.sgml:
2284         * docs/gst/tmpl/old/gstelementfactory.sgml:
2285         * docs/gst/tmpl/old/gstextratypes.sgml:
2286         * docs/gst/tmpl/old/gstfakesink.sgml:
2287         * docs/gst/tmpl/old/gstfakesrc.sgml:
2288         * docs/gst/tmpl/old/gstfdsink.sgml:
2289         * docs/gst/tmpl/old/gstfdsrc.sgml:
2290         * docs/gst/tmpl/old/gstfilesink.sgml:
2291         * docs/gst/tmpl/old/gstfilesrc.sgml:
2292         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2293         * docs/gst/tmpl/old/gstidentity.sgml:
2294         * docs/gst/tmpl/old/gstindexfactory.sgml:
2295         * docs/gst/tmpl/old/gstmarshal.sgml:
2296         * docs/gst/tmpl/old/gstmd5sink.sgml:
2297         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2298         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2299         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2300         * docs/gst/tmpl/old/gstpipefilter.sgml:
2301         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2302         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2303         * docs/gst/tmpl/old/gstshaper.sgml:
2304         * docs/gst/tmpl/old/gstspider.sgml:
2305         * docs/gst/tmpl/old/gstspideridentity.sgml:
2306         * docs/gst/tmpl/old/gststatistics.sgml:
2307         * docs/gst/tmpl/old/gsttee.sgml:
2308         * docs/gst/tmpl/old/gsttimecache.sgml:
2309         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2310         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2311         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2312         * docs/gst/tmpl/old/types.sgml:
2313           I didn't intend to add these or check them in.
2314
2315 2005-05-19  David Schleef  <ds@schleef.org>
2316
2317         * configure.ac: Use -no-common everywhere.  In a sane world, it
2318           would be the default in libtool, because without it, you can't
2319           build DLLs on Windows.
2320         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2321         * docs/gst/gstreamer-sections.txt:
2322         * docs/gst/tmpl/gstcpu.sgml:
2323         * docs/gst/tmpl/gstdata.sgml:
2324         * docs/gst/tmpl/gstthread.sgml:
2325
2326 2005-05-19  David Schleef  <ds@schleef.org>
2327
2328         * gst/gstminiobject.c: (gst_value_set_mini_object),
2329         (gst_value_take_mini_object), (gst_value_get_mini_object):
2330         * gst/gstminiobject.h: Add GValue set/get functions.
2331
2332 2005-05-19  Wim Taymans  <wim@fluendo.com>
2333
2334         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2335         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2336         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2337         * gst/gstbuffer.h:
2338         * gst/gstbus.c: (gst_bus_post):
2339         * gst/gstelement.c: (gst_element_get_random_pad):
2340         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2341         Make subbufer unref the parent in finalize.
2342         some more debugging info.
2343
2344
2345 2005-05-19  Wim Taymans  <wim@fluendo.com>
2346
2347         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2348         (gst_basesink_init), (gst_basesink_finalize),
2349         (gst_basesink_activate), (gst_basesink_change_state):
2350         Don't free preroll queue too early.
2351
2352 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2353
2354         * gst/Makefile.am:
2355         * gst/ROADMAP:
2356           Hi, I'm outdated. Please shoot me.
2357
2358 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2359
2360         * gst/gstpipeline.c: (gst_pipeline_send_event):
2361           Do not access variables after they have been deleted.
2362
2363 2005-05-19  Wim Taymans  <wim@fluendo.com>
2364
2365         * tools/gst-inspect.c: (print_plugin_features):
2366         A plugin feature does unfortunatly not use the
2367         object name yet...
2368
2369 2005-05-18  Wim Taymans  <wim@fluendo.com>
2370
2371         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2372         Port _span() functions to new subbuffers.
2373
2374 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2375
2376         * gst/gstbin.c: (gst_bin_add_func):
2377           Fix clock settery in bins when adding kids after the clock has
2378           been selected.
2379
2380 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2381
2382         * gst/elements/gstidentity.c: (gst_identity_class_init):
2383           Workaround until signals support GstMiniObject.
2384
2385 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2386
2387         * gst/gstbuffer.c:
2388         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2389
2390 2005-05-18  Wim Taymans  <wim@fluendo.com>
2391
2392         * gst/base/Makefile.am:
2393         * gst/base/gstadapter.c: (gst_adapter_base_init),
2394         (gst_adapter_class_init), (gst_adapter_init),
2395         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2396         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2397         (gst_adapter_flush), (gst_adapter_available),
2398         (gst_adapter_available_fast):
2399         * gst/base/gstadapter.h:
2400         Ported and added adapter to the base classes.
2401
2402 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2403
2404         * gst/gst.c:
2405         * gst/gstmessage.c:
2406           Make sure the class is reffed/unreffed once before threads can be
2407           used.  Fixes #304551.
2408
2409 2005-05-17  Wim Taymans  <wim@fluendo.com>
2410
2411         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2412         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2413         * gst/gstminiobject.c: (gst_mini_object_get_type),
2414         (gst_mini_object_free):
2415         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2416         (gst_pad_push), (gst_pad_push_event):
2417         * gst/gstqueue.c: (gst_queue_change_state):
2418         Don't queue buffers in basesink when we are flushing.
2419         Unref buffer when flushing in basesink.
2420         Flush queue when going to READY
2421         Unref buffer when _push() returns an error.
2422         Don't free MiniObject instance when refcount is incremented
2423         in _finalize() so that we can recover objects.
2424
2425 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2426
2427         * docs/manual/advanced-schedulers.xml:
2428         * docs/manual/appendix-checklist.xml:
2429         * docs/pwg/advanced-clock.xml:
2430         * docs/pwg/advanced-interfaces.xml:
2431         * docs/pwg/advanced-request.xml:
2432         * docs/pwg/advanced-types.xml:
2433         * docs/pwg/intro-preface.xml:
2434         * examples/plugins/example.c: (gst_example_get_type),
2435         (gst_example_class_init), (gst_example_chain),
2436         (gst_example_set_property), (gst_example_get_property),
2437         (gst_example_change_state), (plugin_init):
2438         * examples/plugins/example.h:
2439           small doc fixes
2440
2441 2005-05-17  Wim Taymans  <wim@fluendo.com>
2442
2443         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2444         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2445         * gst/gstqueue.c: (gst_queue_change_state):
2446         Clear queue when going to READY.
2447         Remove IN_SETCAPS flag too.
2448
2449 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2450
2451         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2452           Remove implicit cast from gboolean to GstElementStateReturn;
2453           make sure we still return failure in paused => ready case if
2454           the parent class fails to change state and our own stop 
2455           vfunc succeeds.
2456
2457 2005-05-17  Wim Taymans  <wim@fluendo.com>
2458
2459         * tools/gst-launch.c: (event_loop):
2460         Message was unreffed too soon.
2461
2462 2005-05-16  Andy Wingo  <wingo@pobox.com>
2463
2464         * gst/gstbin.c (sink_iterator_filter): Err... um...
2465
2466         * check/gst/gstbin.c (test_ghost_pads): New test for the
2467         ghosting-if-elements-not-in-same-bin behavior.
2468
2469 2005-05-16  David Schleef  <ds@schleef.org>
2470
2471         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2472         accessing refcount directly.
2473
2474 2005-05-15  David Schleef  <ds@schleef.org>
2475
2476         * check/Makefile.am: remove GstData checks
2477         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2478         * gst/Makefile.am: add miniobject, remove data
2479         * gst/gst.h: add miniobject, remove data
2480         * gst/gstdata.c: remove
2481         * gst/gstdata.h: remove
2482         * gst/gstdata_private.h: remove
2483         * gst/gsttypes.h: remove GstEvent and GstMessage
2484         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2485         * gst/gstmarshal.list: change BOXED -> OBJECT
2486
2487         Implement GstMiniObject.
2488         * gst/gstminiobject.c:
2489         * gst/gstminiobject.h:
2490
2491         Modify to be subclasses of GstMiniObject.
2492         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2493         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2494         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2495         (gst_subbuffer_get_type), (gst_subbuffer_init),
2496         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2497         (gst_buffer_span):
2498         * gst/gstbuffer.h:
2499         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2500         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2501         (_gst_event_copy), (gst_event_new):
2502         * gst/gstevent.h:
2503         * gst/gstmessage.c: (_gst_message_initialize),
2504         (gst_message_get_type), (gst_message_class_init),
2505         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2506         (gst_message_new), (gst_message_new_error),
2507         (gst_message_new_warning), (gst_message_new_tag),
2508         (gst_message_new_state_changed), (gst_message_new_application):
2509         * gst/gstmessage.h:
2510         * gst/gstprobe.c: (gst_probe_perform),
2511         (gst_probe_dispatcher_dispatch):
2512         * gst/gstprobe.h:
2513         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2514         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2515         (_gst_query_copy), (gst_query_new):
2516
2517         Update elements for GstData -> GstMiniObject changes
2518         * gst/gstquery.h:
2519         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2520         (gst_queue_chain), (gst_queue_loop):
2521         * gst/elements/gstbufferstore.c:
2522         (gst_buffer_store_add_buffer_func),
2523         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2524         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2525         (gst_fakesink_render):
2526         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2527         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2528         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2529         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2530         (gst_filesrc_create_read):
2531         * gst/elements/gstidentity.c: (gst_identity_class_init):
2532         * gst/elements/gsttypefindelement.c:
2533         (gst_type_find_element_src_event), (free_entry_buffers),
2534         (gst_type_find_element_handle_event):
2535         * libs/gst/dataprotocol/dataprotocol.c:
2536         (gst_dp_header_from_buffer):
2537         * libs/gst/dataprotocol/dataprotocol.h:
2538         * libs/gst/dataprotocol/dp-private.h:
2539
2540 2005-05-15  David Schleef  <ds@schleef.org>
2541
2542         * gst/elements/gstelements.c: Don't include headers that were
2543         just removed.
2544
2545 2005-05-15  David Schleef  <ds@schleef.org>
2546
2547         * gst/elements/Makefile.am: Remove some elements that don't
2548         need to be in the core (or even exist at all).
2549         * gst/elements/gstaggregator.c:
2550         * gst/elements/gstaggregator.h:
2551         * gst/elements/gstmd5sink.c:
2552         * gst/elements/gstmd5sink.h:
2553         * gst/elements/gstmultifilesrc.c:
2554         * gst/elements/gstmultifilesrc.h:
2555         * gst/elements/gstpipefilter.c:
2556         * gst/elements/gstpipefilter.h:
2557         * gst/elements/gstshaper.c:
2558         * gst/elements/gstshaper.h:
2559         * gst/elements/gststatistics.c:
2560         * gst/elements/gststatistics.h:
2561         * po/POTFILES.in: Remove above files.
2562
2563 2005-05-14  Andy Wingo  <wingo@pobox.com>
2564
2565         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2566         so as to get the refs right.
2567         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2568         unreffing objects that don't pass the filter.
2569
2570         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2571         gst_element_set_bus.
2572         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2573         normal cases, this will destroy the bus.
2574
2575         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2576         object.
2577
2578         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2579         has no sinks.
2580
2581 2005-05-13  Andy Wingo  <wingo@pobox.com>
2582
2583         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2584         gst_pad_link, call pad_link_maybe_ghosting,
2585         (pad_link_maybe_ghosting): Links pads, making sure that the
2586         elements being linked are in the same bin.
2587         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2588         Helpers for pad_link_maybe_ghosting.
2589
2590 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2591
2592         * configure.ac:
2593           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2594
2595 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2596
2597         * docs/design/part-element-source.txt:
2598           Mention GstPushSrc
2599
2600 2005-05-12  Wim Taymans  <wim@fluendo.com>
2601
2602         * gst/base/gstbasesink.c: (gst_basesink_init),
2603         (gst_basesink_activate):
2604         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2605         (gst_basesrc_is_seekable):
2606         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2607         (bin_element_is_sink), (gst_bin_change_state):
2608         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2609         * gst/gstelement.h:
2610         Identify sinks by their flag to avoid overly complicated
2611         checks (fow now).
2612         Do state changes even for elements not reachable from the
2613         sinks.
2614         BaseSink is a sink now :)
2615         Some more debugging info in the basesrc.
2616
2617
2618 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2619
2620         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2621           Implement _query on a bin, similar to _send_event.
2622
2623 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2624
2625         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2626           Discont event offset format should be GST_FORMAT_BYTES,
2627           not GST_FORMAT_TIME.
2628
2629 2005-05-12  Wim Taymans  <wim@fluendo.com>
2630
2631         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2632         Same fix as Ronald's but without the signal. 
2633
2634 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2635
2636         * gst/gstutils.c: (gst_element_query_position):
2637           No, an element is not a pad.
2638
2639 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2640
2641         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2642         (gst_bin_get_state):
2643           If a child is removed from a bin while we remove the child from
2644           the bin and while we're retrieving its state, signal this to the
2645           get_state function so we abort the wait (instead of waiting for
2646           a timeout) and can immediately re-iterate over all other elements.
2647
2648 2005-05-12  Wim Taymans  <wim@fluendo.com>
2649
2650         * gst/base/Makefile.am:
2651         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2652         (gst_basesrc_start):
2653         * gst/base/gstbasesrc.h:
2654         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2655         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2656         (gst_pushsrc_init), (gst_pushsrc_create):
2657         * gst/base/gstpushsrc.h:
2658         Added is_seekable to BaseSrc
2659         Added simple PushSrc.
2660
2661 2005-05-11  Wim Taymans  <wim@fluendo.com>
2662
2663         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2664         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2665         (gst_element_link_pads), (gst_element_query_position),
2666         (gst_element_query_convert), (intersect_caps_func),
2667         (gst_pad_query_position), (gst_pad_query_convert):
2668         Fix refcounting in utils function.
2669         No point in trying to activate a pad when it's added, it could
2670         be added from the state change function and then we deadlock, the
2671         element has to decide what to do.
2672
2673 2005-05-10  Andy Wingo  <wingo@pobox.com>
2674
2675         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2676         *all* the arguments.
2677
2678         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2679         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2680         lock (according to the docs -- if this is wrong change the docs).
2681
2682         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2683         flush messages in the NULL state.
2684
2685         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2686         message immediately and return.
2687         (gst_bus_set_flushing): New function. If a bus is flushing, it
2688         flushes out any queued messages and immediately unrefs new
2689         messages. This is so when an element goes to NULL, all of the
2690         unhandled messages coming from it can be freed, and their
2691         references to the element dropped. In other words: message source
2692         ref considered harmful :P
2693
2694         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2695         we're finished with it.
2696
2697         * gst/gstmessage.c (gst_message_new_state_changed): 
2698
2699 2005-05-10  Wim Taymans  <wim@fluendo.com>
2700
2701         * gst/gstvalue.c: (gst_value_compare_flags),
2702         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2703         (_gst_value_initialize):
2704         Added flags serialize/deserialize/compare code.
2705
2706 2005-05-09  Andy Wingo  <wingo@pobox.com>
2707
2708         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2709         Intersect the peer's caps with our caps.
2710
2711 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2712
2713         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2714         * gst/elements/gsttypefindelement.c: (find_peek):
2715           Handle negative offsets better. Fixes decodebin.
2716
2717 2005-05-09  Wim Taymans  <wim@fluendo.com>
2718
2719         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2720         (gst_base_transform_event):
2721         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2722         Implement accept_caps.
2723         Fix silly lock/unlock mismatch in base class.
2724
2725 2005-05-09  Wim Taymans  <wim@fluendo.com>
2726
2727         * docs/design/draft-push-pull.txt:
2728         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2729         * gst/elements/gstfilesink.c: (gst_filesink_init),
2730         (gst_filesink_query):
2731         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2732         (gst_type_find_handle_src_query), (find_element_get_length):
2733         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2734         * gst/gstelement.h:
2735         * gst/gstmessage.c:
2736         * gst/gstmessage.h:
2737         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2738         (gst_real_pad_get_caps_unlocked),
2739         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2740         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2741         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2742         (gst_real_pad_dispose), (gst_real_pad_finalize),
2743         (gst_pad_load_and_link), (gst_pad_save_thyself),
2744         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2745         (gst_pad_check_pull_range), (gst_pad_pull_range),
2746         (gst_pad_template_get_type), (gst_pad_template_class_init),
2747         (gst_pad_template_init), (gst_pad_template_dispose),
2748         (name_is_valid), (gst_static_pad_template_get),
2749         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2750         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2751         (gst_pad_get_element_private), (gst_pad_start_task),
2752         (gst_pad_pause_task), (gst_pad_stop_task),
2753         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2754         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2755         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
2756         (gst_ghost_pad_new):
2757         * gst/gstpad.h:
2758         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
2759         (gst_query_new_position), (gst_query_set_position),
2760         (gst_query_parse_position), (gst_query_new_convert),
2761         (gst_query_set_convert), (gst_query_parse_convert):
2762         * gst/gstquery.h:
2763         * gst/gstqueryutils.c:
2764         * gst/gstqueryutils.h:
2765         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2766         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2767         (gst_queue_handle_src_query):
2768         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2769         (gst_element_query_position), (gst_element_query_convert),
2770         (intersect_caps_func), (gst_pad_query_position),
2771         (gst_pad_query_convert):
2772         * gst/gstutils.h:
2773         * tools/gst-inspect.c: (print_pad_info):
2774         * tools/gst-xmlinspect.c: (print_element_info):
2775         Remove old query functions. Ported old code.
2776         Added position/convert helper functions to gstutils.
2777         Reordered gstpad.c code, grouping relevant things.
2778         Remove gst_message_new(), always need to speficy a specific
2779         message.
2780
2781
2782 2005-05-09  Andy Wingo  <wingo@pobox.com>
2783
2784         * gst/gstiterator.h: Add some includes.
2785
2786         * gst/gstqueryutils.h: Include more headers.
2787
2788         * gst/gstpad.h:
2789         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
2790         some uses of gst_pad_query.
2791
2792         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
2793         NULL out parameters.
2794         (gst_query_new_position): New proc, allocates a new position
2795         query.
2796
2797         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
2798         gstqueryutils.c to the build.
2799
2800         * gst/gststructure.c (gst_structure_set_valist): Implement with
2801         the generic G_VALUE_COLLECT.
2802         
2803 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
2804
2805         * gst/Makefile.am: (gst_headers):
2806         Added gstqueryutils.h to the list of headers to install, that was
2807         a 'nachty' move wingo :)
2808
2809 2005-05-06  Andy Wingo  <wingo@pobox.com>
2810
2811         * gst/gstquery.h
2812         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
2813         GstData, init a memchunk.
2814         (standard_definitions): Add a few query types, deprecate a few.
2815         (gst_query_get_type): New proc.
2816         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
2817         implementation.
2818         (gst_query_new_application, gst_query_get_structure): New public
2819         procs.
2820
2821         * docs/design/draft-query.txt: Removed LINKS from the query types,
2822         because all the rest can be dispatched to other pads -- seemed
2823         ugly to have a query that couldn't be dispatched. internal_links
2824         is fine as a pad method.
2825
2826         * gst/gstpad.h: Add query2 as a pad method, add the new functions
2827         in gstpad.c, but maintain binary compatibility for the moment.
2828         Will fix before 0.9 is out.
2829
2830         * gst/gstqueryutils.c: 
2831         * gst/gstqueryutils.h: New files, implement 3 methods for each
2832         query type: parse_query, parse_response, and set. Probably need an
2833         allocator as well.
2834
2835         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
2836
2837         * gst/elements/gstfilesink.c (gst_filesink_query2):
2838         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
2839         query_types, and formats methods.
2840
2841         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
2842         (gst_pad_set_query2_function): New functions.
2843         (gst_real_pad_init): Set query2_default as the default query2
2844         function. Basically just dispatches to internally linked pads.
2845
2846         Needs review!
2847         
2848         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
2849         without using the atomic operations. Only one thread can possibly
2850         be accessing the data at this point. Changed so as to avoid
2851         gst_atomic operations.
2852
2853 2005-05-06  Wim Taymans  <wim@fluendo.com>
2854
2855         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
2856         Also set caps if we use the fallback buffer alloc.
2857
2858 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
2859
2860         * docs/gst/Makefile.am:
2861         * docs/gst/gstreamer-docs.sgml:
2862         * docs/gst/gstreamer-sections.txt:
2863         * docs/gst/tmpl/gstatomic.sgml:
2864         * docs/gst/tmpl/gstmemchunk.sgml:
2865         * testsuite/elements/struct_i386.h:
2866         * win32/GStreamer.vcproj:
2867         * win32/Makefile:
2868           Purge GstAtomic stuff from docs and win32 makefiles as well
2869
2870 2005-05-06  Wim Taymans  <wim@fluendo.com>
2871
2872         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
2873         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
2874         * gst/gstpad.c: (gst_pad_peer_get_caps):
2875         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2876         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2877         (gst_queue_src_activate), (gst_queue_change_state):
2878         * gst/gstqueue.h:
2879         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2880         (intersect_caps_func):
2881         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
2882         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
2883         Some fixes for the peer_get_caps() change.
2884
2885 2005-05-06  Wim Taymans  <wim@fluendo.com>
2886
2887         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2888         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
2889         (gst_basesink_activate):
2890         Actually do something with error codes returned from the push
2891         functions.
2892
2893 2005-05-06  Wim Taymans  <wim@fluendo.com>
2894
2895         * docs/design/part-element-sink.txt:
2896         * docs/design/part-element-source.txt:
2897         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2898         (gst_basesink_event), (gst_basesink_activate):
2899         * gst/base/gstbasesink.h:
2900         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
2901         (gst_basesrc_activate):
2902         * gst/base/gstbasesrc.h:
2903         * gst/gstelement.c: (gst_element_pads_activate):
2904         Some more documentation.
2905         Fixed scheduling decision in _pads_activate().
2906
2907 2005-05-05  Andy Wingo  <wingo@pobox.com>
2908
2909         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
2910         the test suite.
2911
2912 2005-05-05  Wim Taymans  <wim@fluendo.com>
2913
2914         * gst/base/Makefile.am:
2915         * gst/base/gstbasesink.h:
2916         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2917         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
2918         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
2919         (gst_collectpads_class_init), (gst_collectpads_init),
2920         (gst_collectpads_finalize), (gst_collectpads_new),
2921         (gst_collectpads_set_function), (gst_collectpads_add_pad),
2922         (find_pad), (gst_collectpads_remove_pad),
2923         (gst_collectpads_is_active), (gst_collectpads_collect),
2924         (gst_collectpads_collect_range), (gst_collectpads_start),
2925         (gst_collectpads_stop), (gst_collectpads_peek),
2926         (gst_collectpads_pop), (gst_collectpads_available),
2927         (gst_collectpads_read), (gst_collectpads_flush),
2928         (gst_collectpads_chain):
2929         * gst/base/gstcollectpads.h:
2930         * gst/elements/Makefile.am:
2931         * gst/elements/gstelements.c:
2932         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2933         (gst_fakesink_get_times), (gst_fakesink_event),
2934         (gst_fakesink_preroll), (gst_fakesink_render):
2935         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2936         (gst_filesink_init), (gst_filesink_set_location),
2937         (gst_filesink_open_file), (gst_filesink_close_file),
2938         (gst_filesink_pad_query), (gst_filesink_event),
2939         (gst_filesink_render), (gst_filesink_change_state):
2940         * gst/elements/gstfilesink.h:
2941         Added object to help in making collect pad based elements.
2942         Ported filesink.
2943         Make event function in sink baseclass return gboolean.
2944
2945 2005-05-05  Wim Taymans  <wim@fluendo.com>
2946
2947         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
2948         (gst_bin_get_by_name):
2949         * gst/gstbuffer.h:
2950         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
2951         (gst_clock_finalize):
2952         * gst/gstdata.c: (gst_data_replace):
2953         * gst/gstdata.h:
2954         * gst/gstelement.c: (gst_element_request_pad),
2955         (gst_element_pads_activate):
2956         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
2957         (gst_object_unref):
2958         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2959         (gst_pad_set_checkgetrange_function),
2960         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
2961         (gst_pad_check_pull_range), (gst_pad_pull_range),
2962         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2963         (gst_pad_pause_task), (gst_pad_stop_task):
2964         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2965         (gst_element_request_pad), (gst_pad_proxy_getcaps):
2966         Fix name lookup in GstBin.
2967         Added _data_replace() function and _buffer_replace()
2968         Use finalize method to clean up clock.
2969         Fix refcounting on request pads.
2970         Fix pad schedule mode error.
2971         Some more object refcounting debug info,
2972
2973
2974 2005-05-04  Andy Wingo <wingo@pobox.com>
2975
2976         * check/Makefile.am:
2977         * docs/gst/tmpl/gstatomic.sgml:
2978         * docs/gst/tmpl/gstplugin.sgml:
2979         * gst/base/gstbasesink.c: (gst_basesink_activate):
2980         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
2981         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
2982         (gst_basesrc_query), (gst_basesrc_set_property),
2983         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
2984         (gst_basesrc_activate):
2985         * gst/base/gstbasesrc.h:
2986         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
2987         (gst_base_transform_src_activate):
2988         * gst/elements/gstelements.c:
2989         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2990         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2991         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2992         * gst/elements/gsttypefindelement.c: (find_element_get_length),
2993         (gst_type_find_element_checkgetrange),
2994         (gst_type_find_element_activate):
2995         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
2996         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
2997         (gst_caps_load_thyself):
2998         * gst/gstelement.c: (gst_element_pads_activate),
2999         (gst_element_save_thyself), (gst_element_restore_thyself):
3000         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3001         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3002         * gst/gstpad.h:
3003         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3004         (gst_xml_parse_file), (gst_xml_parse_memory),
3005         (gst_xml_get_element), (gst_xml_make_element):
3006         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3007         (_file_index_id_save_xml), (gst_file_index_commit):
3008         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3009         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3010         (load_paths):
3011         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3012         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3013         * tools/gst-complete.c: (main):
3014         * tools/gst-compprep.c: (main):
3015         * tools/gst-inspect.c: (print_element_properties_info):
3016         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3017         * tools/gst-xmlinspect.c: (print_element_properties):
3018         GCC 4 fixen.
3019         
3020 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3021
3022         * gst/gstplugin.c: (gst_plugin_check_module),
3023         (gst_plugin_check_file), (gst_plugin_load_file):
3024             apply patch from #172526 to make register work on MacOSX
3025
3026 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3027
3028         * docs/gst/tmpl/gstconfig.sgml:
3029         * gst/gstconfig.h.in:
3030           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3031         * testsuite/debug/printf_extension.c: (main):
3032           Do not use GST_PTR_FORMAT on pointers to types with
3033           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3034         * testsuite/elements/property.h:
3035           use correct printf format
3036
3037 2005-05-02  Wim Taymans  <wim@fluendo.com>
3038
3039         * docs/design/draft-push-pull.txt:
3040         * docs/design/draft-query.txt:
3041         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3042         (gst_basesrc_start):
3043         Added draft for new query API.
3044         Added draft for better selecting scheduling methods.
3045         Make basesrc ignore length if the subclass does not support
3046         it.
3047
3048 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3049
3050         * gst/Makefile.am:
3051           possible fixes for automake-1.5 - _LIBADD is reserved
3052
3053 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3054
3055         * docs/faq/Makefile.am:
3056         * docs/manual/Makefile.am:
3057         * docs/manuals.mak:
3058         * docs/pwg/Makefile.am:
3059         * gst/Makefile.am:
3060           possible fixes for automake-1.5
3061
3062 2005-04-28  Wim Taymans  <wim@fluendo.com>
3063
3064         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3065         (gst_basesink_pad_getcaps), (gst_basesink_init),
3066         (gst_basesink_do_sync):
3067         * gst/gstclock.c: (gst_clock_entry_new):
3068         * gst/gstevent.c: (gst_event_discont_get_value):
3069         * gst/gstpipeline.c: (pipeline_bus_handler),
3070         (gst_pipeline_change_state):
3071         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3072         Better debugging of clocking info.
3073         Allow NULL values when getting discont values.
3074
3075 2005-04-27  Wim Taymans  <wim@fluendo.com>
3076
3077         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3078         * check/gst/gstpad.c: (gst_pad_suite):
3079         Increase timeout for checks.
3080
3081 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3082
3083         * check/Makefile.am:
3084           fix the broken rule for cleanup.  Apparently this rule is
3085           only needed on FC2, so maybe this warrants further autotool
3086           inspection.
3087
3088 2005-04-26  Wim Taymans  <wim@fluendo.com>
3089
3090         * gst/gsttrashstack.h:
3091         Ooohh. a nasty one! After having a failed pop() from the stack,
3092         it's possible that the stack is empty. In that case, don't
3093         follow the NULL pointer.
3094
3095 2005-04-25  Wim Taymans  <wim@fluendo.com>
3096
3097         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3098         (gst_pad_set_checkgetrange_function),
3099         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3100         (gst_pad_check_pull_range), (gst_pad_pull_range),
3101         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3102         (gst_pad_pause_task), (gst_pad_stop_task):
3103         * gst/gstplugin.c: (gst_plugin_load):
3104         * gst/gstplugin.h:
3105         Remove gst_library_load as it does more harm than good with
3106         the new g_module flags.
3107         Revert bogus caps template check in pad linking, pad caps
3108         are important when linking not the template, which is more
3109         general than the current caps.
3110
3111 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3112
3113         * gst/autoplug/.cvsignore:
3114         * gst/autoplug/Makefile.am:
3115         * gst/autoplug/gstsearchfuncs.c:
3116         * gst/autoplug/gstsearchfuncs.h:
3117         * gst/autoplug/gstspider.c:
3118         * gst/autoplug/gstspider.h:
3119         * gst/autoplug/gstspideridentity.c:
3120         * gst/autoplug/gstspideridentity.h:
3121         * gst/autoplug/spidertest.c:
3122           Die, spider, die.
3123
3124 2005-04-25  Wim Taymans  <wim@fluendo.com>
3125
3126         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3127         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3128         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3129         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3130         * gst/gstpad.h:
3131         Added stubs for unimplemented functions. 
3132
3133 2005-04-24  David Schleef  <ds@schleef.org>
3134
3135         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3136         please fix.
3137
3138 2005-04-24  David Schleef  <ds@schleef.org>
3139
3140         Convert everything from GstAtomicInt to g_atomic_int_*, and
3141         remove gstatomic.
3142         * gst/Makefile.am:
3143         * gst/gstatomic.c:
3144         * gst/gstatomic.h:
3145         * gst/gstatomic_impl.h:
3146         * gst/gstbuffer.c:
3147         * gst/gstcaps.c:
3148         * gst/gstcaps.h:
3149         * gst/gstclock.c:
3150         * gst/gstclock.h:
3151         * gst/gstdata.c:
3152         * gst/gstdata.h:
3153         * gst/gstdata_private.h:
3154         * gst/gstevent.c:
3155         * gst/gstinfo.c:
3156         * gst/gstinfo.h:
3157         * gst/gstmessage.c:
3158         * gst/gstobject.c:
3159         * gst/gstobject.h:
3160         * gst/gststructure.c:
3161         * gst/gststructure.h:
3162         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3163         * gst/gstutils.h:
3164
3165 2005-04-24  David Schleef  <ds@schleef.org>
3166
3167         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3168         make the regressions tests work.  Remove some code that is no
3169         longer true.
3170         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3171         Disable warning for pads without templates.
3172
3173 2005-04-24  David Schleef  <ds@schleef.org>
3174
3175         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3176         functions that handle filtered links.
3177         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3178         removed functions.
3179         * gst/gstutils.c: Fix/remove utility functions that handle
3180         filtered caps.
3181         * gst/gstutils.h:
3182         * gst/gstvalue.c: Add serialization/deserialization of caps
3183         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3184         requires fixing so that the filter caps notation creates
3185         a capsfilter element and sets the filter_caps property.  I
3186         think everyone probably wants to keep the shorthand notation.
3187         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3188         * docs/gst/tmpl/gstpad.sgml:
3189
3190         * gst/elements/gstelements.c: Register capsfilter element.
3191         * gst/Makefile.am: fix spacing
3192         * docs/random/ds/0.9-suggested-changes: random
3193
3194 2005-04-23  David Schleef  <ds@schleef.org>
3195
3196         * gst/elements/Makefile.am:
3197         * gst/elements/gstcapsfilter.c: New element that acts like an
3198         identity, but filters caps.  Will eventually replace filtered
3199         caps in pad linking.
3200         * gst/gstutils.c: (gst_element_create_all_pads): New function
3201         to create all the ALWAYS pads that are registered with an
3202         element class.  This functionality should eventually be
3203         merged in with GstElement initialization.
3204         * gst/gstutils.h:
3205         * testsuite/trigger/README: part of trigger test code that should
3206         have been checked in a long time ago.
3207
3208 2005-04-23  David Schleef  <ds@schleef.org>
3209
3210         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3211         needed with new versions of libtool (nobody will confirm this),
3212         and hard to carry around.
3213         * gst/autoplug/Makefile.am:
3214         * gst/base/Makefile.am:
3215         * gst/elements/Makefile.am:
3216         * gst/indexers/Makefile.am:
3217         * gst/schedulers/Makefile.am:
3218         * libs/gst/bytestream/Makefile.am:
3219         * libs/gst/control/Makefile.am:
3220         * libs/gst/dataprotocol/Makefile.am:
3221         * libs/gst/getbits/Makefile.am:
3222
3223 2005-04-21  Wim Taymans  <wim@fluendo.com>
3224
3225         * docs/design/draft-push-pull.txt:
3226         * docs/design/part-MT-refcounting.txt:
3227         * docs/design/part-TODO.txt:
3228         * docs/design/part-caps.txt:
3229         * docs/design/part-events.txt:
3230         * docs/design/part-gstbus.txt:
3231         * docs/design/part-gstpipeline.txt:
3232         * docs/design/part-messages.txt:
3233         * docs/design/part-push-pull.txt:
3234         * docs/design/part-query.txt:
3235         Some more docs.
3236
3237 2005-04-21  Wim Taymans  <wim@fluendo.com>
3238
3239         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3240         (gst_message_new), (gst_message_new_error),
3241         (gst_message_new_warning), (gst_message_new_tag),
3242         (gst_message_new_state_changed), (gst_message_new_application),
3243         (gst_message_get_structure):
3244         * gst/gstmessage.h:
3245         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3246         (gst_structure_copy_conditional):
3247         Use parent refcount in GstMessage to ensure GstStructure
3248         consistency.
3249         Cleaned up headers a bit.
3250         
3251
3252 2005-04-20  Wim Taymans  <wim@fluendo.com>
3253
3254         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3255         (gst_basesink_pad_getcaps), (gst_basesink_init),
3256         (gst_basesink_chain_unlocked):
3257         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3258         (gst_type_find_helper):
3259         * gst/elements/gsttypefindelement.c:
3260         (gst_type_find_element_have_type), (gst_type_find_element_init),
3261         (stop_typefinding), (gst_type_find_element_handle_event),
3262         (find_suggest), (gst_type_find_element_chain),
3263         (gst_type_find_element_checkgetrange),
3264         (gst_type_find_element_getrange), (do_typefind),
3265         (gst_type_find_element_activate):
3266         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3267         (gst_buffer_default_free), (gst_buffer_default_copy),
3268         (gst_buffer_set_caps):
3269         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3270         (gst_caps_replace):
3271         * gst/gstmessage.c: (gst_message_new),
3272         (gst_message_new_state_changed):
3273         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3274         (gst_pad_set_checkgetrange_function),
3275         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3276         (gst_pad_set_caps), (gst_pad_check_pull_range),
3277         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3278         * gst/gstpad.h:
3279         * gst/gsttypefind.c: (gst_type_find_register):
3280         Make gst_caps_replace() work like other _replace() functions.
3281         Use _caps_replace() where possible.
3282         Make sure _message_new() initialises its field.
3283         Add gst_static_pad_template_get_caps()
3284
3285
3286 2005-04-18  Andy Wingo  <wingo@pobox.com>
3287
3288         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3289         on the peer, not the pad. I think that was a typo. Pass an extra
3290         arg to see if random access is possible. Activate the pads as
3291         PULL_RANGE if possible.
3292
3293         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3294
3295         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3296         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3297         to PROP_....
3298
3299 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3300
3301         * docs/faq/using.xml:
3302           Add note on gstreamer-properties (#154996).
3303
3304 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3305
3306         * docs/random/bbb/optional-properties:
3307           Some analysis on optional properties.
3308
3309 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3310
3311         * docs/gst/tmpl/gstelementfactory.sgml:
3312         * gst/gstelement.h:
3313         * gst/gstelementfactory.c: (gst_element_factory_init),
3314         (gst_element_factory_cleanup), (gst_element_register),
3315         (__gst_element_factory_add_static_pad_template),
3316         (gst_element_factory_get_static_pad_templates),
3317         (gst_element_factory_can_src_caps),
3318         (gst_element_factory_can_sink_caps):
3319         * gst/registries/Makefile.am:
3320         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3321         (gst_xml_registry_class_init), (gst_xml_registry_init),
3322         (gst_xml_registry_new), (gst_xml_registry_set_property),
3323         (gst_xml_registry_get_property), (get_time), (make_dir),
3324         (gst_xml_registry_get_perms_func),
3325         (plugin_times_older_than_recurse), (plugin_times_older_than),
3326         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3327         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3328         (add_to_char_array), (read_string), (read_uint), (read_enum),
3329         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3330         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3331         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3332         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3333         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3334         (gst_xml_registry_rebuild):
3335         * gst/registries/gstlibxmlregistry.h:
3336         * tools/gst-compprep.c: (main):
3337         * tools/gst-inspect.c: (print_pad_templates_info):
3338         * tools/gst-xmlinspect.c: (print_element_info):
3339           Use libxml2 for registry parsing, use staticpadtemplates in
3340           elementfactories. Makes gst_init() +/- 10x faster.
3341
3342 2005-04-12  Wim Taymans  <wim@fluendo.com>
3343
3344         * gst/base/Makefile.am:
3345         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3346         (gst_basesink_pad_getcaps), (gst_basesink_init),
3347         (gst_basesink_event), (gst_basesink_change_state):
3348         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3349         (gst_basesrc_init), (gst_basesrc_query),
3350         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3351         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3352         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3353         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3354         (gst_basesrc_stop), (gst_basesrc_activate),
3355         (gst_basesrc_change_state):
3356         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3357         (helper_find_suggest), (gst_type_find_helper):
3358         * gst/base/gsttypefindhelper.h:
3359         * gst/elements/Makefile.am:
3360         * gst/elements/gstelements.c:
3361         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3362         (gst_fakesink_get_times), (gst_fakesink_event),
3363         (gst_fakesink_preroll), (gst_fakesink_render):
3364         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3365         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3366         (gst_fakesrc_get_property), (gst_fakesrc_create),
3367         (gst_fakesrc_start), (gst_fakesrc_stop):
3368         * gst/elements/gstfakesrc.h:
3369         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3370         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3371         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3372         (gst_filesrc_create_read), (gst_filesrc_create),
3373         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3374         (gst_filesrc_start):
3375         * gst/elements/gsttypefindelement.c:
3376         (gst_type_find_element_have_type), (gst_type_find_element_init),
3377         (start_typefinding), (stop_typefinding), (push_buffer_store),
3378         (gst_type_find_element_handle_event),
3379         (gst_type_find_element_chain),
3380         (gst_type_find_element_checkgetrange),
3381         (gst_type_find_element_getrange), (do_typefind),
3382         (gst_type_find_element_activate),
3383         (gst_type_find_element_change_state):
3384         * gst/elements/gsttypefindelement.h:
3385         * gst/gstpipeline.c: (pipeline_bus_handler):
3386         Added typefind helper.
3387         Small preroll fix in the base sink.
3388         Disable typefind code in basesrc.
3389         Crude port of typefindelement.
3390         Fakesrc cleanups.
3391
3392
3393 2005-04-11  Wim Taymans  <wim@fluendo.com>
3394
3395         * check/gst/gstbus.c: (gstbus_suite):
3396         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3397         * check/gstcheck.h:
3398           Fix up the timeout so that the test does not fail.
3399
3400 2005-04-06  Wim Taymans  <wim@fluendo.com>
3401
3402         * gst/base/README:
3403         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3404         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3405         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3406         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3407         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3408         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3409         (gst_basesrc_stop), (gst_basesrc_activate),
3410         (gst_basesrc_change_state), (basesrc_find_peek),
3411         (basesrc_find_suggest), (gst_basesrc_type_find):
3412         * gst/base/gstbasesrc.h:
3413         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3414         (gst_filesrc_class_init), (gst_filesrc_init),
3415         (gst_filesrc_finalize), (gst_filesrc_set_location),
3416         (gst_filesrc_set_property), (gst_filesrc_get_property),
3417         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3418         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3419         (gst_filesrc_create_read), (gst_filesrc_create),
3420         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3421         * gst/elements/gstfilesrc.h:
3422         * gst/gstelement.c: (gst_element_get_state_func),
3423         (gst_element_lost_state), (gst_element_pads_activate):
3424         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3425         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3426         (gst_pad_pull_range):
3427         * gst/gstpad.h:
3428         More work on the generic source base class, implement seeking,
3429         query.
3430         Make filesrc extend the base source class.
3431         Added gst_pad_set_checkgetrange_function to GstPad.
3432
3433 2005-04-06  Andy Wingo  <wingo@pobox.com>
3434
3435         * pkgconfig/gstreamer-base.pc.in:
3436         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3437
3438         * pkgconfig/Makefile.am:
3439         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3440
3441 2005-04-04  Wim Taymans  <wim@fluendo.com>
3442
3443         * gst/base/Makefile.am:
3444         * gst/base/README:
3445         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3446         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3447         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3448         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3449         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3450         (gst_basesrc_base_init), (gst_basesrc_class_init),
3451         (gst_basesrc_init), (gst_basesrc_get_formats),
3452         (gst_basesrc_get_query_types), (gst_basesrc_query),
3453         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3454         (gst_basesrc_set_property), (gst_basesrc_get_property),
3455         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3456         (gst_basesrc_loop), (gst_basesrc_activate),
3457         (gst_basesrc_change_state):
3458         * gst/base/gstbasesrc.h:
3459         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3460         (gst_fakesrc_class_init), (gst_fakesrc_init),
3461         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3462         (gst_fakesrc_get_property), (gst_fakesrc_create):
3463         * gst/elements/gstfakesrc.h:
3464         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3465         (gst_filesrc_open_file), (gst_filesrc_loop),
3466         (gst_filesrc_activate), (filesrc_find_peek),
3467         (gst_filesrc_type_find):
3468         Made base source class, make fakesrc extend it.
3469         Add comments to basesink class.
3470         Some filesrc cleanup.
3471
3472 2005-03-31  David Schleef  <ds@schleef.org>
3473
3474         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3475         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3476         expected to link against libgstreamer.
3477         * gst/base/Makefile.am: link against libgstreamer
3478         * gst/elements/Makefile.am: same
3479
3480 2005-03-31  Andy Wingo  <wingo@pobox.com>
3481
3482         * tests/instantiate/Makefile.am:
3483         * tests/instantiate/caps.c: Add test to test speed of caps copy
3484         and free.
3485
3486         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3487         GMemChunk to be fair.
3488
3489         * gst/gsttrashstack.h: Remove warning about using the fallback
3490         trash stack implementation, it's still faster than malloc.
3491
3492 2005-03-30  Andy Wingo  <wingo@pobox.com>
3493
3494         * tests/complexity.c: Add a copyright.
3495
3496 2005-03-31  Wim Taymans  <wim@fluendo.com>
3497
3498         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3499         (gst_base_transform_class_init), (gst_base_transform_init),
3500         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3501         (gst_base_transform_get_property),
3502         (gst_base_transform_sink_activate),
3503         (gst_base_transform_src_activate),
3504         (gst_base_transform_change_state):
3505         * gst/base/gstbasetransform.h:
3506         * gst/elements/gstidentity.c: (gst_identity_class_init),
3507         (gst_identity_event), (gst_identity_check_perfect),
3508         (gst_identity_transform), (gst_identity_start),
3509         (gst_identity_stop):
3510         Added start/stop methods to transform base class so subclasses 
3511         don't need to deal with state changes even.
3512
3513 2005-03-31  Wim Taymans  <wim@fluendo.com>
3514
3515         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3516         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3517         * gst/gstevent.h:
3518         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3519         (gst_pad_pull_range):
3520         Added rate to the discont event to prepare for variable speed
3521         and reverse playback.
3522
3523 2005-03-29  David Schleef  <ds@schleef.org>
3524
3525         * configure.ac:
3526         * testsuite/trigger/Makefile.am:
3527         * testsuite/trigger/trigger.c: A little example program to show
3528         how trigger-based elements can work.
3529
3530 2005-03-29  Wim Taymans  <wim@fluendo.com>
3531
3532         * gst/base/Makefile.am:
3533         * gst/base/README:
3534         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3535         (gst_basesink_base_init), (gst_basesink_class_init),
3536         (gst_basesink_pad_getcaps), (gst_basesink_init),
3537         (gst_basesink_activate), (gst_basesink_change_state):
3538         * gst/base/gstbasesink.h:
3539         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3540         (gst_base_transform_base_init), (gst_base_transform_finalize),
3541         (gst_base_transform_class_init), (gst_base_transform_init),
3542         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3543         (gst_base_transform_event), (gst_base_transform_getrange),
3544         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3545         (gst_base_transform_set_property),
3546         (gst_base_transform_get_property),
3547         (gst_base_transform_sink_activate),
3548         (gst_base_transform_src_activate),
3549         (gst_base_transform_change_state):
3550         * gst/base/gstbasetransform.h:
3551         * gst/elements/gstidentity.c: (gst_identity_finalize),
3552         (gst_identity_class_init), (gst_identity_init),
3553         (gst_identity_event), (gst_identity_check_perfect),
3554         (gst_identity_transform), (gst_identity_set_property),
3555         (gst_identity_get_property), (gst_identity_change_state):
3556         * gst/elements/gstidentity.h:
3557         * gst/gstelement.c: (gst_element_get_state_func),
3558         (gst_element_lost_state), (gst_element_pads_activate):
3559         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3560         (gst_pad_check_pull_range), (gst_pad_pull_range):
3561         * gst/gstpad.h:
3562         Simplify pad activation.
3563         Added function to check if pull_range can be performed.
3564         Error out when pulling inactive or flushing pads.
3565         Removed const from refcounted types as it does not make sense.
3566         Simplify pad templates in basesink
3567         Added base class for simple 1-to-1 transforms.
3568         Make identity subclass the base transform.
3569
3570 2005-03-29  Andy Wingo  <wingo@pobox.com>
3571
3572         * docs/libs/gstreamer-libs-overrides.txt: 
3573         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3574         really don't understand what's going on, but like whatever. I want
3575         green buildbot!
3576
3577         * docs/gst/Makefile.am:
3578         * docs/libs/Makefile.am: Dist the overrides files.
3579
3580         * check/Makefile.am (clean-local): Remove .libs directories.
3581
3582         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3583         elements to EXTRA_DIST, so po/ files are happy.
3584
3585         * po/POTFILES.in: Er, remove it here.
3586
3587         * po/POTFILES: Remove gstspider.c.
3588
3589         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3590
3591         * docs/libs/gstreamer-libs-docs.sgml: 
3592         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3593         bytestream.
3594
3595         * tests/complexity.c (main): Set the length of the preroll queue
3596         on the sinks to prevent a lockup.
3597
3598         * libs/gst/dataprotocol/Makefile.am: 
3599         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3600         the same as the one in check/gst-libs/gdp.c.
3601
3602         * po/, docs/gst/: Commit automatic changes to docs and po files.
3603
3604         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3605         the versioned libgstbase.
3606
3607         * check/Makefile.am: Depend on an unversioned gst-register, seems
3608         to make autoconf happier.
3609
3610         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3611
3612 2005-03-28  Wim Taymans  <wim@fluendo.com>
3613
3614         * configure.ac:
3615         * docs/design/part-gstelement.txt:
3616         * docs/design/part-negotiation.txt:
3617         * docs/design/part-preroll.txt:
3618         * docs/design/part-scheduling.txt:
3619         * docs/design/part-states.txt:
3620         * gst/Makefile.am:
3621         * gst/base/Makefile.am:
3622         * gst/base/README:
3623         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3624         (gst_basesink_base_init), (gst_basesink_class_init),
3625         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3626         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3627         (gst_basesink_set_pad_functions),
3628         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3629         (gst_basesink_set_property), (gst_basesink_get_property),
3630         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3631         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3632         (gst_basesink_preroll_queue_push),
3633         (gst_basesink_preroll_queue_empty),
3634         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3635         (gst_basesink_event), (gst_basesink_get_times),
3636         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3637         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3638         (gst_basesink_loop), (gst_basesink_activate),
3639         (gst_basesink_change_state):
3640         * gst/base/gstbasesink.h:
3641         * gst/elements/Makefile.am:
3642         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3643         (gst_fakesink_class_init), (gst_fakesink_init),
3644         (gst_fakesink_set_property), (gst_fakesink_get_property),
3645         (gst_fakesink_get_times), (gst_fakesink_event),
3646         (gst_fakesink_preroll), (gst_fakesink_render),
3647         (gst_fakesink_change_state):
3648         * gst/elements/gstfakesink.h:
3649         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3650         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3651         * gst/gstelement.c: (gst_element_add_pad),
3652         (gst_element_get_state_func), (gst_element_abort_state),
3653         (gst_element_commit_state), (gst_element_lost_state),
3654         (gst_element_set_state), (gst_element_pads_activate):
3655         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3656         * gst/gstpipeline.c: (gst_pipeline_send_event),
3657         (gst_pipeline_change_state):
3658         Added state change code.
3659         Added/updated docs.
3660         Added sink base class, make fakesink extend the base class.
3661         Small cleanups in GstPipeline.
3662
3663 2005-03-26  David Schleef  <ds@schleef.org>
3664
3665         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3666         is broken and should be implemented in a different library.
3667         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3668         * gst/gst.h: remove gstcpu.h
3669         * gst/gstcpu.c: remove
3670         * gst/gstcpu.h: remove
3671         * gst/Makefile.am.future: Remove this file.  It's ancient.
3672
3673 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3674
3675         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3676         (gst_bin_send_event):
3677           Add default event/set_manager handlers. The set_manager handler
3678           takes care that the manager is distributed over kids that were
3679           already in the bin before the manager was set. The event handler
3680           is a utility virtual function that sends the event over all sinks,
3681           so that gst_element_send_event (bin, event); has the expected
3682           behaviour.
3683         * gst/gstpad.c: (gst_pad_event_default):
3684           Re-install default event handling for discontinuities, so that
3685           seeking works without requiring hacks in applications or extra
3686           code in sinks.
3687         * gst/gstpipeline.c: (gst_pipeline_class_init),
3688         (gst_pipeline_send_event):
3689           Half hack, half utility: set a pipeline to PAUSED for seek events,
3690           since that is the only way we can guarantee a/v sync. Means that
3691           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3692           and it "just works".
3693
3694 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3695
3696         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3697           Lock/unlock mismatch.
3698
3699 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3700
3701         * docs/faq/gst-uninstalled:
3702           add gst-plugins-base
3703         * docs/gst/Makefile.am:
3704           don't error out until docs are fixed
3705         * docs/gst/gstreamer.types:
3706           remove thread
3707
3708 2005-03-22  Wim Taymans  <wim@fluendo.com>
3709
3710         * check/Makefile.am:
3711         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3712         * gst/gststructure.c: (gst_structure_set_valist),
3713         (gst_structure_copy_conditional):
3714         Activated more tests.
3715         Added message test.
3716         Added G_TYPE_POINTER to GstStructure.
3717         
3718
3719 2005-03-22  Wim Taymans  <wim@fluendo.com>
3720
3721         * docs/design/part-TODO.txt:
3722         * docs/design/part-events.txt:
3723         * docs/design/part-gstbin.txt:
3724         * docs/design/part-gstbus.txt:
3725         * docs/design/part-gstpipeline.txt:
3726         * docs/design/part-messages.txt:
3727         * gst/gstbus.c:
3728         * gst/gstmessage.c:
3729         Docs updates
3730
3731 2005-03-21  Wim Taymans  <wim@fluendo.com>
3732
3733         * gst/gstbus.c: (gst_bus_post):
3734         Fix copy-and-paste error.
3735
3736 2005-03-21  Wim Taymans  <wim@fluendo.com>
3737
3738         * check/Makefile.am:
3739         * gst/Makefile.am:
3740         * gst/elements/Makefile.am:
3741         * gst/elements/gstelements.c:
3742         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3743         (gst_fakesink_event), (gst_fakesink_chain):
3744         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3745         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3746         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3747         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3748         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3749         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3750         (gst_fakesrc_loop), (gst_fakesrc_activate),
3751         (gst_fakesrc_change_state):
3752         * gst/elements/gstfakesrc.h:
3753         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3754         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
3755         (gst_filesrc_open_file), (gst_filesrc_loop),
3756         (gst_filesrc_activate), (gst_filesrc_change_state),
3757         (filesrc_find_peek), (filesrc_find_suggest),
3758         (gst_filesrc_type_find):
3759         * gst/elements/gstidentity.c: (gst_identity_finalize),
3760         (gst_identity_class_init), (gst_identity_init),
3761         (gst_identity_proxy_getcaps), (identity_queue_push),
3762         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
3763         (gst_identity_getrange), (gst_identity_chain),
3764         (gst_identity_sink_loop), (gst_identity_src_loop),
3765         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
3766         (gst_identity_set_property), (gst_identity_get_property),
3767         (gst_identity_change_state):
3768         * gst/elements/gstidentity.h:
3769         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
3770         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
3771         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
3772         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
3773         (gst_tee_sink_activate):
3774         * gst/elements/gsttee.h:
3775         * gst/gst.c: (gst_register_core_elements), (init_post):
3776         * gst/gst.h:
3777         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
3778         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
3779         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
3780         (gst_bin_change_state):
3781         * gst/gstbin.h:
3782         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
3783         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
3784         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
3785         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
3786         (gst_bus_set_sync_handler), (gst_bus_create_watch),
3787         (bus_watch_callback), (bus_watch_destroy),
3788         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
3789         (poll_timeout), (gst_bus_poll):
3790         * gst/gstbus.h:
3791         * gst/gstcaps.h:
3792         * gst/gstdata.h:
3793         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3794         (gst_element_post_message), (gst_element_message_full),
3795         (gst_element_get_state_func), (gst_element_get_state),
3796         (gst_element_abort_state), (gst_element_commit_state),
3797         (gst_element_lost_state), (gst_element_set_state),
3798         (gst_element_pads_activate), (gst_element_change_state),
3799         (gst_element_dispose), (gst_element_set_manager_func),
3800         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
3801         (gst_element_set_manager), (gst_element_get_manager),
3802         (gst_element_set_bus), (gst_element_get_bus),
3803         (gst_element_set_scheduler), (gst_element_get_scheduler):
3804         * gst/gstelement.h:
3805         * gst/gstevent.c: (gst_event_new_segment_seek),
3806         (gst_event_new_flush):
3807         * gst/gstevent.h:
3808         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
3809         (_gst_message_free), (gst_message_get_type), (gst_message_new),
3810         (gst_message_new_eos), (gst_message_new_error),
3811         (gst_message_new_warning), (gst_message_new_tag),
3812         (gst_message_new_state_changed), (gst_message_new_application),
3813         (gst_message_get_structure), (gst_message_parse_tag),
3814         (gst_message_parse_state_changed), (gst_message_parse_error),
3815         (gst_message_parse_warning):
3816         * gst/gstmessage.h:
3817         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
3818         (gst_real_pad_set_property), (gst_pad_set_active),
3819         (gst_pad_is_active), (gst_pad_set_blocked_async),
3820         (gst_pad_set_blocked), (gst_pad_is_blocked),
3821         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
3822         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
3823         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
3824         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
3825         (gst_pad_link_filtered), (gst_pad_relink_filtered),
3826         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
3827         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
3828         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
3829         (gst_pad_set_caps), (gst_pad_configure_sink),
3830         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
3831         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
3832         (gst_real_pad_dispose), (gst_real_pad_finalize),
3833         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
3834         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3835         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
3836         * gst/gstpad.h:
3837         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
3838         (pipeline_bus_handler), (gst_pipeline_change_state),
3839         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
3840         * gst/gstpipeline.h:
3841         * gst/gstprobe.h:
3842         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
3843         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
3844         (gst_queue_link_src), (gst_queue_bufferalloc),
3845         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
3846         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
3847         (gst_queue_loop), (gst_queue_handle_src_event),
3848         (gst_queue_handle_src_query), (gst_queue_src_activate),
3849         (gst_queue_change_state):
3850         * gst/gstqueue.h:
3851         * gst/gstscheduler.c: (gst_scheduler_init),
3852         (gst_scheduler_dispose), (gst_scheduler_create_task),
3853         (gst_scheduler_factory_create):
3854         * gst/gstscheduler.h:
3855         * gst/gststructure.c: (gst_structure_get_type),
3856         (gst_structure_copy_conditional):
3857         * gst/gststructure.h:
3858         * gst/gsttaginterface.h:
3859         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
3860         (gst_task_init), (gst_task_dispose), (gst_task_create),
3861         (gst_task_get_state), (gst_task_start), (gst_task_stop),
3862         (gst_task_pause):
3863         * gst/gsttask.h:
3864         * gst/gstthread.c:
3865         * gst/gstthread.h:
3866         * gst/gsttypes.h:
3867         * gst/schedulers/Makefile.am:
3868         * gst/schedulers/cothreads_compat.h:
3869         * gst/schedulers/entryscheduler.c:
3870         * gst/schedulers/faircothreads.c:
3871         * gst/schedulers/faircothreads.h:
3872         * gst/schedulers/fairscheduler.c:
3873         * gst/schedulers/gstbasicscheduler.c:
3874         * gst/schedulers/gstoptimalscheduler.c:
3875         * gst/schedulers/gthread-cothreads.h:
3876         * gst/schedulers/threadscheduler.c:
3877         (gst_thread_scheduler_task_get_type),
3878         (gst_thread_scheduler_task_class_init),
3879         (gst_thread_scheduler_task_init),
3880         (gst_thread_scheduler_task_start),
3881         (gst_thread_scheduler_task_stop),
3882         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
3883         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
3884         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
3885         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
3886         (plugin_init):
3887         * libs/gst/Makefile.am:
3888         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
3889         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
3890         (gst_file_pad_parent_set):
3891         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3892         (gst_dp_event_from_packet):
3893         * tests/complexity.c: (main):
3894         * tests/mass_elements.c: (main):
3895         * testsuite/states/locked.c: (message_received), (main):
3896         * testsuite/states/parent.c: (main):
3897         * tools/gst-inspect.c: (print_element_flag_info),
3898         (print_implementation_info), (print_pad_info):
3899         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
3900         (main):
3901         * tools/gst-md5sum.c: (event_loop), (main):
3902         * tools/gst-typefind.c: (main):
3903         * tools/gst-xmlinspect.c: (print_element_info):
3904         Next big merge.
3905         Added GstBus for mainloop integration.
3906         Added GstMessage for sending notifications on the bus.
3907         Added GstTask as an abstraction for pipeline entry points.
3908         Removed GstThread.
3909         Removed Schedulers.
3910         Simplified GstQueue for multithreaded core.
3911         Made _link threadsafe, removed old capsnego.
3912         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
3913         Added pad blocking functions.
3914         Reworked scheduling functions in GstPad to prepare for
3915         scheduling updates soon.
3916         Moved events out of data stream.
3917         Simplified GstEvent types.
3918         Added return values to push/pull.
3919         Removed clocking from GstElement.
3920         Added prototypes for state change function for next merge.
3921         Removed iterate from bins and state change management.
3922         Fixed some elements, disabled others for now.
3923         Fixed -inspect and -launch.
3924         Added check for GstBus.
3925
3926 2005-03-10  Wim Taymans  <wim@fluendo.com>
3927
3928         * docs/design/part-MT-refcounting.txt:
3929         * docs/design/part-clocks.txt:
3930         * docs/design/part-gstelement.txt:
3931         * docs/design/part-gstobject.txt:
3932         * docs/design/part-standards.txt:
3933         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3934         (gst_bin_remove_func), (gst_bin_remove):
3935         * gst/gstbin.h:
3936         * gst/gstbuffer.c:
3937         * gst/gstcaps.h:
3938         * testsuite/clock/clock1.c: (main):
3939         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
3940         (main):
3941         * testsuite/dlopen/loadgst.c: (do_test):
3942         * testsuite/refcounting/bin.c: (add_remove_test1),
3943         (add_remove_test2), (main):
3944         * testsuite/refcounting/element.c: (main):
3945         * testsuite/refcounting/element_pad.c: (main):
3946         * testsuite/refcounting/pad.c: (main):
3947         * tools/gst-launch.c: (sigint_handler_sighandler):
3948         * tools/gst-typefind.c: (main):
3949         Doc updates.
3950         Added doc about clock.
3951         removed gst_bin_iterate_recurse_up(), marked methods
3952         for removal.
3953         Fix more testsuites.
3954
3955 2005-03-09  Wim Taymans  <wim@fluendo.com>
3956
3957         * gst/gstpad.c: (gst_pad_get_direction),
3958         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
3959         (gst_pad_collect_valist):
3960         * testsuite/bins/interface.c: (main):
3961         * testsuite/caps/audioscale.c: (test_caps):
3962         * testsuite/caps/caps.c: (test1), (test2), (test3):
3963         * testsuite/caps/deserialize.c: (main):
3964         * testsuite/caps/enumcaps.c: (main):
3965         * testsuite/caps/filtercaps.c: (main):
3966         * testsuite/caps/intersect2.c: (main):
3967         * testsuite/caps/random.c: (main):
3968         * testsuite/caps/renegotiate.c: (my_fixate), (main):
3969         * testsuite/caps/sets.c: (check_caps):
3970         * testsuite/caps/simplify.c: (check_caps), (main):
3971         * testsuite/caps/subtract.c: (check_caps):
3972         Fix _pad_get_direction wrt ghostpads.
3973         Fix caps testsuite.
3974
3975 2005-03-09  Wim Taymans  <wim@fluendo.com>
3976
3977         * check/Makefile.am:
3978         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
3979         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
3980         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
3981         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
3982         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
3983         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
3984         (gst_bin_remove), (gst_bin_iterate_recurse_up),
3985         (bin_element_is_sink), (gst_bin_iterate_sinks),
3986         (gst_bin_iterate_all_by_interface):
3987         * gst/gstbin.h:
3988         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
3989         (gst_element_change_state), (gst_element_dispose),
3990         (gst_element_finalize), (gst_element_set_loop_function):
3991         * gst/gstelement.h:
3992         * gst/gstiterator.c: (find_custom_fold_func):
3993         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3994         (gst_pad_collectv), (gst_pad_collect_valist),
3995         (gst_pad_template_new):
3996         * gst/gstpipeline.c: (gst_pipeline_class_init),
3997         (gst_pipeline_dispose), (gst_pipeline_set_property),
3998         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
3999         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4000         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4001         * gst/gstutils.h:
4002         * gst/schedulers/entryscheduler.c:
4003         * gst/schedulers/gstbasicscheduler.c:
4004         (gst_basic_scheduler_cothreaded_chain),
4005         (gst_basic_scheduler_chain_add_element):
4006         * testsuite/bins/interface.c: (main):
4007         Added GstBin test.
4008         Added GstSystemClock test.
4009         Implemented clock distribution code in GstBin.
4010         Implemented iterate sinks method for future use.
4011         Rearranged gstelement.h
4012         Fix GstIterator comparison bug.
4013         Moved some code to GstPipeline, mostly clocking related.
4014
4015 2005-03-09  Wim Taymans  <wim@fluendo.com>
4016
4017         * configure.ac:
4018         * gst/gst_private.h:
4019         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4020         (gst_bin_remove_func), (gst_bin_remove),
4021         (gst_bin_get_by_name_recurse_up):
4022         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4023         (gst_clock_id_compare_func), (gst_clock_id_wait),
4024         (gst_clock_id_wait_async), (gst_clock_init),
4025         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4026         * gst/gstelement.h:
4027         * gst/gstinfo.c: (_gst_debug_init):
4028         * gst/gstobject.h:
4029         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4030         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4031         * gst/gstpad.h:
4032         Bump version number, we're now 0.9.0
4033         Add future debugging category.
4034         Fix NULL _unref() in _get_by_name_recurse_up
4035         Rearrange gstpad.h.
4036         Update some docs.
4037
4038 2005-03-08  Wim Taymans  <wim@fluendo.com>
4039
4040         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4041         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4042         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4043         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4044         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4045         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4046         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4047         * gst/elements/gstidentity.c: (gst_identity_class_init):
4048         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4049         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4050         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4051         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4052         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4053         (gst_tee_link):
4054         * gst/gstelement.c: (gst_element_class_init),
4055         (gst_element_base_class_init), (gst_element_init),
4056         (gst_element_get_random_pad), (gst_element_wait_state_change),
4057         (gst_element_change_state), (gst_element_dispose),
4058         (gst_element_finalize), (gst_element_set_loop_function):
4059         * gst/gstelement.h:
4060         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4061         * gst/gstthread.c: (gst_thread_class_init),
4062         (gst_thread_release_children_locks), (gst_thread_change_state):
4063         * gst/schedulers/gstbasicscheduler.c:
4064         (gst_basic_scheduler_loopfunc_wrapper),
4065         (gst_basic_scheduler_chain_wrapper),
4066         (gst_basic_scheduler_src_wrapper),
4067         (gst_basic_scheduler_remove_element):
4068         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4069         Remove threadsafe properties. Fix elements because GObject
4070         complains when installing a property before declaring a
4071         set/get_property handler.
4072         Rearrange gstelement.h file, use STATE macros for state locks.
4073         Free mutexes in the finalize method instead of dispose.
4074
4075 2005-03-08  Wim Taymans  <wim@fluendo.com>
4076
4077         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4078         * gst/gstthread.c: (gst_thread_release_children_locks):
4079         Added parentage check.
4080         Fix build og GstThread again.
4081
4082 2005-03-08  Wim Taymans  <wim@fluendo.com>
4083
4084         * docs/design/part-MT-refcounting.txt:
4085         * docs/design/part-conventions.txt:
4086         * docs/design/part-gstobject.txt:
4087         * docs/design/part-relations.txt:
4088         * docs/design/part-standards.txt:
4089         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4090         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4091         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4092         (gst_bin_iterate_all_by_interface):
4093         * gst/gstbuffer.h:
4094         * gst/gstclock.h:
4095         * gst/gstelement.c: (gst_element_class_init),
4096         (gst_element_change_state), (gst_element_set_loop_function):
4097         * gst/gstelement.h:
4098         * gst/gstiterator.c:
4099         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4100         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4101         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4102         (gst_object_set_parent), (gst_object_unparent),
4103         (gst_object_check_uniqueness):
4104         * gst/gstobject.h:
4105         Docs updates, clean up some headers.
4106
4107 2005-03-07  Wim Taymans  <wim@fluendo.com>
4108
4109         * check/.cvsignore:
4110         * check/Makefile.am:
4111         * check/gst-libs/.cvsignore:
4112         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4113         * check/gst/.cvsignore:
4114         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4115         (START_TEST), (gstbus_suite), (main):
4116         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4117         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4118         (gst_data_suite), (main):
4119         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4120         (add_fold_func), (gstiterator_suite), (main):
4121         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4122         (thread_name_object), (thread_name_object_default),
4123         (gst_object_name_compare), (gst_object_suite), (main):
4124         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4125         (gst_pad_suite), (main):
4126         * check/gstcheck.c: (gst_check_log_message_func),
4127         (gst_check_log_critical_func), (gst_check_init):
4128         * check/gstcheck.h:
4129         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4130         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4131         Added checks.
4132
4133 2005-03-07  Wim Taymans  <wim@fluendo.com>
4134
4135         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4136         (gst_list_iterator_next), (gst_list_iterator_resync),
4137         (gst_list_iterator_free), (gst_iterator_new_list),
4138         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4139         (gst_iterator_free), (gst_iterator_push), (filter_next),
4140         (filter_resync), (filter_uninit), (filter_free),
4141         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4142         (gst_iterator_foreach), (find_custom_fold_func),
4143         (gst_iterator_find_custom):
4144         * gst/gstiterator.h:
4145         Added missing files.
4146
4147 2005-03-07  Wim Taymans  <wim@fluendo.com>
4148
4149         * Makefile.am:
4150         * configure.ac:
4151         * docs/design/part-MT-refcounting.txt:
4152         * docs/design/part-conventions.txt:
4153         * docs/design/part-gstobject.txt:
4154         * docs/design/part-relations.txt:
4155         * examples/mixer/mixer.c: (main):
4156         * examples/thread/thread.c: (eos), (main):
4157         * gst/Makefile.am:
4158         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4159         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4160         (gst_spider_plug_from_srcpad):
4161         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4162         (gst_spider_identity_change_state),
4163         (gst_spider_identity_sink_loop_type_finding):
4164         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4165         * gst/elements/gstidentity.c: (gst_identity_init):
4166         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4167         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4168         * gst/elements/gsttypefindelement.c: (free_entry):
4169         * gst/gst.c:
4170         * gst/gst.h:
4171         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4172         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4173         (gst_bin_set_index), (gst_bin_set_element_sched),
4174         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4175         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4176         (gst_bin_iterate_elements), (iterate_child_recurse),
4177         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4178         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4179         (compare_interface), (gst_bin_get_by_interface),
4180         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4181         * gst/gstbin.h:
4182         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4183         (gst_buffer_default_free), (gst_buffer_default_copy),
4184         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4185         (gst_buffer_create_sub):
4186         * gst/gstbuffer.h:
4187         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4188         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4189         (gst_caps_unref), (gst_static_caps_get),
4190         (gst_caps_remove_and_get_structure), (gst_caps_append),
4191         (gst_caps_append_structure), (gst_caps_remove_structure),
4192         (gst_caps_copy_nth), (gst_caps_set_simple),
4193         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4194         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4195         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4196         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4197         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4198         (gst_caps_structure_figure_out_union),
4199         (gst_caps_switch_structures), (gst_caps_do_simplify),
4200         (gst_caps_replace), (gst_caps_from_string),
4201         (gst_caps_copy_conditional):
4202         * gst/gstcaps.h:
4203         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4204         (_gst_clock_id_free), (gst_clock_id_unref),
4205         (gst_clock_id_compare_func), (gst_clock_id_wait),
4206         (gst_clock_id_wait_async), (gst_clock_class_init),
4207         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4208         (gst_clock_get_time), (gst_clock_set_time_adjust),
4209         (gst_clock_set_property), (gst_clock_get_property):
4210         * gst/gstclock.h:
4211         * gst/gstcompat.h:
4212         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4213         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4214         * gst/gstdata.h:
4215         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4216         (gst_element_requires_clock), (gst_element_provides_clock),
4217         (gst_element_set_clock), (gst_element_clock_wait),
4218         (gst_element_wait), (gst_element_set_time_delay),
4219         (gst_element_is_indexable), (gst_element_add_pad),
4220         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4221         (pad_compare_name), (gst_element_get_static_pad),
4222         (gst_element_request_pad), (gst_element_get_request_pad),
4223         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4224         (gst_element_class_get_pad_template_list),
4225         (gst_element_class_get_pad_template), (gst_element_error_func),
4226         (gst_element_get_random_pad), (gst_element_get_event_masks),
4227         (gst_element_send_event), (gst_element_seek),
4228         (gst_element_get_query_types), (gst_element_query),
4229         (gst_element_get_formats), (gst_element_convert),
4230         (gst_element_is_locked_state), (gst_element_set_locked_state),
4231         (gst_element_sync_state_with_parent), (gst_element_change_state),
4232         (gst_element_finalize), (gst_element_yield),
4233         (gst_element_interrupt), (gst_element_set_scheduler),
4234         (gst_element_get_scheduler), (gst_element_set_loop_function):
4235         * gst/gstelement.h:
4236         * gst/gstevent.h:
4237         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4238         (gst_format_get_by_nick), (gst_format_get_details),
4239         (gst_format_iterate_definitions):
4240         * gst/gstformat.h:
4241         * gst/gstindex.c: (gst_index_gtype_resolver):
4242         * gst/gstinfo.c:
4243         * gst/gstinfo.h:
4244         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4245         (gst_mem_chunk_free):
4246         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4247         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4248         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4249         (gst_object_dispatch_properties_changed),
4250         (gst_object_set_name_default), (gst_object_set_name),
4251         (gst_object_get_name), (gst_object_set_name_prefix),
4252         (gst_object_get_name_prefix), (gst_object_set_parent),
4253         (gst_object_get_parent), (gst_object_unparent),
4254         (gst_object_check_uniqueness), (gst_object_save_thyself),
4255         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4256         (gst_object_set_property), (gst_object_get_property),
4257         (gst_object_get_path_string):
4258         * gst/gstobject.h:
4259         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4260         (gst_real_pad_init), (gst_real_pad_get_property),
4261         (gst_pad_custom_new), (gst_pad_get_direction),
4262         (gst_pad_set_active), (gst_pad_is_active),
4263         (gst_pad_set_event_function), (gst_pad_is_linked),
4264         (gst_pad_link_free), (gst_pad_link_intersect),
4265         (gst_pad_link_fixate), (gst_pad_set_caps),
4266         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4267         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4268         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4269         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4270         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4271         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4272         (gst_pad_realize), (gst_pad_get_allowed_caps),
4273         (gst_real_pad_dispose), (gst_real_pad_finalize),
4274         (gst_pad_collectv), (gst_pad_collect_valist),
4275         (gst_pad_template_dispose), (gst_pad_template_new),
4276         (gst_pad_get_internal_links):
4277         * gst/gstpad.h:
4278         * gst/gstpipeline.c: (gst_pipeline_dispose),
4279         (gst_pipeline_change_state):
4280         * gst/gstpipeline.h:
4281         * gst/gstplugin.c:
4282         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4283         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4284         * gst/gstpluginfeature.h:
4285         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4286         * gst/gstquery.c: (_gst_query_type_initialize),
4287         (gst_query_type_register), (gst_query_type_get_by_nick),
4288         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4289         * gst/gstquery.h:
4290         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4291         * gst/gstscheduler.c: (gst_scheduler_add_element),
4292         (gst_scheduler_factory_create):
4293         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4294         (gst_structure_free), (gst_structure_set_name),
4295         (gst_structure_id_set_value), (gst_structure_set_value),
4296         (gst_structure_set_valist), (gst_structure_remove_field),
4297         (gst_structure_remove_fields),
4298         (gst_structure_remove_fields_valist),
4299         (gst_structure_remove_all_fields), (gst_structure_foreach),
4300         (gst_structure_map_in_place),
4301         (gst_caps_structure_fixate_field_nearest_int),
4302         (gst_caps_structure_fixate_field_nearest_double):
4303         * gst/gststructure.h:
4304         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4305         (gst_system_clock_init), (gst_system_clock_dispose),
4306         (gst_system_clock_async_thread),
4307         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4308         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4309         * gst/gstsystemclock.h:
4310         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4311         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4312         * gst/gsttaginterface.c:
4313         * gst/gstthread.c: (gst_thread_dispose),
4314         (gst_thread_release_children_locks), (gst_thread_change_state),
4315         (gst_thread_main_loop):
4316         * gst/gsttrashstack.h:
4317         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4318         * gst/gsttypes.h:
4319         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4320         (gst_element_request_pad), (gst_element_get_pad_from_template),
4321         (gst_element_request_compatible_pad),
4322         (gst_element_get_compatible_pad_filtered),
4323         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4324         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4325         (gst_element_link_many), (gst_element_link),
4326         (gst_element_link_pads), (gst_element_unlink_pads),
4327         (gst_element_unlink_many), (gst_element_unlink),
4328         (gst_pad_can_link_filtered), (gst_pad_can_link),
4329         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4330         (gst_object_default_error), (gst_bin_add_many),
4331         (gst_bin_remove_many), (gst_element_populate_std_props),
4332         (gst_element_class_install_std_props), (gst_buffer_merge),
4333         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4334         (link_fold_func), (gst_pad_proxy_setcaps):
4335         * gst/gstutils.h:
4336         * gst/gstvalue.c: (gst_value_deserialize_string):
4337         * gst/parse/grammar.y:
4338         * gst/schedulers/gstbasicscheduler.c:
4339         (gst_basic_scheduler_cothreaded_chain),
4340         (gst_basic_scheduler_chain_recursive_add),
4341         (gst_basic_scheduler_pad_link):
4342         * gst/schedulers/gstoptimalscheduler.c:
4343         (get_group_schedule_function),
4344         (gst_opt_scheduler_state_transition),
4345         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4346         * libs/gst/bytestream/bytestream.c:
4347         * libs/gst/dataprotocol/dataprotocol.c:
4348         (gst_dp_header_from_buffer):
4349         * po/nb.po:
4350         * po/ru.po:
4351         * tests/threadstate/threadstate2.c: (eos):
4352         * tools/gst-compprep.c: (main):
4353         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4354         (print_pad_info), (print_children_info):
4355         * tools/gst-launch.c: (idle_func), (main):
4356         * tools/gst-md5sum.c: (idle_func), (main):
4357         * tools/gst-xmlinspect.c: (print_element_info):
4358         First THREADED backport attempt, focusing on adding locks and
4359         making sure the API is threadsafe. Needs more work. More docs
4360         follow this week.
4361
4362 2005-02-24  Andy Wingo  <wingo@pobox.com>
4363
4364         * tests/bench-complexity.scm:
4365         * tests/complexity.gnuplot: New files, good for running complexity
4366         benchmarks.
4367
4368         * tests/Makefile.am:
4369         * tests/complexity.c: New test, sets up N elements, at each level
4370         teeing into M streams per element. Eeeenteresting.
4371
4372         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4373         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4374         running bench-mass_elements.scm.
4375
4376         * tests/bench-mass_elements.scm: New script, runs mass_elements
4377         for various numbers of identities, outputting the results to a
4378         file. Requires guile 1.6. Just for testing.
4379
4380 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4381
4382         * gst/schedulers/fairscheduler.c:
4383           compile with debug disabled
4384
4385 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4386
4387         * configure.ac:
4388           hunting season on 0.9 is now OPEN
4389
4390 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4391
4392         * docs/libs/tmpl/gstcontrol.sgml:
4393         * docs/libs/tmpl/gstdparam.sgml:
4394         * docs/libs/tmpl/gstdplinint.sgml:
4395         * docs/libs/tmpl/gstdpman.sgml:
4396         * docs/libs/tmpl/gstdpsmooth.sgml:
4397         * docs/libs/tmpl/gstunitconvert.sgml:
4398           more docs for the state of dparams
4399
4400 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4401
4402         * gst/gstelementfactory.c: (gst_element_factory_create):
4403         * gst/gstobject.c: (gst_object_init),
4404         (gst_object_set_name_default), (gst_object_set_name):
4405           name objects by default, not in gst_element_factory_create. Allows
4406           using elements created with g_object_new. (fixes #167283)
4407
4408 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4409
4410         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4411           make the time that debugging functions print relative to when
4412           gst_init was called
4413
4414 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4415
4416         * gst/gsttaginterface.c:
4417           Fix inline docs: tag setter vararg functions are NULL-terminated,
4418           GST_TAG_INVALID doesn't exist any more.
4419
4420 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4421
4422         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4423         Allocate the 1 byte more memory that was forgotten!!!!!
4424         fixes memory corruption on 64bit platforms
4425
4426 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4427
4428         * docs/pwg/building-pads.xml:
4429         * docs/pwg/intro-basics.xml:
4430           fixed a few typos, relabeled introductionary list of types
4431         * docs/random/ensonic/dparams.txt:
4432           more notes abut dparam changes
4433         * libs/gst/control/dparam.c: (gst_dparam_attach):
4434         * libs/gst/control/dparammanager.c:
4435         * libs/gst/control/dparammanager.h:
4436           - many comments and notes on dparam implementation
4437           - new dparams are were not initialized to the default value
4438             from param spec
4439
4440 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4441
4442         submitted by: Peter Astakhov
4443
4444         * po/LINGUAS:
4445         * po/ru.po:
4446           adding Russian translation
4447
4448 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4449
4450         * configure.ac:
4451         * docs/gst/Makefile.am:
4452         * docs/libs/Makefile.am:
4453           make sure popt is added to gtk-doc flags.  Fixes #147782.
4454
4455 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4456
4457         * docs/faq/using.xml:
4458           Fix typo in FAQ (artssink => artsdsink)
4459
4460 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4461
4462         * tools/gst-launch.1.in:
4463           Fix typo (#166699).
4464
4465 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4466
4467         * docs/faq/using.xml:
4468           Add -v argument to fakesrc/fakesink gst-launch line,
4469           so that the promised output will actually show up.
4470
4471 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4472
4473         * gst/gstthread.c: (gst_thread_change_state):
4474           Implement state-change error handling (#166073).
4475
4476 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4477
4478         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4479           Release interrupt after handling (#166250).
4480
4481 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4482
4483         * configure.ac:
4484           back to HEAD
4485
4486 === release 0.8.9 ===
4487
4488 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4489
4490         * NEWS:
4491         * RELEASE:
4492         * configure.ac:
4493           releasing 0.8.9, "Like Eating Glass"
4494
4495 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4496
4497         submitted by: Clytie Siddall
4498
4499         * po/vi.po: Added Vietnamese translation
4500
4501 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4502
4503         patch by: Tim Philipp-Müller
4504
4505         * configure.ac:
4506         * gst/gstpad.c:
4507           unref data when probe function returns FALSE.  Fixes #166362
4508
4509 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4510
4511         * gst/gst.c: (gst_init_get_popt_table):
4512           Fix typo (#166269).
4513
4514 2005-02-04  Andy Wingo  <wingo@pobox.com>
4515
4516         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4517         the debugging on whether the caps are compatible.
4518
4519 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4520
4521         * docs/manual/basics-elements.xml:
4522           Fix two typos.
4523
4524 2005-02-02  Wim Taymans  <wim@fluendo.com>
4525
4526         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4527         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4528         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4529         Remove some FIXMEs after analysing and commenting why they
4530         are not issues.
4531
4532 2005-02-02  Wim Taymans  <wim@fluendo.com>
4533
4534         * gst/schedulers/gstoptimalscheduler.c:
4535         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4536         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4537         (get_invalid_call), (chain_invalid_call),
4538         (get_group_schedule_function), (loop_group_schedule_function),
4539         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4540         (gst_opt_scheduler_state_transition),
4541         (gst_opt_scheduler_add_element),
4542         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4543         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4544         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4545         (gst_opt_scheduler_show):
4546         Added lock to protect scheduler data structures.
4547
4548 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4549
4550         * testsuite/threads/threadi.c: (cb_data):
4551           Fix buglet in test.
4552
4553 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4554
4555         * testsuite/threads/Makefile.am:
4556         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4557           On Wim's request, split the test in three separately-compiled
4558           tests that each test a very specific bug. Two of them still fail,
4559           will create bugs for those. threadi.c indicates why they fail.
4560
4561 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4562
4563         * gst/schedulers/gstoptimalscheduler.c:
4564         (get_group_schedule_function):
4565           Try to work with the threading mess that queue_link is.
4566
4567 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4568
4569         * gst/gstbin.c: (gst_bin_remove_func):
4570           Explicitely make an element release locks in a group when being
4571           remove from a bin.
4572         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4573           If there's no scheduler, always return immediately (similar to
4574           gst_element_interrupt).
4575
4576 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4577
4578         * gst/gstbin.c: (gst_bin_child_state_change_func):
4579           Remove a piece of code that could never be reached.
4580         * docs/gst/gstreamer-sections.txt:
4581         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4582         (gst_pad_call_get_function):
4583         * gst/gstpad.h:
4584         * testsuite/pad/Makefile.am:
4585           Fix #150546, enable tests.
4586
4587 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4588
4589         * docs/pwg/advanced-types.xml:
4590           Fix description for buffer-frames=0.
4591         * docs/gst/tmpl/gstbin.sgml:
4592         * gst/gstbin.c: (gst_bin_child_state_change_func),
4593         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4594         * gst/gstbin.h:
4595         * testsuite/threads/Makefile.am:
4596         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4597         (cb_state), (cb_play), (main):
4598           Fix non-recursive state changes to *really* change the state
4599           of the object, and not just call parent_class->state_change.
4600           Fix a lot of lockups caused by this. Fixes #132775. Add test
4601           for the problem. Also enable test to show #142588 (fixed).
4602         * gst/gstthread.c: (gst_thread_change_state),
4603         (gst_thread_child_state_change):
4604           Don't exit the thread if we go to NULL and are inside thread
4605           context. Instead, return control to the main thread context
4606           and exit from there.
4607         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4608           Don't unset virtual functions, since those may still be used.
4609           That's not necessarily correct, but suffices for now.
4610         * configure.ac:
4611         * testsuite/Makefile.am:
4612         * testsuite/pad/Makefile.am:
4613         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4614         (gst_test_sink_base_init), (gst_test_sink_chain),
4615         (gst_test_sink_init), (main):
4616         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4617         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4618         (main):
4619         * testsuite/pad/link.c: (gst_test_element_class_init),
4620         (gst_test_element_base_init), (gst_test_src_get),
4621         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4622         (gst_test_filter_loop), (gst_test_filter_init),
4623         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4624         (cb_error), (main):
4625           Add tests to show #150546. Pass, but should fail (currently
4626           disabled from the testsuite).
4627         * gst/gstscheduler.c: (gst_scheduler_dispose):
4628           Dereference child schedulers on dispose (#94464).
4629         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4630           Fix typo.
4631         * testsuite/threads/thread.c: (main):
4632           Add more debug.
4633
4634 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4635
4636         * gst/gstpad.c: (gst_pad_push):
4637           Oops, revert previous commit, broke testsuite...
4638
4639 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4640
4641         * gst/gstpad.c: (gst_pad_push):
4642           Add check that the pad on which the push is performed is not a
4643           get-based pad (#150546).
4644
4645 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4646
4647         * gst/elements/gsttypefindelement.c:
4648         (gst_type_find_element_handle_event):
4649           Fix buffer pushing if stream EOSes during typefinding.
4650
4651 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4652
4653         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4654
4655         * gst/gstvalue.c: (gst_string_wrap):
4656           Allow NULL-strings as argument (#165365).
4657
4658 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4659
4660         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4661
4662         * gst/schedulers/faircothreads.c:
4663         (gst_fair_scheduler_cothread_queue_show):
4664           Fix build without debug enabled.
4665
4666 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4667
4668         * docs/gst/gstreamer-sections.txt:
4669         * docs/libs/gstreamer-libs-docs.sgml:
4670         * docs/libs/gstreamer-libs-sections.txt:
4671         * docs/libs/tmpl/gstcontrol.sgml:
4672         * docs/libs/tmpl/gstdparam.sgml:
4673         * docs/libs/tmpl/gstdplinint.sgml:
4674         * docs/libs/tmpl/gstdpman.sgml:
4675         * docs/libs/tmpl/gstdpsmooth.sgml:
4676         * docs/libs/tmpl/gstputbits.sgml:
4677         * docs/libs/tmpl/gstunitconvert.sgml:
4678         * libs/gst/control/dparam.c:
4679         * libs/gst/control/dparam.h:
4680         * libs/gst/control/dparammanager.c:
4681         (gst_dpman_add_required_dparam_callback),
4682         (gst_dpman_add_required_dparam_direct),
4683         (gst_dpman_add_required_dparam_array),
4684         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4685         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4686         (gst_dpman_get_manager)
4687           restructured DParam docs
4688
4689 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4690
4691         * gst-element-check.m4:
4692           Only check for gst-inspect if we haven't already
4693           found it in previous element check runs
4694
4695 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4696
4697         * docs/gst/Makefile.am:
4698         * docs/libs/Makefile.am:
4699           fixed install rules to treat style.css as optional
4700
4701 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4702
4703         * docs/gst/Makefile.am:
4704         * docs/libs/Makefile.am:
4705           install style.css along with docs
4706         * docs/gst/tmpl/gstbin.sgml:
4707         * docs/gst/tmpl/gstclock.sgml:
4708         * docs/gst/tmpl/gstdata.sgml:
4709         * docs/gst/tmpl/gstelement.sgml:
4710         * gst/gstbin.h:
4711         * gst/gstelement.c: (gst_element_class_init):
4712         * gst/gstelement.h:
4713           fixing incomplete docs
4714
4715 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4716
4717         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4718           Don't unref seek event twice when fflush() fails
4719           
4720 2005-01-22  David Schleef  <ds@schleef.org>
4721
4722         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4723
4724 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4725
4726         * docs/gst/Makefile.am:
4727         * docs/libs/Makefile.am:
4728           added params for deprecation guards
4729         * gst/gst.c:
4730         * gst/gst.h:
4731         * gst/gsterror.c: (_gst_resource_errors_init),
4732         (_gst_stream_errors_init):
4733         * gst/gsterror.h:
4734           documented some more enums
4735
4736 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4737         * gst/autoplug/gstspideridentity.c:
4738         Cosmetic fix - spider_find_peek should be static
4739         * gst/parse/parse.l:
4740         Applying fix for #164261
4741
4742 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4743
4744         * docs/gst/gstreamer-sections.txt:
4745         * docs/gst/tmpl/gstplugin.sgml:
4746         * docs/libs/gstreamer-libs-sections.txt:
4747         * docs/libs/tmpl/gstcontrol.sgml:
4748         * gst/gstbuffer.h:
4749         * gst/gsttag.h:
4750         * gst/gstvalue.c:
4751           added docs for the TAG defines
4752
4753 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4754
4755         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4756           Only unref entry if there is an entry.
4757
4758 2005-01-17  Wim Taymans  <wim@fluendo.com>
4759
4760         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4761         (remove_from_group), (schedule_group), (normalize_group),
4762         (gst_opt_scheduler_iterate):
4763         Also ref/unref decoupled elements before iterating the
4764         group since they are not added to the list of elements.
4765
4766 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4767
4768         * docs/manual/highlevel-components.xml:
4769           Add subtitle/streamselection as new features to playbin.
4770
4771 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4772
4773         * docs/manual/manual.xml:
4774           Re-enable dataaccess docs (oops).
4775
4776 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4777
4778         * docs/pwg/advanced-types.xml:
4779         * docs/random/mimetypes:
4780           Add documentation on libsndfile types (#163309), by Steve Baker
4781           <steve@stevebaker.org>.
4782         * gst/gstelement.c: (gst_element_release_request_pad):
4783           If an element has no explicit function, just remove the pad.
4784
4785 2005-01-17  Luca Ognibene  <luogni@tin.it>
4786
4787         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4788
4789         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
4790           Fix memleak (#163801).
4791
4792 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4793
4794         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
4795           I think this is actually more correct...
4796
4797 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4798
4799         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4800           Another workaround for memory access while destroyed in callback.
4801           Please, someone with refcount knowledge, have a look at this.
4802
4803 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4804
4805         * docs/faq/faq.xml:
4806         * docs/faq/legal.xml:
4807           move the legal Q&A here
4808
4809 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4810
4811         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
4812         (gst_tee_request_new_pad):
4813           Fix negotiation.
4814
4815 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4816
4817         * docs/random/omega/caps2:
4818         * testsuite/caps/caps_strings:
4819           replace framerate aproximations by their real value
4820           (24000/1001, 30000/1001, 60000/1001)
4821           Partially fixes bug #164049
4822
4823 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4824
4825         * docs/gst/Makefile.am:
4826           don't fail on the stupid GstPoptOption
4827
4828 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4829
4830         * gst/gstpad.h:
4831         * gst/gstprobe.c:
4832           allow probes to work on ghost pads by realizing the pad
4833           probe debugging
4834
4835 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4836
4837         * docs/gst/gstreamer-sections.txt:
4838         * docs/gst/tmpl/gstpad.sgml:
4839         * gst/gstpad.c: (gst_pad_set_active_recursive):
4840         * gst/gstpad.h:
4841           Add gst_pad_set_active_recursive().
4842
4843 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4844
4845         * docs/random/release:
4846           updates
4847         * gst/gst_private.h:
4848         * gst/gstinfo.c:
4849         * gst/gstobject.c:
4850           move deep_notify logging to a new category
4851         * gst/gstprobe.c:
4852         * gst/gstprobe.h:
4853           add stuff so bindings can wrap probes
4854
4855 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4856
4857         * gst/gstplugin.c: (gst_plugin_load):
4858           Fix plugin loading if plugin/lib was already loaded. Fixes
4859           #163383
4860
4861 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
4862
4863         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4864
4865         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
4866           Protect plugin loading by a mutex so it's threadsafe. Fixes
4867           #163234.
4868
4869 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4870
4871         * gst/gstevent.c: (_gst_event_copy):
4872           Reference source object when copying events, since it'll be
4873           dereferenced on event dereferencing as well.
4874
4875 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4876
4877         * docs/gst/gstreamer-sections.txt:
4878         * docs/gst/tmpl/gstevent.sgml:
4879         * gst/gstevent.c: (gst_event_new_filler_stamped),
4880         (gst_event_filler_get_duration):
4881         * gst/gstevent.h:
4882           Add two new functions for filler events (which are used to
4883           synchronize streams if one of them is not having any data
4884           for a while) without interrupting the actual data-stream.
4885           Basically a no-op.
4886         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4887         (gst_queue_link_sink), (gst_queue_link_src),
4888         (gst_queue_change_state):
4889           Allow for renegotiation while filled. Required for stream
4890           switching while playing.
4891
4892 2005-01-08  Benjamin Otte  <otte@gnome.org>
4893
4894         * gst/gstelement.c: (gst_element_link_many):
4895           fix up g_return_if_fail's
4896         * po/LINGUAS:
4897         * po/de.po:
4898           add German translation, that was somehow not included
4899
4900 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4901
4902         * docs/random/mimetypes:
4903           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
4904           do not add them to riff-lib as they are not common
4905
4906 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4907
4908         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4909           Check for existence of probe after performing the probe before
4910           re-accessing it to prevent segfaults caused by removal of the
4911           probe in the callback.
4912
4913 2005-01-05  David Schleef  <ds@schleef.org>
4914
4915         * testsuite/registry/Makefile.am:
4916         * testsuite/registry/gst-print-formats.c:
4917         (print_pad_templates_info), (print_element_list),
4918         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
4919         (g_list_uniqify), (get_pad_templates_info),
4920         (get_element_mime_list), (print_mime_list), (main): A little
4921         program that looks through the registry to find elements of
4922         a given type.  Not particularly interesting as a test, except
4923         that there's no other test covering the same area.
4924
4925 2005-01-05  David Schleef  <ds@schleef.org>
4926
4927         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
4928         (fault_handler_sigaction), (fault_spin),
4929         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
4930         in signal.h-type signal handlers by not calling forbidden functions,
4931         including gst_element_set_state().
4932
4933 2005-01-05  David Schleef  <ds@schleef.org>
4934
4935         * gst/gstvalue.h: Mark _gst_reserved[] as private
4936
4937 2005-01-05  David Schleef  <ds@schleef.org>
4938
4939         * gst/gstvalue.c: Fix doc build problem.
4940
4941 2005-01-05  David Schleef  <ds@schleef.org>
4942
4943         * gst/gstvalue.c: Add some documentation
4944
4945 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
4946
4947         * docs/README:
4948           another shell oneliner for empty return value docs
4949         * gst/gstcaps.c:
4950         * gst/gstvalue.c:
4951         * libs/gst/control/dparam.c:
4952           more doc fixes (parameters and return values)
4953
4954 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
4955
4956         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4957
4958         * gst/gstregistry.h:
4959         * gst/registries/gstxmlregistry.c:
4960           Fix macro's for Mingw (fixes #162276).
4961
4962 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
4963
4964         * docs/README:
4965           quick shell oneliner to find undocumented members
4966         * docs/gst/tmpl/gstplugin.sgml:
4967         * docs/gst/tmpl/gstscheduler.sgml:
4968         * docs/gst/tmpl/gstthread.sgml:
4969           more enumtypes cleanup
4970         * gst/gsterror.h:
4971           activated documentation comments, now someone needs to document
4972           the enums :(
4973
4974 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4975
4976         * docs/manual/manual.xml:
4977           Add dataaccess part (doh!).
4978
4979 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4980
4981         * docs/manual/advanced-autoplugging.xml:
4982           Fix typo (intiate -> initiate).
4983
4984 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4985
4986         * docs/random/bbb/streamselection:
4987           Add some notes on how to handle multi-subtitle/-audio streams.
4988
4989 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
4990
4991         * docs/gst/gstreamer-docs.sgml:
4992         * docs/gst/gstreamer-sections.txt:
4993         * docs/gst/tmpl/gstenumtypes.sgml:
4994         * docs/gst/tmpl/gsterror.sgml:
4995         * docs/gst/tmpl/gstevent.sgml:
4996         * docs/gst/tmpl/gstpad.sgml:
4997         * docs/gst/tmpl/gstpadtemplate.sgml:
4998         * docs/gst/tmpl/gstthread.sgml:
4999           removed gstenumtypes section from docs and put all the enums into
5000           their sections
5001
5002 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5003
5004         * gst/gstplugin.c:
5005           document gst_library_load a bit more (riff special case + return
5006           value if already loaded)
5007         * testsuite/bytestream/filepadsink.c:
5008           plugin name is 'gstbytestream', not 'bytestream'
5009
5010 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5011
5012         * docs/random/bbb/subtitles:
5013           Add some first mind rumblings on proper subtitle support.
5014
5015 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5016
5017         * po/ca.po:
5018         * po/sv.po:
5019           updated translations
5020
5021 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5022
5023         * docs/manual/advanced-dataaccess.xml:
5024           Add section on how to use fakesrc/fakesink/identity in your
5025           application, plus section on how to embed plugins. Also mention
5026           probes.
5027         * docs/manual/appendix-checklist.xml:
5028         * docs/manual/appendix-debugging.xml:
5029         * docs/manual/appendix-gnome.xml:
5030         * docs/manual/appendix-integration.xml:
5031           Debug -> checklist, GNOME -> integration, add sections on Linux,
5032           KDE integration and add other things useful for application
5033           development.
5034         * docs/manual/manual.xml:
5035           Remove some fixmes, update some file pointers.
5036         * docs/pwg/appendix-checklist.xml:
5037           Fix typo.
5038         * docs/pwg/building-boiler.xml:
5039           Remove ugly header and add commented fixme.
5040         * docs/pwg/pwg.xml:
5041           Add fixme.
5042         * examples/manual/Makefile.am:
5043           Add example for added docs.
5044
5045 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5046
5047         * configure.ac:
5048           back to HEAD
5049
5050 === release 0.8.8 ===
5051
5052 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5053
5054         * NEWS:
5055         * RELEASE:
5056         * configure.ac:
5057           Releasing 0.8.8, "I'll Take Care Of You"
5058
5059 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5060
5061         * configure.ac:
5062           second prerelease
5063
5064 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5065
5066         patch by: Wim Taymans
5067
5068         * gst/gstbin.c:
5069           Fix for #159852 - make iterate emission threadsafe
5070
5071 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5072
5073         * docs/faq/cvs.xml:
5074           notes about new fdo account request
5075
5076 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5077
5078         * docs/gst/gstreamer-docs.sgml:
5079         * docs/gst/tmpl/gstenumtypes.sgml:
5080         * docs/gst/tmpl/gstplugin.sgml:
5081         * docs/libs/gstreamer-libs-docs.sgml:
5082           Added missing short docs. Added ids for navigation.
5083
5084 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5085
5086         * docs/manual/advanced-autoplugging.xml:
5087         * docs/manual/advanced-schedulers.xml:
5088         * docs/manual/advanced-threads.xml:
5089           Rewrites. Remove cothreads, go a bit into opt specifically,
5090           document threads and their gotchas, and do some technical stuff
5091           on autoplugging plus add some working examples. Fixes #157395.
5092         * examples/manual/Makefile.am:
5093           Add typefind/autoplugger example (one that actually works).
5094           Remove queue example since it's a duplicate of the thread one.
5095
5096 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5097
5098         * gst/gstvalue.c: (gst_value_deserialize_string):
5099           use deprecated g_value_set_string_take_ownership to keep compatible
5100           with glib 2.2
5101
5102 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5103
5104         * gst/gstvalue.c: (gst_value_deserialize_string):
5105           revert last patch, only dom a g_utf8_validate now before accepting
5106           the string - caps parsing strips " from strings so we can't rely on
5107           them
5108         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5109           disable a test that tested the above and comment it
5110
5111 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5112
5113         Patch reviewed by David Schleef  <ds@schleef.org>
5114
5115         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5116         bug #153882)
5117         * win32/gstenumtypes.h: same
5118
5119 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5120
5121         * gst/gstpad.c: (gst_pad_query):
5122           Do query on realized pad, similar to how convert/send_event handle
5123           this. Also makes sense, since this pad belongs to the function to
5124           which this query will be sent. Fixes #158163.
5125
5126 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5127
5128         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5129
5130 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5131
5132         * docs/faq/general.xml: fix pipeline to actually work
5133
5134 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5135
5136         * gst/gstvalue.c: (gst_value_deserialize_string):
5137           check that a simple string that gets deserialized does not contain
5138           invalid characters
5139         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5140           remove a test that tested a wring behaviour
5141
5142 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5143
5144         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5145
5146         * docs/manual/intro-motivation.xml:
5147           Fix typos.
5148
5149 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5150
5151         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5152
5153         * docs/gst/tmpl/gstprobe.sgml:
5154           Fix documentation of probe callback - it is supposed to return
5155           FALSE, not TRUE, to remove data from the stream (#159087).
5156
5157 2004-12-16  Daniel Gazard  <dany42@free.fr>
5158
5159         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5160
5161         * gst/gstelementfactory.c: (gst_element_factory_create):
5162           Fix compile failure if compiling without libxml2 support (#149936).
5163
5164 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5165
5166         * docs/manual/advanced-autoplugging.xml:
5167         * docs/manual/highlevel-components.xml:
5168           Move spider from autoplugging to components. Autoplugging is for
5169           internals, not for solutions. ;-).
5170
5171 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5172
5173         * docs/random/ds/0.9-suggested-changes:
5174           Make note on device/location/uri property names.
5175
5176 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5177
5178         * docs/manual/advanced-autoplugging.xml:
5179         * docs/manual/advanced-clocks.xml:
5180         * docs/manual/advanced-interfaces.xml:
5181         * docs/manual/advanced-metadata.xml:
5182         * docs/manual/advanced-position.xml:
5183         * docs/manual/advanced-schedulers.xml:
5184         * docs/manual/advanced-threads.xml:
5185         * docs/manual/appendix-gnome.xml:
5186         * docs/manual/appendix-programs.xml:
5187         * docs/manual/appendix-quotes.xml:
5188         * docs/manual/autoplugging.xml:
5189         * docs/manual/basics-bins.xml:
5190         * docs/manual/basics-data.xml:
5191         * docs/manual/basics-elements.xml:
5192         * docs/manual/basics-helloworld.xml:
5193         * docs/manual/basics-init.xml:
5194         * docs/manual/basics-pads.xml:
5195         * docs/manual/basics-plugins.xml:
5196         * docs/manual/bins-api.xml:
5197         * docs/manual/bins.xml:
5198         * docs/manual/buffers-api.xml:
5199         * docs/manual/buffers.xml:
5200         * docs/manual/clocks.xml:
5201         * docs/manual/components.xml:
5202         * docs/manual/cothreads.xml:
5203         * docs/manual/debugging.xml:
5204         * docs/manual/dparams-app.xml:
5205         * docs/manual/dynamic.xml:
5206         * docs/manual/elements-api.xml:
5207         * docs/manual/elements.xml:
5208         * docs/manual/factories.xml:
5209         * docs/manual/gnome.xml:
5210         * docs/manual/goals.xml:
5211         * docs/manual/helloworld.xml:
5212         * docs/manual/helloworld2.xml:
5213         * docs/manual/highlevel-components.xml:
5214         * docs/manual/highlevel-xml.xml:
5215         * docs/manual/init-api.xml:
5216         * docs/manual/intro-basics.xml:
5217         * docs/manual/intro-motivation.xml:
5218         * docs/manual/intro-preface.xml:
5219         * docs/manual/intro.xml:
5220         * docs/manual/links-api.xml:
5221         * docs/manual/links.xml:
5222         * docs/manual/manual.xml:
5223         * docs/manual/motivation.xml:
5224         * docs/manual/pads-api.xml:
5225         * docs/manual/pads.xml:
5226         * docs/manual/plugins-api.xml:
5227         * docs/manual/plugins.xml:
5228         * docs/manual/programs.xml:
5229         * docs/manual/queues.xml:
5230         * docs/manual/quotes.xml:
5231         * docs/manual/schedulers.xml:
5232         * docs/manual/states-api.xml:
5233         * docs/manual/states.xml:
5234         * docs/manual/threads.xml:
5235         * docs/manual/typedetection.xml:
5236         * docs/manual/win32.xml:
5237         * docs/manual/xml.xml:
5238           Try 2. This time, include a short preface as a "general
5239           introduction", also add code blocks around all code samples
5240           so they get compiled. We still need a way to tell readers
5241           the filename of the code sample. In some cases, don't show
5242           all code in the documentation, but do include it in the generated
5243           code. This allows for focussing on specific bits in the docs,
5244           while still having a full test application available.
5245         * examples/manual/Makefile.am:
5246           Fix up examples for new ADM. Add several of the new examples that
5247           were either added or were missing from the build system.
5248         * examples/manual/extract.pl:
5249           Allow nameless blocks.
5250
5251 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5252
5253         * docs/manual/elements-api.xml:
5254         * docs/manual/helloworld.xml:
5255         * examples/manual/extract.pl:
5256           fix last example.  Add example of adding code blocks that are not
5257           shown in docbook output.
5258
5259 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5260
5261         * docs/manual/dynamic.xml:
5262         * docs/manual/elements-api.xml:
5263         * docs/manual/gnome.xml:
5264         * docs/manual/helloworld2.xml:
5265         * docs/manual/init-api.xml:
5266         * docs/manual/queues.xml:
5267         * docs/manual/threads.xml:
5268         * docs/manual/xml.xml:
5269         * examples/manual/extract.pl:
5270           Make it possible to extract example code from separate blocks.
5271           Should make Ronald happy.
5272
5273 2004-12-15  Wim Taymans  <wim@fluendo.com>
5274
5275         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5276         (remove_from_group), (group_elements_set_visited),
5277         (normalize_group), (gst_opt_scheduler_iterate):
5278         Fix bug where a flag was not updated on a decoupled entry point 
5279         because we were just checking the group element list and decoupled
5280         elements are not in that list..
5281
5282 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5283
5284         * docs/manual/advanced-autoplugging.xml:
5285         * docs/manual/advanced-clocks.xml:
5286         * docs/manual/advanced-dparams.xml:
5287         * docs/manual/advanced-interfaces.xml:
5288         * docs/manual/advanced-metadata.xml:
5289         * docs/manual/advanced-position.xml:
5290         * docs/manual/advanced-schedulers.xml:
5291         * docs/manual/advanced-threads.xml:
5292         * docs/manual/appendix-debugging.xml:
5293         * docs/manual/appendix-gnome.xml:
5294         * docs/manual/appendix-programs.xml:
5295         * docs/manual/appendix-quotes.xml:
5296         * docs/manual/appendix-win32.xml:
5297         * docs/manual/autoplugging.xml:
5298         * docs/manual/basics-bins.xml:
5299         * docs/manual/basics-data.xml:
5300         * docs/manual/basics-elements.xml:
5301         * docs/manual/basics-helloworld.xml:
5302         * docs/manual/basics-init.xml:
5303         * docs/manual/basics-pads.xml:
5304         * docs/manual/basics-plugins.xml:
5305         * docs/manual/bins-api.xml:
5306         * docs/manual/bins.xml:
5307         * docs/manual/buffers-api.xml:
5308         * docs/manual/buffers.xml:
5309         * docs/manual/clocks.xml:
5310         * docs/manual/components.xml:
5311         * docs/manual/cothreads.xml:
5312         * docs/manual/debugging.xml:
5313         * docs/manual/dparams-app.xml:
5314         * docs/manual/dynamic.xml:
5315         * docs/manual/elements-api.xml:
5316         * docs/manual/elements.xml:
5317         * docs/manual/factories.xml:
5318         * docs/manual/gnome.xml:
5319         * docs/manual/goals.xml:
5320         * docs/manual/helloworld.xml:
5321         * docs/manual/helloworld2.xml:
5322         * docs/manual/highlevel-components.xml:
5323         * docs/manual/highlevel-xml.xml:
5324         * docs/manual/init-api.xml:
5325         * docs/manual/intro-motivation.xml:
5326         * docs/manual/intro-preface.xml:
5327         * docs/manual/intro.xml:
5328         * docs/manual/links-api.xml:
5329         * docs/manual/links.xml:
5330         * docs/manual/manual.xml:
5331         * docs/manual/motivation.xml:
5332         * docs/manual/pads-api.xml:
5333         * docs/manual/pads.xml:
5334         * docs/manual/plugins-api.xml:
5335         * docs/manual/plugins.xml:
5336         * docs/manual/programs.xml:
5337         * docs/manual/queues.xml:
5338         * docs/manual/quotes.xml:
5339         * docs/manual/schedulers.xml:
5340         * docs/manual/states-api.xml:
5341         * docs/manual/states.xml:
5342         * docs/manual/threads.xml:
5343         * docs/manual/typedetection.xml:
5344         * docs/manual/win32.xml:
5345         * docs/manual/xml.xml:
5346           First try at rewriting the ADM. Needs lotsamore work, but some
5347           parts might already be somewhat useful.
5348         * docs/pwg/advanced-interfaces.xml:
5349           Remove properties interface, it never actually existed (except for
5350           on my HD...).
5351
5352 2004-12-13  David Schleef  <ds@schleef.org>
5353
5354         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5355         be NULL (bug #160220).
5356
5357 2004-12-13  David Schleef  <ds@schleef.org>
5358
5359         * configure.ac: remove all mmx stuff, because it's not used.
5360         * docs/random/ds/0.9-suggested-changes: additional notes
5361         * include/Makefile.am: we don't use these anymore
5362         * include/mmx.h: remove
5363         * include/sse.h: remove
5364
5365 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5366
5367         * docs/random/mimetypes:
5368           Add FOURCC code for h264 codec (VSSH)
5369           Add alternate FOURCC codes for h263 related codecs
5370
5371 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5372
5373         * docs/manual/programs.xml:
5374           Added more gst-launch examples.
5375
5376 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5377
5378         * gst/gstqueue.c: (gst_queue_handle_src_query):
5379           Check for availability again.
5380
5381 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5382
5383         * gst/gstcaps.c: (gst_caps_compare_structures):
5384           Simple caps go first. This has the nice side-effect of fixing an
5385           obscure warning.
5386
5387 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5388
5389         * gst/gstversion.h.in:
5390           Protect header.
5391
5392 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5393
5394         * gst/schedulers/gstoptimalscheduler.c:
5395         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5396         (gst_opt_scheduler_get_wrapper):
5397           When we're recursing into a chain run, only run the directly
5398           related group, not all queued ones. This will fix a possible
5399           deadlock in chains with more than two groups.
5400
5401 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5402
5403         * autogen.sh:
5404           remove patch if autopoint fails
5405
5406 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5407
5408         * docs/gst/gstreamer-sections.txt:
5409           Document Thomas' addition, fix build, make Luis the sheriff happy.
5410
5411 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5412
5413         * gst/gstplugin.c:
5414         * gst/gstplugin.h:
5415           add accessor for version field
5416
5417 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5418
5419         submitted by: Luca Ferretti <elle.uca@infinito.it>
5420
5421         * po/LINGUAS:
5422         * po/it.po:
5423           New tranlation added: Italian
5424
5425 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5426
5427         * gst/gstpad.c: (gst_pad_is_negotiated),
5428         (gst_pad_get_negotiated_caps):
5429           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5430           it doesn't actually check the contents), so be sure to hand it
5431           a RealPad else we'll crash.
5432
5433 2004-12-03  Wim Taymans  <wim@fluendo.com>
5434
5435         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5436         (gst_queue_link), (gst_queue_handle_src_query):
5437         Reverted to 1.110 until this makes the testsuite and various
5438         apps work.
5439
5440 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5441
5442         * docs/upload.mak: fix included CVS conflict strings
5443
5444 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5445
5446         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5447
5448         * gst/gstelement.c: (gst_element_error_full):
5449           Use g_error_new_literal because error text may have
5450           percentage signs in it. Fixes #160019.
5451
5452 2004-12-01  Benjamin Otte  <otte@gnome.org>
5453
5454         * gst/elements/gstbufferstore.c:
5455         (gst_buffer_store_add_buffer_func):
5456           don't try to make subbuffers bigger than they can be. (fixes
5457           #159970)
5458
5459 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5460
5461         * docs/gst/gstreamer-sections.txt:
5462         * docs/gst/tmpl/gstvalue.sgml:
5463           Add new function to docs to fix build.
5464
5465 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5466
5467         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5468         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5469         (_gst_pad_default_fixate_foreach):
5470         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5471         * gst/gstvalue.h:
5472           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5473           in some cases (arrays), the fixedness depends on the content.
5474         * gst/gstqueue.c: (gst_queue_handle_src_query):
5475           Check for availability before doing something.
5476
5477 2004-11-29  Wim Taymans  <wim@fluendo.com>
5478
5479         * testsuite/threads/Makefile.am:
5480         * testsuite/threads/signals.c: (gst_test_get_type),
5481         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5482         (gst_test_set_property), (gst_test_get_property),
5483         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5484         (gst_test_do_prop), (run_thread), (main):
5485         Added a bunch of testcases that show threadsafety bugs in glib.
5486
5487 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5488
5489         * docs/manual/programs.xml:
5490           Added a first batch of gst-launch examples, as provided by Ronald
5491           and others from the devel-mlist
5492
5493 2004-11-28  Benjamin Otte  <otte@gnome.org>
5494
5495         * gst/gstelement.c: (gst_element_negotiate_pads):
5496           simplify
5497         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5498         (gst_value_serialize_string), (gst_value_deserialize_string):
5499           add unwrapping of previously wrapped strings. Fix bug in wrapping
5500           while at it.
5501         * testsuite/caps/value_serialize.c: (test1),
5502         (test_string_serialization), (test_string_deserialization), (main):
5503           add tests for string (de)serialization
5504
5505 2004-11-26  Wim Taymans  <wim@fluendo.com>
5506
5507         * testsuite/threads/159566.c: (object_deep_notify), (main):
5508         * testsuite/threads/Makefile.am:
5509         Added testsuite to show bug #159566
5510
5511 2004-11-25  Wim Taymans  <wim@fluendo.com>
5512
5513         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5514         (gst_thread_child_state_change), (gst_thread_main_loop):
5515         Ref the thread object in the GThread mainloop. Break out of the
5516         thread mainloop if it holds the last ref. This properly exits
5517         the threads when disposing the thread from its own context. It
5518         also avoids possible deadlocks in the dispose function.
5519
5520 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5521
5522         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5523         it is necessary to wait.
5524
5525 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5526
5527         * docs/pwg/building-boiler.xml:
5528           Make description somewhat clearer.
5529
5530 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5531
5532         * docs/upload.mak:
5533           Apparently docs changed location on FDO's server.
5534
5535 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5536
5537         * docs/pwg/appendix-checklist.xml:
5538           Add some random notes on things to check when writing an element.
5539           This list can be extended as people see fit.
5540
5541 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5542
5543         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5544         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5545         pad. The queue will now wait until it is empty and forward the new
5546         caps to the source.
5547         * gst/gstbin.c (gst_bin_set_element_sched)
5548         (gst_bin_unset_element_sched): Make sure that all elements and
5549         links are registered and unregistered with the scheduler exactly
5550         once. This elaborates on a fix by Benjamin Otte, but
5551         guarantees that decoupled elements are also registered.
5552
5553 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5554
5555         * docs/manual/quotes.xml:
5556           add a quote
5557         * configure.ac:
5558         * gst/gst.c:
5559         * gst/gstinfo.c:
5560           add LIBDIR and move init message higher up so it's at the start
5561
5562 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5563
5564         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5565         * gstreamer.spec.in: add fair
5566
5567 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5568
5569         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5570         * gst/elements/gstidentity.c: (gst_identity_class_init):
5571           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5572           <teuf@gnome.org> (#157263).
5573         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5574         (gst_type_find_handle_src_query):
5575           Subtract size of internally stored data from position queries.
5576
5577 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5578
5579         * gst/schedulers/fairscheduler.c:
5580         * gst/schedulers/faircothreads.c:
5581         * gst/schedulers/faircothreads.h:
5582         New cothread based scheduler: Fair scheduler.
5583         * gst/schedulers/gthread-cothreads.h: 
5584         Add the standard #if around the whole file.
5585         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5586         compilation of the functions defined in this file. This is
5587         necessary to be able to use this file as a normal header.
5588         * gst/schedulers/Makefile.am: Add compiling support for fair
5589         scheduler.
5590         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5591         scheduler cothreads layer from documentation generation.
5592
5593 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5594
5595         * gst/autoplug/gstspideridentity.c:
5596         (gst_spider_identity_sink_loop_type_finding):
5597           Don't crash if that function is not implemented.
5598
5599 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5600
5601         * docs/pwg/advanced-types.xml:
5602           Another typo.
5603
5604 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5605
5606         * docs/pwg/intro-preface.xml:
5607           Hm, ok, so the brackets weren't really useful...
5608         * docs/pwg/other-ntoone.xml:
5609           Fix embarassing typo.
5610
5611 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5612
5613         * docs/pwg/intro-preface.xml:
5614           Rewrite preface.
5615
5616 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5617
5618         * docs/pwg/advanced-scheduling.xml:
5619         * docs/pwg/advanced-tagging.xml:
5620         * docs/pwg/advanced-types.xml:
5621         * docs/pwg/building-boiler.xml:
5622         * docs/pwg/building-chainfn.xml:
5623         * docs/pwg/building-signals.xml:
5624         * docs/pwg/building-state.xml:
5625         * docs/pwg/building-testapp.xml:
5626         * docs/pwg/intro-basics.xml:
5627         * docs/pwg/other-manager.xml:
5628         * docs/pwg/other-source.xml:
5629           Typo fixes.
5630         * docs/pwg/other-manager.xml:
5631           Add some first content. No example code yet.
5632         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5633           Remove double newlines.
5634
5635 2004-11-04  Wim Taymans  <wim@fluendo.com>
5636
5637         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5638         (remove_from_group), (normalize_group), (group_migrate_connected),
5639         (gst_opt_scheduler_iterate):
5640         * testsuite/schedulers/.cvsignore:
5641         * testsuite/schedulers/Makefile.am:
5642         * testsuite/schedulers/queue_link.c: (main):
5643         Added testcase for scheduler segfault.
5644         Fix scheduler segfault when removing a decoupled
5645         entry point as the last element from a group.
5646
5647 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5648
5649         * gst/gstmarshal.list: add missing marshaller, fixes build
5650
5651 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5652
5653         * docs/random/signal: added notes about using BOXED for GstBuffer
5654         signal marshallers, not POINTER
5655
5656 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5657
5658         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5659         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5660         POINTER=>BOXED changes to marshal GstBuffers
5661
5662 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5663
5664         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5665         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5666
5667 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5668
5669         * docs/gst/gstreamer-sections.txt:
5670         * docs/gst/tmpl/gstcaps.sgml:
5671         * docs/gst/tmpl/gsterror.sgml:
5672         * docs/gst/tmpl/gstinfo.sgml:
5673         * docs/gst/tmpl/gstmacros.sgml:
5674         * docs/gst/tmpl/gstutils.sgml:
5675         * docs/random/ensonic/interfaces.txt:
5676         * gst/gstinfo.h:
5677           added some more docs, removed two obsolete defines
5678
5679 2004-11-02  Kjartan Maraas <as at gnome.org>
5680
5681         reviewed by: Wim Taymans, Ronald Bultje.
5682
5683         * gst/cothreads.c: (cothread_create):
5684         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5685         (gst_bin_child_state_change_func):
5686         * gst/gstbuffer.c: (gst_buffer_span):
5687         * gst/gstelement.c: (gst_element_get_index),
5688         (gst_element_get_event_masks), (gst_element_get_query_types),
5689         (gst_element_get_formats):
5690         * gst/gsterror.c: (_gst_core_errors_init),
5691         (_gst_library_errors_init), (_gst_resource_errors_init),
5692         (_gst_stream_errors_init):
5693         * gst/gstobject.c: (gst_object_default_deep_notify):
5694         * gst/gstpad.c: (gst_pad_get_event_masks),
5695         (gst_pad_get_internal_links_default):
5696         * gst/gstplugin.c: (gst_plugin_register_func),
5697         (gst_plugin_get_module):
5698         * gst/gststructure.c: (gst_structure_get_string),
5699         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5700         (gst_structure_to_abbr):
5701         * gst/gstutils.c: (gst_print_element_args):
5702         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5703         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5704         Aplied part of patch #157127: Cleanup of issues reported by 
5705         sparse.
5706         Also do not try to use cothreads when there is no cothread
5707         context yet.
5708
5709 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5710
5711         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5712         (gst_opt_scheduler_iterate):
5713         Applied patch #154061. Running a pipeline in which an element 
5714         calls GST_ELEMENT_ERROR in the chain function, the opt 
5715         scheduler doesn't unref the chain so it never gets freed.
5716
5717 2004-11-02  Wim Taymans  <wim@fluendo.com>
5718
5719         * gst/gststructure.c: (gst_structure_get_abbrs),
5720         (gst_structure_from_abbr), (gst_structure_to_abbr):
5721         Remove that ugly if-then thing in the code that converts
5722         between strings and types.
5723
5724 2004-11-02  Wim Taymans  <wim@fluendo.com>
5725
5726         * gst/gstscheduler.c: (gst_scheduler_add_element),
5727         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5728         Aplied clock distribution patch, this should fix bug
5729         #148787.
5730
5731 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5732
5733         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5734
5735         * po/LINGUAS:
5736         * po/nb.po:
5737           Added Norwegian Bokmaal translation
5738
5739 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5740
5741         * tools/gst-inspect.c: (print_signal_info):
5742           print signal arguments as pointers if they are
5743
5744 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5745
5746         * docs/pwg/building-boiler.xml:
5747           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5748
5749 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5750
5751         * gst/parse/parse.l:
5752         * testsuite/parse/parse1.c: (main):
5753         Since parse can do 'element name=a:b' make 'a:b.' work as
5754         well. 
5755         Added testcase to verify fix.
5756
5757 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5758
5759         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
5760         Use the realpad when printing the direction.
5761         Add extra \n when printing extensions of typefind factories.
5762
5763 2004-10-13  David Schleef  <ds@schleef.org>
5764
5765         * examples/manual/Makefile.am: $< isn't portable in Makefile
5766         rules.
5767
5768 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
5769
5770         * docs/gst/tmpl/gstobject.sgml:
5771         * docs/gst/tmpl/gstplugin.sgml:
5772         * docs/gst/tmpl/gstpluginfeature.sgml:
5773         * docs/gst/tmpl/gstregistry.sgml:
5774         * docs/gst/tmpl/gstversion.sgml:
5775         * gst/gstbin.c:
5776           more api documentation
5777         * gst/gstplugin.c: (gst_plugin_register_func),
5778         (gst_plugin_check_file), (gst_plugin_load_file):
5779           better error signaling and logging
5780
5781 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5782
5783         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
5784           Subtract current queue contents from position queries.
5785
5786 2004-10-11  Johan Dahlin  <johan@gnome.org>
5787
5788         * gst/gsturi.c (gst_uri_get_location): unescape string
5789         (gst_uri_construct): escape string.
5790
5791 2004-10-11  Benjamin Otte  <otte@gnome.org>
5792
5793         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
5794         (gst_pad_try_set_caps_nonfixed):
5795           allow renegotiation of unconnected pads (as inside spider). Simply
5796           return OK if unconnected - mimic try_set_caps there.
5797
5798 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5799
5800         * gst/gstbin.c: (gst_bin_sync_children_state):
5801           Add missing break.
5802
5803 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5804
5805         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
5806         Set element to EOS before sending EOS event
5807
5808 2004-10-08  Wim Taymans  <wim at fluendo dot com>
5809
5810         * gst/elements/gsttypefindelement.c:
5811         (gst_type_find_element_handle_event):
5812         Handle EOS events when doing the transition from
5813         typefind to data passing. This should fix the
5814         infinite loops in short files.
5815
5816 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5817
5818         * gst/gstthread.c: (gst_thread_change_state),
5819         (gst_thread_child_state_change):
5820         Make sure no iteration happens while performing
5821         the state change as it could mess up the internal
5822         consistency of the thread state.
5823
5824 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5825
5826         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
5827         (gst_thread_change_state), (gst_thread_child_state_change):
5828         Do not try to grab the iterate lock in the state change method
5829         when we are in the same thread as the iterate or else we
5830         could deadlock. Some other cleanups.
5831
5832 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5833
5834         * configure.ac:
5835           bump nano to cvs
5836
5837 === release 0.8.7 ===
5838
5839 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5840
5841         * configure.ac:
5842         * NEWS:
5843         * RELEASE:
5844         * configure.ac:
5845           releasing 0.8.7, "A Cruise"
5846
5847 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5848
5849         * docs/random/mimetypes:
5850         Add an entry for Sony ATRAC3 audio format with mime-type
5851         used by rmdemux et riff-read
5852
5853 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5854
5855         * gst/elements/gsttypefindelement.c: (stop_typefinding):
5856         Push the buffer store instead of clearing it in case that
5857         the stream is not seekable.
5858
5859 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5860
5861         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
5862         (gst_thread_main_loop):
5863         Lock the iteration and the state change so that automatic
5864         negotiation and fixation does not happen at the same time
5865         as the in stream negotiation.
5866
5867 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5868
5869         * configure.ac:
5870           bump nano to cvs
5871
5872 === release 0.8.6 ===
5873
5874 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5875
5876         * configure.ac:
5877         * NEWS:
5878         * RELEASE:
5879         * configure.ac:
5880           releasing 0.8.6, "Narc"
5881
5882 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5883
5884         * configure.ac:
5885           prerel bump
5886
5887 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5888
5889         patch by: Steve Lhomme
5890
5891         * gst/elements/gstfakesrc.c:
5892         * gst/elements/gstidentity.c:
5893         * gst/gstthread.c:
5894           Fix for #153881
5895
5896 2004-10-01  Wim Taymans  <wim at fluendo dot com>
5897
5898         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
5899         Fix threadsafety of the crc checking function.
5900
5901 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5902
5903         patch by: Ronald Bultje
5904
5905         * gst/elements/gsttypefindelement.c: (stop_typefinding),
5906         (gst_type_find_element_handle_event),
5907         (gst_type_find_element_chain):
5908         * gst/elements/gsttypefindelement.h:
5909          #153657.
5910          Filter out discont event from seekable sources when typefind
5911          asks them to seek.  Fixes typefind with demuxers for
5912          avi, asf and matroska.
5913
5914 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5915
5916         * docs/gst/gstreamer-sections.txt:
5917         * gst/gstcaps.c:
5918         * gst/gstcaps.h:
5919         * gst/gstpad.c:
5920           Revert preferred caps: (#147789)
5921
5922 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
5923
5924         * win32/dirent.c:
5925           fix a memory leak
5926
5927 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5928
5929         * configure.ac:
5930           bump for prerelease
5931
5932 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5933
5934         * docs/Makefile.am:
5935         * docs/manual/elements-api.xml:
5936           restructure so that common stuff is shown first
5937         * docs/manual/init-api.xml:
5938           convert to examples
5939         * docs/manual/manual.xml:
5940         * docs/manuals.mak:
5941         * docs/url.entities:
5942           link to API on the website, possibly override later in build
5943         * examples/manual/.cvsignore:
5944           ignore more
5945         * examples/manual/Makefile.am:
5946           add more examples
5947         * examples/manual/extract.pl:
5948           error out on failure
5949
5950 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5951
5952         * docs/gst/tmpl/gstthread.sgml:
5953         * docs/manual/init-api.xml:
5954         * examples/manual/Makefile.am:
5955           convert two code bits to examples
5956
5957 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5958
5959         * gst/gstelement.c: (gst_element_change_state):
5960           Well, actually, I was about to remove this insane assert when
5961           I noticed Wim already did that. A warning is nice so we can
5962           fix actual ugs (using --g-fatal-warnings and backtraces), so
5963           I added that instead.
5964
5965 2004-09-06  Wim Taymans  <wim@fluendo.com>
5966
5967         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
5968         (gst_element_threadsafe_properties_post_run),
5969         (gst_element_set_state), (gst_element_change_state):
5970         Added extra refcounting around various places. 
5971
5972 2004-09-06  Wim Taymans  <wim@fluendo.com>
5973
5974         * gst/gstpad.c: (gst_pad_link_call_link_functions):
5975         Fix debug info.
5976
5977 2004-09-06  Wim Taymans  <wim@fluendo.com>
5978
5979         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5980         (remove_from_group):
5981         Some more debug info.
5982
5983 2004-09-03  Wim Taymans  <wim@fluendo.com>
5984
5985         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5986         (gst_fakesrc_init), (gst_fakesrc_set_clock),
5987         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5988         (gst_fakesrc_get), (gst_fakesrc_change_state):
5989         * gst/elements/gstfakesrc.h:
5990         * gst/elements/gstidentity.c: (gst_identity_class_init),
5991         (gst_identity_init), (gst_identity_chain),
5992         (gst_identity_set_property), (gst_identity_get_property),
5993         (gst_identity_change_state):
5994         * gst/elements/gstidentity.h:
5995         Added datarate properties to limit the datarate.
5996
5997 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5998
5999         * gst/autoplug/gstspider.c: (plugin_init):
6000           don't set a rank. We don't want to autoplug by inserting spiders.
6001
6002 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6003
6004         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6005         (gst_spider_identity_plug):
6006           add a template for spider's sink
6007         * gst/gst.c: (gst_register_core_elements):
6008           queue's rank should be NULL, we don't want spider to add it.
6009
6010 2004-08-18  David Schleef  <ds@schleef.org>
6011
6012         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6013         * docs/libs/Makefile.am: same
6014         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6015         * docs/random/ds/0.9-planning: random additions
6016         * docs/random/ds/0.9-suggested-changes: same
6017         * gst/gstxml.h: remove vestigal GstXMLNs definition
6018
6019         Preferred caps: (#147789)
6020         * docs/gst/gstreamer-sections.txt: Add symbols
6021         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6022         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6023         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6024         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6025         (gst_caps_get_preferred), (gst_caps_set_preferred),
6026         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6027         (gst_caps_use_preferred): Handle caps preferences
6028         * gst/gstcaps.h: Add caps preferences
6029         * gst/gstpad.c: (gst_pad_link_get_preferred),
6030         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6031         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6032         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6033         negotiation.
6034
6035 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6036
6037         * gst/autoplug/gstspideridentity.c:
6038         (gst_spider_identity_request_new_pad):
6039         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6040         (gst_aggregator_init):
6041         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6042         (gst_fakesink_init):
6043         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6044         (gst_fakesrc_init):
6045         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6046         (gst_fdsink_init):
6047         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6048         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6049         (gst_filesink_init):
6050         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6051         (gst_filesrc_init):
6052         * gst/elements/gstidentity.c: (gst_identity_base_init),
6053         (gst_identity_init):
6054         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6055         (gst_multifilesrc_init):
6056         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6057         (gst_pipefilter_init):
6058         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6059         (gst_statistics_init):
6060         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6061         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6062           s/gst_pad_new/&_from_template/
6063           register pad templates in the base_init function
6064           add static pad template definitions
6065
6066 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6067
6068         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6069         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6070         * testsuite/refcounting/pad.c: (main):
6071         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6072           s/gst_pad_new/&_from_template/
6073           prepare deprecation of gst_pad_new
6074
6075 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6076
6077         patch by: Luca Ognibene <skaboy81@virgilio.it>
6078
6079         * gst/gstcaps.c:
6080         * gst/gstelement.c:
6081         * gst/gstpad.c:
6082         * gst/gstxml.c:
6083           fix memleaks.  Fixes #150001
6084
6085 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6086
6087         * docs/random/ds/0.9-suggested-changes:
6088           add notes - mostly about pad templates
6089
6090 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6091
6092         * win32/GStreamer.vcproj:
6093           temporary locale files are .gmo not .mo
6094
6095 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6096
6097         * configure.ac: bump nano to cvs
6098
6099 === release 0.8.5 ===
6100
6101 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6102
6103         * configure.ac:
6104           releasing 0.8.5, "Stuttgart"
6105         * NEWS:
6106         * RELEASE:
6107         * configure.ac:
6108         * docs/random/release:
6109           updates for release
6110
6111 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6112
6113         patch by: Wim Taymans (wim@fluendo.com)
6114
6115         * gst/gstbuffer.c:
6116         * gst/gstindex.h:
6117         * libs/gst/dataprotocol/dataprotocol.c:
6118           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6119
6120 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6121
6122         * Makefile.am:
6123         * win32/MANIFEST:
6124           add win32 dir to the build.  Fixes #149981.
6125
6126 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6127
6128         * configure.ac:
6129           bump libtool versioning
6130         * gst/gststructure.c:
6131           mark function as static
6132         * po/af.po:
6133         * po/az.po:
6134         * po/ca.po:
6135         * po/cs.po:
6136         * po/en_GB.po:
6137         * po/fr.po:
6138         * po/nl.po:
6139         * po/sq.po:
6140         * po/sr.po:
6141         * po/sv.po:
6142         * po/tr.po:
6143         * po/uk.po:
6144           translations update
6145         * win32/README.txt:
6146           trademark protection
6147
6148 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6149
6150         * configure.ac:
6151           fix GST_ORIGIN
6152           set GST_PACKAGE to source, and distinguish between release and other
6153         * tools/gst-inspect.c:
6154           print out plugin an element factory is part of so we see this info
6155
6156 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6157
6158         * docs/gst/gstreamer-sections.txt:
6159         * docs/gst/tmpl/gstbuffer.sgml:
6160         * docs/gst/tmpl/gstschedulerfactory.sgml:
6161           reorder docs a little, make GstBuffer's more sensible.
6162         * gst/gstbuffer.h:
6163           API: added GST_BUFFER_FLAG_DELTA_UNIT
6164         * gst/gstscheduler.c:
6165           comment API addition
6166
6167 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6168
6169         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6170           work with non-regular files that can be mmapped (like /dev/zero)
6171         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6172           get rid of typefinds that require a seek when we can't seek instead
6173           of trying them over and over again
6174         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6175           return non-zero failure value when the pipeline was interrupted or
6176           an error occurred
6177
6178 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6179
6180         * win32/config.h:
6181         * win32/GStreamer.vcproj:
6182           compile and install the locales
6183
6184 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6185
6186         * gst/gstvalue.c:
6187           fix a possible memory leak under Windows
6188
6189 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6190
6191         * win32/GStreamer.vcproj:
6192           fix a memory leak that occured under Windows
6193         * win32/gstreamer.def:
6194           add gst_scheduler_register
6195
6196 2004-08-11  Benjamin Otte  <otte@gnome.org>
6197
6198         * docs/gst/gstreamer-sections.txt:
6199         * gst/gstscheduler.c: (gst_scheduler_register):
6200         * gst/gstscheduler.h:
6201           API:
6202           add gst_scheduler_register shortcut similar to gst_element_register
6203         * gst/schedulers/entryscheduler.c: (plugin_init):
6204         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6205         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6206           use it
6207
6208 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6209
6210         * gst/gstvalue.h:
6211           fix a memory leak that occured under Windows
6212
6213 2004-08-10  Colin Walters  <walters@redhat.com>
6214
6215         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6216         Don't use O_EXCL to open temporary registry.  It will prevent
6217         registry creation if a temporary one already exists, which
6218         is unnecessary.
6219
6220 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6221
6222         * docs/gst/gstreamer-sections.txt:
6223         * docs/gst/tmpl/gstvalue.sgml:
6224           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6225
6226 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6227
6228         * win32/gstbytestream.vcproj:
6229         * win32/gstelements.vcproj:
6230         * win32/gstgetbits.vcproj:
6231         * win32/gst-inspect.vcproj:
6232         * win32/gst-launch.vcproj:
6233         * win32/gstoptimalscheduler.vcproj:
6234         * win32/GStreamer.vcproj:
6235         * win32/gst-register.vcproj:
6236         * win32/gstspider.vcproj:
6237           update the include and lib dirs to fit standard libraries as
6238           described in the Win32 manual
6239
6240 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6241
6242         * win32/config.h:
6243         * win32/gstversion.h:
6244           enable NLS again, push the version number for the coming 0.8.5 release
6245
6246 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6247
6248         * gst/gstvalue.h:
6249           export gst_type_XXX for windows DLLs
6250
6251 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6252
6253         * docs/faq/gst-uninstalled:
6254           fix PKG_CONFIG_PATH and PYTHONPATH
6255         * gst/schedulers/Makefile.am:
6256           cleanup
6257         * libs/gst/bytestream/bytestream.c:
6258           remove newline
6259         * po/LINGUAS:
6260         * po/sq.po:
6261           adding Albanian translation (Laurent Dhima)
6262         * po/cs.po:
6263           updated
6264
6265 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6266
6267         * po/ca.po:
6268         * po/sv.po:
6269           updated translations
6270
6271 2004-08-04  Benjamin Otte  <otte@gnome.org>
6272
6273         * tests/mass_elements.c: (main):
6274           allow specifying src and sink element explicitly, so I can test
6275           videotestsrc instead of fakesrc
6276
6277 2004-08-04  Benjamin Otte  <otte@gnome.org>
6278
6279         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6280         (gst_structure_id_empty_new), (gst_structure_empty_new),
6281         (gst_structure_copy):
6282           add gst_structure_id_empty_new_with_size to allow preallocating
6283           value array sizes. Use this in gst_structure_copy to get rid of
6284           reallocs.
6285           don't do quark=>string=>quark when copying structures
6286
6287 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6288
6289         * docs/manual/win32.xml:
6290         * win32/README.txt:
6291           update documentation with the clean version of dependencies
6292
6293 2004-08-03  Benjamin Otte  <otte@gnome.org>
6294
6295         * gst/schedulers/entryscheduler.c:
6296         (gst_entry_scheduler_remove_element):
6297           fix for GST_DISABLE_DEBUG
6298         * tools/gst-launch.c: (print_tag):
6299           fixes for G_DISABLE_ASSERT
6300
6301 2004-08-03  Benjamin Otte  <otte@gnome.org>
6302
6303         * gst/gst.c: (gst_register_core_elements):
6304           fix for G_DISABLE_ASSERT
6305         * gst/gstinfo.c: (__gst_in_valgrind):
6306           add for GST_DISABLE_DEBUG
6307
6308 2004-08-03  Benjamin Otte  <otte@gnome.org>
6309
6310         * gst/parse/parse.l:
6311           fix for G_DISABLE_ASSERT
6312
6313 2004-08-03  Wim Taymans  <wim@fluendo.com>
6314
6315         * gst/gstbin.c: (gst_bin_get_type),
6316         (gst_bin_child_state_change_func):
6317         * gst/gstthread.c: (gst_thread_change_state):
6318         Backported some debug logging from a reverted patch
6319         Don't try to destroy the thread twice. Added some more
6320         debugging in GstThread. Unlock and signal even if we
6321         are in the thread context.
6322
6323 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6324
6325         * po/uk.po:
6326           updated translation
6327
6328 2004-07-30  David Schleef  <ds@schleef.org>
6329
6330         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6331
6332 2004-07-29  David Schleef  <ds@schleef.org>
6333
6334         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6335         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6336
6337 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6338
6339         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6340         (gst_bin_add_func), (gst_bin_remove_func),
6341         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6342         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6343         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6344         (gst_bin_sync_children_state):
6345         * gst/gstbin.h:
6346         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6347         (gst_thread_change_state):
6348         * testsuite/states/Makefile.am:
6349           revert state change patches as agreed so we can rework them
6350           gradually
6351
6352 2004-07-29  Benjamin Otte  <otte@gnome.org>
6353
6354         * libs/gst/control/Makefile.am:
6355           link to libgstreamer (fixes Debian bug 262019, see
6356           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6357
6358 2004-07-29  Wim Taymans  <wim@fluendo.com>
6359
6360         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6361         (check_from_fraction_convert), (transform_test), (main):
6362         Make the test less pedantic about float roundoff errors.
6363
6364 2004-07-29  Benjamin Otte  <otte@gnome.org>
6365
6366         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6367         (gst_filesrc_srcpad_event):
6368           make seek events to before start/after end of file not fail, but
6369           seek to start/end instead
6370         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6371           add more output
6372
6373 2004-07-29  Benjamin Otte  <otte@gnome.org>
6374
6375         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6376           check that caps are fixed
6377         * gst/gstpad.c: (gst_pad_template_new):
6378           don't try to simplify caps, costs too much time on gst_init
6379         * gst/gstplugin.c: (gst_plugin_add_feature):
6380           G_ERROR if features are added twice
6381         * gst/gsttypefind.c: (gst_type_find_register):
6382         * gst/gstelementfactory.c: (gst_element_register):
6383           don't add features twice
6384         * docs/random/ds/0.9-suggested-changes:
6385           add note about possible gst_init optimization
6386
6387 2004-07-28  David Schleef  <ds@schleef.org>
6388
6389         * testsuite/elements/Makefile.am:
6390         * testsuite/elements/struct_i386.h:
6391         * testsuite/elements/struct_size.c: (main):  A little test
6392         to keep distcheck from working if someone changes a structure
6393         size accidentally.
6394
6395 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6396
6397         * docs/libs/Makefile.am:
6398         * docs/libs/gstreamer-libs-docs.sgml:
6399         * docs/libs/gstreamer-libs-sections.txt:
6400         * docs/libs/tmpl/gstbytestream.sgml:
6401         * docs/libs/tmpl/gstcontrol.sgml:
6402         * docs/libs/tmpl/gstdataprotocol.sgml:
6403         * docs/libs/tmpl/gstgetbits.sgml:
6404         * libs/gst/bytestream/Makefile.am:
6405         * libs/gst/bytestream/bytestream.c:
6406         * libs/gst/bytestream/bytestream.h:
6407         * libs/gst/control/Makefile.am:
6408         * libs/gst/dataprotocol/Makefile.am:
6409         * libs/gst/getbits/Makefile.am:
6410         * libs/gst/getbits/getbits.h:
6411           various doc and style fixes, adding bytestream to libs docs.
6412
6413 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6414
6415         * docs/gst/gstreamer-docs.sgml:
6416         * docs/libs/Makefile.am:
6417         * docs/libs/gstreamer-libs-docs.sgml:
6418         * docs/libs/gstreamer-libs-sections.txt:
6419         * libs/gst/control/dparam.c:
6420           more doc fixes.  gst-libs docs now build the same way as gst.
6421
6422 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6423
6424         * configure.ac:
6425         * testsuite/Makefile.am:
6426         * testsuite/bins/Makefile.am:
6427         * testsuite/caps/Makefile.am:
6428         * testsuite/cleanup/Makefile.am:
6429         * testsuite/clock/Makefile.am:
6430         * testsuite/debug/Makefile.am:
6431         * testsuite/dlopen/Makefile.am:
6432         * testsuite/dynparams/Makefile.am:
6433         * testsuite/elements/.cvsignore:
6434         * testsuite/elements/Makefile.am:
6435         * testsuite/enumcaps/Makefile.am:
6436         * testsuite/enumcaps/enumcaps.c:
6437         * testsuite/ghostpads/Makefile.am:
6438         * testsuite/indexers/Makefile.am:
6439         * testsuite/negotiation/Makefile.am:
6440         * testsuite/parse/Makefile.am:
6441         * testsuite/plugin/Makefile.am:
6442         * testsuite/refcounting/Makefile.am:
6443         * testsuite/schedulers/.cvsignore:
6444         * testsuite/states/Makefile.am:
6445         * testsuite/tags/Makefile.am:
6446         * testsuite/threads/Makefile.am:
6447           fold enumcaps into caps dir
6448           clean up Makefile.am's for testsuite
6449
6450 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6451
6452         * docs/gst/Makefile.am:
6453         * docs/libs/Makefile.am:
6454           clean up docs build.  Fixes needless rebuilding of template files.
6455
6456 2004-07-28  Wim Taymans  <wim@fluendo.com>
6457
6458         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6459         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6460         Make sure that a bin state change tries to keep the children
6461         in sync. 
6462         Added debug logging to the thread.
6463
6464 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6465
6466         * win32/GStreamer.vcproj:
6467         * win32/gstreamer.def:
6468           more exports for the plugins
6469
6470 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6471
6472         * win32/gstgetbits.vcproj:
6473         * win32/gstgetbits.def:
6474         * win32/msvc71.sln:
6475           add support for the getbits plugin
6476
6477 2004-07-27  Wim Taymans  <wim@fluendo.com>
6478
6479         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6480         (gst_value_transform_fraction_double), (_gst_value_initialize):
6481         * testsuite/caps/Makefile.am:
6482         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6483         (check_from_fraction_convert), (transform_test), (main):
6484         Added transform functions between double and fraction.
6485         Added testcase to verify transforms
6486
6487 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6488
6489         * win32/GStreamer.vcproj:
6490           rename GStreamer-0.8.lib to libgstreamer.lib
6491
6492 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6493
6494         * win32/gstelements.vcproj:
6495         * win32/gstoptimalscheduler.vcproj:
6496           fixes for the Release build
6497
6498 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6499
6500         * win32/config.h:
6501           update the version number
6502
6503 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6504
6505         * win32/GStreamer.vcproj:
6506           add gstinterface to the build
6507
6508 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6509
6510         * win32/gstreamer.def:
6511           add many definitions needed by plugins,
6512           GST_CAT_DEFAULT only available in the Debug build ?
6513
6514 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6515
6516         * gst/gstelement.c: (gst_element_set_eos_recursive):
6517           various whitespace fixes.
6518           doc fix, fixes #148497
6519
6520 2004-07-25  Benjamin Otte  <otte@gnome.org>
6521
6522         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6523           don't delay links on the sink elements, it causes unnegotiated
6524           links.
6525         * gst/elements/gsttypefindelement.c:
6526         (gst_type_find_element_base_init):
6527           add our padtemplates, we indeed do have some.
6528         * gst/elements/gsttypefindelement.c:
6529         (gst_type_find_element_handle_event),
6530         (gst_type_find_element_chain):
6531           don't push data when typefinding failed.
6532         * gst/gstpad.c: (gst_pad_link_fixate):
6533           check that no fixate function returns empty caps.
6534         * gst/gstpad.c: (gst_pad_push):
6535           check that the link is negotiated before data gets pushed.
6536         * tools/gst-register.c: (main):
6537           don't assert (fixes #148283)
6538
6539 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6540
6541         * docs/gst/gstreamer-sections.txt:
6542         * docs/gst/tmpl/gstconfig.sgml:
6543           add GST_PLUGIN_EXPORT definition
6544
6545 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6546
6547         * gst/gstplugin.h:
6548         * gst/gstconfig.h.in:
6549         * win32/gstconfig.h:
6550         * win32/gstelements.def:
6551         * win32/gstelements.vcproj:
6552         * win32/gstoptimalscheduler.def:
6553         * win32/gstoptimalscheduler.vcproj:
6554         * win32/gstspider.def:
6555         * win32/gstspider.vcproj:
6556           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6557
6558 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6559
6560         * docs/gst/gstreamer-sections.txt:
6561           remove GST_CAT_DEFAULT because the type has changed
6562
6563 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6564
6565         * win32/gstbytestream.vcproj:
6566         * win32/gstelements.vcproj:
6567         * win32/gst-inspect.vcproj:
6568         * win32/gst-launch.vcproj:
6569         * win32/gstoptimalscheduler.vcproj:
6570         * win32/GStreamer.vcproj:
6571         * win32/gst-register.vcproj:
6572         * win32/gstspider.vcproj:
6573         * win32/msvc71.sln:
6574           Copy the files where needed after building, The testsuite will be
6575           built separately
6576
6577 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6578
6579         * win32/config.h:
6580         * win32/README.txt:
6581         * docs/manual/win32.xml:
6582         Fixed the plugin and GStreamer location
6583
6584 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6585
6586         * win32/gstreamer.def:
6587         More exports for the plugins
6588
6589 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6590
6591         * gst/gstinfo.h:
6592         Marc was right, we need to export literally GST_CAT_DEFAULT
6593
6594 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6595
6596         * win32/config.h:
6597         NLS crashes in gettext, disabled until this is solved
6598
6599 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6600
6601         * win32/gst-inspect.vcproj:
6602         * win32/gst-launch.vcproj:
6603         Should use NLS when available
6604
6605 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6606
6607         * gst/registries/gstxmlregistry.c:
6608         removing the file doesn't seem to be a good idea on Linux
6609
6610 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6611
6612         * gst/registries/gstxmlregistry.c:
6613         Remove the registry before renaming the tempfile (needed for Windows)
6614
6615 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6616
6617         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6618         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6619         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6620         * gst/elements/gstmultifilesrc.h:
6621         Added newmedia property so it generates newmedia events between each
6622         file when property is set, as well as fixed eos handling
6623
6624 2004-07-22  David Schleef  <ds@schleef.org>
6625
6626         * gst/gststructure.c: (gst_structure_id_empty_new),
6627         (gst_structure_empty_new):  Set type field correctly.
6628         * gst/gststructure.h: Check type field correctly.
6629         * testsuite/caps/Makefile.am:
6630         * testsuite/caps/structure.c: (test1), (main): Add a very small
6631         test for structures.
6632
6633 2004-07-22  David Schleef  <ds@schleef.org>
6634
6635         * docs/random/ds/0.9-suggested-changes: more comments
6636         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6637
6638 2004-07-22  Benjamin Otte  <otte@gnome.org>
6639
6640         * gst/gstelementfactory.c: (gst_element_register):
6641           set the factory in the class struct, so gst_element_get_factory
6642           actually works
6643         * gst/parse/grammar.y:
6644           set element to playing when it gets unlocked as we can't rely on the
6645           bin state - all elements in the bin state might still be locked in
6646           NULL)
6647
6648 2004-07-22  Benjamin Otte  <otte@gnome.org>
6649
6650         * gst/gstelement.c: (gst_element_set_state_func):
6651           make this a static function
6652
6653 2004-07-22  Wim Taymans  <wim@fluendo.com>
6654
6655         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6656         (gst_opt_scheduler_pad_link):
6657         fix 147894-2 and the group_link problem.
6658
6659 2004-07-22  Wim Taymans  <wim@fluendo.com>
6660
6661         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6662         (handoff_identity), (main):
6663         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6664         (handoff_identity), (main):
6665         * testsuite/schedulers/Makefile.am:
6666         * testsuite/schedulers/group_link.c: (main):
6667         Show bug in scheduler when linking chain and loop based element 
6668         where the chain based element was not yet in a group.
6669
6670 2004-07-21  Benjamin Otte  <otte@gnome.org>
6671
6672         * gst/.cvsignore:
6673         * gst/autoplug/.cvsignore:
6674         * gst/elements/.cvsignore:
6675         * gst/indexers/.cvsignore:
6676         * libs/gst/bytestream/.cvsignore:
6677         * libs/gst/control/.cvsignore:
6678         * libs/gst/getbits/.cvsignore:
6679         * testsuite/states/.cvsignore:
6680         * testsuite/threads/.cvsignore:
6681           keep this up to date, since I seem to be the only one who cares
6682           about not missing files on commits (editor's note: no you don't,
6683           but feel free to change them at the time you add stuff instead
6684           of later on)
6685
6686 2004-07-21  Benjamin Otte  <otte@gnome.org>
6687
6688         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6689         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6690         (gst_bin_child_state_change_func), (set_kid_state_func),
6691         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6692           make state changes work correctly and reentrant (so removing
6693           elements from bins during state changes of bins doesn't cause
6694           segfaults or even wrong states)
6695           add debugging category and debugging output to print children states
6696         * gst/gstbin.c: (gst_bin_dispose): 
6697           add some assertion checks
6698         * gst/gstbin.h:
6699         * gst/gstbin.c: (gst_bin_sync_children_state):
6700           deprecate this function - it just does gst_bin_set_state (bin,
6701           GST_STATE (bin)) 
6702         * testsuite/threads/queue.c: (main):
6703           don't use gst_bin_sync_children_state anymore
6704         * testsuite/states/Makefile.am:
6705         * testsuite/states/bin.c:
6706           test that the state changes of bins work as expected
6707         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6708           some adjustments to change states correctly, too
6709         * gst/gstthread.c: (gst_thread_change_state):
6710           don't enable/disable "threadsafe" properties, they're unused and
6711           cause random segfaults
6712         * testsuite/threads/Makefile.am:
6713           the queue check randomly passes now, ignore it
6714
6715 2004-07-21  Benjamin Otte  <otte@gnome.org>
6716
6717         * gst/gstpad.c:
6718           check if data is NULL before outputting debug info. (fixes #145100)
6719
6720 2004-07-21  Benjamin Otte  <otte@gnome.org>
6721
6722         * gst/schedulers/entryscheduler.c:
6723         (gst_entry_scheduler_loop_wrapper),
6724         (gst_entry_scheduler_chain_wrapper),
6725         (gst_entry_scheduler_get_wrapper):
6726           reset the state when the cothread starts, so we don't get assertion
6727           failures on restarting of cothreads
6728
6729 2004-07-20  Benjamin Otte  <otte@gnome.org>
6730
6731         * gst/gstelement.c: (gst_element_link_pads_filtered):
6732           use correct sinkpad, if only sinkpad is specified, but not srcpad
6733           (fixes #147889)
6734         * gst/gstelement.c: (gst_element_set_state_func),
6735         (gst_element_change_state): ref/unref the element, signal handlers
6736         could get rid of the element otherwise
6737
6738 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6739
6740         * docs/random/ds/0.9-suggested-changes:
6741           Make note about renaming fixed-list to array.
6742         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6743         (_gst_value_initialize):
6744           Add array intersections.
6745         * testsuite/caps/intersect2.c: (main):
6746           Add test for array intersections.
6747
6748 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6749
6750         * configure.ac: back to cvs
6751
6752 === release 0.8.4 ===
6753
6754 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6755
6756         * configure.ac:
6757           releasing 0.8.4, "Paella"
6758           bump libtool versioning
6759
6760 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6761
6762         * po/LINGUAS:
6763         * po/ca.po:
6764           adding Catalan translation (Jordi Mallach)
6765
6766 2004-07-20  Wim Taymans  <wim@fluendo.com>
6767
6768         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6769         (handoff_identity), (main):
6770         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6771         (handoff_identity), (main):
6772         * testsuite/schedulers/Makefile.am:
6773         Added failing testcase for variant of #147894
6774
6775 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6776
6777         patch by: David Moore
6778
6779         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6780         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
6781         (group_migrate_connected):
6782         * testsuite/schedulers/Makefile.am:
6783           fix for #142813 (Deadlock in optimal scheduler)
6784
6785 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6786
6787         patch by: Wim Taymans
6788
6789         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6790         (gst_opt_scheduler_schedule_run_queue),
6791         (gst_opt_scheduler_get_wrapper), (get_group),
6792         (group_migrate_connected):
6793         * testsuite/schedulers/Makefile.am:
6794           fix for #147819 (Add some checks in the opt scheduler)
6795
6796 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6797
6798         patch by: Benjamin Otte
6799
6800         * gst/gstelementfactory.c: (__gst_element_details_set):
6801           fix for #147929: running gst-register in non-utf8 locale can cause
6802           invalid registry
6803
6804 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6805
6806         patch by: Wim Taymans
6807
6808         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
6809         (group_has_element), (element_get_reachables_func),
6810         (group_migrate_connected):
6811           fix for #147894 (opt scheduler decoupled elements mismanagement)
6812         * testsuite/schedulers/Makefile.am:
6813           testsuite app now passes
6814
6815 2004-07-19  Wim Taymans  <wim@fluendo.com>
6816
6817         * testsuite/schedulers/147819.c: (handoff_identity1),
6818         (handoff_identity2), (main):
6819         * testsuite/schedulers/Makefile.am:
6820         Added testcase for bug 147819
6821
6822 2004-07-19  Wim Taymans  <wim@fluendo.com>
6823
6824         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6825         (handoff_identity), (main):
6826         * testsuite/schedulers/Makefile.am:
6827         Added testcase for bug 147894
6828
6829 2004-07-16  Wim Taymans  <wim@fluendo.com>
6830
6831         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
6832         * testsuite/schedulers/142183.c: (handoff_identity), (main):
6833         * testsuite/schedulers/Makefile.am:
6834         Added testsuite for bug 142183 in its two incarnations. Refcount
6835         is not increased for scheduled elements and threadsafe properties
6836         mutexes are not properly unlocked.
6837
6838 2004-07-16  Wim Taymans  <wim@fluendo.com>
6839
6840         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
6841         (create_chain), (destroy_chain), (create_group), (destroy_group),
6842         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
6843         (group_dec_link), (gst_opt_scheduler_pad_link),
6844         (group_inc_links_for_element), (group_migrate_connected):
6845         Call group_inc_link with the proper src->sink ordering -- 
6846         break this, and we break sort_chain. patch from wingo for bug
6847         147713.
6848         Partially revert patch 1.89. When adding a loop based element to 
6849         the scheduler, the links to other groups are automatically followed
6850         and incremented. This should not happen because the bin will call
6851         pad_link explicitly for those connection, resulting in them counted 
6852         twice. Results in assertion failure on pipeline cleanup.
6853
6854 2004-07-16  Wim Taymans  <wim@fluendo.com>
6855
6856         * testsuite/schedulers/143777-2.c: (main):
6857         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
6858         (main):
6859         * testsuite/schedulers/Makefile.am:
6860         Added cleanup code to testcase 143777-2.
6861         Added testcase to show bug 147713, does not really show the
6862         deadlock as I can't figure out how to trigger it, but it does
6863         demonstrate bad ordering in the scheduler.
6864
6865 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6866
6867         * gst/gstvalue.c: (gst_value_deserialize_fraction):
6868           change strndup to g_strndup.  Fixes #147707
6869
6870 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6871
6872         * po/af.po:
6873         * po/az.po:
6874         * po/cs.po:
6875         * po/en_GB.po:
6876         * po/fr.po:
6877         * po/nl.po:
6878         * po/sr.po:
6879         * po/sv.po:
6880         * po/tr.po:
6881         * po/uk.po:
6882           updated translations
6883
6884 2004-07-16  Benjamin Otte  <otte@gnome.org>
6885
6886         * gst/gstvalue.c: (gst_greatest_common_divisor):
6887           use ints and return ints, fractions only use ints, too, so this
6888           avoids accidently casting multiplications to unsigned
6889         (gst_value_lcopy_fraction): it's ints, not uint32
6890         (gst_value_set_fraction): disallow minint, multiplying and negation
6891           are broken with it
6892         (gst_value_fraction_multiply): fix to make large numbers work and get
6893         rid of the assumption that the multiplication of two ints fits an
6894         int64 - dunno if that's true for all systems
6895         * testsuite/caps/Makefile.am:
6896         * testsuite/caps/fraction-multiply-and-zero.c:
6897         (check_multiplication), (check_equal), (zero_test), (main):
6898           add tests for all the stuff above
6899         * testsuite/caps/value_compare.c: (test1):
6900           fix comment
6901         * tests/.cvsignore:
6902         * testsuite/caps/.cvsignore:
6903         * testsuite/debug/.cvsignore:
6904         * testsuite/dlopen/.cvsignore:
6905         * testsuite/states/.cvsignore:
6906           get up to date
6907
6908 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6909
6910         * docs/manual/bins-api.xml:
6911         * docs/manual/factories.xml:
6912         * docs/manual/helloworld.xml:
6913         * docs/manual/links-api.xml: 
6914           fixes for out of date info, incorrect info and grammar
6915
6916 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6917
6918         * docs/manual/pads.xml:
6919         * docs/manual/pads-api.xml: grammar fix
6920
6921 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6922
6923         * docs/manual/pads-api.xml: typo + grammar fix
6924
6925 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6926
6927         * docs/gst/gstreamer-sections.txt:
6928           add new symbols
6929         * docs/gst/tmpl/gstelement.sgml:
6930         * docs/gst/tmpl/gstpad.sgml:
6931         * docs/gst/tmpl/gsttypes.sgml:
6932         * docs/gst/tmpl/gstvalue.sgml:
6933           update docs
6934         * gst/gststructure.c: (gst_structure_set_valist),
6935         (gst_structure_from_abbr), (gst_structure_to_abbr):
6936         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
6937         (gst_greatest_common_divisor), (gst_value_init_fraction),
6938         (gst_value_copy_fraction), (gst_value_collect_fraction),
6939         (gst_value_lcopy_fraction), (gst_value_set_fraction),
6940         (gst_value_get_fraction_numerator),
6941         (gst_value_get_fraction_denominator),
6942         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
6943         (gst_value_deserialize_fraction),
6944         (gst_value_transform_fraction_string),
6945         (gst_value_transform_string_fraction),
6946         (gst_value_compare_fraction), (_gst_value_initialize):
6947         * gst/gstvalue.h:
6948           adding GstFraction GValue type, get/set, and multiply
6949         * testsuite/caps/Makefile.am:
6950         * testsuite/caps/fraction.c: (test), (main):
6951         * testsuite/caps/string-conversions.c: (main):
6952         * testsuite/caps/value_compare.c: (test1), (main):
6953           add regression tests for GstFraction
6954
6955 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6956         
6957         * docs/manual/init-api.xml: Grammar fix
6958
6959 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6960
6961         * docs/manual/states.xml: Fix inconsistent information
6962
6963 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6964
6965         * gst/gstelement.c: (gst_element_set_state):
6966         * gst/gstpad.c: (gst_pad_try_set_caps):
6967         * gst/gststructure.c:
6968         * gst/gstthread.c: (gst_thread_child_state_change):
6969         * gst/gstvalue.c: (gst_value_compare_double):
6970         * gst/gstvalue.h:
6971         * testsuite/parse/parse1.c: (main):
6972           debugging additions and style cleanups
6973
6974 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6975
6976         * docs/manual/states.xml: Grammar fix
6977
6978 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6979
6980         * docs/manual/pads.xml: Grammar fix
6981
6982 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6983
6984         * docs/manual/elements.xml: Fixed image reference
6985
6986 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6987
6988         * docs/manual/goals.xml: Grammar fix
6989
6990 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6991
6992         * docs/manual/motivation.xml:
6993         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
6994
6995 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6996
6997         * docs/manual/motivation.xml: Fix spelling
6998
6999 2004-07-15  Benjamin Otte  <otte@gnome.org>
7000
7001         * gst/gstelement.h: 
7002           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7003           strings.
7004         * gst/gstelement.c (gst_element_class_init):
7005           GError's are boxed, not objects
7006         * gst/gstmarshal.list:
7007           update list for the fixed error signal
7008
7009 2004-07-14  Andy Wingo  <wingo@pobox.com>
7010
7011         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7012         there all along, but the function wasn't. (guile-gstreamer's build
7013         system uses the address of the function -- I wasn't actually
7014         trying to use this.)
7015
7016 2004-07-14  Andy Wingo  <wingo@pobox.com>
7017
7018         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7019         as gst_pad_proxy_pad_link) just link to every other pad when they
7020         are called. In the case where the graph has cycles, this will mean
7021         that a call to try_set_caps will recurse. Allow this recursion
7022         and return OK, while we wait for the first try_set_caps to give a
7023         proper return value.
7024         (gst_pad_link_call_link_functions): Since this function is the
7025         only one to set the NEGOTIATING flag on a pad, if the flag is set
7026         it means that the link functions have indirectly recursed. If this
7027         happens, error out to avoid infinite recursion and an eventual
7028         SEGV.
7029         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7030         (gst_pad_proxy_getcaps): Intersect the result with the template
7031         caps to ensure that the return value is valid.
7032
7033 2004-07-14  Andy Wingo  <wingo@pobox.com>
7034
7035         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7036         one refcount, the calling function is the owner of the buffer.
7037
7038 2004-07-14  Wim Taymans  <wim@fluendo.com>
7039
7040         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7041         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7042         Fix stupid warning when an element is to be migrated but
7043         is already migrated.
7044
7045 2004-07-14  Wim Taymans  <wim@fluendo.com>
7046
7047         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7048         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7049         Make sure that a single non-loop-based element does not 
7050         end up in a group. This fixes the testsuite again.
7051
7052 2004-07-14  Wim Taymans  <wim@fluendo.com>
7053
7054         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7055         (add_to_group), (merge_groups), (schedule_group),
7056         (gst_opt_scheduler_get_wrapper), (group_elements),
7057         (group_dec_link), (gst_opt_scheduler_pad_link),
7058         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7059         (gst_opt_scheduler_iterate):
7060         move isolated groups to a new chain.
7061         Emit a warning instead of segfaulting in some error cases.
7062         Fix a bug where the link count between groups was not calculated 
7063         correctly. Fixes #144510.
7064
7065 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7066         * gst/elements/gstfilesrc.c:
7067           Binary files support under Windows now OK
7068       
7069 2004-07-13  Benjamin Otte  <otte@gnome.org>
7070
7071           compatibility fixes for Solaris 8/gcc 2.95
7072         * configure.ac:
7073           include libintl libs in LDFLAGS
7074         * gstvalue.c (gst_value_deserialize_buffer):
7075           cast isxdigit stuff to int to silence compiler warning
7076
7077 2004-07-12  Benjamin Otte  <otte@gnome.org>
7078
7079         * gst/gsttypes.h:
7080           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7081           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7082           just causes support madness
7083         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7084           make it work without this
7085         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7086         (gst_file_index_commit):
7087           glib IO channels don't want binary mode
7088         * testsuite/bytestream/filepadsink.c: (main):
7089         * testsuite/bytestream/test1.c: (read_param_file):
7090           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7091
7092 2004-07-12  Benjamin Otte  <otte@gnome.org>
7093
7094         * gst/gstelement.c: (gst_element_class_init),
7095         (gst_element_set_state), (gst_element_set_state_func):
7096           virutalize gst_element_set_state, use set_state member in class
7097           struct that was already added in 0.7 for this.
7098         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7099         (gst_bin_change_state):
7100           make gst_bin_foreach works similar to other foreach functions, plug
7101           memleaks in it. Make functions using it work with the new approach.
7102           Document gst_bin_foreach, so it can be exported if we want to
7103         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7104           use virtualized set_state to make set_state on bins set the state of
7105           all its children.
7106
7107 2004-07-12  Benjamin Otte  <otte@gnome.org>
7108
7109         * configure.ac:
7110           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7111           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7112         * gst/gstpad.c: (gst_pad_alloc_buffer):
7113           allow buffer_alloc functions to return NULL and allocate a normal
7114           buffer in that case
7115
7116 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7117         * gst/elements/gstfilesink.c:
7118         * gst/elements/gstfilesrc.c:
7119         * gst/indexers/gstfileindex.c:
7120         * gst/gsttypes.h:
7121         * testsuite/bytestream/filepadsink.c:
7122         * testsuite/bytestream/test1.c:
7123           Handle binary files under Windows
7124
7125 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7126         * docs/manual/win32.xml:
7127         * win32/config.h:
7128         * win32/gst-register.vcproj:
7129         * win32/gstreamer.def:
7130           Update to another gettext public build
7131
7132 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7133         * gst/gstplugin.c:
7134           Fix an impossible C syntax
7135         * win32/config.h:
7136           Disable i18n under Windows for the moment
7137         * win32/gst-register.vcproj:
7138           Use this configuration
7139
7140 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7141         * docs/manual/quotes.xml:
7142           Keep the quotes file alive
7143         * docs/random/ds/0.9-suggested-changes:
7144           Add the suggestion of including a 'rowstride' as part of video
7145           format caps
7146
7147 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7148
7149         * gst/gstelement.c: (gst_element_set_state),
7150         (gst_element_change_state):
7151           d'oh.  Set PENDING state correctly before forcing bin to change.
7152         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7153         (gst_structure_parse_fixed_list):
7154         * gst/schedulers/gstoptimalscheduler.c:
7155         (gst_opt_scheduler_state_transition):
7156         * testsuite/states/parent.c: (main):
7157           remove comment now that it's fixed.
7158
7159 2004-07-11  Benjamin Otte  <otte@gnome.org>
7160
7161         * gst/gstclock.h:
7162           GST_SECOND shouldn't cause a conversion to unsigned.
7163         * testsuite/clock/.cvsignore:
7164         * testsuite/clock/Makefile.am:
7165         * testsuite/clock/signedness.c: (main):
7166           make sure it never will again
7167
7168 2004-07-11  Andy Wingo  <wingo@pobox.com>
7169
7170         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7171         whose state is higher than the bin state, raise the bin state to
7172         ensure that bin state := highest child state.
7173         
7174 2004-07-11  Andy Wingo  <wingo@pobox.com>
7175
7176         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7177         procedure on the children of a bin. Assumes that the procedure can
7178         change the set of children.
7179         (set_kid_state_func): New static function.
7180         (gst_bin_change_state): Use gst_bin_foreach to call
7181         set_kid_state_func. Fixes a bug: if a child had a state-change
7182         handler that removes it from the bin, there would be a segfault.
7183         Hopefully it should also work in the case where the state-change
7184         handler on one child adds or removes other children. In any case,
7185         fixes should go to gst_bin_foreach.
7186
7187 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7188
7189         * gst/gstelement.c: (gst_element_set_state):
7190           compatibility fix for latest plugins release.  Change loop back
7191           to while {}
7192
7193 2004-07-09  Wim Taymans  <wim@fluendo.com>
7194
7195         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7196         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7197         (gst_thread_main_loop):
7198         Since remove is virtual in GstBin we must not assume the 
7199         elements GList to have anothing useful.
7200         Add some more logging to GstThread and be a bit more paranoid
7201         when resetting the scheduler.
7202         Set the state of the bin to NULL before removing the children.
7203
7204 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7205
7206         * testsuite/threads/Makefile.am:
7207         * testsuite/threads/threadg.c:
7208           added test to check if problem when removing all elements from a
7209           GstThread before setting GstThread state to NULL
7210
7211 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7212
7213         * docs/gst/tmpl/gstelement.sgml:
7214         * docs/gst/tmpl/gsttypes.sgml:
7215         * gst/gstbin.c: (gst_bin_change_state):
7216         * gst/gstelement.c: (gst_element_set_state),
7217         (gst_element_change_state):
7218           rework so that for bins we try to set the state on all children
7219           as well even if the bin is in the correct state already.
7220           change while to do so at least one iteration is done.
7221           For regular elements, we fall back to the previous behaviour for
7222           now since we first need a new plugins release.
7223         * testsuite/states/parent.c: (main):
7224           test for this case
7225           Fixes #123774
7226
7227 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7228
7229         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7230         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7231         (gst_queue_release_locks), (gst_queue_change_state),
7232         (gst_queue_set_property):
7233           add proper lock debugging.  Change dispose to finalize, since
7234           we're freeing mutexes and other stuff which should happen only once.
7235
7236 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7237
7238         * docs/gst/tmpl/gstelement.sgml:
7239         * docs/gst/tmpl/gstplugin.sgml:
7240         * docs/gst/tmpl/gsttypes.sgml:
7241         * docs/pwg/building-state.xml:
7242         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7243         * gst/gstelement.c: (gst_element_change_state):
7244         * gst/gstthread.c: (gst_thread_change_state):
7245           catch wrong state changes in element base class.
7246
7247 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7248
7249         * gst/gstinfo.h:
7250           clean up layout a little.
7251
7252 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7253
7254         * configure.ac:
7255         * testsuite/Makefile.am:
7256         * testsuite/states/Makefile.am:
7257         * testsuite/states/parent.c: (main):
7258           re-enable states testsuite dir.  Add test for state changes and
7259           parent behaviour
7260
7261 2004-07-09  Wim Taymans  <wim@fluendo.com>
7262
7263         * gst/schedulers/gstoptimalscheduler.c:
7264         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7265         (element_get_reachables_func), (element_get_reachables),
7266         (debug_element), (rechain_group), (group_migrate_connected),
7267         (gst_opt_scheduler_pad_unlink):
7268         Do not try to migrate decoupled elements to a new group since
7269         they are not added to groups.
7270
7271 2004-07-08  Benjamin Otte  <otte@gnome.org>
7272
7273         * gst/gstelement.c: (gst_element_error_func):
7274           make reentrant (= allow removing elements in error handler)
7275
7276 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7277
7278         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7279         (gst_pad_send_event), (gst_pad_call_chain_function):
7280           events sent to elements below PAUSED cannot be handled, so
7281           don't try to
7282
7283 2004-07-08  Wim Taymans  <wim@fluendo.com>
7284
7285         * gst/schedulers/gstoptimalscheduler.c:
7286         (chain_recursively_migrate_group), (create_group),
7287         (schedule_group), (gst_opt_scheduler_pad_link),
7288         (group_elements_set_visited), (element_get_reachables_func),
7289         (element_get_reachables), (group_can_reach_group), (debug_element),
7290         (rechain_group), (group_migrate_connected),
7291         (gst_opt_scheduler_pad_unlink):
7292         * testsuite/schedulers/Makefile.am:
7293         Implemented group splitting and rechaining.
7294         Fixes 143777 and 143777-2 in the testsuite.
7295
7296 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7297
7298         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7299           extra debugging
7300         * gst/gstevent.h:
7301         * gst/gstinfo.c: (gst_debug_log_default):
7302           print time nicely.  add thread pointer until someone figures out
7303           a completely portable way of getting at thread id's.
7304         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7305         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7306         (gst_pad_call_chain_function):
7307           extra debugging
7308         * gst/schedulers/gstoptimalscheduler.c:
7309         (get_group_schedule_function), (loop_group_schedule_function),
7310         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7311         (pad_clear_queued), (gst_opt_scheduler_iterate):
7312           rename BUFPEN and friends to DATAPEN since that's what they are.
7313
7314 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7315
7316         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7317         * gst/gstbuffer.h:
7318         * gst/gstpad.c:
7319           cleanups and debugging
7320
7321 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7322
7323         * configure.ac:
7324         * gst/gstvalue.c: (gst_value_compare_enum),
7325         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7326         (gst_value_can_compare), (gst_value_compare):
7327         * testsuite/Makefile.am:
7328         * testsuite/enumcaps/Makefile.am:
7329         * testsuite/enumcaps/enumcaps.c:
7330           Fix enum serialization, deserialization, comparison in caps, add
7331           a test to ensure that this continues working in the future.
7332
7333 2004-07-06  David Schleef  <ds@schleef.org>
7334
7335         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7336         Fix memleak.
7337
7338 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7339
7340         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7341         * gst/gstplugin.h:
7342         * gst/registries/gstxmlregistry.c:
7343         (plugin_times_older_than_recurse), (plugin_times_older_than),
7344         (gst_xml_registry_parse_padtemplate):
7345           only rebuild registry when actual plugins have a newer time than
7346           the registry.  Fixes #145520
7347
7348 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7349
7350         * docs/manual/manual.xml:
7351         * docs/manual/win32.xml:
7352           add chapter on win32 building.  fixes #142422
7353
7354 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7355
7356         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7357
7358         * gst/autoplug/gstspider.c: (gst_spider_init),
7359         (gst_spider_dispose):
7360           fix spider memleaks.  fixes #137863
7361
7362 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7363
7364         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7365
7366         * gst/schedulers/gstoptimalscheduler.c:
7367         (gst_opt_scheduler_pad_unlink):
7368           fix SIGBUS error, fixes #145338
7369
7370 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7371
7372         * gst/gstobject.c: (gst_object_replace):
7373         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7374         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7375           clean up clock lifecycle.  Fixes #109831
7376
7377 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7378
7379         * po/LINGUAS:
7380         * po/cs.po:
7381           added Czech translation (Miloslav Trmac)
7382
7383 2004-07-04  David Schleef  <ds@schleef.org>
7384
7385         * tools/Makefile.am:
7386         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7387
7388 2004-07-04  David Schleef  <ds@schleef.org>
7389
7390         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7391
7392 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7393
7394         * gst/gstbin.c: (gst_bin_restore_thyself):
7395           chain to parent restore so the bins get restored correctly
7396           in the editor
7397
7398 2004-07-03  David Schleef  <ds@schleef.org>
7399
7400         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7401         Actually do something in these functions, like before the big
7402         caps change.  (bug #145137)
7403
7404 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7405
7406         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7407         (gst_element_get_compatible_pad_filtered):
7408         * gst/gstthread.c: (gst_thread_main_loop):
7409           more debugging
7410
7411 2004-07-02  David Schleef  <ds@schleef.org>
7412
7413         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7414         * gst/gstobject.h:
7415         * gst/gstparse.h:
7416         * gst/gsttrace.h:
7417         * gst/gstxml.h:
7418
7419 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7420
7421         * gst/gstpad.c: (gst_pad_check_schedulers),
7422         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7423         (gst_pad_link_prepare):
7424           revert until testsuite is fixed
7425
7426 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7427
7428         * testsuite/Makefile.am:
7429         * testsuite/caps/filtercaps.c: (main):
7430         * testsuite/clock/clock1.c: (main):
7431         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7432           fix some more tests
7433
7434 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7435
7436         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7437         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7438         * testsuite/cleanup/cleanup4.c: (main):
7439           fix testsuite
7440
7441 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7442
7443         * libs/gst/control/control.c:
7444         * libs/gst/control/dparam.c:
7445         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7446         * libs/gst/control/dparammanager.c:
7447         * libs/gst/control/dparammanager.h:
7448         * testsuite/dynparams/Makefile.am:
7449         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7450         (gst_dptest_change_state), (gst_dptest_chain), (main):
7451           fix testcase for dparams
7452           add debugging category
7453
7454 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7455
7456         * testsuite/Rules:
7457           change path
7458
7459 2004-07-02  Benjamin Otte  <otte@gnome.org>
7460
7461         * tests/.cvsignore:
7462         * tests/Makefile.am:
7463         * tests/mass_elements.c: (gst_get_current_time), (main):
7464           add simple benchmark to test various speeds of fakesrc ! identity !
7465           identity ! ... ! fakesink.
7466           Usage: mass_elements [num_identities] [num_buffers]
7467           If not specified they default to 1000.
7468
7469 2004-07-02  Benjamin Otte  <otte@gnome.org>
7470
7471         * gst/gstpad.c: (gst_pad_check_schedulers),
7472         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7473         (gst_pad_link_prepare):
7474           check that pads that get linked belong to the same manager. The old
7475           code allowed linking elements before putting them into bins, so it
7476           worked to link them and then put them in different threads, which
7477           lead to weird behaviour.
7478           Since this effectively disallows linking elements before putting
7479           them in a bin, some applications might not work after this and error
7480           out. If these applications are too critical, we might need to revert
7481           that patch. Please test this before the next release...
7482
7483 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7484
7485         * gst/gstpad.c: (gst_pad_get_caps):
7486           throw an error if the getcaps function does not return a subset of
7487           the template caps.
7488         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7489           make disconts without position info an error in debugging
7490         * tests/spidey_bench.c: (handoff), (main):
7491           don't count first try when averaging
7492
7493 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7494
7495         * gst/gstplugin.c: (gst_plugin_load_file):
7496           figure out problem with dynamic test
7497
7498 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7499
7500         * docs/gst/Makefile.am:
7501           fix docs build
7502
7503 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7504
7505         * po/POTFILES.in:
7506         * po/af.po:
7507         * po/az.po:
7508         * po/en_GB.po:
7509         * po/fr.po:
7510         * po/nl.po:
7511         * po/sr.po:
7512         * po/sv.po:
7513         * po/tr.po:
7514         * po/uk.po:
7515         * tools/gst-register.c: (plugin_added_func), (main):
7516           i18n-ize -register, fix plural
7517
7518 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7519
7520         * gst/elements/gstidentity.c: (gst_identity_class_init),
7521         (gst_identity_init), (gst_identity_chain),
7522         (gst_identity_set_property), (gst_identity_get_property):
7523         * gst/elements/gstidentity.h:
7524           check for perfect stream
7525
7526 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7527
7528         * gst/elements/gstidentity.c: (gst_identity_chain):
7529           print offset_end
7530
7531 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7532
7533         * docs/gst/Makefile.am:
7534         * docs/gst/gstreamer-docs.sgml:
7535           doc fixes
7536
7537 2004-06-24  David Schleef  <ds@schleef.org>
7538
7539         * autogen.sh:  Remove call to env, since the buildbot isn't
7540         broken anymore.
7541
7542 2004-06-24  Wim Taymans  <wim@fluendo.com>
7543
7544         * gst/elements/Makefile.am:
7545         * gst/elements/gstelements.c:
7546         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7547         (gst_multifdsink_class_init), (gst_multifdsink_init),
7548         (gst_multifdsink_add), (gst_multifdsink_remove),
7549         (gst_multifdsink_clear), (gst_multifdsink_chain),
7550         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7551         * gst/elements/gstmultifdsink.h:
7552         Added an element that writes to multiple filedescriptors at once.
7553
7554 2004-06-24  Benjamin Otte  <otte@gnome.org>
7555
7556         * gst/parse/grammar.y:
7557           don't try to link elements before they have been added to bins
7558
7559 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7560
7561         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7562         (gst_file_pad_get_length):
7563         * libs/gst/bytestream/filepad.h:
7564           add 2 new functions
7565
7566 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7567
7568         * docs/gst/gstreamer-sections.txt:
7569         remove from docs, the define that Benjamin removed from gstelement.h
7570
7571 2004-06-22  Benjamin Otte  <otte@gnome.org>
7572
7573         * gst/gstelement.h:
7574           remove define that referenced a nonexisting GstElement struct member
7575
7576 2004-06-20  Benjamin Otte  <otte@gnome.org>
7577
7578         * gst/gstdata.c: (gst_data_is_writable):
7579           whoops, return values were wrong, so writable data was marked as
7580           non-writable and vice versa. (fixes #143953, spotted by Francis
7581           Labonte)
7582           Shows how rarely we need to copy data ;)
7583
7584 2004-06-20  Benjamin Otte  <otte@gnome.org>
7585
7586         * testsuite/schedulers/.cvsignore:
7587         * testsuite/schedulers/Makefile.am:
7588         * testsuite/schedulers/143777-2.c: (main):
7589           add test for opt breakage in bug #143777
7590
7591 2004-06-20  Benjamin Otte  <otte@gnome.org>
7592
7593         * gst/gstpad.c: (gst_pad_call_chain_function):
7594           check for if we were unlinked while inside the chainfunction (fixes
7595           entrygthread having issues with #143777)
7596         * testsuite/schedulers/143777.c: (main):
7597         * testsuite/schedulers/Makefile.am:
7598           add a test for that fix
7599
7600 2004-06-20  Benjamin Otte  <otte@gnome.org>
7601
7602         * gst/gstvalue.c: (gst_value_set_int_range):
7603           test that start is smaller then end
7604         * libs/gst/bytestream/Makefile.am:
7605         * libs/gst/bytestream/filepad.c: 
7606         * libs/gst/bytestream/filepad.h:
7607           add GstFilePad - a pad that behaves like a FILE*
7608         * testsuite/bytestream/.cvsignore:
7609         * testsuite/bytestream/Makefile.am:
7610         * testsuite/bytestream/filepadsink.c: 
7611           test for the GstFilePad
7612
7613 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7614
7615         * gst/elements/gstidentity.c: (gst_identity_class_init),
7616         (gst_identity_init), (gst_identity_set_clock),
7617         (gst_identity_chain), (gst_identity_set_property),
7618         (gst_identity_get_property):
7619         * gst/elements/gstidentity.h:
7620         * gst/gstclock.c: (gst_clock_id_wait):
7621           add a "sync" property to sync to the clock
7622
7623 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7624
7625         * gst/gstelementfactory.c: (gst_element_factory_create):
7626           make the freakin "elementfactory bla has no type" message more
7627           useful. So we actually can do something when someone shows up
7628           complaining about it.
7629
7630 2004-06-15  Johan Dahlin  <johan@gnome.org>
7631
7632         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7633         found. This matches the old behavior better. Thanks to Thomas for
7634         pointing out.
7635
7636 2004-06-14  David Schleef  <ds@schleef.org>
7637
7638         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7639         -fomit-frame-pointer.  Appears to generate correct code in
7640         other cases as well.
7641
7642 2004-06-14  Johan Dahlin  <johan@gnome.org>
7643
7644         * tools/gst-inspect.c (main): Add two new command line options: -a
7645         to print all elements and -n to print the name on each line. Also
7646         fix some error reporting.
7647         (main): Simplify, remove -n and always print names if -a is specified
7648
7649 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7650
7651         * win32/gstconfig.h:
7652         * win32/GSTreamer.vcproj:
7653         * win32/Makefile:
7654         * gst/gstconfig.h.in:
7655         * gst/gst.h:
7656         * gst/gstbin.h:
7657         * gst/gstelement.h:
7658         * gst/gstevent.h:
7659         * gst/gstobject.h:
7660         * gst/gstpad.h:
7661         * docs/gst/gstreamer-sections.txt:
7662         * docs/gst/tmpl/gstconfig.sgml:
7663           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7664
7665 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7666         * docs/gst/gstreamer-sections.txt:
7667         * docs/gst/tmpl/gstconfig.sgml:
7668         Add the GSTREAMER_EXPORT macro to the docs
7669
7670 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7671
7672         * tools/gst-compprep.c: (handle_xmlerror), (main):
7673         Add a check for the version that introduced SetStructuredError to fix
7674         the build on FC1
7675
7676 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7677
7678         * win32/msvc71.sln:
7679         * win32/testsuite/:
7680           prepare to compile the testsuite with MSVC
7681
7682 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7683
7684         * docs/manual/win32.xml:
7685           attempt to transform the Win32 README into an XML doc
7686
7687 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7688
7689         * gst/gst.c:
7690         * gst/gstbin.*:
7691         * gst/config.h.in:
7692         * gst/gstelement.*:
7693         * gst/gstevent.h:
7694         * gst/gstobject.*:
7695         * gst/gstpad.h:
7696         * tools/gst-register.c:
7697         * win32/gstreamer.def:
7698           extern symbols are now exported for the Windows DLL
7699
7700 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7701
7702         * gst/gstinfo.h:
7703           fix a problem to enable/disable DEBUG under MSVC
7704
7705 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7706
7707         * win32/:
7708           enable more debug code in DEBUG build
7709
7710 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7711
7712         * win32/config.h:
7713         * gst/gst-i18n-app.h:
7714           enable NLS under Windows
7715
7716 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7717         * tools/gst-compprep.c: (handle_xmlerror), (main):
7718           Make an error that baffled me a bit clearer
7719
7720 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7721
7722         * gst/gstqueue.c:
7723           don't use g_queue_get_length () because it's 2.4, use ->length
7724
7725 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7726
7727         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7728
7729         * tools/gst-inspect.c: (print_signal_info):
7730           don't free random data twice. (fixes #144185)
7731
7732 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7733
7734         * gst/gstqueue.c:
7735         * gst/gstqueue.h:
7736           fix removing from the wrong queue on event timeout
7737           fix disposing of the event queue by casting correctly
7738           add mutexes for handling the event queue
7739           someone was sleeping when fixing queue last time around :)
7740
7741 2004-06-10  Johan Dahlin  <johan@gnome.org>
7742
7743         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7744         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7745
7746 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7747
7748         * docs/random/gdp:
7749         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7750         * libs/gst/dataprotocol/dataprotocol.c:
7751         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7752         (gst_dp_buffer_from_header):
7753         * libs/gst/dataprotocol/dataprotocol.h:
7754         * libs/gst/dataprotocol/dp-private.h:
7755           rev version to 0.1, add buffer flags and copy them
7756
7757 2004-06-09  Johan Dahlin  <johan@gnome.org>
7758
7759         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
7760         the flags from the buffer we're copying.
7761
7762 2004-06-09  Wim Taymans  <wim@fluendo.com>
7763
7764         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
7765         * gst/elements/gstidentity.c: (gst_identity_init),
7766         (gst_identity_chain):
7767         Print more buffer info in fakesink.
7768         Make identity output similar to fakesink.
7769
7770 2004-06-07  Daniel Gazard  <dany42@free.fr>
7771
7772         reviewed by Benjamin Otte  <otte@gnome.org>
7773
7774         * configure.ac:
7775           fix cross compiling not working. (fixes #143741)
7776
7777 2004-06-07  Benjamin Otte  <otte@gnome.org>
7778
7779         * gst/gstelement.c: (gst_element_set_time_delay):
7780           add failure check
7781         * gst/gstinfo.h:
7782           put brackets around macro arguments of GST_TIME_ARGS, add note to
7783           move it to correct header in 0.9
7784
7785 2004-06-07  Benjamin Otte  <otte@gnome.org>
7786
7787         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
7788         (gst_file_index_load), (_file_index_id_save_entries),
7789         (gst_file_index_commit), (gst_file_index_add_association),
7790         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
7791         (gst_file_index_plugin_init):
7792           make debugging use a default category
7793
7794 2004-06-06  David Moore  <dcm@acm.org>
7795
7796         reviewed by Benjamin Otte  <otte@gnome.org>
7797
7798         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
7799         (gst_fdsrc_change_state):
7800           reset offset counter when going READY => PAUSED. (fixes #142903)
7801
7802 2004-06-06  ed@catmur.co.uk
7803
7804         reviewed by Benjamin Otte  <otte@gnome.org>
7805
7806         * gst/registries/gstxmlregistry.c:
7807         (gst_xml_registry_rebuild_recurse):
7808           don't rely on g_dir_open to figure out if a file is a directory, use
7809           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
7810           directories. (fixes #142850)
7811
7812 2004-06-06  Benjamin Otte  <otte@gnome.org>
7813
7814         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
7815           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
7816         * libs/gst/bytestream/adapter.c:
7817         * libs/gst/bytestream/adapter.h:
7818           fix copyright in header and typo in debugging category name
7819
7820 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7821
7822         * configure.ac:
7823           bump nano to cvs
7824
7825 === release 0.8.3 ===
7826
7827 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7828
7829         * configure.ac:
7830           update libtool versioning
7831           do a new release
7832         * docs/gst/tmpl/gstelement.sgml:
7833         * docs/gst/tmpl/gsttypes.sgml:
7834         * gst/gstinfo.c: (_gst_debug_init):
7835           put back GST_CAT_DATAFLOW to fix API breakage
7836
7837 2004-06-04  David Schleef  <ds@schleef.org>
7838
7839         * autogen.sh: Add a temporary 'env' to test buildbot problems.
7840
7841 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7842
7843         * configure.ac:
7844           bump nano to cvs
7845
7846 === release 0.8.2 ===
7847
7848 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7849
7850         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
7851           check GST_DEBUG environment variable which is parsed the same way
7852           as --gst-debug=
7853
7854 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7855
7856         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
7857                             gstmd5sink.c gstshaper.c gsttee.c
7858                             gsttypefindelement.c
7859         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
7860
7861           - removing trailing commas at end of enums
7862             it is correct C99 code but C90 compilers would complain
7863             (AIX, Forte, ...)
7864             ('should' fix #143290, at least partially)
7865
7866 2004-05-27  Wim Taymans  <wim@fluendo.com>
7867
7868         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
7869         (chain_group_set_enabled), (create_group), (add_to_group),
7870         (merge_groups), (setup_group_scheduler), (group_elements),
7871         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
7872         Don't try to follow the pad connections with other groups
7873         when a loop based element is added to the scheduler because
7874         the bin will inform the scheduler about the pad links a little
7875         later.
7876
7877 2004-05-27  Wim Taymans  <wim@fluendo.com>
7878
7879         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7880         (remove_from_chain), (chain_group_set_enabled),
7881         (setup_group_scheduler), (group_element_set_enabled),
7882         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
7883         (gst_opt_scheduler_show):
7884         Elements without a group can do a state change as well, just wait
7885         with the setup of the scheduling function when it is added to a
7886         chain.
7887
7888 2004-05-27  Wim Taymans  <wim@fluendo.com>
7889
7890         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7891         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
7892         (merge_groups), (setup_group_scheduler),
7893         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
7894         (gst_opt_scheduler_show):
7895         Fixes to maintain internal consistency of the scheduler data
7896         structures. 
7897          - adding an enabled group to a chain should increment the
7898            number of enabled elements in that chain.
7899          - removing an enabled group from a chain could disable the
7900            chain.
7901          - removing a disabled group from a chain could enable the
7902            chain.
7903          - add g_assert when internal inconsistency is detected.
7904          - adding an element to a group could increase the number of
7905            links this group has with other groups.
7906          - merging two groups also merges the chains.
7907          - also show group links in the _show method.
7908            
7909
7910 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7911
7912         * gst/gstcaps.c: (gst_caps_structure_simplify):
7913           don't print error messages when there is no error
7914         * gst/gstvalue.c: (gst_value_compare_int_range):
7915           compare the second value, too
7916         * testsuite/caps/Makefile.am:
7917         * testsuite/caps/random.c: (assert_on_error), (main):
7918           add tests to make sure the two things above are checked for
7919
7920 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
7921
7922         * configure.ac:
7923         * libs/gst/dataprotocol/Makefile.am:
7924         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
7925         * libs/gst/dataprotocol/dataprotocol.h:
7926           wrap header in GST_ENABLE_NEW.  make code use it
7927
7928 2004-05-23  Johan Dahlin  <johan@gnome.org>
7929
7930         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
7931         so verbose and print GstElement signal names all the time.
7932
7933 2004-05-22  David Schleef  <ds@schleef.org>
7934
7935         * gst/registries/gstxmlregistry.c:
7936         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
7937         (bug #142957)
7938
7939 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
7940
7941         * configure.ac:
7942           scrub cflags for glib2 so gcc doesn't complain when glib is in
7943           /usr/local
7944
7945 2004-05-21  Johan Dahlin  <johan@gnome.org>
7946
7947         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
7948         __GNUC__, patch from Brian Cameron, fixes bug #142804
7949
7950 2004-05-20  David Schleef  <ds@schleef.org>
7951
7952         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
7953         comparison code.  (bug #142819)
7954
7955 2004-05-20  Wim Taymans  <wim@fluendo.com>
7956
7957         * gst/gstbuffer.c: (gst_buffer_default_copy):
7958         * gst/gstbuffer.h:
7959         Added Comment to a flag.
7960         copy relevant flags in _buffer_copy.
7961
7962 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7963
7964         reviewed by: Wim Taymans <wim at fluendo dot com>
7965
7966         * gst/gstbuffer.h:
7967           add GST_BUFFER_IN_CAPS buffer flag
7968         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7969         (gst_structure_parse_any_list), (gst_structure_parse_list),
7970         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
7971         * gst/gstvalue.c: (gst_value_serialize_any_list),
7972         (gst_value_transform_any_list_string),
7973         (gst_value_list_prepend_value), (gst_value_list_append_value),
7974         (gst_value_list_get_size), (gst_value_list_get_value),
7975         (gst_value_transform_list_string),
7976         (gst_value_transform_fixed_list_string),
7977         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
7978         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
7979         (_gst_value_initialize):
7980         * gst/gstvalue.h:
7981           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
7982           < , > as a format.
7983         * testsuite/caps/string-conversions.c: (main):
7984           add regression tests for < >
7985
7986 2004-05-20  Johan Dahlin  <johan@gnome.org>
7987
7988         * docs/gst/Makefile.am (all-local): Re-add
7989
7990 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7991
7992         * docs/gst/Makefile.am:
7993         * docs/gst/gstreamer-docs.sgml:
7994         * docs/libs/Makefile.am:
7995         * docs/libs/gstreamer-libs-docs.sgml:
7996           fix distcheck issues
7997
7998 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7999
8000         * libs/gst/dataprotocol/Makefile.am:
8001           add to autotest
8002
8003 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8004
8005         * libs/gst/dataprotocol/Makefile.am:
8006         * libs/gst/dataprotocol/dataprotocol.c:
8007         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8008         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8009         * libs/gst/dataprotocol/dp-private.h:
8010           use GST macros to read/write fixed length ints
8011           add some more asserts
8012
8013 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8014
8015         * docs/libs/gstreamer-libs-docs.sgml:
8016         * docs/libs/gstreamer-libs-sections.txt:
8017           remove idct and putbits
8018         * configure.ac:
8019         * docs/libs/tmpl/gstdataprotocol.sgml:
8020         * libs/gst/Makefile.am:
8021         * libs/gst/dataprotocol/Makefile.am:
8022         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8023         (buffer_test), (caps_test), (event_test), (main):
8024         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8025         (gst_dp_dump_byte_array), (gst_dp_init),
8026         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8027         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8028         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8029         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8030         (gst_dp_validate_header), (gst_dp_validate_payload),
8031         (gst_dp_validate_packet), (plugin_init):
8032         * libs/gst/dataprotocol/dataprotocol.h:
8033         * libs/gst/dataprotocol/dp-private.h:
8034           add dataprotocol
8035
8036 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8037
8038         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8039           fix int variable deserialization and add a helper so we can actually
8040           debug this.
8041
8042 2004-05-18  David Schleef  <ds@schleef.org>
8043
8044         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8045           argv[0].  Calling yourself is probably not the best way to
8046           construct a test like this, btw.
8047
8048 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8049
8050         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8051           don't claim to be more intelligent than a scheduler when the
8052           scheduler claims the pipeline is stopped
8053         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8054         (safe_cothread_destroy),
8055         (gst_entry_scheduler_remove_all_cothreads),
8056         (gst_entry_scheduler_reset), (_remove_cothread),
8057         (gst_entry_scheduler_state_transition):
8058           hold off cothread destruction if we're not in main cothread
8059         * configure.ac:
8060         * testsuite/Makefile.am:
8061           add new test dir
8062         * testsuite/schedulers/.cvsignore:
8063         * testsuite/schedulers/Makefile.am:
8064           add tests
8065         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8066           check relinking and adding/removing elements from a running pipeline
8067         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8068           check unlinking in a running pipeline
8069         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8070           check unreffing a running pipeline
8071         * testsuite/schedulers/useless_iteration.c: (main):
8072           check iterating a pipeline that contains running threads works
8073
8074 2004-05-18  David Schleef  <ds@schleef.org>
8075
8076         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8077           is false.
8078
8079 2004-05-18  Wim Taymans  <wim@fluendo.com>
8080
8081         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8082         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8083         Fixed an error introduced with patch for 1.63. When setting
8084         a get based element as the entry point in a group, make sure
8085         to mark the group as GET based.
8086
8087 2004-05-18  Wim Taymans  <wim@fluendo.com>
8088
8089         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8090         (setup_group_scheduler), (loop_group_schedule_function),
8091         (gst_opt_scheduler_pad_link):
8092         Added some more debug info and fixed a bug where the group
8093         type was set to LOOP but it was in fact unknown.
8094
8095 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8096
8097         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8098           make resetting scheduler work twice in a row
8099
8100 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8101
8102         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8103         (CREATE_USERIALIZATION), (_gst_value_initialize),
8104         (gst_value_compare_float), (gst_value_serialize_float),
8105         (gst_value_deserialize_float), (gst_value_compare_enum),
8106         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8107           add serialization and comparison functions for long, int64, enum and
8108           float values
8109         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8110           use best serialization function in type hierarchy instead of only a
8111           matching one. This is required for enums to work.
8112         * gst/parse/grammar.y:
8113           use gst_caps_deserialize
8114         * testsuite/parse/Makefile.am:
8115           parse1 now works
8116         * testsuite/parse/parse1.c: (main):
8117           remove aggregator check, aggregator is broken, this test works now
8118           but fails because of bug #138012
8119         * testsuite/parse/parse2.c: (main):
8120           s/xvideosink/xvimagesink - this test looks a lot like we should
8121           disable it
8122
8123 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8124
8125         * gst/gstelement.c: (gst_element_class_init):
8126           whoops, store the signal id correctly
8127         * gst/schedulers/gstbasicscheduler.c:
8128         (gst_basic_scheduler_chain_wrapper):
8129           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8130           chain function isn't linked
8131
8132 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8133         * configure.ac:
8134         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8135         support until we decide where the flags should be used
8136         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8137         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8138         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8139         Output refused caps in the debug info
8140
8141 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8142
8143         * gst/elements/gstidentity.c: (gst_identity_chain):
8144           add duration debug
8145         * gst/gstinfo.c: (gst_debug_log_default):
8146           add timestamp
8147
8148 2004-05-13  Benjamin Otte  <otte@gnome.org>
8149
8150         * gst/gstpipeline.c: (gst_pipeline_dispose),
8151         (gst_pipeline_change_state):
8152           call gst_scheduler_reset on dispose (fixes #141416)
8153
8154 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8155
8156         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8157           compute mapsize correctly
8158         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8159           use correct datatypes when calling a varargs function
8160         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8161           push a DISCONT event as first thing
8162         * gst/gst_private.h:
8163         * gst/gstinfo.c: (_gst_debug_init):
8164           remove GST_DATAFLOW debugging category
8165         * gst/gstbin.c: (gst_bin_iterate):
8166           use GST_SCHEDULING category
8167         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8168         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8169         (gst_pad_call_get_function):
8170           add GST_DATAFLOW to easily track flow of buffers or events.
8171         * gst/gstqueue.c: (gst_queue_get_type),
8172         (gst_queue_handle_pending_events), (gst_queue_chain),
8173         (gst_queue_get), (gst_queue_handle_src_event):
8174           use own static debugging category GST_DATAFLOW for dataflow,
8175           use DEBUG category for showing which path events go, use LOG
8176           category for buffers.
8177
8178 2004-05-10  David Schleef  <ds@schleef.org>
8179
8180         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8181
8182 2004-05-10  David Schleef  <ds@schleef.org>
8183
8184         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8185         symbols, because otherwise we don't know what they are.  Thanks,
8186         the GStreamer team.
8187         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8188
8189 2004-05-10  David Schleef  <ds@schleef.org>
8190
8191         (from Steve Lhomme)
8192         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8193         are deleted.  Fix.
8194         * win32/Makefile.inspect:
8195         * win32/Makefile.launch:
8196         * win32/Makefile.register:
8197
8198 2004-05-10  David Schleef  <ds@schleef.org>
8199
8200         * gst/gstinfo.h: Add missing inline function.
8201         * gst/gsttrace.c: add include
8202         * gst/parse/grammar.y: remove unused code
8203         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8204         more portable.
8205         * tools/gst-register.c: wrap unistd.h
8206         
8207         More additions/fixes from Steve for the MSVC build.
8208         * win32/GStreamer.vcproj:
8209         * win32/Makefile:
8210         * win32/Makefile.inspect:
8211         * win32/Makefile.launch:
8212         * win32/Makefile.register:
8213         * win32/README.txt:
8214         * win32/gst-inspect.vcproj:
8215         * win32/gst-launch.vcproj:
8216         * win32/gst-register.vcproj:
8217         * win32/gstbytestream.def:
8218         * win32/gstbytestream.vcproj:
8219         * win32/gstconfig.h:
8220         * win32/gstelements.def:
8221         * win32/gstelements.vcproj:
8222         * win32/gstenumtypes.c:
8223         * win32/gstenumtypes.h:
8224         * win32/gstoptimalscheduler.def:
8225         * win32/gstoptimalscheduler.vcproj:
8226         * win32/gstreamer.def:
8227         * win32/gstspider.def:
8228         * win32/gstspider.vcproj:
8229         * win32/gstversion.h:
8230         * win32/msvc71.sln:
8231
8232 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8233
8234         * gst/gstelement.c: (gst_element_class_init),
8235         (gst_element_no_more_pads):
8236         * gst/gstelement.h:
8237           add gst_element_no_more_pads and the "no-more-pads" signal
8238
8239 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8240
8241         * gst/gstregistry.c: (gst_registry_add_plugin):
8242           refuse to add plugins when a plugin with same name is already
8243           registered. Fixes a bunch of "How to remove plugins?" issues.
8244           May lead to other problems though, let's test
8245
8246 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8247
8248         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8249         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8250         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8251
8252 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8253
8254         * tests/Makefile.am: fix am16 issue
8255
8256 2004-05-09  Benjamin Otte  <otte@gnome.org>
8257
8258         * libs/gst/bytestream/Makefile.am:
8259           we should indeed add .c files to makefiles or they won't be built
8260           (d'oh)
8261
8262 2004-05-08  Benjamin Otte  <otte@gnome.org>
8263
8264         * gst/gstpad.c: (gst_pad_proxy_fixate):
8265           really reduce the set of caps
8266
8267 2004-05-08  Benjamin Otte  <otte@gnome.org>
8268
8269         * tests/Makefile.am:
8270         * tests/spidey_bench.c: (handoff), (main):
8271           add benchmark to test how long spider needs to create a pipeline
8272
8273 2004-05-08  Benjamin Otte  <otte@gnome.org>
8274
8275         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8276           mark links as unengaged when unnegotiating instead of deactivating.
8277           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8278
8279 2004-05-08  Benjamin Otte  <otte@gnome.org>
8280
8281         * docs/manual/helloworld.xml:
8282           s/audiosink/osssink (patch by Patrick Guimond)
8283
8284 2004-05-07  David Schleef  <ds@schleef.org>
8285
8286         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8287         since it contains important stuff.
8288
8289 2004-05-07  David Schleef  <ds@schleef.org>
8290
8291         * testsuite/caps/caps.c: (test3), (main): A check for appending
8292         ANY caps.
8293
8294 2004-05-07  David Schleef  <ds@schleef.org>
8295
8296         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8297         which may contain commas.  Fixes detection of -Wa,-mregnames
8298
8299 2004-05-06  David Schleef  <ds@schleef.org>
8300
8301         Changes to handle compilers that don't have variadic macro
8302         support.  In particular, glib headers define some inlines
8303         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8304         builds.
8305         * gst/Makefile.am:
8306         * gst/cothreads.c:
8307         * gst/elements/gstfdsink.c:
8308         * gst/elements/gstfdsrc.c:
8309         * gst/elements/gstfilesink.c:
8310         * gst/elements/gstfilesrc.c:
8311         * gst/gst_private.h:
8312         * gst/gstatomic.c:
8313         * gst/gstcaps.c: (gst_caps_append):
8314         * gst/gstcpu.c: (gst_cpuid_i386):
8315         * gst/gstelement.c:
8316         * gst/gsterror.c:
8317         * gst/gstfilter.c:
8318         * gst/gstinfo.h:
8319         * gst/gstprobe.c:
8320         * gst/gstquery.c:
8321         * gst/gstregistry.c:
8322         * gst/gststructure.c:
8323         * gst/gsttaginterface.c:
8324         * gst/gsttrace.c: (gst_trace_new):
8325         * gst/gsttrashstack.c:
8326         * gst/gsturi.c:
8327         * gst/gstvalue.c:
8328         * gst/parse/grammar.y:
8329         * gst/parse/parse.l:
8330         * tools/gst-inspect.c: (main):
8331         * tools/gst-launch.c: (main):
8332         * tools/gst-xmlinspect.c: (PUT_STRING):
8333
8334 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8335
8336         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8337         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8338         * gst/elements/gstfilesrc.h:
8339           send NEW_MEDIA events correctly
8340         * gst/elements/gsttypefindelement.c: (start_typefinding),
8341         (gst_type_find_element_handle_event):
8342           restart typefinding when we get a NEW_MEDIA event
8343         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8344         (gst_bin_dispose):
8345           don't die when someone removes elements in callbacks
8346         * gst/gstelement.c: (gst_element_change_state):
8347           improve debugging
8348         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8349           we need a NEW_MEDIA event to engage a link
8350         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8351           don't g_print debugging stuff
8352         * testsuite/caps/simplify.c: (check_caps):
8353
8354 2004-05-04  Benjamin Otte  <otte@gnome.org>
8355
8356         * gst/parse/grammar.y:
8357           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8358
8359 2004-05-04  Benjamin Otte  <otte@gnome.org>
8360
8361         * testsuite/caps/renegotiate.c: (main):
8362           improve output in error case
8363
8364 2004-05-04  Benjamin Otte  <otte@gnome.org>
8365
8366         * gst/parse/grammar.y:
8367           fix assert to not trigger when there's no error argument
8368         * gst/parse/parse.l:
8369           fix definition of caps to allow more than two structures
8370         * testsuite/caps/Makefile.am:
8371         * testsuite/caps/renegotiate.c: (main):
8372           it's sinesrc and works in that case
8373
8374 2004-05-04  Wim Taymans  <wim@fluendo.com>
8375
8376         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8377         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8378         when removing an element from a group, we always need to
8379         decrement the link count that this group had with other 
8380         groups through the element.
8381         added an extra assert to catch inconsistencies when decrementing
8382         the link count.
8383
8384 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8385
8386         * configure.ac:
8387         * docs/gst/Makefile.am:
8388         * docs/gst/gstreamer-sections.txt:
8389         * docs/gst/tmpl/gstcompat.sgml:
8390         * examples/appreader/Makefile.am:
8391         * examples/cutter/Makefile.am:
8392         * examples/events/Makefile.am:
8393         * examples/helloworld/Makefile.am:
8394         * examples/helloworld2/Makefile.am:
8395         * examples/launch/Makefile.am:
8396         * examples/manual/Makefile.am:
8397         * examples/mixer/Makefile.am:
8398         * examples/pingpong/Makefile.am:
8399         * examples/plugins/Makefile.am:
8400         * examples/queue/Makefile.am:
8401         * examples/queue2/Makefile.am:
8402         * examples/queue3/Makefile.am:
8403         * examples/queue4/Makefile.am:
8404         * examples/retag/Makefile.am:
8405         * examples/thread/Makefile.am:
8406         * examples/typefind/Makefile.am:
8407         * examples/xml/Makefile.am:
8408         * gst/Makefile.am:
8409         * gst/autoplug/Makefile.am:
8410         * gst/elements/Makefile.am:
8411         * gst/gstcompat.h:
8412         * gst/indexers/Makefile.am:
8413         * gst/parse/Makefile.am:
8414         * gst/registries/Makefile.am:
8415         * gst/schedulers/Makefile.am:
8416         * libs/gst/bytestream/Makefile.am:
8417         * libs/gst/control/Makefile.am:
8418         * libs/gst/getbits/Makefile.am:
8419         * po/af.po:
8420         * po/az.po:
8421         * po/en_GB.po:
8422         * po/fr.po:
8423         * po/nl.po:
8424         * po/sr.po:
8425         * po/sv.po:
8426         * po/tr.po:
8427         * po/uk.po:
8428         * tests/Makefile.am:
8429         * tests/bufspeed/Makefile.am:
8430         * tests/instantiate/Makefile.am:
8431         * tests/memchunk/Makefile.am:
8432         * tests/muxing/Makefile.am:
8433         * tests/negotiation/Makefile.am:
8434         * tests/probes/Makefile.am:
8435         * tests/sched/Makefile.am:
8436         * tests/seeking/Makefile.am:
8437         * tests/threadstate/Makefile.am:
8438         * testsuite/caps/Makefile.am:
8439         * testsuite/cleanup/Makefile.am:
8440         * testsuite/dlopen/Makefile.am:
8441         * testsuite/dynparams/Makefile.am:
8442         * testsuite/plugin/Makefile.am:
8443         * testsuite/states/Makefile.am:
8444         * tools/Makefile.am:
8445           reorganize compile/link flags to be consistent
8446           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8447
8448 2004-05-04  David Schleef  <ds@schleef.org>
8449
8450         The "once more, with feeling" check-in.
8451         * testsuite/caps/Makefile.am: dist caps_strings
8452         * testsuite/caps/renegotiate.c: (main): This test triggers a
8453           segfault in the core.  Marking as failing.
8454
8455 2004-05-03  David Schleef  <ds@schleef.org>
8456
8457         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8458           by the build bots.
8459         * testsuite/caps/renegotiate.c: (main): Same.
8460
8461 2004-05-03  David Schleef  <ds@schleef.org>
8462
8463         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8464
8465 2004-05-03  David Schleef  <ds@schleef.org>
8466
8467         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8468           variable to find our source file.
8469
8470 2004-05-03  David Schleef  <ds@schleef.org>
8471
8472         * configure.ac:  Link plugins with libgstreamer and dependent
8473           libraries
8474         * testsuite/caps/Makefile.am:
8475         * testsuite/caps/caps_strings:
8476         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8477           through a file of caps strings and test each one
8478
8479 2004-05-04  Benjamin Otte  <otte@gnome.org>
8480
8481         * libs/gst/bytestream/Makefile.am:
8482         * libs/gst/bytestream/adapter.c: 
8483         * libs/gst/bytestream/adapter.h:
8484           add GstAdapter, similar to bytestream, but doesn't require ugly event
8485           handling or uglier loopbased elements
8486
8487 2004-05-03  David Schleef  <ds@schleef.org>
8488
8489         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8490         * testsuite/caps/erathostenes.c:
8491         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8492
8493 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8494
8495         * docs/pwg/pwg.xml:
8496           remove hardcoded stylesheet path (duh)
8497         * docs/random/release:
8498         * docs/gst/gstreamer-sections.txt:
8499         * gst/Makefile.am:
8500         * gst/gst.h:
8501         * gst/gst_private.h:
8502         * gst/gstcaps.c:
8503         * gst/gstevent.c:
8504         * gst/gstformat.c:
8505         * gst/gstinfo.c:
8506         * gst/gstinfo.h:
8507         * gst/gstinterface.c:
8508         * gst/gstmemchunk.c:
8509         * gst/gstprobe.c:
8510         * gst/gstquery.c:
8511         * gst/gstregistry.c:
8512         * gst/gstregistrypool.c:
8513         * gst/gststructure.c:
8514         * gst/gsttaginterface.c:
8515         * gst/gstthread.c:
8516         * gst/gsttrace.c:
8517         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8518         * gst/gsturi.c:
8519         * gst/gstvalue.c:
8520           deprecate gst_info; remove gstlog.h
8521    
8522
8523 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8524
8525         * Makefile.am:
8526         * po/en_GB.po:
8527         * po/sv.po:
8528         * po/uk.po:
8529           updated translations
8530
8531 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8532
8533         * gst/gstbin.c: (gst_bin_dispose):
8534           better debugging
8535
8536 2004-05-03  Johan Dahlin  <johan@gnome.org>
8537
8538         * gst/schedulers/gstoptimalscheduler.c
8539         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8540         really is a GstElement. Avoids critical when running gst-launch -v
8541         and a oggdemux/decoding pipeline.
8542
8543 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8544
8545         * docs/gst/tmpl/gstpipeline.sgml :
8546         * docs/manual/elements-api.xml :
8547                 doc fix by Patrick Guimond (Protector) from devel ML
8548                 reviewed by ronald
8549
8550 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8551
8552         * docs/gst/Makefile.am :
8553         * docs/libs/Makefile.am :
8554                 apply a patch from Arwed v. Merkatz so that gtk-doc
8555                 generated docs install (same for .devhelp file)
8556                 (fixes part 1 of #138836)
8557
8558 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8559
8560         * docs/faq/dependencies.xml: typo
8561         * docs/faq/getting.xml :
8562             - fix download URL for new gstreamer site
8563             - hide sf.net download page as latest version aren't there
8564             - fix apt URLs
8565             - fill "get via CVS" paragraph (link to dev page on the site)
8566         * docs/faq/general.xml:
8567             hide status tables as they no more exists
8568             change case on plugins license file to reflect reality
8569         * docs/faq/troubleshooting.xml:
8570             remove the wiki question/answer as there is no more wiki
8571
8572 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8573
8574         * gst/gsterror.h:
8575           include the headers needed for declarations used in this header
8576
8577 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8578
8579         * docs/random/uraeus/gstreamer_and_midi.txt :
8580           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8581           (fixes #132288)
8582
8583 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8584
8585         reviewed by Benjamin Otte  <otte@gnome.org>
8586
8587         * gst/schedulers/gthread-cothreads.h:
8588           free allocated data for main cothread, too when destroying context
8589           (fixes #141417)
8590
8591 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8592
8593         * docs/manual/goals.xml : remove duplicated paragraph at end 
8594         of doc page (fixes #141448)
8595
8596 2004-04-29  David Schleef  <ds@schleef.org>
8597
8598         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8599         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8600
8601 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8602
8603         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8604           fix property
8605         * gst/gstcaps.c:
8606           fix doc string
8607         * po/POTFILES.in:
8608           rename typefind source file
8609
8610 2004-04-28  David Schleef  <ds@schleef.org>
8611
8612         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8613         * win32/GStreamer.vcproj:
8614         * win32/Makefile:
8615         * win32/config.h:
8616         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8617         (_trewinddir), (_ttelldir), (_tseekdir):
8618         * win32/dirent.h:
8619         * win32/gst-inspect.vcproj:
8620         * win32/gst-launch.vcproj:
8621         * win32/gst-register.vcproj:
8622         * win32/gstbytestream.vcproj:
8623         * win32/gstelements.vcproj:
8624         * win32/gstoptimalscheduler.vcproj:
8625         * win32/gstspider.vcproj:
8626         * win32/gtchar.h:
8627         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8628         * win32/mman.h:
8629         * win32/mman.inl:
8630         * win32/msvc71.sln:
8631
8632 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8633
8634         * gst/gst.c: (init_post):
8635         * gst/gstinfo.c:
8636           remove useless _gst_progname stuff
8637         * tools/gst-inspect.c: (print_field), (print_caps):
8638           improve caps output
8639
8640 2004-04-28  David Schleef  <ds@schleef.org>
8641
8642         Disable parsing of a lot of files that aren't part of the
8643         exported API.  Move corresponding template files to old/,
8644         waiting for removal when they don't contain anything
8645         interesting.
8646         * docs/gst/Makefile.am:
8647         * docs/gst/gstreamer-sections.txt:
8648         * docs/gst/tmpl/cothreads.sgml:
8649         * docs/gst/tmpl/cothreads_compat.sgml:
8650         * docs/gst/tmpl/gettext.sgml:
8651         * docs/gst/tmpl/gobject2gtk.sgml:
8652         * docs/gst/tmpl/grammar.tab.sgml:
8653         * docs/gst/tmpl/gst-i18n-app.sgml:
8654         * docs/gst/tmpl/gst-i18n-lib.sgml:
8655         * docs/gst/tmpl/gst_private.sgml:
8656         * docs/gst/tmpl/gstaggregator.sgml:
8657         * docs/gst/tmpl/gstarch.sgml:
8658         * docs/gst/tmpl/gstatomic_impl.sgml:
8659         * docs/gst/tmpl/gstbufferstore.sgml:
8660         * docs/gst/tmpl/gstdata_private.sgml:
8661         * docs/gst/tmpl/gstdisksink.sgml:
8662         * docs/gst/tmpl/gstdisksrc.sgml:
8663         * docs/gst/tmpl/gstelementfactory.sgml:
8664         * docs/gst/tmpl/gstextratypes.sgml:
8665         * docs/gst/tmpl/gstfakesink.sgml:
8666         * docs/gst/tmpl/gstfakesrc.sgml:
8667         * docs/gst/tmpl/gstfdsink.sgml:
8668         * docs/gst/tmpl/gstfdsrc.sgml:
8669         * docs/gst/tmpl/gstfilesink.sgml:
8670         * docs/gst/tmpl/gstfilesrc.sgml:
8671         * docs/gst/tmpl/gsthttpsrc.sgml:
8672         * docs/gst/tmpl/gstidentity.sgml:
8673         * docs/gst/tmpl/gstindexfactory.sgml:
8674         * docs/gst/tmpl/gstmarshal.sgml:
8675         * docs/gst/tmpl/gstmd5sink.sgml:
8676         * docs/gst/tmpl/gstmultidisksrc.sgml:
8677         * docs/gst/tmpl/gstmultifilesrc.sgml:
8678         * docs/gst/tmpl/gstpadtemplate.sgml:
8679         * docs/gst/tmpl/gstpipefilter.sgml:
8680         * docs/gst/tmpl/gstschedulerfactory.sgml:
8681         * docs/gst/tmpl/gstsearchfuncs.sgml:
8682         * docs/gst/tmpl/gstshaper.sgml:
8683         * docs/gst/tmpl/gstspider.sgml:
8684         * docs/gst/tmpl/gstspideridentity.sgml:
8685         * docs/gst/tmpl/gststatistics.sgml:
8686         * docs/gst/tmpl/gsttee.sgml:
8687         * docs/gst/tmpl/gsttimecache.sgml:
8688         * docs/gst/tmpl/gsttypefind.sgml:
8689         * docs/gst/tmpl/gsttypefindfactory.sgml:
8690         * docs/gst/tmpl/gstxmlregistry.sgml:
8691         * docs/gst/tmpl/gthread-cothreads.sgml:
8692         * docs/gst/tmpl/old/cothreads.sgml:
8693         * docs/gst/tmpl/old/cothreads_compat.sgml:
8694         * docs/gst/tmpl/old/gettext.sgml:
8695         * docs/gst/tmpl/old/gobject2gtk.sgml:
8696         * docs/gst/tmpl/old/grammar.tab.sgml:
8697         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8698         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8699         * docs/gst/tmpl/old/gst_private.sgml:
8700         * docs/gst/tmpl/old/gstaggregator.sgml:
8701         * docs/gst/tmpl/old/gstarch.sgml:
8702         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8703         * docs/gst/tmpl/old/gstbufferstore.sgml:
8704         * docs/gst/tmpl/old/gstdata_private.sgml:
8705         * docs/gst/tmpl/old/gstdisksink.sgml:
8706         * docs/gst/tmpl/old/gstdisksrc.sgml:
8707         * docs/gst/tmpl/old/gstelementfactory.sgml:
8708         * docs/gst/tmpl/old/gstextratypes.sgml:
8709         * docs/gst/tmpl/old/gstfakesink.sgml:
8710         * docs/gst/tmpl/old/gstfakesrc.sgml:
8711         * docs/gst/tmpl/old/gstfdsink.sgml:
8712         * docs/gst/tmpl/old/gstfdsrc.sgml:
8713         * docs/gst/tmpl/old/gstfilesink.sgml:
8714         * docs/gst/tmpl/old/gstfilesrc.sgml:
8715         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8716         * docs/gst/tmpl/old/gstidentity.sgml:
8717         * docs/gst/tmpl/old/gstindexfactory.sgml:
8718         * docs/gst/tmpl/old/gstmarshal.sgml:
8719         * docs/gst/tmpl/old/gstmd5sink.sgml:
8720         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8721         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8722         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8723         * docs/gst/tmpl/old/gstpipefilter.sgml:
8724         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8725         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8726         * docs/gst/tmpl/old/gstshaper.sgml:
8727         * docs/gst/tmpl/old/gstspider.sgml:
8728         * docs/gst/tmpl/old/gstspideridentity.sgml:
8729         * docs/gst/tmpl/old/gststatistics.sgml:
8730         * docs/gst/tmpl/old/gsttee.sgml:
8731         * docs/gst/tmpl/old/gsttimecache.sgml:
8732         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8733         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8734         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8735         * docs/gst/tmpl/old/types.sgml:
8736         * docs/gst/tmpl/types.sgml:
8737
8738         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8739         gtkdoc-scan doesn't like files with the same name in different
8740         directories.
8741         * gst/elements/Makefile.am:
8742         * gst/elements/gstelements.c:
8743         * gst/elements/gsttypefind.c: 
8744         * gst/elements/gsttypefind.h:
8745         * gst/elements/gsttypefindelement.c:
8746         * gst/elements/gsttypefindelement.h:
8747
8748 2004-04-28  David Schleef  <ds@schleef.org>
8749
8750         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8751         patch (bug #141317):
8752         * gst/gst-i18n-lib.h: Allow disabling gettext.
8753         * gst/gstatomic_impl.h: disable warning when it's dumb.
8754         * gst/gstclock.c: fix include
8755         * gst/gstcompat.h: fix variadic macro
8756         * gst/gstinfo.c: fix include
8757         * gst/gstmacros.h: add defines for inlines on MSVC
8758         * gst/gstplugin.c: fix includes
8759         * gst/gstregistry.c: fix includes
8760         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
8761         * gst/gstsystemclock.c: fix include
8762         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
8763         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
8764         * gst/registries/gstxmlregistry.c:
8765         (gst_xml_registry_parse_element_factory): fix use of non-portable
8766         functions
8767         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
8768         * libs/gst/control/dparammanager.h: same
8769
8770 2004-04-28  David Schleef  <ds@schleef.org>
8771
8772         Move a bunch of unused files to old/ with names that are
8773         not case-insensitive-unique.  These files still contain some
8774         useful information that needs to be merged into gstbin.sgml,
8775         etc., so they shouldn't be deleted yet.
8776         * docs/gst/tmpl/GstBin.sgml:
8777         * docs/gst/tmpl/GstBuffer.sgml:
8778         * docs/gst/tmpl/GstCaps.sgml:
8779         * docs/gst/tmpl/GstClock.sgml:
8780         * docs/gst/tmpl/GstCompat.sgml:
8781         * docs/gst/tmpl/GstData.sgml:
8782         * docs/gst/tmpl/GstElement.sgml:
8783         * docs/gst/tmpl/GstEvent.sgml:
8784         * docs/gst/tmpl/GstIndex.sgml:
8785         * docs/gst/tmpl/GstStructure.sgml:
8786         * docs/gst/tmpl/GstTag.sgml:
8787         * docs/gst/tmpl/old/GstBin.sgml:
8788         * docs/gst/tmpl/old/GstBuffer.sgml:
8789         * docs/gst/tmpl/old/GstCaps.sgml:
8790         * docs/gst/tmpl/old/GstClock.sgml:
8791         * docs/gst/tmpl/old/GstCompat.sgml:
8792         * docs/gst/tmpl/old/GstData.sgml:
8793         * docs/gst/tmpl/old/GstElement.sgml:
8794         * docs/gst/tmpl/old/GstEvent.sgml:
8795         * docs/gst/tmpl/old/GstIndex.sgml:
8796         * docs/gst/tmpl/old/GstStructure.sgml:
8797         * docs/gst/tmpl/old/GstTag.sgml:
8798
8799 2004-04-28  David Schleef  <ds@schleef.org>
8800
8801         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
8802         (gst_caps_append), (gst_caps_append_structure),
8803         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
8804         (gst_caps_set_simple), (gst_caps_set_simple_valist),
8805         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
8806         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
8807         (gst_caps_intersect), (gst_caps_normalize),
8808         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
8809         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
8810         * gst/gstcaps.h: use GST_IS_CAPS().
8811
8812 2004-04-26  David Schleef  <ds@schleef.org>
8813
8814         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
8815         assembly.  gcc doesn't handle it correctly. (bug #141083)
8816         * gst/gsttrashstack.h: same
8817
8818 2004-04-25  Benjamin Otte  <otte@gnome.org>
8819
8820         * gst/gstelement.c: (gst_element_change_state):
8821           fix assertion to do an int comparison
8822
8823 2004-04-25  Benjamin Otte  <otte@gnome.org>
8824
8825         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8826           better debugging output on error
8827
8828 2004-04-25  Benjamin Otte  <otte@gnome.org>
8829
8830         * gst/gstcaps.c: (gst_caps_subtract):
8831           fix memleak
8832
8833 2004-04-23  Benjamin Otte  <otte@gnome.org>
8834
8835         * gst/gstvalue.c: (gst_value_compare_buffer),
8836         (_gst_value_initialize):
8837           add comparison function for buffers
8838
8839 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8840
8841         * docs/pwg/pwg.xml:
8842           Just found out that this so-called "ima-wav" format is really
8843           just "dvi adpcm" (according to the MS WAV documentation). So
8844           renaming it. We didn't use it yet anyway.
8845
8846 2004-04-23  Benjamin Otte  <otte@gnome.org>
8847
8848         * gst/gstcaps.c: (gst_caps_is_always_compatible):
8849           call gst_caps_is_subset
8850
8851 2004-04-23  Benjamin Otte  <otte@gnome.org>
8852
8853         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
8854         (gst_caps_is_subset):
8855           add documentation
8856
8857 2004-04-23  Benjamin Otte  <otte@gnome.org>
8858           
8859         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
8860         (gst_caps_structure_subtract), (gst_caps_subtract),
8861         (gst_caps_structure_figure_out_union),
8862         (gst_caps_structure_simplify), (gst_caps_do_simplify):
8863           fix simplifying and subtracting not working correctly with optional
8864           properties
8865           solve assorted problems that make it now simplify ebven more
8866         * docs/gst/tmpl/gstcaps.sgml:
8867         * gst/gstcaps.h:
8868           make gst_caps_do_simplify return a bool to indicate if it simplified
8869         * testsuite/caps/simplify.c: (main):
8870           add more checks. The tests is quite a bit useless right now because
8871           the core is heavily simplifying itself.
8872         * testsuite/caps/caps.h:
8873           fix caps to contain all optional properties
8874
8875 2004-04-22  Benjamin Otte  <otte@gnome.org>
8876
8877         * docs/gst/tmpl/gstcaps.sgml:
8878         * docs/gst/tmpl/gstfilesrc.sgml:
8879         * docs/gst/tmpl/gststructure.sgml:
8880         * docs/gst/tmpl/gstvalue.sgml:
8881           update for recent API changes
8882         * gst/gstcaps.c: (gst_caps_do_simplify):
8883           fix to stop trying with a freed structure
8884         * gst/gstpad.c: (gst_pad_link_fixate):
8885           simplify caps
8886         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
8887           remove C++ comment
8888         * gst/gstpad.h:
8889           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
8890         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8891         (gst_structure_to_string):
8892           keep the correct type when using lists of ranges
8893         * gst/gstvalue.c: (gst_value_list_prepend_value),
8894         (gst_value_list_append_value):
8895           copy the value before adding to the list (d'oh)
8896         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
8897         (gst_value_subtract_int_range_int_range):
8898           handle overflows correctly
8899         * gst/gstvalue.c: (gst_value_subtract_from_list):
8900           fix memleak
8901         * testsuite/caps/caps.h:
8902           add a caps that caused segfaults
8903
8904 2004-04-22  Benjamin Otte  <otte@gnome.org>
8905
8906         * testsuite/refcounting/pad.c: (main):
8907           fix test
8908
8909 2004-04-22  Benjamin Otte  <otte@gnome.org>
8910
8911         * gst/gstcaps.c: (gst_caps_subtract):
8912           allow subtracting ANY and EMPTY from ANY caps
8913
8914 2004-04-22  Benjamin Otte  <otte@gnome.org>
8915
8916         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
8917         (gst_caps_union):
8918           only simplify in functions that create new caps. Simplifying in
8919           gst_caps_append breaks tests.
8920
8921 2004-04-22  Benjamin Otte  <otte@gnome.org>
8922
8923         * gst/gstcaps.c: (gst_caps_structure_simplify):
8924           unset GValue after use
8925         * gst/gstcaps.c: (gst_caps_append), 
8926         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
8927           use gst_caps_simplify (reduces registry size by 30%)
8928         * gst/gstpad.c: (gst_pad_template_new):
8929           don't allow NULL caps
8930
8931 2004-04-22  Benjamin Otte  <otte@gnome.org>
8932
8933         * docs/gst/gstreamer-sections.txt:
8934           add gst_caps_do_simplify
8935         * gst/gstcaps.c:
8936           add documentation for gst_caps_do_simplify
8937         * gst/gstvalue.h:
8938           fix typo in gst_value_register_subtract_func declaration for gst-doc
8939
8940 2004-04-22  Benjamin Otte  <otte@gnome.org>
8941
8942         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8943           fix bug when converting from empty string.
8944         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
8945         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
8946           use gst_caps_new_empty to allocate a new caps. Only that function
8947           allocates memory for caps now.
8948         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
8949         (gst_caps_remove_structure):
8950           add ability to remove one structure (but not to header yet)
8951         * gst/gstcaps.c: (gst_caps_compare_structures),
8952         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
8953         (gst_caps_structure_simplify), (gst_caps_do_simplify),
8954         * gst/gstcaps.h:
8955           add gst_caps_do_simplify that tries to simplify a caps in place.
8956           Deprecate old gst_caps_simplify function.
8957         * testsuite/caps/caps.h:
8958           add caps.h containing a common set of caps to test against.
8959         * testsuite/caps/sets.c: (check_caps), (main):
8960           use it.
8961         * testsuite/caps/.cvsignore:
8962         * testsuite/caps/Makefile.am:
8963         * testsuite/caps/simplify.c: (check_caps), (main):
8964           add test to check correctness and efficency of caps simplification.
8965
8966 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
8967
8968         reviewed by Benjamin Otte  <otte@gnome.org>
8969
8970         * gst/gstparse.c: (_gst_parse_escape):
8971           Free the GString used in _gst_parse_escape()
8972
8973 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8974
8975         * gst/gstpad.c: (gst_pad_link_negotiate):
8976           refuse to link if the link is not possible
8977         * configure.ac:
8978         * testsuite/Makefile.am:
8979         * testsuite/negotiation/.cvsignore:
8980         * testsuite/negotiation/Makefile.am:
8981         * testsuite/negotiation/pad_link.c: (main):
8982           add test that checks the above behaviour
8983
8984 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8985
8986         * docs/gst/gstreamer-sections.txt:
8987           add newly added API
8988
8989 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8990
8991         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8992         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
8993         (gst_filesrc_open_file), (gst_filesrc_close_file),
8994         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
8995         * gst/elements/gstfilesrc.h:
8996           add support for non-regular files (#140734)
8997
8998 2004-04-21  Benjamin Otte  <otte@gnome.org>
8999
9000         * gst/gstpad.c: (gst_pad_link_fixate):
9001           add sophisticated error checking code to see if fixation functions
9002           did their fixation right
9003
9004 2004-04-21  Benjamin Otte  <otte@gnome.org>
9005
9006         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9007           check for ANY caps before appending/unioning
9008         * gst/gstcaps.c: (gst_caps_is_subset),
9009         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9010         (gst_caps_structure_subtract), (gst_caps_subtract):
9011         * gst/gstcaps.h:
9012           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9013           the API. deprecate gst_caps_is_equal_fixed
9014         * gst/gstpad.c: (gst_pad_try_set_caps):
9015         * gst/gstqueue.c: (gst_queue_link):
9016           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9017         * gst/gststructure.c: (gst_structure_get_name_id):
9018         * gst/gststructure.h:
9019           add function gst_structure_get_name_id
9020         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9021         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9022         (gst_value_subtract_int_range_int_range),
9023         (gst_value_subtract_double_double_range),
9024         (gst_value_subtract_double_range_double),
9025         (gst_value_subtract_double_range_double_range),
9026         (gst_value_subtract_from_list), (gst_value_subtract_list),
9027         (gst_value_can_intersect), (gst_value_subtract),
9028         (gst_value_can_subtract), (gst_value_register_subtract_func),
9029         (_gst_value_initialize):
9030         * gst/gstvalue.h:
9031           add support for subtracting values from each other. Note that
9032           subtracting means subtracting as in set theory. Required for caps
9033           stuff above.
9034         * testsuite/caps/.cvsignore:
9035         * testsuite/caps/Makefile.am:
9036         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9037         * testsuite/caps/sets.c: (check_caps), (main):
9038         * testsuite/caps/subtract.c: (check_caps), (main):
9039           add tests for subtraction and equality code.
9040
9041 2004-04-20  David Schleef  <ds@schleef.org>
9042
9043         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9044         * gst/indexers/Makefile.am:
9045         * gst/schedulers/Makefile.am:
9046         * libs/gst/bytestream/Makefile.am:
9047         * libs/gst/control/Makefile.am:
9048         * libs/gst/getbits/Makefile.am:
9049
9050 2004-04-20  David Schleef  <ds@schleef.org>
9051
9052         * common/as-libtool.mak: Fine-tune DLL building.
9053         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9054         (like gst-plugins)
9055         * examples/plugins/Makefile.am: remove plugindir
9056         * gst/autoplug/Makefile.am: DLL building fixes
9057         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9058         Windows.
9059         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9060         * gst/indexers/Makefile.am: DLL building fixes
9061         * gst/schedulers/Makefile.am: DLL building fixes.
9062         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9063         * libs/gst/control/Makefile.am: same
9064         * libs/gst/getbits/Makefile.am: same
9065         * testsuite/Makefile.am: New dlopen directory
9066         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9067         when dlopened.
9068         * testsuite/dlopen/dlopen_gst.c: (main): same
9069         * testsuite/dlopen/loadgst.c: (do_test): same
9070
9071 2004-04-20  David Schleef  <ds@schleef.org>
9072
9073         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9074         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9075
9076 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9077
9078         * gst/gstelement.c: (gst_element_wait),
9079         (gst_element_set_time_delay), (gst_element_change_state):
9080           Use GST_TIME_*
9081
9082 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9083
9084         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9085         (gst_spider_identity_plug):
9086           improve debugging messages
9087         * gst/gstbin.c: (gst_bin_remove_func):
9088           make sure the state_change function is only called with simple state
9089           transitions
9090
9091 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9092
9093         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9094         (gst_fakesink_set_property), (gst_fakesink_chain):
9095         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9096         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9097         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9098         * gst/elements/gstidentity.c: (gst_identity_chain),
9099         (gst_identity_set_property):
9100         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9101         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9102           add warnings to _set_property for unknown arguments
9103           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9104
9105 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9106
9107         * Makefile.am:
9108         * docs/manuals.mak:
9109           add .po file download snippet
9110           fix a bug in the doc makefile
9111
9112 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9113
9114         * Makefile.am:
9115         * po/LINGUAS:
9116         * po/en_GB.po:
9117           Added en_GB translation (Gareth Owen)
9118
9119 2004-04-20  Johan Dahlin  <johan@gnome.org>
9120
9121         * gst/gstpad.c (_invent_event): Clean up
9122
9123 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9124
9125         * testsuite/caps/filtercaps.c: (main):
9126           fix test to test things correctly (caps are complicated)
9127
9128 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9129
9130         * testsuite/caps/Makefile.am:
9131         * testsuite/caps/filtercaps.c: (main):
9132           add test (that doesn't work right now, but should)
9133
9134 2004-04-19  David Schleef  <ds@schleef.org>
9135
9136         * configure.ac: Add test for allowing unaligned access.  Add define
9137         to put in gstconfig.h.
9138         * docs/gst/gstreamer-sections.txt: New symbols
9139         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9140         * docs/gst/tmpl/gstfilesrc.sgml:
9141         * docs/gst/tmpl/gstparse.sgml:
9142         * docs/gst/tmpl/gsttypes.sgml:
9143         * docs/gst/tmpl/gstutils.sgml:
9144         * docs/gst/tmpl/gstvalue.sgml:
9145         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9146         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9147         on most !i386/!powerpc architectures.  From Daniel Gazard
9148         <daniel.gazard@free.fr>.  (bug #140156)
9149         * po/af.po: Check in changes made by gettext.
9150         * po/az.po:
9151         * po/fr.po:
9152         * po/nl.po:
9153         * po/sr.po:
9154         * po/sv.po:
9155
9156 2004-04-20  Benjamin Otte  <otte@gnome.org>
9157
9158         * gst/schedulers/entryscheduler.c: 
9159         (gst_entry_scheduler_yield):
9160           refuse to yield when decoupled elements insist on doing that.
9161           At least it's better than crashing
9162
9163 2004-04-19  David Schleef  <ds@schleef.org>
9164
9165         * docs/libs/Makefile.am: Change sinclude to include
9166         * docs/gst/Makefile.am: same
9167         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9168
9169 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9170
9171         * po/LINGUAS:
9172         * po/uk.po:
9173           Added Ukrainian translation (Maxim V. Dziumanenko)
9174
9175 2004-04-19  Johan Dahlin  <johan@gnome.org>
9176
9177         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9178         checking here, do it before calling the function.
9179         Clean up, use for loops instead of while loops while iterating
9180         over lists.
9181
9182         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9183         in debug message.
9184         (gst_spider_create_and_plug): Improve debug message.
9185         General: Replace while loops which iterates over GLists with for
9186         loops. Which are much cleaner, improves readability, especially
9187         for gst_spider_identity_plug
9188
9189         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9190         fixes bug 140477
9191
9192 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9193
9194         * po/LINGUAS:
9195         * po/tr.po:
9196           Added Turkish translation (Baris Cicek)
9197
9198 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9199
9200         * docs/faq/troubleshooting.xml:
9201           Mention gst-register in the FAQ (fixes 139045).
9202
9203 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9204
9205         * docs/gst/gstreamer-sections.txt:
9206
9207 2004-04-17  Benjamin Otte  <otte@gnome.org>
9208
9209         * gst/gstelement.c: (gst_element_dispose):
9210           simplify
9211         * gst/gstpad.c: (gst_pad_call_chain_function):
9212           don't create loads of events due to bad macro usage
9213
9214 2004-04-16  David Schleef  <ds@schleef.org>
9215
9216         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9217         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9218         * gst/gstvalue.c: (gst_value_serialize_buffer),
9219         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9220         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9221         to indicate types that are fixed wrt caps or not.  Switching to
9222         this function fixes (bug #140298).
9223         * gst/gstvalue.h:
9224
9225 2004-04-16  David Schleef  <ds@schleef.org>
9226
9227         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9228         for GST_UNALIGNED_ACESS, since we essentially know which archs
9229         are ok.
9230
9231 2004-04-17  Benjamin Otte  <otte@gnome.org>
9232
9233         * docs/gst/Makefile.am:
9234           ignore gst/parse directory when building docs (fixes #140205)
9235
9236 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9237
9238         * testsuite/refcounting/mem.c: (vmsize):
9239           do error checking
9240
9241 2004-04-16  Johan Dahlin  <johan@gnome.org>
9242
9243         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9244         and gst_pad_call_get_function.
9245
9246 2004-04-15  David Schleef  <ds@schleef.org>
9247
9248         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9249         checks if we can access unaligned memory.
9250         * configure.ac: Use it.
9251
9252 2004-04-16  Benjamin Otte  <otte@gnome.org>
9253
9254         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9255         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9256         * gst/elements/gstfilesrc.h:
9257           s/seek_happened/need_discont/ and require discont before sending any
9258           data
9259
9260 2004-04-15  David Schleef  <ds@schleef.org>
9261
9262         * gst/gstvalue.c: (gst_value_serialize_buffer),
9263         (gst_value_deserialize_buffer), (_gst_value_initialize):
9264         Register these types as fundamental types. (bug #140015)
9265
9266 2004-04-16  Benjamin Otte  <otte@gnome.org>
9267
9268         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9269         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9270         (gst_pad_pull):
9271           implement enforcing discont events before buffers are passed. This
9272           allows state changes of only some elements and later correctly going
9273           on where they left off (or in short: you can now set audio sinks to
9274           NULL to release the device when the pipeline is paused)
9275         * gst/gstpad.c: (gst_pad_call_chain_function),
9276         (gst_pad_call_get_function):
9277         * gst/gstpad.h:
9278           add gst_pad_call_chain_function and gst_pad_call_get_function for
9279           scheduler interaction. They are required because of the changes
9280           above.
9281         * gst/schedulers/entryscheduler.c: (get_buffer),
9282         (gst_entry_scheduler_chain_wrapper),
9283         (gst_entry_scheduler_get_wrapper),
9284         (gst_entry_scheduler_state_transition),
9285         (gst_entry_scheduler_pad_link):
9286         * gst/schedulers/gstbasicscheduler.c:
9287         (gst_basic_scheduler_chain_wrapper),
9288         (gst_basic_scheduler_src_wrapper),
9289         (gst_basic_scheduler_chainhandler_proxy),
9290         (gst_basic_scheduler_gethandler_proxy),
9291         (gst_basic_scheduler_cothreaded_chain),
9292         (gst_basic_scheduler_chain_elements):
9293         * gst/schedulers/gstoptimalscheduler.c:
9294         (get_group_schedule_function), (pad_clear_queued),
9295         (gst_opt_scheduler_pad_link):
9296           use the new functions instead of calling get/chain-functions
9297           directly.
9298
9299 2004-04-15  David Schleef  <ds@schleef.org>
9300
9301         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9302         * docs/gst/tmpl/gstinfo.sgml: same
9303         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9304         gtk-doc put here.
9305         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9306         * examples/queue/queue.c: (main):  We iterate pipelines, not
9307         bins.  (bug #139996)
9308
9309 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9310
9311         * docs/pwg/advanced-types.xml:
9312           Add MS RLE support. Also document Qt RLE although I have no sample
9313           files for that yet. And document an extra property for ADPCM.
9314
9315 2004-04-15  David Schleef  <ds@schleef.org>
9316
9317         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9318         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9319         Windows.
9320
9321 2004-04-15  David Schleef  <ds@schleef.org>
9322
9323         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9324         symbol names to not conflict with new gstinfo.h symbols.
9325         * gst/gstinfo.h: Add inline functions for all those crazy
9326         compilers that don't know how to handle variadic macros (MSVC).
9327
9328 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9329
9330         * configure.ac: bump nano to 1
9331
9332 === release 0.8.1 ===
9333
9334 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9335
9336         * NEWS:
9337         * RELEASE:
9338         * configure.ac:
9339           releasing 0.8.1, "Snow Brigade"
9340
9341 2004-04-14  David Schleef  <ds@schleef.org>
9342
9343         * testsuite/Makefile.am: define tests_ignore
9344         * testsuite/Rules: Added new tests_ignore, which get compiled,
9345         but not run (generally because they're inconsistent or have
9346         heisenbugs).  Now we can ensure all the .c files compile in
9347         testsuite/.
9348         * testsuite/bins/Makefile.am: define tests_ignore
9349         * testsuite/bytestream/Makefile.am:
9350         * testsuite/caps/Makefile.am:
9351         * testsuite/clock/Makefile.am:
9352         * testsuite/debug/Makefile.am:
9353         * testsuite/debug/global.c: (gst_debug_log_one),
9354         (gst_debug_log_two): Fix compilation problem.
9355         * testsuite/dynparams/Makefile.am:
9356         * testsuite/elements/Makefile.am:
9357         * testsuite/ghostpads/Makefile.am:
9358         * testsuite/indexers/Makefile.am:
9359         * testsuite/parse/Makefile.am:
9360         * testsuite/plugin/Makefile.am:
9361         * testsuite/refcounting/Makefile.am:
9362         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9363         results, because it's not calculated correctly.
9364         * testsuite/refcounting/pad.c: (main): same
9365         * testsuite/states/Makefile.am:
9366         * testsuite/tags/Makefile.am:
9367         * testsuite/threads/Makefile.am:
9368
9369 2004-04-14  David Schleef  <ds@schleef.org>
9370
9371         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9372         generating bad code around the cpu detection asm code.
9373
9374 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9375
9376         * tools/gst-inspect.c: (print_element_info):
9377           print numeric version of rank as well, since we added some - 1
9378           rank values to elements
9379
9380 2004-04-13  David Schleef  <ds@schleef.org>
9381
9382         * configure.ac:  Disable various code when compiling for MinGW.
9383         * gst/elements/Makefile.am:
9384         * gst/elements/gstelements.c:
9385         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9386         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9387         * gst/registries/gstxmlregistry.c: (make_dir):
9388
9389 2004-04-13  David Schleef  <ds@schleef.org>
9390
9391         * gst/Makefile.am:
9392         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9393         assembly.
9394         * gst/gstcpuid_i386.s: remove
9395
9396 2004-04-13  David Schleef  <ds@schleef.org>
9397
9398         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9399         seems to think it needs to be done.
9400         * docs/gst/tmpl/gstfakesink.sgml:
9401         * docs/gst/tmpl/gstfakesrc.sgml:
9402         * docs/gst/tmpl/gstfdsink.sgml:
9403         * docs/gst/tmpl/gstfdsrc.sgml:
9404         * docs/gst/tmpl/gstfilesink.sgml:
9405         * docs/gst/tmpl/gstfilesrc.sgml:
9406         * docs/gst/tmpl/gstidentity.sgml:
9407         * docs/gst/tmpl/gstmd5sink.sgml:
9408         * docs/gst/tmpl/gstmultifilesrc.sgml:
9409         * docs/gst/tmpl/gstpipefilter.sgml:
9410         * docs/gst/tmpl/gstshaper.sgml:
9411         * docs/gst/tmpl/gstspider.sgml:
9412         * docs/gst/tmpl/gstspideridentity.sgml:
9413         * docs/gst/tmpl/gststatistics.sgml:
9414         * docs/gst/tmpl/gsttee.sgml:
9415         * docs/gst/tmpl/gsttypefind.sgml:
9416         * docs/gst/tmpl/gstutils.sgml:
9417
9418 2004-04-13  David Schleef  <ds@schleef.org>
9419
9420         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9421         and to build DLLs on Windows.
9422         * gst/Makefile.am:
9423         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9424         (gst_filesrc_open_file):
9425         * gst/schedulers/Makefile.am:
9426
9427 2004-04-13  David Schleef  <ds@schleef.org>
9428
9429         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9430         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9431         fixating lists.
9432
9433 2004-04-12  David Schleef  <ds@schleef.org>
9434
9435         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9436         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9437         to using it.
9438         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9439         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9440         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9441         * gst/gststructure.c: (gst_structure_set_valist),
9442         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9443         support for buffers.
9444         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9445         intended to be const.
9446         * gst/gsttag.h: same
9447         * gst/gstvalue.c: (gst_value_serialize_buffer),
9448         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9449         to (de)serialize buffers.
9450         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9451         * testsuite/caps/string-conversions.c: (main):
9452         * testsuite/caps/value_serialize.c: add new test
9453
9454 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9455
9456         * docs/pwg/advanced-types.xml:
9457           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9458
9459 2004-04-11  Benjamin Otte  <otte@gnome.org>
9460
9461         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9462           rename categories to basic_*
9463         * gst/schedulers/gstbasicscheduler.c: 
9464         (gst_basic_scheduler_chain_wrapper),
9465         (gst_basic_scheduler_chainhandler_proxy),
9466         (gst_basic_scheduler_gethandler_proxy),
9467         (gst_basic_scheduler_eventhandler_proxy):
9468           debugging category fixes - put common stuff in log category
9469         * gst/schedulers/gstbasicscheduler.c: 
9470         (gst_basic_scheduler_chain_elements):
9471           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9472           active and linking two active chains
9473
9474 2004-04-10  Benjamin Otte  <otte@gnome.org>
9475
9476         * docs/pwg/intro-preface.xml:
9477           fix dead links and remove reference to Wiki
9478
9479 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9480
9481         * gst/schedulers/gstbasicscheduler.c:
9482           make sure we can switch back to the main function if we're still in
9483           the main function (supposed to fix #139617)
9484         * gst/schedulers/gthread-cothreads.h:
9485           don't throw an error when switching to the same cothread
9486
9487 2004-04-09  Benjamin Otte  <otte@gnome.org>
9488
9489         * gst/gstbin.c: (gst_bin_get_type):
9490         * gst/gstclock.c: (gst_clock_get_type):
9491         * gst/gstindex.c: (gst_index_get_type):
9492         * gst/gstobject.c: (gst_object_get_type),
9493         (gst_signal_object_get_type):
9494         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9495         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9496         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9497         * gst/gstqueue.c: (gst_queue_get_type):
9498         * gst/gstregistry.c: (gst_registry_get_type):
9499         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9500         * gst/gstthread.c: (gst_thread_get_type):
9501           don't use memchunks for these objects, use malloc instead
9502
9503 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9504
9505         * docs/gst/.cvsignore:
9506         * docs/gst/Makefile.am:
9507         * docs/gst/gstreamer-sections.txt:
9508         * docs/gst/tmpl/gstaggregator.sgml:
9509         * docs/gst/tmpl/gstbuffer.sgml:
9510         * docs/gst/tmpl/gstclock.sgml:
9511         * docs/gst/tmpl/gstelement.sgml:
9512         * docs/gst/tmpl/gstfakesink.sgml:
9513         * docs/gst/tmpl/gstfakesrc.sgml:
9514         * docs/gst/tmpl/gstfdsink.sgml:
9515         * docs/gst/tmpl/gstfdsrc.sgml:
9516         * docs/gst/tmpl/gstfilesink.sgml:
9517         * docs/gst/tmpl/gstfilesrc.sgml:
9518         * docs/gst/tmpl/gstidentity.sgml:
9519         * docs/gst/tmpl/gstindex.sgml:
9520         * docs/gst/tmpl/gstinfo.sgml:
9521         * docs/gst/tmpl/gstmd5sink.sgml:
9522         * docs/gst/tmpl/gstmultifilesrc.sgml:
9523         * docs/gst/tmpl/gstpad.sgml:
9524         * docs/gst/tmpl/gstpipefilter.sgml:
9525         * docs/gst/tmpl/gstpipeline.sgml:
9526         * docs/gst/tmpl/gstpluginfeature.sgml:
9527         * docs/gst/tmpl/gstqueue.sgml:
9528         * docs/gst/tmpl/gstregistry.sgml:
9529         * docs/gst/tmpl/gstscheduler.sgml:
9530         * docs/gst/tmpl/gstshaper.sgml:
9531         * docs/gst/tmpl/gstspider.sgml:
9532         * docs/gst/tmpl/gstspideridentity.sgml:
9533         * docs/gst/tmpl/gststatistics.sgml:
9534         * docs/gst/tmpl/gstsystemclock.sgml:
9535         * docs/gst/tmpl/gsttee.sgml:
9536         * docs/gst/tmpl/gstthread.sgml:
9537         * docs/gst/tmpl/gsttypefind.sgml:
9538         * docs/gst/tmpl/gstutils.sgml:
9539           further doc build fixes
9540
9541 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9542
9543         * docs/gst/Makefile.am:
9544           make docs exit on scanning problems
9545           fix nonsrcdir build issues
9546         * docs/gst/gstreamer-sections.txt:
9547           adding stuff from -unused
9548         * gst/gstqueue.h:
9549           create GstQueueSize
9550         * gst/schedulers/cothreads_compat.h:
9551           fix cothread warnings
9552
9553 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9554
9555         * docs/gst/gstreamer-sections.txt:
9556           remove defines deprecated by Benjamin
9557
9558 2004-04-07  Benjamin Otte  <otte@gnome.org>
9559
9560         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9561           when the buffer is complete, don't check if other buffers are needed
9562         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9563           check that the offset is >0 so we don't try to read before the
9564           beginning of the file
9565         * gst/gstpad.c: (gst_pad_set_pad_template):
9566           sink the template, so we don't end up with 130k pad templates
9567
9568 2004-04-06  Benjamin Otte  <otte@gnome.org>
9569
9570         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9571           don't ref the element, adding already reffed it. And we didn't unref
9572           it later anyway... (huge memleak when you used many spider elements)
9573         * gst/gstelement.c: (gst_element_base_class_finalize):
9574         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9575         (gst_element_register):
9576         * gst/gsturi.c: (gst_element_make_from_uri):
9577           use gst_object_(un)ref instead of g_object(un)ref
9578
9579 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9580
9581         * gst/gstbuffer.h:
9582           remove macro that wouldn't work anymore because struct member has
9583           been removed.
9584         * gst/schedulers/entryscheduler.c: (schedule_forward):
9585           fix segfault for unconnected pads
9586         
9587 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9588
9589         reviewed by David Schleef <ds@schleef.org>
9590
9591         * gst/gstinfo.h:
9592           *_FORMAT modifiers should require putting a % in front of them for
9593           consistency reasons.
9594
9595 2004-04-05  Colin Walters  <walters@redhat.com>
9596
9597         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9598         space.
9599
9600 2004-04-05  Benjamin Otte  <otte@gnome.org>
9601
9602         * configure.ac:
9603         * gst/Makefile.am:
9604         * gst/gst_private.h:
9605         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9606           add support for detecting if GStreamer runs inside valgrind.
9607           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9608           print a big message in valgrind that GStreamer has detected it's
9609           running inside and might now use different code.
9610         * gst/gstmemchunk.c: (populate), (free_area),
9611         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9612         (gst_mem_chunk_free):
9613           flag memchunks for valgrind, so it can detect leaking of chunks.
9614           This allows detecting leaks of GstBuffer and GstEvent correctly
9615           inside valgrind.
9616
9617 2004-04-05  David Schleef  <ds@schleef.org>
9618
9619         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9620           jensgr@gmx.net (Jens Granseuer)
9621
9622 2004-04-05  David Schleef  <ds@schleef.org>
9623
9624         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9625         (gst_buffer_default_free), (gst_buffer_default_copy),
9626         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9627         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9628         structures in one place.
9629
9630 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9631
9632         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9633           (GST_TIME_FORMAT, GST_TIME_ARGS)
9634
9635 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9636
9637         * testsuite/elements/Makefile.am:
9638           disable test until it stops breaking make distcheck
9639
9640 2004-04-05  Johan Dahlin  <johan@gnome.org>
9641
9642         * po/sv.po: Updated translation
9643
9644 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9645
9646         * gst/gstplugin.c: (gst_plugin_load_file):
9647           fix segfault for when original plugin was loaded statically
9648
9649 2004-04-05  Benjamin Otte  <otte@gnome.org>
9650
9651         * testsuite/debug/category.c: (main):
9652         * testsuite/debug/commandline.c: (main):
9653         * testsuite/debug/output.c: (main):
9654           fix tests to work again with debugging enabled
9655
9656 2004-04-05  Benjamin Otte  <otte@gnome.org>
9657
9658         * gst/schedulers/gstbasicscheduler.c:
9659         (gst_basic_scheduler_pad_link):
9660           fix to work with recent scheduling changes
9661
9662 2004-04-05  Benjamin Otte  <otte@gnome.org>
9663
9664         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9665         prepareChangeLog doesn't work when cvs indents):
9666           don't throw an error when no element can be scheduled, there's too
9667           many weird reasons why it doesn't work. Return STOPPED instead.
9668           decoupled elemts' schedulability doesn't depend on bufpens.
9669
9670 2004-04-04  Benjamin Otte  <otte@gnome.org>
9671
9672         * gst/schedulers/gstbasicscheduler.c:
9673         (gst_basic_scheduler_pad_select):
9674           fix uninitialized variable warnings
9675
9676 2004-04-04  Benjamin Otte  <otte@gnome.org>
9677
9678         * gst/gstpad.c: (gst_pad_collect_valist):
9679           fix uninitialized variable warning
9680         * gst/schedulers/entryscheduler.c: (schedule_forward):
9681           fix shadowed variable
9682
9683 2004-04-04  Benjamin Otte  <otte@gnome.org>
9684
9685         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9686         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9687         (gst_pad_select):
9688         * gst/gstpad.h:
9689         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9690         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9691         * gst/gstscheduler.h:
9692           implement gst_pad_collect as replacement for gst_pad_select.
9693           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9694           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9695           new pad_select, lock and unlock calls.
9696         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9697         * gst/cothreads.h:
9698         * gst/schedulers/cothreads_compat.h:
9699         * gst/schedulers/gthread-cothreads.h:
9700           remove unused cothread_lock and cothread_unlock calls
9701         * gst/schedulers/entryscheduler.c:
9702         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9703         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9704         (gst_entry_scheduler_pad_select):
9705           update to new API
9706         * gst/schedulers/gstbasicscheduler.c:
9707         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9708         (gst_basic_scheduler_pad_select):
9709           remove useless lock and unlock calls, update pad_select to new API
9710           (untested)
9711         * gst/schedulers/gstoptimalscheduler.c:
9712         (gst_opt_scheduler_class_init):
9713           remove useless select, lock and unlock function calls
9714         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9715           use gst_pad_collect instead of gst_pad_select
9716
9717 2004-04-04  Benjamin Otte  <otte@gnome.org>
9718
9719         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9720         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9721         (schedule_next_element), (print_entry):
9722           add can_schedule_pad to handle element states.
9723           add schedule_forward to select the correct entry to schedule next
9724
9725 2004-04-03  Benjamin Otte  <otte@gnome.org>
9726
9727         * gst/schedulers/entryscheduler.c: 
9728           remove unused variable, fix error inside Rb, fix compile warning in
9729           unreachable code
9730
9731 2004-04-03  Benjamin Otte  <otte@gnome.org>
9732
9733         * gst/schedulers/entryscheduler.c:
9734           completely revamp the inner workings, so it's a lot easier to
9735           understand and extend
9736
9737 2004-04-03  Andy Wingo  <wingo@pobox.com>
9738
9739         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9740         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9741         This allows better introspection of pipeline topology.
9742         (add_to_chain): Don't do trickery to put loop elements first;
9743         rather, queue a chain sort by marking the chain as dirty.
9744         (remove_from_chain): Mark the chain dirty.
9745         (sort_chain): New function. Sorts the group list so that terminal
9746         sinks are first. This means elements on the sink side will be
9747         preferentially sscheduled before elements on the src side of the
9748         pipeline.
9749         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9750         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9751         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9752         (group_inc_link): Change argument and variable names to match the
9753         new link structure member names (src and sink).
9754         (group_dec_link): Add some description
9755
9756 2004-04-03  Benjamin Otte  <otte@gnome.org>
9757
9758         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9759         * gst/gstinfo.h:
9760         * testsuite/debug/category.c: (main):
9761         * testsuite/debug/commandline.c: (main):
9762         * testsuite/debug/output.c: (main):
9763         * testsuite/debug/printf_extension.c: (main):
9764           fix to successfully build and test with --disable-gst-debug
9765           configure switch (fixes #138705)
9766
9767 2004-04-03  Benjamin Otte  <otte@gnome.org>
9768
9769         * docs/pwg/building-boiler.xml:
9770           add cvs login line and s/anonymous/anoncvs/
9771
9772 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
9773
9774         reviewed by Benjamin Otte  <otte@gnome.org>
9775
9776         * gst/gststructure.c: (gst_structure_free):
9777           memleak fix: free fields array (partial fix for #134839)
9778
9779 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9780
9781         * docs/random/ds/0.9-suggested-changes:
9782           Add a note to change handoff use in fakesrc to be usable in
9783           a more generic way (fakesrc should be renamed to appsrc or so).
9784         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9785           Change signal type to scope, so we can fill the buffer in the
9786           handoff handler (that's the whole use of this signal...).
9787
9788 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9789
9790         * docs/pwg/other-ntoone.xml:
9791           Document muxers and n-to-1 elements.
9792
9793 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
9794
9795         * gst/registries/gstxmlregistry.c
9796         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
9797         determine if a file is a G_MODULE. The old one discards paths
9798         containing "so" somewhere in the middle. My home directory is
9799         called "soto". Go figure...
9800
9801 2004-03-31  David Schleef  <ds@schleef.org>
9802
9803         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
9804         to eventually deprecate gst_buffer_merge().  (bug: #136408)
9805         * gst/gstbuffer.h:
9806
9807 2004-03-31  David Schleef  <ds@schleef.org>
9808
9809         * gst/gstvalue.c: (gst_value_union_int_int_range),
9810         (gst_value_union_int_range_int_range), (gst_value_can_union),
9811         (gst_value_union), (_gst_value_initialize):  Add some union
9812         implementations.  We didn't have any previously.
9813         * testsuite/caps/Makefile.am:
9814         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
9815         (gst_audioscale_getcaps), (test_caps), (main): A little test
9816         that is the same as the caps manipulation in audioscale.
9817
9818 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9819
9820         * docs/faq/general.xml:
9821           add entry about "does gst support format X?"
9822
9823 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9824
9825         * gst/gstthread.c:
9826           fix docs
9827         * gst/gstutils.h:
9828           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
9829
9830 2004-03-30  Benjamin Otte  <otte@gnome.org>
9831
9832         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9833           set the offset of the buffer to the requested offset
9834         * gst/elements/gsttypefind.c: (stop_typefinding):
9835           revert patch 1.18 (which I unfortunately don't know the reason for).
9836           This is needed to allow downstream elements to seek. Otherwise
9837           typefind might overwrite a previous seek by downstream elements.
9838           This lead to errors with id3tag and typefind on some mp3s.
9839         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9840         (gst_entry_scheduler_iterate):
9841           be more verbose when debugging
9842
9843 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9844
9845         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9846           make sure we don't get NULL strings
9847
9848 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9849
9850         * gst/gstcaps.c:
9851         * gst/gstelement.c:
9852         * gst/gstelementfactory.c: (gst_element_factory_get_type):
9853         * gst/gstindex.c: (gst_index_resolver_get_type),
9854         (gst_index_get_type), (gst_index_factory_get_type):
9855         * gst/gstinfo.c:
9856         * gst/gstpad.c:
9857         * gst/gstplugin.c:
9858         * gst/gsturi.c: (gst_uri_handler_get_type):
9859         * gst/gstvalue.c:
9860           first batch of documentation fixes
9861
9862 2004-03-29  David Schleef  <ds@schleef.org>
9863
9864         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
9865         * docs/gst/gstreamer-docs.sgml:  More hacking
9866         * docs/gst/gstreamer-sections.txt:
9867         * docs/gst/tmpl/cothreads_compat.sgml:
9868         * docs/gst/tmpl/gstcaps.sgml:
9869         * docs/gst/tmpl/gstclock.sgml:
9870         * docs/gst/tmpl/gstelement.sgml:
9871         * docs/gst/tmpl/gstevent.sgml:
9872         * docs/gst/tmpl/gstpad.sgml:
9873         * docs/gst/tmpl/gstutils.sgml:
9874         * docs/gst/tmpl/gstxml.sgml:
9875         * docs/gst/tmpl/gthread-cothreads.sgml:
9876         * docs/random/ds/0.9-suggested-changes:
9877         * gst/elements/gstfakesink.h: doc fixes
9878         * gst/elements/gstfakesrc.h: doc fixes
9879         * gst/gstcaps.c: doc fixes
9880         * gst/gstcaps.h: doc fixes
9881         * gst/gstelement.c: doc fixes
9882         * gst/gstelement.h: doc fixes
9883         * gst/gstindex.c: doc fixes
9884         * gst/gstinfo.c: doc fixes
9885         * gst/gstpad.c: doc fixes
9886         * gst/gstpad.h: doc fixes
9887         * gst/gstplugin.c: doc fixes
9888         * gst/gsttypefind.h: doc fixes
9889         * gst/gsturi.c: doc fixes
9890         * gst/gstvalue.c: doc fixes
9891
9892 2004-03-29  Colin Walters  <walters@redhat.com>
9893
9894         * gst/registries/gstxmlregistry.c (get_time)
9895         (plugin_times_older_than_recurse):
9896         Use the result of stat to determine whether a path is a file,
9897         so we don't attempt to opendir() files.
9898
9899 2004-03-29  Benjamin Otte  <otte@gnome.org>
9900
9901         * gst/gstpad.c: (gst_pad_set_explicit_caps):
9902           print caps in debugging output when setting caps failed
9903         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9904         (schedule_next_element), (get_buffer), (run_chainhandler),
9905         (element_may_start), (gst_entry_scheduler_chain_handler),
9906         (gst_entry_scheduler_get_handler),
9907         (gst_entry_scheduler_state_transition),
9908         (gst_entry_scheduler_pad_link):
9909           make this scheduler a testcase for mandatory
9910           discont-before-first-buffer which is needed if we want to allow apps
9911           to release the sound device.
9912           add SCHED_ASSERT macro to print scheduler state before an assertion
9913           triggers.
9914
9915 2004-03-29  Benjamin Otte  <otte@gnome.org>
9916
9917         * COPYING:
9918           replace by LGPL (former COPYING.LIB). The core is completely
9919           licensed LGPL.
9920         * COPYING.LIB:
9921           remove
9922
9923 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9924
9925         * po/af.po:
9926         * po/sv.po:
9927           updated Afrikaans and Swedish
9928
9929 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9930
9931         * po/LINGUAS:
9932         * po/az.po:
9933           adding Azerbaijani (Mətin Əmirov)
9934
9935 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
9936
9937         * gst/gstelement.h: 
9938         * gst/gstelement.c (gst_element_set_time_delay): New function for
9939         setting element time taking into account a hardware buffering
9940         delay.
9941         (gst_element_set_time): Now just an invocation of
9942         gst_element_set_time_delay.
9943         * gst/gstclock.h: 
9944         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
9945         allowing to set event times in the future.
9946         (gst_clock_get_event_time): Now just an invocation of
9947         gst_clock_get_event_time_delay.
9948
9949 2004-03-28  Benjamin Otte  <otte@gnome.org>
9950
9951         * gst/gstbin.c: (gst_bin_set_element_sched),
9952         (gst_bin_unset_element_sched):
9953           don't add decoupled elements to schedulers - otherwise it's
9954           impossible to control if a link to a decoupled element was already
9955           removed from a scheduler or not.
9956         * gst/schedulers/cothreads_compat.h:
9957         * gst/schedulers/gthread-cothreads.h:
9958           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
9959           is no "unused" warning.
9960         * gst/schedulers/Makefile.am:
9961         * gst/schedulers/entryscheduler.c:
9962           add new scheduler, based on ideas from talking to David and Martin.
9963           It's supposed to be small and correct. Currently it's also slow (but
9964           it's not noticable)
9965         * examples/retag/retag.c: (main):
9966         * testsuite/bytestream/test1.c: (main):
9967           fix missing NULLs at end of variadic functions
9968         * testsuite/elements/.cvsignore:
9969           update
9970
9971 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
9972
9973         * gst/gstevent.h:
9974         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
9975
9976 2004-03-25  David Schleef  <ds@schleef.org>
9977
9978         * docs/gst/gstreamer-sections.txt:  More doc hacking.
9979         * docs/gst/tmpl/gstaggregator.sgml:
9980         * docs/gst/tmpl/gstautoplugfactory.sgml:
9981         * docs/gst/tmpl/gstbin.sgml:
9982         * docs/gst/tmpl/gstbuffer.sgml:
9983         * docs/gst/tmpl/gstbufferstore.sgml:
9984         * docs/gst/tmpl/gstfakesink.sgml:
9985         * docs/gst/tmpl/gstfakesrc.sgml:
9986         * docs/gst/tmpl/gstmd5sink.sgml:
9987         * docs/gst/tmpl/gstreamer-unused.sgml:
9988         * docs/gst/tmpl/gstsearchfuncs.sgml:
9989         * docs/gst/tmpl/gstshaper.sgml:
9990         * docs/gst/tmpl/gstspider.sgml:
9991         * docs/gst/tmpl/gsttee.sgml:
9992         * docs/gst/tmpl/gstutils.sgml:
9993         * docs/gst/tmpl/gstvalue.sgml:
9994         * docs/gst/tmpl/gstxml.sgml:
9995         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
9996         and we don't support it.
9997         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
9998         (gst_use_threads), (gst_has_threads): same
9999         * gst/gstthreaddummy.c: same
10000         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10001         * gst/autoplug/gstspider.h: same
10002         * gst/elements/gstaggregator.h: Remove bogus function from header
10003         * gst/elements/gstfakesink.h: same
10004         * gst/elements/gstfakesrc.h: same
10005         * gst/elements/gstmd5sink.h: same
10006         * gst/elements/gstshaper.h: same
10007         * gst/elements/gsttee.h: same
10008         * gst/gstbin.c: doc fixes
10009         * gst/gstbin.h: Remove unused definition.
10010         * gst/gstbuffer.c: doc fixes
10011         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10012         * gst/gstfilter.c: doc fixes
10013         * gst/gsttag.c: doc fixes
10014         * gst/gstvalue.c: doc fixes
10015
10016 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10017
10018         * docs/pwg/advanced-types.xml:
10019           Document typefinding.
10020         * docs/pwg/other-oneton.xml:
10021           Document one-to-n elements, demuxers and parsers.
10022
10023 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10024
10025         reviewed by: David Schleef  <ds@schleef.org>
10026
10027         * configure.ac: Check bison version (bug #127838)
10028
10029 2004-03-25  David Schleef  <ds@schleef.org>
10030
10031         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10032         * docs/gst/gstreamer-sections.txt:
10033         * docs/gst/tmpl/gstautoplug.sgml:
10034         * docs/gst/tmpl/gststaticautoplug.sgml:
10035         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10036         * docs/gst/tmpl/gstutils.sgml:
10037         * docs/gst/tmpl/gstxml.sgml:
10038
10039 2004-03-24  David Schleef  <ds@schleef.org>
10040
10041         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10042         manual being such complete crap, that I decided to do major
10043         hacking of it.  This checkin replaces any fine tuning that
10044         may have been done previously, with the benefit of actually
10045         being complete for much of the API that was changed since
10046         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10047         * docs/gst/gstreamer-sections.txt:
10048         * docs/gst/tmpl/GstBin.sgml:
10049         * docs/gst/tmpl/GstBuffer.sgml:
10050         * docs/gst/tmpl/GstCaps.sgml:
10051         * docs/gst/tmpl/GstClock.sgml:
10052         * docs/gst/tmpl/GstCompat.sgml:
10053         * docs/gst/tmpl/GstData.sgml:
10054         * docs/gst/tmpl/GstElement.sgml:
10055         * docs/gst/tmpl/GstEvent.sgml:
10056         * docs/gst/tmpl/GstIndex.sgml:
10057         * docs/gst/tmpl/GstStructure.sgml:
10058         * docs/gst/tmpl/GstTag.sgml:
10059         * docs/gst/tmpl/cothreads.sgml:
10060         * docs/gst/tmpl/cothreads_compat.sgml:
10061         * docs/gst/tmpl/gettext.sgml:
10062         * docs/gst/tmpl/grammar.tab.sgml:
10063         * docs/gst/tmpl/gst-i18n-app.sgml:
10064         * docs/gst/tmpl/gst-i18n-lib.sgml:
10065         * docs/gst/tmpl/gst.sgml:
10066         * docs/gst/tmpl/gst_private.sgml:
10067         * docs/gst/tmpl/gstaggregator.sgml:
10068         * docs/gst/tmpl/gstarch.sgml:
10069         * docs/gst/tmpl/gstatomic.sgml:
10070         * docs/gst/tmpl/gstatomic_impl.sgml:
10071         * docs/gst/tmpl/gstbin.sgml:
10072         * docs/gst/tmpl/gstbuffer.sgml:
10073         * docs/gst/tmpl/gstbufferstore.sgml:
10074         * docs/gst/tmpl/gstcaps.sgml:
10075         * docs/gst/tmpl/gstclock.sgml:
10076         * docs/gst/tmpl/gstcompat.sgml:
10077         * docs/gst/tmpl/gstconfig.sgml:
10078         * docs/gst/tmpl/gstcpu.sgml:
10079         * docs/gst/tmpl/gstdata.sgml:
10080         * docs/gst/tmpl/gstdata_private.sgml:
10081         * docs/gst/tmpl/gstelement.sgml:
10082         * docs/gst/tmpl/gstenumtypes.sgml:
10083         * docs/gst/tmpl/gsterror.sgml:
10084         * docs/gst/tmpl/gstevent.sgml:
10085         * docs/gst/tmpl/gstfakesink.sgml:
10086         * docs/gst/tmpl/gstfakesrc.sgml:
10087         * docs/gst/tmpl/gstfilesink.sgml:
10088         * docs/gst/tmpl/gstfilter.sgml:
10089         * docs/gst/tmpl/gstindex.sgml:
10090         * docs/gst/tmpl/gstinfo.sgml:
10091         * docs/gst/tmpl/gstinterface.sgml:
10092         * docs/gst/tmpl/gstlog.sgml:
10093         * docs/gst/tmpl/gstmacros.sgml:
10094         * docs/gst/tmpl/gstmarshal.sgml:
10095         * docs/gst/tmpl/gstmd5sink.sgml:
10096         * docs/gst/tmpl/gstmultifilesrc.sgml:
10097         * docs/gst/tmpl/gstobject.sgml:
10098         * docs/gst/tmpl/gstpad.sgml:
10099         * docs/gst/tmpl/gstparse.sgml:
10100         * docs/gst/tmpl/gstpipeline.sgml:
10101         * docs/gst/tmpl/gstplugin.sgml:
10102         * docs/gst/tmpl/gstpluginfeature.sgml:
10103         * docs/gst/tmpl/gstqueue.sgml:
10104         * docs/gst/tmpl/gstreamer-unused.sgml:
10105         * docs/gst/tmpl/gstregistry.sgml:
10106         * docs/gst/tmpl/gstregistrypool.sgml:
10107         * docs/gst/tmpl/gstscheduler.sgml:
10108         * docs/gst/tmpl/gstsearchfuncs.sgml:
10109         * docs/gst/tmpl/gstshaper.sgml:
10110         * docs/gst/tmpl/gstspider.sgml:
10111         * docs/gst/tmpl/gstspideridentity.sgml:
10112         * docs/gst/tmpl/gststructure.sgml:
10113         * docs/gst/tmpl/gstsystemclock.sgml:
10114         * docs/gst/tmpl/gsttag.sgml:
10115         * docs/gst/tmpl/gsttaginterface.sgml:
10116         * docs/gst/tmpl/gsttee.sgml:
10117         * docs/gst/tmpl/gstthread.sgml:
10118         * docs/gst/tmpl/gsttrace.sgml:
10119         * docs/gst/tmpl/gsttrashstack.sgml:
10120         * docs/gst/tmpl/gsttypefind.sgml:
10121         * docs/gst/tmpl/gsttypes.sgml:
10122         * docs/gst/tmpl/gsturi.sgml:
10123         * docs/gst/tmpl/gsturitype.sgml:
10124         * docs/gst/tmpl/gstutils.sgml:
10125         * docs/gst/tmpl/gstvalue.sgml:
10126         * docs/gst/tmpl/gstversion.sgml:
10127         * docs/gst/tmpl/gstxml.sgml:
10128         * docs/gst/tmpl/gstxmlregistry.sgml:
10129         * docs/gst/tmpl/gthread-cothreads.sgml:
10130         * docs/gst/tmpl/types.sgml:
10131
10132 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10133
10134         * docs/pwg/other-sink.xml:
10135         * docs/pwg/other-source.xml:
10136           Documentation on how to write source and sink elements. Other
10137           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10138           manager, autoplugger) are all still pending.
10139
10140 2004-03-25  Benjamin Otte  <otte@gnome.org>
10141
10142         * testsuite/elements/Makefile.am:
10143         * testsuite/elements/gst-compprep-check:
10144           add check to make sure gst-compprep works
10145         * testsuite/elements/gst-inspect-check.in:
10146           improve initialization output
10147         * testsuite/Makefile.am:
10148         * testsuite/gst-inspect-check:
10149           remove old file
10150
10151 2004-03-24  David Schleef  <ds@schleef.org>
10152
10153         * testsuite/elements/Makefile.am:
10154         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10155         to the testsuite.
10156
10157 2004-03-24  Benjamin Otte  <otte@gnome.org>
10158
10159         * libs/gst/control/dparam.c: (gst_dparam_attach),
10160         (gst_dparam_detach):
10161         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10162           fix lvalue casts for real
10163
10164 2004-03-24  Benjamin Otte  <otte@gnome.org>
10165
10166         * gst/schedulers/gstbasicscheduler.c:
10167         (gst_basic_scheduler_src_wrapper):
10168         * gst/schedulers/gstoptimalscheduler.c:
10169         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10170         (pad_clear_queued), (gst_opt_scheduler_add_element),
10171         (gst_opt_scheduler_remove_element):
10172           fix GStreamer to not have issues with lvalue casts anymore (fixes
10173           #136841)
10174
10175 2004-03-24  Benjamin Otte  <otte@gnome.org>
10176
10177         * gst/gstelement.c:
10178           add documentation about a gobject quirk where the object hasn't the
10179           correct class pointer set on initialization
10180         * gst/schedulers/gstbasicscheduler.c:
10181         (gst_basic_scheduler_src_wrapper):
10182           make sure to not run into an infinite loop
10183
10184 2004-03-22  Benjamin Otte  <otte@gnome.org>
10185
10186         * gst/gstutils.c: (gst_util_dump_mem):
10187         * gst/gstutils.h:
10188           first argument of gst_util_dump_mem should be const
10189
10190 2004-03-22  Johan Dahlin  <johan@gnome.org>
10191
10192         * gst/gstvalue.h: Clean up a little bit.
10193
10194 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10195
10196         reviewed by Benjamin Otte  <otte@gnome.org>
10197
10198         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10199         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10200         (gst_aggregator_class_init), (gst_aggregator_init):
10201         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10202         (gst_filesrc_dispose), (gst_filesrc_set_location):
10203         * gst/elements/gstidentity.c: (gst_identity_finalize),
10204         (gst_identity_class_init), (gst_identity_chain):
10205         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10206         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10207         (gst_statistics_class_init):
10208         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10209         (gst_tee_get_property):
10210           clean up used memory in this elements correctly on teardown (closes
10211           #137279)
10212
10213 2004-03-20  Colin Walters  <walters@redhat.com>
10214
10215         * gst/registries/gstxmlregistry.c:
10216         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10217         registry saving atomic.
10218
10219 2004-03-20  Colin Walters  <walters@redhat.com>
10220
10221         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10222         Just use
10223         access() instead of actually creating and deleting files.
10224
10225 2004-03-18  David Schleef  <ds@schleef.org>
10226
10227         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10228         (bug #137625)
10229
10230 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10231
10232         * po/sv.po: updated translation (Christian Rose)
10233
10234 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10235
10236         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10237         (gst_filesink_get_query_types), (_do_init),
10238         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10239           return FALSE silently
10240         * po/af.po: updated translation (Petri Jooste)
10241
10242 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10243
10244         * Makefile.am:
10245         * configure.ac:
10246           dist common properly
10247         * po/af.po:
10248         * po/fr.po:
10249         * po/nl.po:
10250         * po/sr.po:
10251         * po/sv.po:
10252           refreshing translations
10253
10254 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10255
10256         * po/LINGUAS:
10257         * po/sv.po:
10258         * po/af.po:
10259           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10260
10261 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10262
10263         * Makefile.am: use common/release.mak
10264
10265 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10266
10267         * docs/faq/gst-uninstalled:
10268           adding gst-monkeysaudio to the list of possible plugin dirs
10269
10270 2004-03-16  David Schleef  <ds@schleef.org>
10271
10272         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10273         (gst_init_check_with_popt_table):  Fix some gettext strings to
10274         make them easier to translate.  Required making the strings
10275         non-const.
10276
10277 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10278
10279         * configure.ac: bump nano to 1
10280
10281 === release 0.8.0 ===
10282
10283 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10284
10285         * configure.ac: release 0.8.0, "Executive Slacks"
10286
10287 2004-03-16  Johan Dahlin  <johan@gnome.org>
10288
10289         * gst/schedulers/gstoptimalscheduler.c
10290         (gst_opt_scheduler_pad_unlink): Remove double ;,
10291         spotted by Scott Wheeler
10292
10293 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10294
10295         * configure.ac: bump libtool version
10296
10297 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10298
10299         * gst/gstcaps.h:
10300         * gst/gststructure.h:
10301           add reserved padding
10302
10303 2004-03-15  Benjamin Otte  <otte@gnome.org>
10304
10305         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10306           set the first parameter for select call correctly.
10307           (fixes #137230)
10308
10309 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10310
10311         * *.c,*.h: don't mix tabs and spaces
10312
10313 2004-03-15  Johan Dahlin  <johan@gnome.org>
10314
10315         * gst/schedulers/gstoptimalscheduler.c
10316         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10317         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10318
10319         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10320         
10321 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10322
10323         * testsuite/Rules:
10324           fix gst-register rules
10325
10326 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10327
10328         * testsuite/Rules:
10329           use versioned gst-register
10330
10331 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10332
10333         * docs/libs/gstreamer-libs-sections.txt:
10334           remove </SUBSECTION>
10335         * gst/gstplugin.c:
10336         * gst/gstregistry.c: (gst_registry_add_plugin):
10337         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10338         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10339           add debugging and fix some comment blocks
10340
10341 2004-03-15  Johan Dahlin  <johan@gnome.org>
10342
10343         * *.h: Revert indent changes.
10344         
10345 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10346
10347         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10348           g_error_free the g_error
10349         * tools/gst-feedback-m.m:
10350           check for other versions of gstreamer
10351         * tools/gst-indent:
10352           use sh, not bash
10353
10354 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10355
10356         * tools/gst-register.c: do not spill paths when registries are not
10357           writable, until we fix the "user running gst-register" case.
10358
10359 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10360
10361         * *.c, *.h: commit of gst-indent run on core
10362
10363 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10364
10365         * tools/gst-indent:
10366         * tools/Makefile.am:
10367           add our indentation style as a script
10368
10369 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10370
10371         * po/sr.po:
10372         * po/LINGUAS:
10373           added Serbian translation
10374
10375 2004-03-13  Benjamin Otte  <otte@gnome.org>
10376
10377         * gst/gstelement.c:
10378           add documentation note about gst_element_found_tags_for_pad not
10379           being usable in getfunctions. (see #137042)
10380
10381 2004-03-12  David Schleef  <ds@schleef.org>
10382
10383         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10384         change API right now!  Readd gst_caps_is_simple() macro.
10385         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10386         uninitialized variable.  I'd bet this caused crashes.
10387         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10388
10389 2004-03-12  Johan Dahlin  <johan@gnome.org>
10390
10391         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10392         * gst/gstcaps.h: Clean up
10393
10394         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10395         _gst_caps_initalize()
10396
10397         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10398         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10399
10400         * gst/gststructure.c (gst_structure_get_type): Ditto
10401
10402         * gst/gststructure.h: Ditto
10403         
10404 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10405
10406         * gst/gstqueue.c: (gst_queue_init):
10407           Reset default max. values in queues. Reason is simply to avoid
10408           braindead use. If you want wider values, use the properties. The
10409           default is supposed to always work. Wider values would make this
10410           beast a memory hog by default (250 full-PAL RGB32 video frames?
10411           That's 440 MB! No thank you).
10412
10413 2004-03-10  David Schleef  <ds@schleef.org>
10414
10415         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10416         were found.  (bug #136793)
10417
10418 2004-03-10  Johan Dahlin  <johan@gnome.org>
10419
10420         * gst/schedulers/gstoptimalscheduler.c
10421         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10422         links to elements within the same group, so we can finally remove
10423         that annoying warning. Refactor the code a little bit
10424         (group_dec_links_for_element): Split out
10425
10426 2004-03-09  David Schleef  <ds@schleef.org>
10427
10428         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10429         (bug #134863)
10430
10431 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10432
10433         * configure.ac: first bug fix due to major/minor bump
10434
10435 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10436
10437         * configure.ac: bump nano to 1
10438
10439 === release 0.7.6 ===
10440
10441 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10442
10443         * NEWS:
10444         * RELEASE:
10445         * configure.ac:
10446           releasing 0.7.6, "Almost"
10447         * po/fr.po:
10448         * po/nl.po:
10449         * tools/Makefile.am:
10450         * tools/gst-feedback-m.m:
10451           unversioned source
10452
10453 2004-03-09  Johan Dahlin  <johan@gnome.org>
10454
10455         Reviewed by: Thomas Vander Stichele
10456
10457         * gst/gstelement.c (gst_element_class_init): register second
10458         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10459         language bindings can (de)marshall correctly.
10460
10461         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10462
10463         * gst/gsterror.c (gst_g_error_get_type): New function
10464
10465         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10466         with VOID:OBJECT,OBJECT,STRING 
10467
10468 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10469
10470         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10471         Free a leaked g_timer on early returns.
10472
10473 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10474
10475         * docs/pwg/advanced-types.xml:
10476           Add cinepak description.
10477
10478 2004-03-07  David Schleef  <ds@schleef.org>
10479
10480         * docs/random/mimetypes:  Added cinepak description
10481
10482 2004-03-07  Andy Wingo  <wingo@pobox.com>
10483
10484         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10485
10486         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10487         there are no links to other groups when a group is destroyed.
10488         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10489         removed from a group, make sure the link count to elements linked
10490         to other pads is appropriately decremented. This really fixes
10491         #135672.
10492
10493         The 1.60->1.61 patch has been reapplied in light of this fix.
10494
10495         * gst/gstelement.c (gst_element_dispose): Really protect against
10496         multiple invocations this time.
10497
10498 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10499
10500         * docs/gst/gstreamer-sections.txt:
10501         * docs/gst/tmpl/gsttag.sgml:
10502           remove some deprecated functions, document some existing ones
10503         * gst/gsttag.c: (gst_tag_get_flag):
10504         * gst/gsttag.h:
10505           add accessor function
10506
10507 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10508
10509         * docs/gst/gstreamer-sections.txt:
10510         * docs/gst/tmpl/gsttag.sgml:
10511         * docs/gst/tmpl/gstxml.sgml:
10512         * gst/gsttag.c: (gst_tag_get_flag):
10513         * gst/gsttag.h:
10514
10515 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10516
10517         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10518         leak
10519
10520 2004-03-05  David Schleef  <ds@schleef.org>
10521
10522         * REQUIREMENTS: Add bison and flex.
10523         * configure.ac: Fix comment about bison.
10524         * docs/random/ds/0.9-suggested-changes: yer ma
10525         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10526
10527 2004-03-05  Benjamin Otte  <otte@gnome.org>
10528
10529         * gst/gstelement.c: (gst_element_error_full):
10530           revert recent recursive state changing commit - messing with other
10531           elements' states is evil and should be done by apps only.
10532
10533 2004-03-05  Benjamin Otte  <otte@gnome.org>
10534
10535         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10536           check for empty intersection instead of NULL caps
10537         (gst_element_get_compatible_pad_filtered):
10538           remove old workaround that is only a bug nowadays
10539
10540 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10541
10542         * gst/gstelement.c: (gst_element_error_full):
10543           make elements try to recursively change state to PAUSED on all
10544           parents after an error to suppress ensuing warnings
10545         * gst/parse/grammar.y:
10546           make it check if it was able to sync the state, and throw an error
10547           if not, so stuff like
10548           oggdemux ! vorbisdec ! osssink gets caught
10549
10550 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10551
10552         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10553           it contains lib64; use AS_AC_EXPAND to handle it properly
10554
10555 2004-03-05  David Schleef  <ds@schleef.org>
10556
10557         * gst/gstcpuid_i386.s:  Remove unused code
10558         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10559         (gst_getbits_newbuf): Remove MMX code
10560         * libs/gst/getbits/getbits.h: Remove MMX code
10561
10562 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10563
10564         * debian/.cvsignore:
10565         * debian/README.Debian:
10566         * debian/changelog:
10567         * debian/control:
10568         * debian/control.in:
10569         * debian/copyright:
10570         * debian/gstreamer-core-libs-dev.files:
10571         * debian/gstreamer-core-libs.files:
10572         * debian/gstreamer-core.files:
10573         * debian/gstreamer-core.postinst:
10574         * debian/gstreamer-core.postrm:
10575         * debian/gstreamer-doc.files:
10576         * debian/gstreamer-doc.links:
10577         * debian/gstreamer-doc.lintian:
10578         * debian/gstreamer-runtime.files:
10579         * debian/gstreamer-runtime.manpages:
10580         * debian/gstreamer-runtime.postinst:
10581         * debian/gstreamer-runtime.postrm:
10582         * debian/gstreamer-tools.files:
10583         * debian/gstreamer-tools.manpages:
10584         * debian/libgstreamer-dev.files:
10585         * debian/libgstreamer0.4.1.files:
10586         * debian/libgstreamerVERSION.files:
10587         * debian/rules:
10588         Debian package info not maintained here.
10589
10590 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10591
10592         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10593         * gst/gstbin.c: (gst_bin_class_init):
10594         * gst/gstelement.c: (gst_element_class_init):
10595         * gst/gstindex.c: (gst_index_class_init):
10596         * gst/gstobject.c: (gst_object_class_init),
10597         (gst_signal_object_class_init):
10598         * gst/gstpad.c: (gst_pad_template_class_init):
10599         * gst/gstregistry.c: (gst_registry_class_init):
10600         * gst/gsturi.c: (gst_uri_handler_base_init):
10601         * gst/gstxml.c: (gst_xml_class_init):
10602         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10603         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10604           make all signal names use dashes instead of underscore
10605
10606 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10607
10608         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10609
10610 2004-03-03  Benjamin Otte  <otte@gnome.org>
10611
10612         * gst/schedulers/gstoptimalscheduler.c:
10613           revert last commit by Andy Wingo. It causes segfaults on unreffing
10614           in Rhythmbox. (see bug #135672)
10615
10616 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10617
10618         * po/fr.po: fix typo
10619
10620 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10621
10622         * tools/gst-inspect.c: (main): 
10623         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10624
10625 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10626
10627         * configure.ac:
10628           get GLIB_ONLY and POPT flags for the nonversioned binaries
10629         * tools/Makefile.am:
10630           use them
10631
10632 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10633
10634         * gst/gst.c: (init_post):
10635           change so that GST_REGISTRY now is where the global registry gets
10636           saved, since that is where plugins now get attached to first, and
10637           spilled over to the user registry.  Note that in the case of using
10638           GST_REGISTRY env var, we don't want to affect any real registries
10639           beyond the one given by this var, and thus we don't set a user
10640           registry to spill to.  So make sure GST_REGISTRY is writable.
10641
10642 2004-03-01  David Schleef  <ds@schleef.org>
10643
10644         * AUTHORS:  Added some names.  Add yourself if you're missing.
10645
10646 2004-03-01  David Schleef  <ds@schleef.org>
10647
10648         * MAINTAINERS: Add
10649
10650 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10651
10652         * configure.ac:
10653           remove whitespace
10654         * docs/gst/tmpl/gstbuffer.sgml:
10655         * docs/gst/tmpl/gstdata.sgml:
10656         * docs/gst/tmpl/gstreamer-unused.sgml:
10657         * docs/gst/tmpl/gstxml.sgml:
10658           doc update
10659         * docs/manuals.mak:
10660           add a FIXME
10661         * docs/pwg/intro-preface.xml:
10662         * docs/pwg/pwg.xml:
10663           remove GNOME
10664         * gst/gst.c: (init_post):
10665           try GST_PLUGIN_PATH paths for the _global_registry first
10666         * gst/gstelement.h:
10667           add the error message as well, otherwise (null) debug info doesn't
10668           make much sense
10669         * tools/gst-register.c: (main):
10670           spill paths to next registry if this registry is not writable
10671         * po/fr.po:
10672         * po/nl.po:
10673           translation updates
10674
10675 2004-03-01  Johan Dahlin  <johan@gnome.org>
10676
10677         * gst/gstbuffer.c (_gst_buffer_initialize): 
10678         * gst/gstdata.c (gst_data_get_type): 
10679         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10680         instead of ref, since some applications that uses GBoxed
10681         routines depends on a function that actually returns a copy.
10682
10683 2004-02-27  Benjamin Otte  <otte@gnome.org>
10684
10685         * gst/gstbuffer.h:
10686           remove gst_buffer_free, use gst_data_unref
10687         * gst/gstdata.c: (gst_data_get_type):
10688           use refcounting in GstData GBoxed registration
10689         * gst/gstdata.h:
10690           remove gst_data_free, use gst_data_unref
10691
10692 2004-02-27  Johan Dahlin  <johan@gnome.org>
10693
10694         * gst/gstdata.c (gst_data_get_type): New function, register
10695         GstData as a GBoxed type.
10696
10697         * gst/gstdata.h (GST_TYPE_DATA): New macro
10698
10699 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10700
10701         * Makefile.am:
10702         * gstreamer.spec.in:
10703           put back RELEASE
10704         * gst/Makefile.am:
10705           clean up non-disting of built files
10706         * testsuite/debug/commandline.c:
10707           test fix for option rename
10708
10709 2004-02-26  David Schleef  <ds@schleef.org>
10710
10711         * configure.ac:  We don't really need glib-2.3.  Also remove
10712         some unneeded checks for library functions.
10713         * gst/Makefile.am:  Instead, we need to not dist files created
10714         by glib-genmarshal.
10715
10716 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10717
10718         * configure.ac:
10719           bump glib required version to 2.3.0 for g_value_takes_boxed
10720
10721  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10722
10723         * common/m4/gst-docs.m4
10724         change flavour text from enable to disable as enable is our default
10725         closes bug Bug 135304
10726
10727 === release 0.7.5 ===
10728  
10729  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10730  
10731         * NEWS:
10732           instate NEWS file
10733         * Makefile.am:
10734         * gstreamer.spec.in:
10735         * RELEASE:
10736           put back release
10737         * configure.ac:
10738         * docs/random/release:
10739           more updates
10740
10741 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10742
10743         * gst/gsttag.c: (_gst_tag_initialize):
10744         * po/fr.po:
10745         * po/nl.po:
10746           remove hyphen from codec tags
10747
10748 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10749
10750         * gst/parse/Makefile.am:
10751           fix dependency so that a make from a clean build works the first
10752           time
10753
10754 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10755
10756         * docs/random/release:
10757           update release strategy
10758         * po/fr.po:
10759           auto-update po file
10760         * po/nl.po:
10761           update dutch translation
10762
10763 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10764
10765         * docs/manual/debugging.xml:
10766         fix manual for new debugging system
10767
10768 2004-02-25  Andy Wingo  <wingo@pobox.com>
10769
10770         * gst/gstpad.c (gst_pad_link_prepare): Re-add
10771         gst_pad_link_prepare. Please email the list with specific reasons
10772         for reverting.
10773
10774 2004-02-24  Andy Wingo  <wingo@pobox.com>
10775
10776         * gst/gstelement.c (gst_element_dispose): Protect against multiple
10777         invocations.
10778
10779         * gst/schedulers/gstoptimalscheduler.c:
10780         I added a mess of prototypes at the top of the file by way of
10781         documentation. Some of the operations on chains and groups were
10782         re-organized.
10783
10784         (create_group): Added a type argument so if the group is enabled,
10785         the setup_group_scheduler knows what to do.
10786         (group_elements): Added a type argument here, too, to be passed on
10787         to create_group.
10788         (group_element_set_enabled): If an unlinked PLAYING element is
10789         added to a bin, we have to create a new group to hold the element,
10790         and this function will be called before the group is added to the
10791         chain. Thus we have a valid case for group->chain==NULL. Instead
10792         of calling chain_group_set_enabled, just set the flag on the group
10793         (the chain's status will be set when the group is added to it).
10794         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
10795         Setup the group scheduler when the group is enabled, not
10796         specifically when an element goes PAUSED->PLAYING. This means
10797         PLAYING elements can be added, linked, and scheduled into a
10798         PLAYING pipeline, as was intended.
10799         (add_to_group): Don't ref the group twice. I don't know when this
10800         double-ref got in here. Removing it has the potential to cause
10801         segfaults if other parts of the scheduler are buggy. If you find
10802         that the scheduler is segfaulting for you, put in an extra ref
10803         here and see if that hacks over the underlying issue. Of course,
10804         then find out what code is unreffing a group it doesn't own...
10805         (create_group): Make the extra refcount floating, and remove it
10806         after adding the element. This means that...
10807         (unref_group): Destroy when the refcount reaches 0, not 1, like
10808         every other refcounted object in the known universe.
10809         (remove_from_group): When a group becomes empty, set it to be not
10810         active, and remove it from its chain. Don't unref it again,
10811         there's no floating reference any more.
10812         (destroy_group): We have to remove the group from the chain in
10813         remove_from_group (rather than here) to break refcounting cycles
10814         (the chain always has a ref on the group). So assert that
10815         group->chain==NULL.
10816         (ref_group_by_count): Removed, it was commented out anyway.
10817         (merge_chains): Use the remove_from_chain and add_to_chain
10818         primitives to do the reparenting, instead of rolling our own
10819         implementation.
10820         (add_to_chain): The first non-disabled group in the chain's group
10821         list will be the entry point for the chain. Because buffers can
10822         accumulate in loop elements' peer bufpens, we preferentially
10823         schedule loop groups before get groups to avoid unnecessary
10824         execution of get-based groups when the bufpens are already full.
10825         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
10826         (get_group_schedule_function): Ditto.
10827         (loop_group_schedule_function): Ditto.
10828         (gst_opt_scheduler_loop_wrapper): Ditto.
10829         (gst_opt_scheduler_iterate): Ditto.
10830
10831         I understand the opt scheduler now, yippee!
10832
10833         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
10834         (gst_pad_get_name, gst_pad_set_chain_function) 
10835         (gst_pad_set_get_function, gst_pad_set_event_function) 
10836         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
10837         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
10838         (gst_pad_set_query_function, gst_pad_get_query_types) 
10839         (gst_pad_get_query_types_default) 
10840         (gst_pad_set_internal_link_function) 
10841         (gst_pad_set_formats_function, gst_pad_set_link_function) 
10842         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
10843         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
10844         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
10845         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
10846         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
10847         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
10848         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
10849         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
10850         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
10851         (gst_pad_event_default_dispatch, gst_pad_event_default) 
10852         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
10853         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
10854         (gst_pad_get_formats_default, gst_pad_get_formats): Better
10855         argument checks, and some doc fixes.
10856
10857         (gst_pad_custom_new_from_template): Um, does anyone
10858         use these functions? Actually make a custom pad instead of a
10859         normal one.
10860         (gst_pad_try_set_caps): Transpose some checks.
10861         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
10862         the pad is in negotiation.
10863         (gst_pad_try_relink_filtered): Use pad_link_prepare.
10864         
10865         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
10866
10867         * gst/gstelement.h: 
10868         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
10869         on the list.
10870
10871 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10872
10873         * gst/gstbin.c: (gst_bin_add):
10874           add error for not being able to add elements
10875
10876 2004-02-22  Julien MOUTTE <julien@moutte.net>
10877
10878         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
10879         audio-codec and video-codec.
10880
10881 2004-02-22  Benjamin Otte  <otte@gnome.org>
10882
10883         reported by: Padraig O'Briain <padraig.obriain@sun.com>
10884
10885         * autogen.sh:
10886           replace test -e with test -x for mkinstalldirs to be more portable.
10887           (fixes #134816)
10888
10889 2004-02-22  Benjamin Otte  <otte@gnome.org>
10890
10891         * gst/gstpad.c:
10892           revert last patch from Andy, it makes gst_pad_can_link_filtered much
10893           too noisy
10894         * gst/gsttag.c: (_gst_tag_initialize):
10895         * gst/gsttag.h:
10896           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
10897         * libs/gst/control/dparam.c: (gst_dparam_attach):
10898         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
10899           check that types for attached dparams match
10900
10901 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10902
10903         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10904         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10905         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10906           fix errors
10907
10908 2004-02-20  Andy Wingo  <wingo@pobox.com>
10909
10910         * gst/gstbin.c:
10911         * gst/gstbuffer.c:
10912         * gst/gstplugin.c:
10913         * gst/registries/gstxmlregistry.c: 
10914         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
10915
10916         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
10917         (gst_element_add_pad): DEBUG->INFO, some fixes.
10918         (gst_element_get_compatible_pad_template): Just see if the
10919         templates' caps intersect, not if one is a strict subset of the
10920         other. This conforms more to what gst_pad_link_intersect() does.
10921         (gst_element_class_add_pad_template): Don't memcpy the pad
10922         template, just ref it.
10923         (gst_element_get_compatible_pad_filtered): Clean up debug messages
10924
10925         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
10926         (gst_pad_link_filtered): Debug changes.
10927         (gst_pad_link_prepare): New function, consolidated from
10928         can_link_filtered and link_filtered.
10929
10930         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
10931         look more like that of the functions in gstelement.c
10932
10933         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
10934         object, and return the empty string if object is NULL.
10935
10936         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
10937         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
10938         LOG, not DEBUG. We still get flex info on debug.
10939
10940         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
10941         debug string more verbose.
10942         (plugin_times_older_than): DEBUG->LOG.
10943
10944 2004-02-20  Julien MOUTTE <julien@moutte.net>
10945
10946         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
10947         will emit found_tag for each stream they demux with the codec.
10948
10949 2004-02-20  Benjamin Otte  <otte@gnome.org>
10950
10951         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
10952           copy navigation event correctly. Check freeing tag lists. 
10953         * gst/gstthread.c: (gst_thread_change_state):
10954           don't abort() on state changing mess - it might happen because of
10955           bugs.
10956         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
10957           use boxed functions
10958         * gst/gstvalue.h:
10959           fix GST_VALUE_HOLDS_CAPS
10960
10961 2004-02-19  David Schleef  <ds@schleef.org>
10962
10963         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
10964         and use it for GST_FUNCTION.  (bug #134750)
10965
10966 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10967
10968         * po/fr.po:
10969         * po/nl.po:
10970           updating translations
10971
10972 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10973
10974         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
10975
10976 2004-02-18  kost@imn.htwk-leipzig.de
10977
10978         reviewed by: David Schleef  <ds@schleef.org>
10979
10980         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
10981         for libgstcontrol.
10982
10983 2004-02-18  David Schleef  <ds@schleef.org>
10984
10985         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10986         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10987         (gst_dpsmooth_new): Additional fixes to get double dparams working.
10988         * tools/gst-inspect.c: (print_element_info): Support dumping of
10989         double dparam information.
10990
10991 2004-02-17  David Schleef  <ds@schleef.org>
10992
10993         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10994         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
10995         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
10996         Use GST_TYPE_CAPS in signal prototype.
10997         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
10998         Convert GST_TYPE_CAPS to boxed.
10999         * gst/gstelement.c: (gst_element_class_init):
11000         Use GST_TYPE_TAG_LIST in signal prototype.
11001         * gst/gstindex.c: (gst_index_class_init):
11002         * gst/gstindex.h:
11003         Add GST_TYPE_INDEX_ENTRY type.
11004         * gst/gstmarshal.list:
11005         Add necessary marshal types.
11006         * gst/gstpad.c: (gst_real_pad_class_init),
11007         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11008         (gst_pad_recover_caps_error):
11009         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11010         * gst/gststructure.c: (_gst_structure_initialize),
11011         (gst_structure_copy), (_gst_structure_copy_conditional):
11012         * gst/gststructure.h:
11013         Convert GST_TYPE_STRUCTURE to boxed.
11014         * gst/gsttag.c: (gst_tag_list_get_type):
11015         * gst/gsttag.h:
11016         Add GST_TYPE_TAG_LIST type.
11017
11018 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11019
11020         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11021         to what we agreed with david.
11022         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11023
11024 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11025
11026         * po/nl.po: update translation
11027
11028 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11029
11030         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11031           throw an error if spider is trying to play a mime type there is
11032           no decoder for
11033         * po/POTFILES.in:
11034           add gst/autoplug/gstspider.c for translation
11035
11036 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11037
11038         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11039         silently when the pad is negotiating.
11040
11041 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11042
11043         * docs/faq/Makefile.am:
11044           add script to run gstreamer uninstalled 
11045         * docs/faq/faq.xml:
11046         * docs/faq/developing.xml:
11047         * docs/faq/gst-uninstalled:
11048           extract script to run gstreamer uninstalled
11049         * docs/manuals.mak:
11050           add EXTRA_SOURCES variable for Makefile.am's to set to
11051           use additional SOURCE files for the doc build
11052
11053 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11054
11055         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11056
11057 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11058
11059         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11060         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11061         an error was thrown by osssink. Basically a state change failure for
11062         an element in a different scheduling group was considered as
11063         successful, which means that caps nego was going on and weird stuff
11064         happened. Like I wrote in the comment there, if someone wants to
11065         revert that please drop me a mail explaining why because I really see
11066         no point in keeping that broken behaviour there.
11067         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11068         be empty, we then return NULL which will trigger a nice error when 
11069         pulling from the pad.
11070
11071 2004-02-13  David Schleef  <ds@schleef.org>
11072
11073         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11074         (gst_dparam_get_property), (gst_dparam_set_property),
11075         (gst_dparam_do_update_default):
11076         * libs/gst/control/dparam.h:
11077         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11078         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11079         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11080         (gst_dpsmooth_do_update_double):
11081         * libs/gst/control/dparam_smooth.h:
11082         * libs/gst/control/dparammanager.c:
11083         (gst_dpman_inline_direct_update):
11084         Add support for double dparams.
11085
11086 2004-02-13  David Schleef  <ds@schleef.org>
11087
11088         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11089         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11090
11091 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11092
11093         reviewed by: David Schleef  <ds@schleef.org>
11094
11095         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11096         (gst_fdsrc_init), (gst_fdsrc_set_property),
11097         (gst_fdsrc_get_property), (gst_fdsrc_get):
11098         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11099         and sends an EOS event if file descriptor reading times out.
11100
11101 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11102
11103         * configure.ac:
11104           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11105
11106 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11107
11108         * configure.ac: pass required libxml version as argument
11109         (bug reported by Christophe Fergeau)
11110
11111 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11112   
11113         * docs/gst/gstreamer-docs.sgml:
11114         * docs/gst/tmpl/gstxml.sgml:
11115         * docs/libs/gstreamer-libs-docs.sgml:
11116           version API docs
11117
11118 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11119
11120         * gst/gstinfo.c:
11121         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11122         (gst_registry_pool_feature_filter):
11123         * gst/gstthread.c: (gst_thread_class_init):
11124         * gst/gstvalue.c:
11125           add includes exposed by building without libxml
11126         * gst/indexers/Makefile.am:
11127           do not build fileindex when LOADSAVE disabled; we should have
11128           a better libxml check later since fileindex depends on xml, not
11129           LOADSAVE or REGISTRY
11130         * libs/gst/control/Makefile.am:
11131           link with m
11132         * tools/Makefile.am:
11133           fix wrong source code for gst-xmlinspect
11134
11135 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11136
11137         * configure.ac:
11138           fix gcov help output
11139           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11140         * docs/random/release:
11141           some updated releasing notes
11142         * gstreamer.spec.in:
11143           more updates
11144
11145 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11146
11147         * docs/faq/faq.xml:
11148         * docs/manual/manual.xml:
11149         * docs/pwg/pwg.xml:
11150         * docs/pwg/titlepage.xml:
11151           put version in documentation
11152
11153 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11154
11155         * tools/Makefile.am: fix man page installation
11156
11157 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11158
11159         * configure.ac:
11160           don't check for libxml when load/save and registry disabled (#105844)
11161         * gstreamer.spec.in:
11162           sync with fedora candidate spec
11163
11164 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11165
11166         * po/fr.po:
11167         * po/nl.po:
11168           replace multidisksrc with multifilesrc
11169
11170 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11171
11172         * po/POTFILES.in:
11173           update to multidisksrc => multifilesrc file renaming (#134145)
11174
11175 2004-02-11  David Schleef  <ds@schleef.org>
11176
11177         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11178         * docs/gst/tmpl/gstpadtemplate.sgml: same
11179         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11180         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11181         fixing dance.
11182         * gst/gstutils.c: Remove disabled code that uses GstProps.
11183         * gst/registries/gstxmlregistry.h: same
11184         * docs/random/ds/0.9-suggested-changes: random notes
11185
11186 2004-02-11  kost@imn.htwk-leipzig.de
11187
11188         reviewed by: David Schleef  <ds@schleef.org>
11189
11190         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11191         initialisation of clock (bug #134128)
11192
11193 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11194
11195         * configure.ac:
11196         * gst/elements/Makefile.am:
11197         * gst/elements/gstelements.c:
11198         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11199         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11200         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11201         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11202         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11203         * gst/elements/gstmultifilesrc.h:
11204           rename multidisksrc to multifilesrc (part of #122200)
11205
11206 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11207
11208         * docs/manuals.mak:
11209           fix automake complaints
11210         * gst-element-check.m4:
11211           fix unquotedness
11212
11213 2004-02-11  David Schleef  <ds@schleef.org>
11214
11215         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11216         * gst/gstatomic_impl.h: Disable sparc implementation.
11217
11218 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11219
11220         * gst-element-check.m4:
11221           fix underquoted macros as reported by automake 1.8.x (#133800)
11222         * configure.ac:
11223           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11224           by autopoint (fixes #132996)
11225
11226 2004-02-10  Andy Wingo  <wingo@pobox.com>
11227
11228         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11229         way to do inheritance.
11230         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11231         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11232         Routine docs.
11233         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11234         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11235         doc.
11236         (gst_pad_unlink, gst_pad_is_linked): Docs.
11237         (gst_pad_renegotiate): A brief description of capsnego.
11238         (gst_pad_try_set_caps): Document.
11239         (gst_pad_try_set_caps_nonfixed): Document.
11240         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11241         (gst_pad_set_parent): Deprecated (although not out of the API).
11242         (gst_pad_get_parent): Deprecated, although many plugins use this.
11243         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11244         are private and will go away in 0.9.
11245         (gst_pad_perform_negotiate): Doc.
11246         (gst_pad_link_unnegotiate): I think this is meant to be static.
11247         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11248         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11249         (gst_pad_get_peer): Doc updates.
11250         (gst_pad_caps_change_notify): Doc.
11251         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11252         (gst_ghost_pad_new): Doc fixes.
11253
11254         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11255         (gst_object_check_uniqueness): 
11256
11257         * gst/gstelement.c (gst_element_add_pad) 
11258         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11259         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11260         (gst_element_get_static_pad, gst_element_get_pad_list) 
11261         (gst_element_class_get_pad_template_list) 
11262         (gst_element_class_get_pad_template): Work on the docs.
11263         (gst_element_get_pad_template_list): Uses the class method.
11264         (gst_element_get_compatible_pad_template): Docs, and consolidate
11265         some test conditions. 
11266         (gst_element_get_pad_from_template): New static function.
11267         (gst_element_request_compatible_pad): Docs, and work with
11268         non-request compatible templates. 
11269         (gst_element_get_compatible_pad_filtered): Docs and remove
11270         redundant checks.
11271         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11272         (gst_element_link_filtered, gst_element_link_many) 
11273         (gst_element_link, gst_element_link_pads) 
11274         (gst_element_unlink_many): Docs.
11275
11276 2004-02-05  Andy Wingo  <wingo@pobox.com>
11277
11278         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11279         s/pointer/boxed/.
11280
11281         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11282
11283         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11284         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11285         with the type=GST_TYPE_CAPS. This allows language bindings to know
11286         what kind of data they're dealing with.
11287
11288         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11289         to NULL when g_value_init is called. GstCaps, which rolls its own
11290         type implementation, now does the same instead of allocating empty
11291         caps.
11292         (_gst_caps_initialize, _gst_caps_collect_value,
11293         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11294         table methods. This allows G_VALUE_COLLECT to work.
11295
11296 2004-02-05  Andy Wingo  <wingo@pobox.com>
11297
11298         * configure.ac:
11299         * testsuite/Makefile.am (SUBDIRS): 
11300         * testsuite/ghostpads/Makefile.am: 
11301         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11302
11303         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11304         These two routines are the only ones that set
11305         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11306         pad template. They should be made static, depending on ABI needs.
11307         (gst_real_pad_dispose): Handle the case of ghost pads without a
11308         parent. Assert after dealing with ghost pads that the ghost pad
11309         list is empty.
11310         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11311         set after creation.
11312         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11313         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11314         functions. set_property will call add_ghost_pad/remove_ghost_pad
11315         as appropriate.
11316         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11317
11318         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11319         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11320         (gst_element_remove_pad): Handle ghost pads as well.
11321         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11322         depending on API-stability needs).
11323
11324 2004-02-05  Andy Wingo  <wingo@pobox.com>
11325
11326         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11327         of course they're const
11328
11329 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11330
11331         * tools/Makefile.am:
11332         * tools/gst-feedback:
11333         * tools/gst-feedback-0.7:
11334           make gst-feedback versioned too for consistency
11335
11336 2004-02-11  David Schleef  <ds@schleef.org>
11337
11338         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11339         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11340
11341 2004-02-10  Julien MOUTTE <julien@moutte.net>
11342
11343         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11344         the structure does not contain a valid tag list. Adding a safety check
11345         to remove a noisy warning in that case.
11346
11347 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11348
11349         * gst/gst.c: fix name to be in line with others
11350
11351 2004-02-09  Julien MOUTTE <julien@moutte.net>
11352
11353         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11354         not shout that loud when len is 0. Just return 0 silently.
11355
11356 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11357
11358         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11359         because data_unref has one and I prefer the debug to be symetric.
11360         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11361         were refed when added to the queue and unrefed only once when the queue
11362         was flushed. Now the flush handler unref the buffers two times : first
11363         unref for the ref added when pushing in the queue's tail and second
11364         unref to destroy the flushed buffer.
11365
11366 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11367
11368         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11369
11370 2004-02-06  David Schleef  <ds@schleef.org>
11371
11372         * docs/random/ds/0.9-suggested-changes: Random ramblings
11373         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11374         to int before printing.
11375         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11376         * gst/parse/parse.l: same.  See bug #129600
11377
11378 2004-02-06  David Schleef  <ds@schleef.org>
11379
11380         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11381         (gst_index_add_entry), (gst_index_add_associationv),
11382         (gst_index_add_association): Add gst_index_add_associationv()
11383         and clean up gst_index_add_association(). #127133
11384
11385 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11386
11387         * autogen.sh: check out common with right tag if CVS/Tag exists
11388
11389 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11390
11391         * testsuite/ghostpads/ghostpads.c: (main):
11392           fix testsuite from segfaulting
11393
11394 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11395
11396         * Makefile.am: add release target
11397         * configure.ac: bump nano to 1
11398         * docs/random/release:
11399
11400 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11401
11402         * gst/gstcaps.h:
11403         * gst/gstelement.c: (gst_element_base_class_init),
11404         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11405         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11406         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11407         (gst_real_pad_dispose):
11408         * gst/gststructure.c: (gst_structure_free),
11409         (gst_structure_from_string):
11410           put reverted patch back in
11411         * gst/gstelement.c: (gst_element_remove_pad):
11412           free explicit caps if they're set
11413         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11414           copy the structure when fixating
11415
11416 2004-02-05  David Schleef  <ds@schleef.org>
11417
11418         * gst/gstmarshal.list:
11419         * gst/gstpad.c: (gst_real_pad_class_init),
11420         (_gst_real_pad_fixate_accumulator):
11421         Revert POINTER->BOXED change in signal marshaller.
11422
11423 === release 0.7.4 ===
11424                                                                                 
11425 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11426                                                                                 
11427         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11428         * configure.ac: changed for release
11429
11430 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11431
11432         * gstreamer.spec.in:
11433           bump required version of gtk-doc
11434
11435 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11436
11437         * gst/gstcaps.h:
11438         * gst/gstelement.c: (gst_element_base_class_init),
11439         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11440         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11441         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11442         (gst_real_pad_dispose):
11443         * gst/gststructure.c: (gst_structure_free),
11444         (gst_structure_from_string):
11445           revert patch that breaks applications, reapply after release
11446           to get this fixed properly
11447
11448 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11449
11450         * gst/gsttag.c: (_gst_tag_initialize):
11451         * gst/gsttag.h:
11452           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11453
11454 2004-02-04  David Schleef  <ds@schleef.org>
11455
11456         Fix some memleaks:
11457         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11458         (gst_spider_plug_from_srcpad):
11459         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11460
11461 2004-02-04  David Schleef  <ds@schleef.org>
11462
11463         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11464         a GstRealPad before accessing its structure members.
11465
11466 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11467
11468         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11469         (gst_clock_get_speed):
11470         * gst/gstclock.h:
11471           reset padding, remove unused fields
11472
11473 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11474
11475         * gst/autoplug/gstspideridentity.c:
11476         (gst_spider_identity_sink_loop_type_finding):
11477           use get_allowed_caps, not get_caps (fixes #132519)
11478         * gst/elements/gsttypefind.c: (stop_typefinding):
11479           use correct order when sending buffers and seeking
11480
11481 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11482
11483         * configure.ac:
11484         * gst/gstelement.h:
11485         * gst/gstpad.h:
11486         * gst/gstqueue.h:
11487           upgrade libtool CURRENT, reset padding
11488
11489 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11490
11491         * configure.ac:
11492           bump to prerelease
11493           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11494
11495 2004-02-04  David Schleef  <ds@schleef.org>
11496
11497         * docs/random/ds/0.9-suggested-changes: random notes
11498         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11499         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11500         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11501         expansion.
11502         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11503         (gst_filesink_get_query_types): same
11504         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11505         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11506         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11507         to use new GST_PTR_FORMAT.
11508         * gst/gstelement.h: deprecate function factory macros
11509         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11510         These are our last variadic macros that can't be replaced with
11511         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11512         attempting to deprecate gst_element_clock_wait().
11513         * gst/gstevent.h: same
11514         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11515         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11516         * gst/gstpad.h: deprecate function factory macros similar to above.
11517
11518 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11519
11520         * configure.ac:
11521         * tools/Makefile.am:
11522         * tools/gst-run.c: (popt_callback), (hash_print_key),
11523         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11524         (get_candidates), (main):
11525           add new source file to generate non-versioned wrapper binaries
11526           for our tools.
11527
11528 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11529
11530         * gst/gstevent.c: (_gst_event_free):
11531           actually break; inside the switch statement
11532         * gst/parse/grammar.y:
11533           fix memleak where GValues weren't unset
11534
11535 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11536
11537         * gst/gststructure.c: (gst_structure_from_string):
11538           fix huge memleak
11539         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11540         (new_entry), (gst_type_find_element_chain):
11541         * gst/gstelement.c: (gst_element_base_class_init),
11542         (gst_element_class_set_details):
11543         * gst/gstpad.c: (gst_pad_can_link_filtered):
11544           fix smaller memleaks
11545         * gst/gstpad.c: (gst_real_pad_dispose):
11546           check that explicit caps are gone
11547         * gst/gststructure.c: (gst_structure_free):
11548           actually free the structure
11549         * gst/gstelement.c: (gst_element_clear_pad_caps):
11550           unset explicit caps
11551
11552 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11553
11554         * tools/Makefile.am:
11555           use AM_CFLAGS since all the CFLAGS are the same
11556           use AM_LDFAGS
11557
11558 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11559
11560         * docs/manual/gnome.xml:
11561           expand example a little
11562         * gst/gst.c: (gst_init_with_popt_table),
11563         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11564           make sure popt option displays are done with right textdomain
11565           use GstPoptOption type
11566         * gst/gst.h:
11567           create GstPoptOption type
11568
11569 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11570
11571         * gst/gsterror.c: (_gst_stream_errors_init):
11572         * gst/gsterror.h:
11573           adding error type for no codec
11574         * po/POTFILES.in:
11575           add gst-inspect
11576         * po/nl.po:
11577           update dutch translation
11578         * tools/gst-inspect.c: (print_element_list), (main):
11579           do proper internationalization
11580         * tools/gst-launch.c: (idle_func):
11581           remove commented out function call
11582
11583 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11584
11585         * docs/README:
11586           add some error fixing notes
11587         * docs/gst/gstreamer-sections.txt:
11588           remove double entries
11589         * docs/gst/tmpl/gstbin.sgml:
11590         * docs/gst/tmpl/gstclock.sgml:
11591           remove override
11592         * docs/gst/tmpl/gstelement.sgml:
11593         * docs/gst/tmpl/gstindex.sgml:
11594         * docs/gst/tmpl/gstobject.sgml:
11595         * docs/gst/tmpl/gstpadtemplate.sgml:
11596         * docs/gst/tmpl/gstreamer-unused.sgml:
11597         * docs/gst/tmpl/gsttag.sgml:
11598         * docs/gst/tmpl/gstthread.sgml:
11599         * docs/gst/tmpl/gstxml.sgml:
11600         * gst/gsttag.h:
11601           sync header prototypes with c decls
11602         * gst/gsttaginterface.c:
11603           fix doc headers
11604
11605 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11606
11607         * gst/parse/Makefile.am:
11608         * gst/gstobject.h:
11609           get rid of gstmarshal.h dependency. It's not needed.
11610         * gst/gst.h:
11611         * gst/elements/gstfakesink.c:
11612         * gst/elements/gstfakesrc.c:
11613         * gst/elements/gstidentity.c:
11614         * gst/gstbin.c:
11615         * gst/gstelement.c:
11616         * gst/gstindex.c:
11617         * gst/gstobject.c:
11618         * gst/gstpad.c:
11619         * gst/gstthread.c:
11620         * gst/gstxml.c:
11621         * libs/gst/control/dparam.c:
11622         * libs/gst/control/dparammanager.c:
11623           include gstmarshal.h.
11624         Fixes #132045
11625
11626 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11627
11628         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11629         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11630         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11631         * gst/elements/gstfilesrc.h:
11632           don't ref the filesrc when creating mmaped buffers. Don't keep a
11633           list of not-yet-destroyed buffers.
11634         * gst/gstbuffer.h:
11635           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11636
11637 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11638
11639         * gst/gst.c: (init_pre):
11640           remove textdomain
11641
11642 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11643
11644         * docs/pwg/advanced-events.xml:
11645         * docs/pwg/advanced-scheduling.xml:
11646         * docs/pwg/intro-basics.xml:
11647         * docs/pwg/other-manager.xml:
11648         * docs/pwg/other-nton.xml:
11649         * docs/pwg/other-ntoone.xml:
11650         * docs/pwg/other-oneton.xml:
11651         * docs/pwg/pwg.xml:
11652           All sort of documentation... Forgot what. Point is that I want this
11653           in before I leave. The 'other-*' will be the last section and will
11654           explain issues specific to these type of elements.
11655
11656 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11657
11658         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11659         (gst_filesrc_get_read):
11660           set all the values on buffers that we can
11661
11662 2004-02-02  David Schleef  <ds@schleef.org>
11663
11664         Change usage of isblah() to g_ascii_isblah() to be more locale
11665         independent.  (#133076)
11666         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11667         * gst/gstutils.c:
11668         * gst/parse/parse.l:
11669
11670 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11671
11672         reviewed by: David Schleef  <ds@schleef.org>
11673
11674         Fix memory leaks:
11675         * gst/gstcaps.c: (gst_caps_to_string):
11676         * gst/registries/gstxmlregistry.c:
11677         (gst_xml_registry_add_path_list_func),
11678         (gst_xml_registry_parse_padtemplate):
11679
11680 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11681
11682         * gst/gstelement.c: (gst_element_default_error):
11683           suffix error messages with period
11684
11685 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11686
11687         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11688         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11689         * gst/gsterror.c: (gst_error_get_message):
11690           Suffix with dots
11691         * po/fr.po:
11692         * po/nl.po:
11693           Update translation files
11694
11695 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11696
11697         * gst/autoplug/gstspideridentity.c:
11698         (gst_spider_identity_sink_loop_type_finding):
11699         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11700         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11701         (gst_filesink_close_file), (gst_filesink_handle_event),
11702         (gst_filesink_chain):
11703         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11704         (gst_filesrc_get_read), (gst_filesrc_open_file):
11705         * gst/elements/gstidentity.c: (gst_identity_chain):
11706         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11707         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11708         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11709         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11710         * gst/gsterror.c: (_gst_core_errors_init),
11711         (_gst_library_errors_init), (_gst_resource_errors_init),
11712         (_gst_stream_errors_init), (gst_error_get_message):
11713         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11714         (gst_pad_recover_caps_error), (gst_pad_pull):
11715         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11716         * gst/schedulers/gstbasicscheduler.c:
11717         (gst_basic_scheduler_chainhandler_proxy),
11718         (gst_basic_scheduler_gethandler_proxy),
11719         (gst_basic_scheduler_cothreaded_chain):
11720           Suffix error messages with period.
11721           Use (NULL) instead of NULL
11722
11723 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11724
11725         * docs/gst/tmpl/gstelement.sgml:
11726         * docs/gst/tmpl/gstxml.sgml:
11727         * gst/gstelement.c: (gst_element_error_full):
11728           add element path to error
11729
11730 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11731
11732         * docs/random/mimetypes:
11733           update raw int/float info
11734         * gst/gsttag.c: (_gst_tag_initialize):
11735         * gst/gsttag.h:
11736           add GST_TAG_ENCODER
11737
11738 2004-01-30  David Schleef  <ds@schleef.org>
11739
11740         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11741           missing (#132991)
11742
11743 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11744
11745         reviewed by Benjamin Otte 
11746           parts of the patch submitted in bug #113913
11747
11748         * configure.ac:
11749           use AC_C_INLINE. Use = instead of == with test
11750         * examples/plugins/example.c:
11751         * gst/autoplug/gstspideridentity.c:
11752         * gst/elements/gstfdsrc.c:
11753         * gst/elements/gstfilesrc.c:
11754         * gst/elements/gstidentity.c:
11755         * gst/elements/gstmultidisksrc.c:
11756         * gst/elements/gststatistics.c:
11757         * gst/gstelement.c:
11758         * gst/gstobject.c:
11759         * gst/gstpad.c:
11760         * gst/gstpipeline.c:
11761         * gst/gstthread.c:
11762           don't end enums with a comma
11763         * gst/gstindex.c: (gst_index_compare_func):
11764           do explicit casting to gint
11765         * gst/gsttrace.c: (gst_trace_text_flush):
11766           #define strsize as a macro
11767
11768 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11769
11770         * docs/README:
11771         * docs/gst/gstreamer-docs.sgml:
11772         * docs/gst/gstreamer-sections.txt:
11773         * docs/gst/tmpl/gstelement.sgml:
11774         * docs/gst/tmpl/gsterror.sgml:
11775         * docs/gst/tmpl/gstinterface.sgml:
11776         * docs/gst/tmpl/gstreamer-unused.sgml:
11777         * docs/gst/tmpl/gststructure.sgml:
11778         * docs/gst/tmpl/gsttag.sgml:
11779         * docs/gst/tmpl/gsttaginterface.sgml:
11780         * docs/gst/tmpl/gstvalue.sgml:
11781         make sure all API ends up in the built docs
11782         * gst/gstinterface.c:
11783         * gst/gststructure.c: (gst_structure_id_set_value),
11784         (gst_structure_set_value), (gst_structure_id_get_value):
11785         * gst/gststructure.h:
11786         * gst/gstvalue.h:
11787         sync .h with .c declarations
11788
11789 2004-01-30  Julien Moutte  <julien@moutte.net>
11790
11791         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
11792         Ronald will fix riffread.
11793
11794 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11795
11796         * docs/pwg/advanced-interfaces.xml:
11797           Added tuner interface docs.
11798
11799 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11800
11801         * docs/random/mimetypes:
11802           correct Theora information
11803         * gst/gstelement.h:
11804           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
11805
11806 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11807
11808         * gst/gstelement.c: (gst_element_error_full):
11809         * gst/gstelement.h:
11810           GST_ELEMENT_ERROR in enum -> _IN_ERROR
11811
11812 2004-01-29  Julien MOUTTE  <julien@moutte.net>
11813
11814         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11815         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
11816         again and even before DISCONT.
11817         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
11818         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
11819         bytestream so that it's not stopping to fill the bytestream if events
11820         different than EOS or DISCONT are received. Instead it process them so
11821         that they go downstream.
11822
11823 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11824
11825         * docs/gst/tmpl/gstelement.sgml:
11826         * docs/gst/tmpl/gstreamer-unused.sgml:
11827         * docs/gst/tmpl/gstxml.sgml:
11828         * gst/autoplug/gstspideridentity.c:
11829         (gst_spider_identity_sink_loop_type_finding):
11830         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11831         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11832         (gst_filesink_close_file), (gst_filesink_handle_event),
11833         (gst_filesink_chain):
11834         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11835         (gst_filesrc_get_read), (gst_filesrc_open_file):
11836         * gst/elements/gstidentity.c: (gst_identity_chain):
11837         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11838         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11839         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11840         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11841         * gst/gstelement.h:
11842         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11843         (gst_pad_recover_caps_error), (gst_pad_pull):
11844         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11845         * gst/schedulers/gstbasicscheduler.c:
11846         (gst_basic_scheduler_chainhandler_proxy),
11847         (gst_basic_scheduler_gethandler_proxy),
11848         (gst_basic_scheduler_cothreaded_chain):
11849           gst_element_error -> GST_ELEMENT_ERROR
11850
11851 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11852
11853         * docs/Makefile.am:
11854         * docs/gst/tmpl/gstelement.sgml:
11855         * docs/gst/tmpl/gstxml.sgml:
11856         * docs/manuals.mak:
11857         * docs/pwg/advanced-request.xml:
11858         * docs/pwg/advanced-scheduling.xml:
11859         * docs/pwg/advanced-tagging.xml:
11860           fix non-validating docbook using CDATA
11861           make sure make check-local gets run first to check if it validates
11862
11863 2004-01-29  Julien MOUTTE <julien@moutte.net>
11864
11865         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
11866         handling (up and downstream).
11867         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
11868         my_filter thing.
11869
11870 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11871
11872         * docs/pwg/advanced-tagging.xml:
11873           Add docs about tag writing.
11874
11875 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11876
11877         * docs/pwg/advanced-tagging.xml:
11878           Add a part about tag reading and application signalling... Tag
11879           writing still needs to be documented.
11880         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11881           We can set file locations in READY, too.
11882
11883 2004-01-29  Julien MOUTTE <julien@moutte.net>
11884
11885         * docs/random/ds/element-checklist: Adding some notes about src
11886         events.
11887
11888 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11889
11890         * docs/random/mimetypes:
11891           Update docs to point to correct elements for various mimetypes, and
11892           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
11893           <stephane.loeuillet@tiscali.fr>.
11894
11895 2004-01-28  David Schleef  <ds@schleef.org>
11896
11897         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
11898
11899 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11900
11901         * docs/random/mimetypes:
11902           update docs for audio/x-raw-float. Add "buffer-frames=0 means
11903           undefined"
11904         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11905           make it only work in NULL.
11906         * gst/gstcaps.c:
11907           don't posion NULL caps
11908         * gst/gstelement.c: (gst_element_set_time):
11909           add debugging statement
11910         * gst/gstelement.c: (gst_element_emit_found_tag),
11911         (gst_element_found_tag_func), (gst_element_found_tags):
11912         * gst/gstelement.h:
11913           These functions take const taglists
11914         * gst/gstpad.c: (gst_pad_proxy_getcaps):
11915           fix memleak
11916         * gst/gstpad.c: (gst_pad_event_default):
11917           make more effort on handling discont and clocks, g_warn if everything
11918           fails
11919         * gst/gststructure.c: (gst_structure_remove_fields),
11920         (gst_structure_remove_fields_valist):
11921         * gst/gststructure.h:
11922           add gst_structure_remove_fields(_valist)
11923         * gst/gsttag.c:
11924           fix doc glitch
11925
11926 2004-01-28  David Schleef  <ds@schleef.org>
11927
11928         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
11929         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
11930         Fix memory leakage of gst_caps_to_string().
11931
11932         Use GST_PTR_FORMAT instead of gst_caps_to_string():
11933         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
11934         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
11935         (gst_spider_identity_sink_loop_type_finding):
11936         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11937         (find_suggest):
11938         * gst/gstpad.c: (gst_pad_try_relink_filtered),
11939         (gst_pad_set_explicit_caps):
11940         * gst/parse/grammar.y:
11941
11942 2004-01-28  David Schleef  <ds@schleef.org>
11943
11944         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
11945         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
11946         * docs/random/ds/0.9-suggested-changes: Notes from Company.
11947         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
11948         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
11949         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
11950         (gst_debug_log_default), (_gst_info_printf_extension),
11951         (_gst_info_printf_extension_arginfo):  Add printf extension.
11952         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
11953         * gst/gststructure.c: (gst_structure_to_string),
11954         (_gst_structure_parse_value): Use gst_value_deserialize() and
11955         remove old code.
11956         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
11957         (gst_value_deserialize_boolean), (gst_strtoi),
11958         (gst_value_deserialize_int), (gst_value_deserialize_double),
11959         (gst_value_deserialize_string), (gst_value_deserialize): Implement
11960         a bunch of deserialize functions and gst_value_deserialize.
11961         * gst/gstvalue.h: er, _de_serialize, not unserialize
11962         * testsuite/caps/string-conversions.c: (main): We don't currently
11963         handle (float) in caps, so convert these to (double).
11964         * testsuite/debug/Makefile.am: Add new test for the printf extension
11965         * testsuite/debug/printf_extension.c: (main): same
11966
11967 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11968
11969         * docs/random/company/time:
11970           Add some docs about clocking and time
11971
11972 2004-01-28  Julien MOUTTE <julien@moutte.net>
11973
11974         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
11975
11976 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11977
11978         * docs/pwg/advanced-clock.xml:
11979         * docs/pwg/advanced-dparams.xml:
11980         * docs/pwg/advanced-events.xml:
11981         * docs/pwg/advanced-interfaces.xml:
11982         * docs/pwg/advanced-midi.xml:
11983         * docs/pwg/advanced-request.xml:
11984         * docs/pwg/advanced-scheduling.xml:
11985         * docs/pwg/advanced-tagging.xml:
11986         * docs/pwg/advanced-types.xml:
11987         * docs/pwg/appendix-checklist.xml:
11988         * docs/pwg/building-boiler.xml:
11989         * docs/pwg/building-chainfn.xml:
11990         * docs/pwg/building-filterfactory.xml:
11991         * docs/pwg/building-pads.xml:
11992         * docs/pwg/building-props.xml:
11993         * docs/pwg/building-signals.xml:
11994         * docs/pwg/building-state.xml:
11995         * docs/pwg/building-testapp.xml:
11996         * docs/pwg/intro-basics.xml:
11997         * docs/pwg/intro-preface.xml:
11998         * docs/pwg/other-autoplugger.xml:
11999         * docs/pwg/other-sink.xml:
12000         * docs/pwg/other-source.xml:
12001         * docs/pwg/titlepage.xml:
12002           fix up id's
12003
12004 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12005
12006         * docs/95NonPath:
12007         * docs/HACKING:
12008         * docs/README:
12009         * docs/building-the-docs-on-debian:
12010           collect relevant bits of doc info
12011
12012 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12013
12014         * docs/pwg/advanced_tagging.xml:
12015           Half-assed commit so Thomas can re-arrange document IDs here to be
12016           consistent, too.
12017
12018 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12019
12020         * docs/manual/autoplugging.xml:
12021         * docs/manual/bins-api.xml:
12022         * docs/manual/bins.xml:
12023         * docs/manual/buffers-api.xml:
12024         * docs/manual/buffers.xml:
12025         * docs/manual/clocks.xml:
12026         * docs/manual/components.xml:
12027         * docs/manual/cothreads.xml:
12028         * docs/manual/debugging.xml:
12029         * docs/manual/dparams-app.xml:
12030         * docs/manual/dynamic.xml:
12031         * docs/manual/elements-api.xml:
12032         * docs/manual/elements.xml:
12033         * docs/manual/factories.xml:
12034         * docs/manual/gnome.xml:
12035         * docs/manual/goals.xml:
12036         * docs/manual/helloworld.xml:
12037         * docs/manual/helloworld2.xml:
12038         * docs/manual/init-api.xml:
12039         * docs/manual/intro.xml:
12040         * docs/manual/links-api.xml:
12041         * docs/manual/links.xml:
12042         * docs/manual/manual.xml:
12043         * docs/manual/motivation.xml:
12044         * docs/manual/pads-api.xml:
12045         * docs/manual/pads.xml:
12046         * docs/manual/plugins-api.xml:
12047         * docs/manual/plugins.xml:
12048         * docs/manual/programs.xml:
12049         * docs/manual/queues.xml:
12050         * docs/manual/quotes.xml:
12051         * docs/manual/schedulers.xml:
12052         * docs/manual/states-api.xml:
12053         * docs/manual/states.xml:
12054         * docs/manual/threads.xml:
12055         * docs/manual/typedetection.xml:
12056         * docs/manual/xml.xml:
12057           use chapter, part, section or misc as id starts for all bits
12058
12059 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12060
12061         * docs/gst/gstreamer-sections.txt:
12062           Fix up TITLE of the sections
12063
12064 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12065
12066         * docs/pwg/advanced_interfaces.xml:
12067           Add documentation on propertyprobing.
12068         * docs/pwg/advanced_events.xml:
12069         * docs/pwg/advanced_tagging.xml:
12070         * docs/pwg/building_boiler.xml:
12071         * docs/pwg/building_filterfactory.xml:
12072         * docs/pwg/pwg.xml:
12073           Move filterfactory and tagging into their own chapter, add a chapter
12074           on events. all these are empty placeholders that will be filled in
12075           some day.
12076
12077 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12078
12079         * docs/pwg/advanced_interfaces.xml:
12080           Docs for mixer interface. Also a check for website uploading.
12081
12082 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12083
12084         * docs/HACKING:
12085         * docs/Makefile.am:
12086         * docs/faq/Makefile.am:
12087         * docs/gst/Makefile.am:
12088         * docs/gst/tmpl/gstelement.sgml:
12089         * docs/gst/tmpl/gstplugin.sgml:
12090         * docs/gst/tmpl/gstreamer-unused.sgml:
12091         * docs/libs/Makefile.am:
12092         * docs/manual/Makefile.am:
12093         * docs/manuals.mak:
12094         * docs/pwg/Makefile.am:
12095         * docs/upload.mak:
12096           Separate out upload target and make it similar for
12097           both docbook and gtk-doc docs
12098
12099 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12100
12101         * docs/manuals.mak:
12102           Fix upload target to work with freedesktop
12103
12104 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12105
12106         * docs/pwg/advanced_types.xml:
12107           Add notes on creating your own types.
12108         * docs/pwg/building_boiler.xml:
12109         * docs/pwg/building_pads.xml:
12110         * docs/pwg/building_state.xml:
12111           Add some stuff about how to retrieve values from structures, how
12112           that relates to types and change layout slightly again to be almost
12113           perfect.
12114
12115 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12116
12117         * docs/pwg/advanced_dparams.xml:
12118         * docs/pwg/advanced_scheduling.xml:
12119           Change index layout slightly.
12120
12121 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12122
12123         * docs/pwg/advanced_clock.xml:
12124         * docs/pwg/advanced_interfaces.xml:
12125         * docs/pwg/advanced_midi.xml:
12126           General placeholders for now.
12127         * docs/pwg/advanced_request.xml:
12128           Explanation about sometimes and request pads.
12129         * docs/pwg/advanced_scheduling.xml:
12130           Concept of bytestream, loopfunctions and schedulers.
12131         * docs/pwg/building_boiler.xml:
12132           Add something about plugin-init.
12133
12134 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12135
12136         * docs/pwg/building_pads.xml:
12137           Fix broken docbook
12138
12139 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12140
12141         * docs/pwg/advanced_interfaces.xml:
12142         * docs/pwg/pwg.xml:
12143           Add as a placeholder for future filling-in.
12144         * docs/pwg/basics_autoplugging.xml:
12145         * docs/pwg/basics_buffers.xml:
12146         * docs/pwg/basics_elements.xml:
12147         * docs/pwg/basics_events.xml:
12148         * docs/pwg/basics_plugins.xml:
12149         * docs/pwg/basics_types.xml:
12150           Remove, because unused (this is all in intro_basics.xml).
12151         * docs/pwg/building_signals.xml:
12152           Short intro to signals + reference to GObject docs - we really
12153           shouldn't go into these sort of things to deply because we don't
12154           use them that extensively anyway.
12155         * docs/pwg/building_state.xml:
12156           Explanation of states. Benjamin, please check.
12157         * docs/pwg/building_testapp.xml:
12158           Put everything in one page - putting only a few lines of content
12159           per page doesn't really make sense.
12160
12161           Time to get into the advanced topics. ;).
12162
12163 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12164
12165         * docs/pwg/advanced_types.xml:
12166           Finish documenting the current state of mimetypes.
12167         * docs/pwg/building_boiler.xml:
12168         * docs/pwg/building_chainfn.xml:
12169         * docs/pwg/building_pads.xml:
12170         * docs/pwg/building_props.xml:
12171         * docs/pwg/building_testapp.xml:
12172           Start documenting the "how to build a simple audio filter" part
12173           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12174           states and (maybe?) a short introduction to capsnego in the chapter
12175           on pads (building_pads.xml). Capsnego should probably be explained
12176           fully in advanced_capsnego.xml or so.
12177
12178 2004-01-26  David Schleef  <ds@schleef.org>
12179
12180         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12181         * gst/gstpad.h: Add new function to allow element to (somewhat)
12182         specify non-fixed caps on a pad.
12183         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12184         that I added a few weeks ago.
12185
12186 2004-01-26  David Schleef  <ds@schleef.org>
12187
12188         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12189           making try_set_caps() work with non-fixed caps.
12190
12191 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12192
12193         * docs/pwg/advanced_types.xml:
12194         * docs/pwg/intro_basics.xml:
12195         * docs/pwg/intro_preface.xml:
12196         * docs/pwg/pwg.xml:
12197         * docs/pwg/titlepage.xml:
12198           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12199           in here (docs/random/mimetypes), and will from there on work on both
12200           updating outdated parts and adding missing parts.
12201           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12202
12203 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12204
12205         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12206           policy is set
12207
12208 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12209
12210         * gst/gstelement.h:
12211           remove gst_element_factory_get_version. It doesn't exist anymore.
12212         * gst/gstplugin.c:
12213         * gst/gstplugin.h:
12214           remove gst_plugin_set_name and change gst_plugin_get_longname to
12215           gst_plugin_get_description to match code.
12216         * gst/gsterror.h:
12217           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12218         * gst/gstpad.c: (gst_pad_try_set_caps):
12219           make it work with nonfixed caps.
12220           Note that even in the nonfixed case the link function of the pad
12221           that tries to set caps isn't called.
12222
12223 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12224
12225         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12226           fix bug where buffer was not assembled correctly
12227         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12228           silence by default
12229         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12230           only seek if there's no more buffers that could work without seeking
12231
12232 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12233
12234         * gst/gsttag.c: (_gst_tag_initialize):
12235         * gst/gsttag.h:
12236           Add application tag (for encoding/muxing app).
12237
12238 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12239
12240         * autogen.sh:
12241           make autopoint force, and libtoolize not copy
12242         * common/m4/as-docbook.m4:
12243           added docbook xml catalog setup check
12244         * common/m4/gst-doc.m4:
12245           use docbook check
12246
12247 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12248
12249         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12250         * gst/gsttag.h:
12251           add GstTagFlag
12252
12253 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12254
12255         * docs/gst/gstreamer-sections.txt:
12256         * docs/gst/tmpl/gst.sgml:
12257         * docs/gst/tmpl/gstbuffer.sgml:
12258         * docs/gst/tmpl/gstclock.sgml:
12259         * docs/gst/tmpl/gstelement.sgml:
12260         * docs/gst/tmpl/gstreamer-unused.sgml:
12261         * docs/gst/tmpl/gstxml.sgml:
12262           sync latest API changes to docs
12263
12264 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12265
12266         * gst/gstpluginfeature.c:
12267           fix doc snippet
12268         * tools/gst-inspect.c: (print_element_list):
12269           fix output of typefind
12270           add GPL header
12271         * tools/gst-launch.c:
12272           add GPL header
12273
12274 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12275
12276         * gst/elements/Makefile.am:
12277         * gst/elements/gstelements.c:
12278         * gst/elements/gsttypefindelement.c:
12279         * gst/elements/gsttypefindelement.h:
12280         * po/POTFILES.in:
12281         * po/fr.po:
12282         * po/nl.po:
12283           renamed gsttypefindelement to gsttypefind, conserving CVS history
12284
12285 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12286
12287         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12288         * gst/gsttag.h:
12289           add some tags used in ogg as well
12290           fix _ in replaygain tags
12291
12292 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12293
12294         * gst/gsterror.h:
12295           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12296
12297 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12298
12299         * gst/gstelement.c: (gst_element_error_full):
12300         * gst/gstelement.h:
12301           change _extended to _full
12302
12303 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12304
12305         reviewed by: <delete if not using a buddy>
12306
12307         * docs/gst/tmpl/gst.sgml:
12308         * docs/gst/tmpl/gstbuffer.sgml:
12309         * docs/gst/tmpl/gstclock.sgml:
12310         * docs/gst/tmpl/gstelement.sgml:
12311         * docs/gst/tmpl/gstreamer-unused.sgml:
12312         * docs/gst/tmpl/gstxml.sgml:
12313         * gst/gstelement.c: (gst_element_error_full):
12314         * gst/gstelement.h:
12315
12316 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12317
12318         * gst/gstelement.h: fix _gst_element_error_printf prototype
12319
12320 2004-01-20  David Schleef  <ds@schleef.org>
12321
12322         * gst/gststructure.c: (gst_structure_to_string):
12323         Convert function to use gst_value_serialize().
12324         * gst/gstvalue.c: (gst_value_serialize_list),
12325         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12326         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12327         (gst_value_serialize_int), (gst_value_serialize_double),
12328         (gst_string_wrap), (gst_value_serialize_string),
12329         (gst_value_serialize), (gst_value_deserialize):
12330         * gst/gstvalue.h:
12331         Add implementations for serialize.
12332
12333 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12334
12335         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12336         we want to keep that one in the future or change xvidenc.c to use 
12337         another error.
12338
12339 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12340
12341         * gst/gstelement.c: (_gst_element_error_printf):
12342         * gst/gstelement.h:
12343           privatise function
12344
12345 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12346
12347         * docs/random/error:
12348           doc explaining error system
12349         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12350           cleanup
12351
12352 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12353
12354         * gst/gst-i18n-app.h:
12355         * gst/gst-i18n-lib.h:
12356           remove inclusion of config.h
12357         * po/POTFILES.in:
12358         * po/nl.po:
12359           add gst/gstelement.c
12360
12361 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12362
12363         * po/nl.po: updated Dutch translation
12364
12365 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12366
12367         * gst/gsterror.c: (_gst_core_errors_init),
12368         (_gst_library_errors_init), (_gst_resource_errors_init),
12369         (_gst_stream_errors_init):
12370         remove ending punctuation dots
12371
12372 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12373
12374         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12375         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12376         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12377         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12378         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12379         use GST_ERROR_SYSTEM
12380
12381 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12382
12383         * gst/gstelement.c: (gst_element_error_printf),
12384         (gst_element_error_extended):
12385         * gst/gstelement.h:
12386           add a helper printf function so we can have NULL values passed.
12387
12388 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12389
12390         * gst/gstelement.h:
12391           add G_STMT macros to gst_element_error, which isn't strictly
12392           necessary but people tell me to anyway.
12393
12394 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12395
12396         * gst/Makefile.am:
12397         * gst/autoplug/gstspideridentity.c:
12398         (gst_spider_identity_sink_loop_type_finding):
12399         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12400         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12401         (gst_filesink_close_file), (gst_filesink_handle_event),
12402         (gst_filesink_chain):
12403         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12404         (gst_filesrc_map_region), (gst_filesrc_get_read),
12405         (gst_filesrc_open_file):
12406         * gst/elements/gstidentity.c: (gst_identity_chain):
12407         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12408         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12409         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12410         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12411         * gst/gst.h:
12412         * gst/gst_private.h:
12413         * gst/gstelement.c: (gst_element_class_init),
12414         (gst_element_default_error), (gst_element_error_func),
12415         (gst_element_error_extended):
12416         * gst/gstelement.h:
12417         * gst/gsterror.c: (_gst_core_errors_init),
12418         (_gst_library_errors_init), (_gst_resource_errors_init),
12419         (_gst_stream_errors_init), (gst_error_get_message):
12420         * gst/gsterror.h:
12421         * gst/gstinfo.c: (_gst_debug_init):
12422         * gst/gstmarshal.list:
12423         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12424         (gst_pad_recover_caps_error), (gst_pad_pull):
12425         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12426         * gst/schedulers/gstbasicscheduler.c:
12427         (gst_basic_scheduler_chainhandler_proxy),
12428         (gst_basic_scheduler_gethandler_proxy),
12429         (gst_basic_scheduler_cothreaded_chain):
12430         * po/POTFILES.in:
12431         * po/fr.po:
12432         * po/nl.po:
12433           change error signal
12434           add error categories
12435
12436 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12437
12438         * gst/gsttag.c: (_gst_tag_initialize):
12439         * gst/gsttag.h:
12440         Add replaygain tag
12441
12442 2004-01-18  Colin Walters  <walters@verbum.org>
12443
12444         * examples/retag/retag.c: Call gst_init before processing
12445         program args.  Add g_assert to _link_many call.
12446
12447 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12448
12449         * gst/gstpad.c: (gst_pad_alloc_buffer):
12450           Return a newly allocated buffer when the pad has no peer.
12451
12452 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12453
12454         * gst/gstclock.c: (gst_clock_get_time):
12455           make it compile with gcc 2.95 again.
12456           Patch by Scott Wheeler
12457
12458 2004-01-15  David Schleef  <ds@schleef.org>
12459
12460         * gst/gstcaps.h:
12461         Added gst_caps_is_simple() macro.
12462         * testsuite/caps/caps.c: (test1):
12463         * testsuite/caps/intersect2.c: (main):
12464         * testsuite/caps/intersection.c: (main):
12465         Fixes to make 'make check' work again after removing
12466         gst_caps_is_chained().
12467
12468 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12469
12470         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12471         and additions to the MIDI document.
12472
12473 2004-01-15  David Schleef  <ds@schleef.org>
12474
12475         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12476         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12477         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12478
12479 2004-01-15  David Schleef  <ds@schleef.org>
12480
12481         * gst/gstqueue.c:
12482         * gst/gstqueue.h:
12483         Fix the spelling of "treshold" and make min_threshold actually
12484         affect the queue.
12485
12486 2004-01-15  David Schleef  <ds@schleef.org>
12487
12488         * gst/gstcaps.c:
12489         Add lots of documentation.
12490         * gst/gstcaps.h:
12491         Deprecate a few functions.
12492         * gst/gstpad.c:
12493         Removed use of deprecated functions.
12494
12495 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12496
12497         * gst/gstpad.c: (gst_pad_is_linked):
12498         * gst/gstpad.h:
12499           implement gst_pad_is_linked
12500         * gst/gstelement.h:
12501           reserve space for initiate_state_change
12502
12503 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12504
12505         * gst/autoplug/gstspideridentity.c:
12506         (gst_spider_identity_sink_loop_type_finding):
12507           break infinite loop by just returning instead of looping
12508         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12509           set event time difference correctly. Set it to 1 second instead
12510           of 100ms to be more tolerant
12511         * gst/gstelement.c: (gst_element_set_time):
12512           add debugging output
12513
12514 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12515
12516         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12517           query if buffers are inside the pool, ignore events
12518
12519 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12520
12521         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12522         (gst_clock_set_speed), (gst_clock_set_active),
12523         (gst_clock_is_active), (gst_clock_reset),
12524         (gst_clock_handle_discont):
12525         * gst/gstclock.h:
12526           deprecate old interface and disable functions that aren't in use
12527           anymore.
12528         * gst/gstelement.h:
12529         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12530         (gst_element_set_time), (gst_element_adjust_time):
12531           add concept of "element time" and functions to get/set this time.
12532         * gst/gstelement.c: (gst_element_change_state):
12533           update element time correctly.
12534         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12535           This is a debug message, not a g_critical.
12536         * gst/gstpad.c: (gst_pad_event_default):
12537           handle discontinuous events right with element time.
12538         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12539           update to clocking fixes.
12540           set clocks on elements in READY=>PAUSED. The old behaviour caused
12541           a wrong element time on the first element that started playing.
12542         * gst/schedulers/gstbasicscheduler.c:
12543         (gst_basic_scheduler_class_init):
12544         * gst/schedulers/gstoptimalscheduler.c:
12545         (gst_opt_scheduler_class_init):
12546           remove code that just implements the default behaviour.
12547         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12548           update to use new clocking functions
12549         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12550         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12551           update to test new element time.
12552         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12553           use _get_allowed_caps instead of _get_caps. This catches filtered
12554           caps correctly.
12555         * testsuite/debug/commandline.c:
12556           update for new GST_DEBUG syntax.
12557         * testsuite/threads/Makefile.am:
12558           disable a test that only works sometimes.
12559
12560 2004-01-13  Julien MOUTTE <julien@moutte.net>
12561
12562         * po/LINGUAS: Adding fr.
12563         * po/fr.po: Adding french translation.
12564
12565 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12566
12567         * gst/parse/grammar.y:
12568         * po/POTFILES.in:
12569         * po/nl.po:
12570         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12571           translate parsing error messages
12572
12573 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12574
12575         * po/POTFILES.in: adding gst-launch
12576         * po/nl.po: updated translation, all 99 strings translated
12577         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12578         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12579           fix strings for translation
12580
12581 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12582
12583         * gst/gst.c:
12584           - capitalize beginnings of popt options
12585           - fix strings for translation
12586           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12587
12588 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12589
12590         * po/README: add some notes on how to update translations
12591
12592 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12593
12594         * ABOUT-NLS: removed, is autogenerated from autopoint
12595         * autogen.sh: add autopoint stuff
12596         * configure.ac: fix up gettext stuff
12597         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12598         * gst/elements/gsttypefindelement.c: add header include
12599         * gst/gettext.h: add header, copy from system-installed header
12600         * gst/gst-i18n-app.h: to be included by each app having translations
12601         * gst/gst-i18n-lib.h: to be included by each lib having translations
12602         * gst/gst.c: (init_pre): fix up gettext calls
12603         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12604         * po/LINGUAS: the new way to specify translations present
12605         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12606         * po/Makevars: the variables filled in for GStreamer
12607         * po/POTFILES.in: added new files with translations
12608         * po/de.po: has new strings
12609         * po/nl.po: readded, has new strings
12610
12611 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12612
12613         * gst/gsttag.c: fix some strings marked for translation
12614
12615 2004-01-13  Iain <iain@prettypeople.org>
12616
12617         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12618         group when we add an element to it, cos we unref it when we remove one
12619
12620 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12621
12622         * testsuite/debug/commandline.c: (debug_not_reached):
12623         * testsuite/debug/output.c: (check_message):
12624           fix testsuite
12625
12626 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12627
12628         * examples/cutter/.cvsignore:
12629         * examples/helloworld/.cvsignore:
12630         * examples/launch/.cvsignore:
12631         * examples/manual/.cvsignore:
12632         * examples/mixer/.cvsignore:
12633         * examples/pingpong/.cvsignore:
12634         * examples/plugins/.cvsignore:
12635         * examples/queue/.cvsignore:
12636         * examples/queue2/.cvsignore:
12637         * examples/queue3/.cvsignore:
12638         * examples/queue4/.cvsignore:
12639         * examples/retag/.cvsignore:
12640         * examples/thread/.cvsignore:
12641         * examples/typefind/.cvsignore:
12642         * examples/xml/.cvsignore:
12643         * gst/.cvsignore:
12644         * gst/autoplug/.cvsignore:
12645         * gst/elements/.cvsignore:
12646         * gst/indexers/.cvsignore:
12647         * gst/parse/.cvsignore:
12648         * gst/registries/.cvsignore:
12649         * gst/schedulers/.cvsignore:
12650         * libs/gst/bytestream/.cvsignore:
12651         * libs/gst/control/.cvsignore:
12652         * libs/gst/getbits/.cvsignore:
12653         * tests/.cvsignore:
12654         * tests/bufspeed/.cvsignore:
12655         * tests/instantiate/.cvsignore:
12656         * tests/memchunk/.cvsignore:
12657         * tests/muxing/.cvsignore:
12658         * tests/sched/.cvsignore:
12659         * tests/seeking/.cvsignore:
12660         * tests/threadstate/.cvsignore:
12661         * testsuite/.cvsignore:
12662         * testsuite/caps/.cvsignore:
12663         * testsuite/cleanup/.cvsignore:
12664         * testsuite/dynparams/.cvsignore:
12665         * testsuite/plugin/.cvsignore:
12666         * tools/.cvsignore:
12667           update - this is huge, because it includes *.bb, *.bbg and *.da files
12668           which are generated for gcov.
12669
12670 2004-01-11  David Schleef  <ds@schleef.org>
12671
12672         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12673         a function to parse integers in ways that strto[u]l() does not.
12674
12675 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12676
12677         * tools/gst-inspect.c: (print_caps):
12678           improve output of caps a bit
12679
12680 2004-01-11  David Schleef  <ds@schleef.org>
12681
12682         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12683         inherit correct flags (READONLY and DONTKEEP).
12684
12685 2004-01-11  David Schleef  <ds@schleef.org>
12686
12687         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12688         (gst_filesrc_map_region):
12689         * gst/gstbuffer.c: (_gst_buffer_initialize),
12690         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12691         (gst_buffer_new), (gst_buffer_create_sub),
12692         (gst_buffer_is_span_fast), (gst_buffer_span):
12693         * gst/gstbuffer.h:
12694         Change GstBuffer private structure element names. (all files)
12695         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12696         (gst_queue_link):
12697         * gst/gstqueue.h:
12698         Implement getcaps/pad_link functions that handle the case where
12699         there are data in the queue.
12700
12701 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12702
12703         * gst/elements/gstbufferstore.c:
12704           initialize debugging structure correctly
12705         * gst/elements/gsttee.c: (gst_tee_set_property):
12706           g_object_notify when property was changed
12707         * gst/elements/gsttypefindelement.c:
12708         (gst_type_find_element_change_state):
12709           clear caps correctly
12710
12711 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12712
12713         * gst/gstqueue.c: (gst_queue_init):
12714           Use better defaults for when a queue should block. This
12715           gets rid of jerky playback for quite a few files.
12716           It takes more memory.
12717
12718 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12719
12720         (gst_xml_registry_parse_padtemplate):
12721           make critical message slightly more useful
12722
12723 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12724
12725         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12726         (gst_debug_message_get), (gst_debug_log_default):
12727         * gst/gstinfo.h:
12728           Change gst_debug_log(_valist) to take a const format string.
12729           Change prototype of log function and functions using those to 
12730           take a GstDebugMessage instead of a string that requires using
12731           gst_debug_message_get.
12732
12733 2004-01-08  David Schleef  <ds@schleef.org>
12734
12735         * Makefile.am:
12736         * configure.ac:
12737         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12738         and -ftest-coverage, which allows gcov to show information about
12739         testsuite coverage.
12740
12741 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12742
12743         * gst/gstutils.h:
12744           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12745           GST_PARENT_CALL_WITH_DEFAULT
12746         * gst/elements/gstaggregator.c: 
12747         * gst/elements/gstbufferstore.c: 
12748         * gst/elements/gstfakesink.c: 
12749         * gst/elements/gstfakesrc.c: 
12750         * gst/elements/gstfdsink.c: 
12751         * gst/elements/gstfdsrc.c: 
12752         * gst/elements/gstfilesink.c: 
12753         * gst/elements/gstfilesrc.c: 
12754         * gst/elements/gstidentity.c: 
12755         * gst/elements/gstmd5sink.c: 
12756         * gst/elements/gstmultidisksrc.c:
12757         * gst/elements/gstpipefilter.c: 
12758         * gst/elements/gstshaper.c:
12759         * gst/elements/gststatistics.c:
12760         * gst/elements/gsttee.c:
12761         * gst/elements/gsttypefindelement.c:
12762           use them.
12763
12764 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
12765
12766         * docs/gst/gstreamer-docs.sgml: remove props
12767         * docs/gst/gstreamer-sections.txt: remove props
12768         * docs/gst/tmpl/gst.sgml:
12769         * docs/gst/tmpl/gstbin.sgml:
12770         * docs/gst/tmpl/gstbuffer.sgml:
12771         * docs/gst/tmpl/gstcaps.sgml:
12772         * docs/gst/tmpl/gstclock.sgml:
12773         * docs/gst/tmpl/gstelement.sgml:
12774         * docs/gst/tmpl/gstindex.sgml:
12775         * docs/gst/tmpl/gstobject.sgml:
12776         * docs/gst/tmpl/gstpad.sgml:
12777         * docs/gst/tmpl/gstpadtemplate.sgml:
12778         * docs/gst/tmpl/gstreamer-unused.sgml:
12779         * docs/gst/tmpl/gstthread.sgml:
12780         * docs/gst/tmpl/gstxml.sgml:
12781           sync with code reorganization
12782
12783 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
12784
12785         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12786         Make the 'Could not find compatible pad' message more informative.
12787
12788 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12789                                                                                 
12790         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
12791           Fix for if we pass NULL as property to location.
12792         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
12793         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
12794           Fix for instantiate-test (see below).
12795         * gst/gststructure.c: (_gst_structure_parse_value):
12796           Fix compile error on gcc-2.96.
12797         * configure.ac:
12798         * tests/Makefile.am:
12799         * tests/instantiate/Makefile.am:
12800         * tests/instantiate/create.c: (create_all_elements), (main):
12801           Add a test that instantiates all elements. This makes it easy to
12802           track dead code for old API/design (like setting event functions
12803           on sink pads and so on).
12804
12805 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
12806
12807         * gst/gstcaps.c: (gst_caps_append_structure):
12808           Move the poisoning to allow a NULL structure
12809         * gst/gstevent.c: (_gst_event_free):
12810           When freeing a navigation event, free the structure
12811           also
12812
12813 2004-01-04  David Schleef  <ds@schleef.org>
12814
12815         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12816         Remove usage of gst_pad_proxy_fixate.
12817         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
12818         (gst_caps_split_one), (gst_caps_replace):
12819         Add poisoning code.
12820         * gst/gstmarshal.list:
12821         Add pointer__pointer for fixate signal
12822         * gst/gstpad.c: (gst_real_pad_class_init),
12823         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12824         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
12825         (gst_pad_set_explicit_caps), (gst_pad_template_new):
12826         Add poisoning code. Add fixate signal on RealPad. Change
12827         set_explicit_caps() to take const GstCaps, like try_set_caps().
12828         * gst/gstpad.h:
12829         * testsuite/caps/Makefile.am:
12830         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
12831
12832 2004-01-03  David Schleef  <ds@schleef.org>
12833
12834         * gst/elements/gsttypefindelement.c:
12835         (gst_type_find_element_have_type), (gst_type_find_element_init):
12836         Use gst_pad_use_explicit_caps for src pad.
12837         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
12838         before using it.
12839
12840 2004-01-03  David Schleef  <ds@schleef.org>
12841
12842         * gst/gstelement.c: (gst_element_link_pads_filtered),
12843         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
12844         that linking was successful.
12845         * gst/gstpad.c: (gst_pad_link_free),
12846         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
12847         (gst_pad_link_try), (gst_pad_link_unnegotiate),
12848         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
12849         GstPadLinkReturn correctly between functions, and don't fail
12850         when DELAYED is used (DELAYED is very important).  Better
12851         cleanup on unlinking and unnegotiation.  Should fix some spider
12852         bugs.
12853
12854 2004-01-02  David Schleef  <ds@schleef.org>
12855
12856         * gst/gstelement.c: (gst_element_class_init),
12857         (gst_element_base_class_init): ->padtemplates should be cleared
12858         in base_init, since we need to have a fresh list for every
12859         class.  (Alternately, we chould copy the list and share the
12860         actual pad templates (not the list), but that would require
12861         changing every plugin to move pad template registration from
12862         base_init to class_init.)
12863
12864 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12865
12866         * gst/gstelement.c: (gst_element_class_add_pad_template):
12867           Refuse registering a pad template if another pad template
12868           with the same name already exists (#114715).
12869
12870 2004-01-02  David Schleef  <ds@schleef.org>
12871
12872         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
12873         (gst_caps_is_equal_fixed): Add new function.
12874         * gst/gstcaps.h: ditto.
12875         * gst/gstpad.c: (gst_real_pad_class_init),
12876         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
12877         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
12878         check new caps against existing caps -- if they're the same, return
12879         OK without renegotiating.  caps-nego-failed signal fixed so that
12880         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
12881         to save an extra caps copy.  Don't complete negotiation if a pad
12882         link function returns DELAYED.
12883
12884 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12885
12886         * gst/gstpad.c: (gst_pad_try_relink_filtered):
12887           Fix wrong g_return_if_fail
12888
12889 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
12890
12891         * gst/gstbin.c: (gst_bin_class_init):
12892         Change the marshalling of element_added/element_removed
12893         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
12894         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
12895
12896 2004-01-01  David Schleef  <ds@schleef.org>
12897
12898         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12899         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
12900         (gst_pad_use_explicit_caps):
12901         * gst/gstpad.h:
12902         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
12903         to use an internal getcaps and link fuction so that negotiation
12904         always results in the explicitly set caps.
12905         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
12906         are particularly useful for decoders.
12907
12908 2003-12-31  David Schleef  <ds@schleef.org>
12909
12910         * gst/elements/gstidentity.c: (gst_identity_class_init),
12911         (gst_identity_init), (gst_identity_chain),
12912         (gst_identity_set_property), (gst_identity_get_property):
12913         * gst/elements/gstidentity.h:
12914         * gst/gstqueue.c: (gst_queue_init):
12915           Negotiation fixes.
12916
12917 2003-12-31  David Schleef  <ds@schleef.org>
12918
12919         * gst/gstcaps.c: (gst_caps_intersect),
12920         (_gst_caps_normalize_foreach), (gst_caps_normalize):
12921           Implement gst_caps_normalize().
12922         * testsuite/caps/normalisation.c: (main):
12923           Add an additional test
12924
12925 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12926
12927         * gst/gstqueue.c: (gst_queue_init):
12928           use gst_pad_proxy_getcaps()
12929
12930 2003-12-31  David Schleef  <ds@schleef.org>
12931
12932         * gst/elements/gstshaper.c: (gst_shaper_link):
12933         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12934         * gst/gstqueue.c: (gst_queue_link):
12935           Negotiation fixes.
12936
12937 2003-12-31  David Schleef  <ds@schleef.org>
12938
12939         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
12940         * gst/gstpad.h: Add functions that are useful as default pad
12941         link and fixate functions for elements.
12942
12943 2003-12-30  David Schleef  <ds@schleef.org>
12944
12945         * gst/gstpad.c: (gst_pad_link_try):
12946           Fix segfault when attempting to return to old caps
12947
12948 2003-12-29  David Schleef  <ds@schleef.org>
12949
12950         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
12951         (gst_caps_structure_simplify), (gst_caps_simplify):
12952         * gst/gstcaps.h:
12953           Add simplify function
12954         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
12955         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
12956         * gst/gstpad.h:
12957           Copy over srcnotify, sinknotify when calling old pad_link
12958           functions.  Add new is_negotiated() function.
12959         * gst/gststructure.c: (gst_structure_copy):
12960           Fix an incredibly stupid bug that should have been noticed
12961           weeks ago.  _copy() returned the argument, not the new copy.
12962
12963 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12964
12965         * gst/gstcaps.c: (gst_caps_append):
12966           add sanity checks
12967         * gst/gstcaps.h: (gst_caps_debug):
12968           remove, it doesn't exist anymore.
12969         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
12970         (gst_element_threadsafe_properties_post_run):
12971           make debugging messages not clutter up THREAD debug category
12972         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
12973         (gst_element_change_state):
12974           update to new caps API
12975         * gst/gstinterface.c: (gst_implements_interface_cast):
12976           don't put vital code in g_return_if_fail
12977         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
12978         (gst_pad_link_filtered):
12979           add pst_pad_try_link and use it.
12980         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
12981           implement correctly, deprecate first one.
12982         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
12983           add and implement.
12984         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
12985           implement.
12986         (gst_pad_get_negotiated_caps):
12987           add and implement. Make GST_PAD_CAPS call this function.
12988         (gst_pad_get_caps):
12989           remove unneeded check..
12990         (gst_pad_recover_caps_error):
12991           disable, always return FALSE.
12992         (gst_real_pad_dispose):
12993           don't free caps and appfilter anymore, they're unused.
12994         * gst/gstpad.h:
12995           Reflect changes mentioned above.
12996         * gst/gstsystemclock.c: (gst_system_clock_wait):
12997           Make 'clock is way behind' a debugging message.
12998         * gst/gstthread.c: (gst_thread_change_state):
12999           Fix debugging message
13000
13001 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13002
13003         * gst/gstinfo.h:
13004           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13005         * docs/gst/tmpl/gstreamer-unused.sgml:
13006           removed all traces of cvs conflicts
13007
13008 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13009
13010         * configure.ac:
13011         * gst/schedulers/cothreads_compat.h:
13012         * libs/Makefile.am:
13013           remove last instances of wingo cothread usage
13014
13015 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13016
13017         * gst/gstplugin.c:
13018         * gst/gstversion.h.in:
13019         * gst/parse/grammar.y:
13020           change comment block from /** to /* when not gtk-doc comments
13021
13022 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13023
13024         * gst/gst.c: whitespace and doc style fixes
13025
13026 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13027
13028         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13029
13030 2003-12-24  Colin Walters  <walters@verbum.org>
13031
13032         * gst/elements/gsttypefindelement.c:
13033           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13034           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13035           Don't double-free caps.
13036
13037 2003-12-23  David Schleef  <ds@schleef.org>
13038
13039         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13040           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13041           Many little fixes and additions of debug statements to
13042           get rhythmbox working.
13043
13044 2003-12-23  Colin Walters  <walters@verbum.org>
13045
13046         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13047         Use GST_PAD_LINK_SUCCESSFUL.
13048
13049 2003-12-23  David Schleef  <ds@schleef.org>
13050
13051         * gst/elements/gstaggregator.c:
13052         * gst/elements/gsttee.c:
13053           Use gst_pad_proxy_getcaps().
13054         * gst/gstpad.c:
13055         * gst/gstpad.h:
13056           Add gst_pad_proxy_getcaps(), which filter elements can use
13057           as a generic getcaps implementation.
13058           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13059           was advertised.
13060
13061 2003-12-23  David Schleef  <ds@schleef.org>
13062
13063         * gst/gstpad.c:
13064           Rearrange/rewrite much of the pad negotiation code, since it
13065           resembled pasta.  This actually changes the way some
13066           negotiation works, since the previous code was inconsistent
13067           depending on how it was invoked.  Add (internal) structure
13068           GstPadLink, which is used to hold some information (more in
13069           the future) about the link between two pads.  Fixes a number
13070           of bugs, including random lossage of filter caps when the
13071           initial negotiation is delayed.  A few functions are still
13072           unimplemented.
13073         * gst/gstpad.h:
13074           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13075           these when testing GstPadLinkReturn values instead of comparing
13076           directly.
13077
13078 2003-12-23  David Schleef  <ds@schleef.org>
13079
13080         * gst/gstvalue.c: 
13081         * gst/gstvalue.h:
13082           Rearrange lots of code.  Change registration of compare function
13083           into registration of compare/serialize/deserialize functions.
13084           Doesn't include implementation of gst_value_[de]serialize(),
13085           but that should be easy.
13086
13087 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13088
13089         * docs/gst/gstreamer-sections.txt:
13090         * docs/gst/tmpl/gstprops.sgml: removed
13091         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13092           David removed props and caps code, so let's remove their docs as well.
13093           Removed all no longer existing symbols from gstreamer-sections.txt
13094           
13095 2003-12-22  Colin Walters  <walters@verbum.org>
13096
13097         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13098           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13099           of tags directly.
13100
13101 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13102
13103         * gst/elements/gstelements.c:
13104           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13105         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13106           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13107           gst_caps (peer).
13108
13109 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13110
13111         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13112         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13113         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13114         (gst_spider_identity_sink_loop_type_finding):
13115         * gst/autoplug/gstspideridentity.h:
13116           Fix autoplugging in spider element, so it works with new caps.
13117           This was mainly caused by identifying empty caps incorrectly.
13118
13119 2003-12-22  David Schleef  <ds@schleef.org>
13120
13121         * gststructure.c, gstvalue.c, gstvalue.h: Add
13122           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13123           using g_value_copy()
13124
13125 2003-12-21  David Schleef  <ds@schleef.org>
13126
13127         * many, many files: Merge CAPS branch.  This includes:
13128           - implemention of GstValue and several GstValue types
13129           - implemention of GstStructure
13130           - entire rewrite of GstCaps
13131           - removal of GstProps
13132           - many changes to GstPad to compensate for new caps paradigm
13133           - removal of GstBufferpool
13134         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13135         gstvalue.h, gst/gstcaps[2]*.[ch]:
13136           - rename gstcaps2.[ch] to gstcaps.[ch]
13137
13138 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13139
13140         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13141         (gst_queue_chain), (gst_queue_handle_src_event):
13142           implement timeout for sending events. Workaround for if the
13143           pipeline on this queue is not passing any data.
13144
13145 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13146                                                                                 
13147         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13148         * moved CVS to freedesktop.org
13149