tools/gst-launch.c: Don't block forever for the state change to complete, the pipelin...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-19  Wim Taymans  <wim@fluendo.com>
2
3         * tools/gst-launch.c: (check_intr), (event_loop), (main):
4         Don't block forever for the state change to complete, the
5         pipeline already did with a sensible timeout.
6
7 2005-07-19  Wim Taymans  <wim@fluendo.com>
8
9         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
10         Make sure we never call the create function is we
11         got deactivated.
12
13 2005-07-19  Andy Wingo  <wingo@pobox.com>
14
15         * gst/parse/parse.l: Attempt to solve bug #172815.
16
17 2005-07-19  Wim Taymans  <wim@fluendo.com>
18
19         * docs/design/part-clocks.txt:
20         * docs/design/part-events.txt:
21         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
22         Small docs updates.
23         Only update the seeking values when we are not
24         busy streaming.
25
26 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
27
28         * gst/base/gstbasesrc.c: (gst_base_src_loop):
29           Oops, ignore the result of gst_pad_push_event here.
30
31 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
32
33         * gst/base/gstbasesrc.c: (gst_base_src_loop),
34         (gst_base_src_activate_push):
35           Send discont event from the loop function, as pads
36           aren't activated yet in the activate_push handler.
37
38         * gst/gstbin.c: (bin_bus_handler):
39           Don't leak element name.
40
41 2005-07-18  Andy Wingo  <wingo@pobox.com>
42
43         * configure.ac: Use AS_LIBTOOL_TAGS.
44
45 2005-07-18  Wim Taymans  <wim@fluendo.com>
46
47         * docs/gst/gstreamer.types:
48         Remove deleted types.
49
50 2005-07-18  Wim Taymans  <wim@fluendo.com>
51
52         * check/elements/gstfakesrc.c: (GST_START_TEST):
53         * configure.ac:
54         * gst/Makefile.am:
55         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
56         (init_popt_callback):
57         * gst/gst.h:
58         * gst/gst_private.h:
59         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
60         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
61         * gst/gstbin.h:
62         * gst/gstbus.h:
63         * gst/gstconfig.h.in:
64         * gst/gstelement.c: (gst_element_class_init),
65         (gst_element_set_base_time), (gst_element_get_base_time),
66         (iterator_fold_with_resync), (gst_element_change_state),
67         (gst_element_dispose), (gst_element_get_bus):
68         * gst/gstelement.h:
69         * gst/gstelementfactory.h:
70         * gst/gsterror.c: (_gst_core_errors_init):
71         * gst/gsterror.h:
72         * gst/gstevent.h:
73         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
74         * gst/gstindex.c:
75         * gst/gstinfo.c: (_gst_debug_init):
76         * gst/gstmessage.c: (_gst_message_copy):
77         * gst/gstmessage.h:
78         * gst/gstminiobject.h:
79         * gst/gstobject.c:
80         * gst/gstobject.h:
81         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
82         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
83         * gst/gstpad.h:
84         * gst/gstparse.h:
85         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
86         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
87         (gst_pipeline_get_last_stream_time):
88         * gst/gstpipeline.h:
89         * gst/gstpluginfeature.h:
90         * gst/gstquery.h:
91         * gst/gstscheduler.c:
92         * gst/gstscheduler.h:
93         * gst/gststructure.h:
94         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
95         (gst_task_finalize), (gst_task_func), (gst_task_create),
96         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
97         (gst_task_stop), (gst_task_pause):
98         * gst/gsttask.h:
99         * gst/gsttypefind.h:
100         * gst/gsttypes.h:
101         * gst/registries/gstlibxmlregistry.c: (load_feature),
102         (gst_xml_registry_load), (gst_xml_registry_save_feature):
103         * gst/registries/gstxmlregistry.c:
104         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
105         * gst/schedulers/threadscheduler.c:
106         * libs/gst/control/dparammanager.h:
107         * tools/gst-inspect.c: (print_element_list),
108         (print_plugin_features), (print_element_features):
109         * tools/gst-xmlinspect.c: (print_element_list),
110         (print_plugin_info), (main):
111         Removed plugable schedulers.
112         Removed Scheduler/Manager from elements.
113         Removed gsttypes.h, rearranged includes.
114         Removed dependency pad<->element, element<>pipeline, and
115         various others,  fix includes.
116         implement gst_pad_get_parent() with gst_object_get_parent()
117         Make GstTask sefcontained.
118         Fix _get_state() on GstBin, it did not return ASYNC with a 0
119         timeout.
120         Fix endless loop in iterator_fold_with_resync.
121
122
123 2005-07-18  Wim Taymans  <wim@fluendo.com>
124
125         * gst/Makefile.am:
126         * gst/gstarch.h:
127         Remove old file.
128
129 2005-07-18  Wim Taymans  <wim@fluendo.com>
130
131         * gst/Makefile.am:
132         No more cothreads.h
133
134 2005-07-18  Wim Taymans  <wim@fluendo.com>
135
136         * gst/cothreads.c:
137         * gst/cothreads.h:
138         Let's remove these.
139
140 2005-07-18  Wim Taymans  <wim@fluendo.com>
141
142         * docs/design/part-dynamic.txt:
143         * docs/design/part-events.txt:
144         * docs/design/part-seeking.txt:
145         Some more docs in the works.
146
147         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
148         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
149         (gst_base_transform_setcaps), (gst_base_transform_get_size),
150         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
151         (gst_base_transform_handle_buffer),
152         (gst_base_transform_sink_activate_push),
153         (gst_base_transform_src_activate_pull),
154         (gst_base_transform_set_passthrough),
155         (gst_base_transform_is_passthrough):
156         Refcounting fixes.
157
158         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
159         Cleanups.
160
161         * gst/gstevent.c: (gst_event_finalize):
162         Set SRC to NULL.
163
164         * gst/gstutils.c: (gst_element_unlink),
165         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
166         (gst_pad_proxy_setcaps):
167         * gst/gstutils.h:
168         Add _get_parent_element() to get a pads parent as an element.
169
170 2005-07-18  Wim Taymans  <wim@fluendo.com>
171
172         * check/gst/gstbin.c: (GST_START_TEST):
173         Remove bogus test.
174
175 2005-07-18  Wim Taymans  <wim@fluendo.com>
176
177         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
178         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
179         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
180         (gst_base_sink_event), (gst_base_sink_do_sync),
181         (gst_base_sink_chain), (gst_base_sink_loop),
182         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
183         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
184         Refcounting fixes.
185         Fix logic for returning ASYNC when not prerolled.
186
187 2005-07-18  Wim Taymans  <wim@fluendo.com>
188
189         * gst/gstqueue.c: (gst_queue_handle_sink_event):
190         Fix nasty refcount bug.
191
192 2005-07-16 Philippe Khalaf <burger@speedy.org>
193         * gst/elements/gstfdsrc.c:
194         * gst/elements/gstfdsrc.h:
195         * gst/elements/gstelements.c:
196         * gst/elements/Makefile.am:
197         Ported fdsrc to 0.9.
198
199 2005-07-16  Wim Taymans  <wim@fluendo.com>
200
201         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
202         (gst_base_sink_do_sync):
203         Fix compile error.
204
205 2005-07-16  Wim Taymans  <wim@fluendo.com>
206
207         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
208         (gst_base_sink_event), (gst_base_sink_get_times),
209         (gst_base_sink_do_sync), (gst_base_sink_change_state):
210         * gst/base/gstbasesink.h:
211         Store and use discont values when syncing buffers as described
212         in design docs.
213         
214         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
215         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
216         (gst_base_src_activate_push):
217         Push discont event when starting.
218
219         * gst/elements/gstidentity.c: (gst_identity_transform):
220         Small cleanups.
221
222         * gst/gstbin.c: (gst_bin_change_state):
223         Small cleanups in base_time  distribution.
224
225         * gst/gstelement.c: (gst_element_set_base_time),
226         (gst_element_get_base_time), (gst_element_change_state):
227         * gst/gstelement.h:
228         Added methods for the base_time of the element.
229         Some MT fixes.
230
231         * gst/gstpipeline.c: (gst_pipeline_send_event),
232         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
233         (gst_pipeline_get_last_stream_time):
234         * gst/gstpipeline.h:
235         MT fixes.
236         Handle seeking as described in design doc, remove stream_time
237         hack.
238         Cleanups clock and stream_time selection code. Added accessors
239         for the stream_time.
240         
241
242 2005-07-16  Andy Wingo  <wingo@pobox.com>
243
244         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
245         (#305291).
246
247 2005-07-16  Wim Taymans  <wim@fluendo.com>
248
249         * check/gst/gstbin.c: (GST_START_TEST):
250         Make elements silent as the deep_notify refs the
251         parent, which might make the test fail.
252
253         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
254         Don't hold the lock for too long.
255
256 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
257
258         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
259           Don't unref the caps we passed to gst_caps_make_writable() after
260           passing them. gst_caps_make_writable() will do that for us.
261
262 2005-07-15  Andy Wingo  <wingo@pobox.com>
263
264         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
265         (#157311).
266
267         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
268         own marshalling function for the handoff signal. Properly type the
269         buffer as a buffer. Fixes some warnings. Should do a more general
270         solution.
271         (gst_identity_class_init): Plug into the right marshaller.
272
273 2005-07-15  Wim Taymans  <wim@fluendo.com>
274
275         * docs/design/part-TODO.txt:
276         * docs/design/part-clocks.txt:
277         * docs/design/part-element-sink.txt:
278         * docs/design/part-events.txt:
279         * docs/design/part-gstpipeline.txt:
280         Updated docs, mostly DISCONT related.
281
282 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
283
284         * docs/pwg/building-pads.xml:
285           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
286
287 2005-07-15  Andy Wingo  <wingo@pobox.com>
288
289         * tools/gst-typefind.c: Update, add copyright block.
290
291         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
292         Normalize and truncate caps before fixation.
293
294         * gst/gstcaps.h:
295         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
296         discards all but the first structure from its argument.
297
298 2005-07-15  Wim Taymans  <wim@fluendo.com>
299
300         * gst/base/gstbasetransform.c: (gst_base_transform_init),
301         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
302         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
303         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
304         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
305         (gst_base_transform_chain), (gst_base_transform_change_state),
306         (gst_base_transform_set_passthrough),
307         (gst_base_transform_is_passthrough):
308         * gst/base/gstbasetransform.h:
309         Make passthrough work using the bufferpools.
310         Changed API a bit, subclasses have to write into a buffer
311         provided by the base class.
312         More debug info in nego functions.
313         
314         * gst/elements/gstidentity.c: (gst_identity_init),
315         (gst_identity_transform):
316         Port to new base class.
317
318 2005-07-15  Wim Taymans  <wim@fluendo.com>
319
320         * gst/gstmessage.c: (gst_message_new_state_changed):
321         * tools/gst-launch.c: (event_loop), (main):
322         Totally dump messages in -launch with the -m option.
323         Fix message name for State messages,
324
325 2005-07-14  Wim Taymans  <wim@fluendo.com>
326
327         * gst/base/gstbasesrc.c: (gst_base_src_loop):
328         Post error messages on errors.
329
330 2005-07-14  Wim Taymans  <wim@fluendo.com>
331
332         * gst/gstcaps.c: (gst_caps_do_simplify):
333         Remove debug info.
334
335         * gst/gsterror.h:
336         Define error for stream stopped.
337
338         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
339         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
340         Do proper return values.
341
342         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
343         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
344         (gst_pad_get_range):
345         Better return values.
346
347         * gst/gstpad.h:
348         Reorganise return values, add macro to check for fatal errors.
349
350         * gst/gstqueue.c: (gst_queue_chain):
351         Return proper GstFlowReturn values,
352
353 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
354
355         * docs/gst/gstreamer-sections.txt:
356         * docs/gst/gstreamer.types:
357         * docs/gst/tmpl/gst.sgml:
358         * docs/gst/tmpl/gstbasesink.sgml:
359         * docs/gst/tmpl/gstbasesrc.sgml:
360         * docs/gst/tmpl/gstbasetransform.sgml:
361         * docs/gst/tmpl/gstbin.sgml:
362         * docs/gst/tmpl/gstbuffer.sgml:
363         * docs/gst/tmpl/gstcaps.sgml:
364         * docs/gst/tmpl/gstclock.sgml:
365         * docs/gst/tmpl/gstcompat.sgml:
366         * docs/gst/tmpl/gstconfig.sgml:
367         * docs/gst/tmpl/gstelement.sgml:
368         * docs/gst/tmpl/gstelementdetails.sgml:
369         * docs/gst/tmpl/gstelementfactory.sgml:
370         * docs/gst/tmpl/gstenumtypes.sgml:
371         * docs/gst/tmpl/gsterror.sgml:
372         * docs/gst/tmpl/gstevent.sgml:
373         * docs/gst/tmpl/gstfakesink.sgml:
374         * docs/gst/tmpl/gstfakesrc.sgml:
375         * docs/gst/tmpl/gstfilesink.sgml:
376         * docs/gst/tmpl/gstfilesrc.sgml:
377         * docs/gst/tmpl/gstfilter.sgml:
378         * docs/gst/tmpl/gstformat.sgml:
379         * docs/gst/tmpl/gstghostpad.sgml:
380         * docs/gst/tmpl/gstimplementsinterface.sgml:
381         * docs/gst/tmpl/gstindex.sgml:
382         * docs/gst/tmpl/gstindexfactory.sgml:
383         * docs/gst/tmpl/gstinfo.sgml:
384         * docs/gst/tmpl/gstiterator.sgml:
385         * docs/gst/tmpl/gstmacros.sgml:
386         * docs/gst/tmpl/gstmemchunk.sgml:
387         * docs/gst/tmpl/gstminiobject.sgml:
388         * docs/gst/tmpl/gstobject.sgml:
389         * docs/gst/tmpl/gstpad.sgml:
390         * docs/gst/tmpl/gstpadtemplate.sgml:
391         * docs/gst/tmpl/gstparse.sgml:
392         * docs/gst/tmpl/gstpipeline.sgml:
393         * docs/gst/tmpl/gstplugin.sgml:
394         * docs/gst/tmpl/gstpluginfeature.sgml:
395         * docs/gst/tmpl/gstquery.sgml:
396         * docs/gst/tmpl/gstqueue.sgml:
397         * docs/gst/tmpl/gstregistry.sgml:
398         * docs/gst/tmpl/gstregistrypool.sgml:
399         * docs/gst/tmpl/gstscheduler.sgml:
400         * docs/gst/tmpl/gstschedulerfactory.sgml:
401         * docs/gst/tmpl/gststructure.sgml:
402         * docs/gst/tmpl/gstsystemclock.sgml:
403         * docs/gst/tmpl/gsttaglist.sgml:
404         * docs/gst/tmpl/gsttagsetter.sgml:
405         * docs/gst/tmpl/gsttrace.sgml:
406         * docs/gst/tmpl/gsttrashstack.sgml:
407         * docs/gst/tmpl/gsttypefind.sgml:
408         * docs/gst/tmpl/gsttypefindfactory.sgml:
409         * docs/gst/tmpl/gsttypes.sgml:
410         * docs/gst/tmpl/gsturihandler.sgml:
411         * docs/gst/tmpl/gsturitype.sgml:
412         * docs/gst/tmpl/gstutils.sgml:
413         * docs/gst/tmpl/gstvalue.sgml:
414         * docs/gst/tmpl/gstversion.sgml:
415         * docs/gst/tmpl/gstxml.sgml:
416         * docs/libs/tmpl/gstcontrol.sgml:
417         * docs/libs/tmpl/gstdataprotocol.sgml:
418         * docs/libs/tmpl/gstdparam.sgml:
419         * docs/libs/tmpl/gstdplinint.sgml:
420         * docs/libs/tmpl/gstdpman.sgml:
421         * docs/libs/tmpl/gstdpsmooth.sgml:
422         * docs/libs/tmpl/gstgetbits.sgml:
423         * docs/libs/tmpl/gstunitconvert.sgml:
424         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
425         (gst_push_src_base_init), (gst_push_src_class_init),
426         (gst_push_src_init), (gst_push_src_create):
427         * gst/base/gstpushsrc.h:
428         * gst/elements/gstelements.c:
429         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
430         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
431         (gst_fake_sink_init), (gst_fake_sink_set_property),
432         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
433         (gst_fake_sink_event), (gst_fake_sink_preroll),
434         (gst_fake_sink_render), (gst_fake_sink_change_state):
435         * gst/elements/gstfakesink.h:
436         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
437         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
438         (gst_fake_src_base_init), (gst_fake_src_class_init),
439         (gst_fake_src_init), (gst_fake_src_event_handler),
440         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
441         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
442         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
443         (gst_fake_src_create_buffer), (gst_fake_src_create),
444         (gst_fake_src_start), (gst_fake_src_stop):
445         * gst/elements/gstfakesrc.h:
446         * gst/elements/gstfilesink.c: (_do_init),
447         (gst_file_sink_base_init), (gst_file_sink_class_init),
448         (gst_file_sink_init), (gst_file_sink_dispose),
449         (gst_file_sink_set_location), (gst_file_sink_set_property),
450         (gst_file_sink_get_property), (gst_file_sink_open_file),
451         (gst_file_sink_close_file), (gst_file_sink_query),
452         (gst_file_sink_event), (gst_file_sink_render),
453         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
454         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
455         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
456         * gst/elements/gstfilesink.h:
457         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
458         (gst_file_src_class_init), (gst_file_src_init),
459         (gst_file_src_finalize), (gst_file_src_set_location),
460         (gst_file_src_set_property), (gst_file_src_get_property),
461         (gst_file_src_map_region), (gst_file_src_map_small_region),
462         (gst_file_src_create_mmap), (gst_file_src_create_read),
463         (gst_file_src_create), (gst_file_src_is_seekable),
464         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
465         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
466         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
467         (gst_file_src_uri_handler_init):
468         * gst/elements/gstfilesrc.h:
469           more autistic cleanliness in functions/names/defines
470
471 2005-07-13  Andy Wingo  <wingo@pobox.com>
472
473         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
474         source couldn't negotiate.
475
476         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
477         connections again.
478
479         * gst/gstutils.h:
480         * gst/gstutils.c (gst_element_link_pads_filtered): New old
481         function. I am channeling Hades. Put your boots on suckers!!!
482
483 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
484
485         * testsuite/caps/Makefile.am:
486         * testsuite/caps/value_compare.c:
487         * testsuite/caps/value_intersect.c:
488         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
489           move two testsuite apps over to the check dir
490
491 2005-07-12  Wim Taymans  <wim@fluendo.com>
492
493         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
494         Added more debug info in the negotiate process.
495
496         * gst/gstmessage.h:
497         Prepare for segment playback.
498
499         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
500         Better debugging.
501
502         * gst/gstutils.c:
503         Some more docs.
504
505         * tools/gst-launch.c: (main):
506         NULL pipeline on errors.
507
508 2005-07-12  Andy Wingo  <wingo@pobox.com>
509
510         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
511         not it comes from a malloc region. Make sure our copy gets freed.
512
513 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
514
515         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
516         * check/gst/gstmessage.c: (GST_START_TEST):
517         * check/gst/gststructure.c: (GST_START_TEST),
518         (gst_structure_suite), (main):
519           more testing
520         * gst/gstelement.c: (gst_element_message_full):
521           clean up GError and debug string now that they get copied
522         * gst/gstmessage.c: (gst_message_new_error),
523         (gst_message_new_warning), (gst_message_parse_error),
524         (gst_message_parse_warning):
525           use GST_TYPE_G_ERROR for structure_new, and take copies of
526           arguments, so that we don't mess up refcounting
527
528 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
529
530         * check/Makefile.am:
531           add per-test valgrind targets
532         * check/gst-libs/gdp.c: (GST_START_TEST),
533         (gst_data_protocol_suite), (main):
534           clean up
535
536 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
537
538         * check/Makefile.am:
539           instate more valgrindable tests
540         * check/elements/gstfakesrc.c: (chain_func), (event_func),
541         (GST_START_TEST), (fakesrc_suite):
542         * check/gst/gstpad.c: (GST_START_TEST):
543         * check/gst/gststructure.c: (GST_START_TEST):
544           fix test leaks
545         * docs/gst/tmpl/gstminiobject.sgml:
546         * gst/gstpad.c: (gst_pad_finalize):
547           fix the static mutex leak
548
549 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
550
551         * check/Makefile.am:
552           add two more tests for valgrinding
553         * check/gst/gstvalue.c: (GST_START_TEST):
554           test refcount of deserialized buffer, found a leak
555         * docs/gst/gstreamer-docs.sgml:
556         * docs/gst/gstreamer-sections.txt:
557         * docs/gst/gstreamer.types:
558         * docs/gst/tmpl/gstminiobject.sgml:
559           add miniobject to docs
560         * gst/gstminiobject.c:
561           add some docs
562         * gst/gstvalue.c: (gst_value_deserialize_buffer),
563         (gst_string_unwrap):
564           fix a hard-to-find invalid write for one of the tests
565           fix a leak for deserialized buffers
566
567 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
568
569         * docs/pwg/advanced-events.xml:
570         * docs/pwg/advanced-request.xml:
571         * docs/pwg/advanced-scheduling.xml:
572         * docs/pwg/appendix-porting.xml:
573         * docs/pwg/building-boiler.xml:
574         * docs/pwg/intro-preface.xml:
575         * docs/pwg/other-ntoone.xml:
576           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
577           of example code and explanation for pad activation, loop() and
578           getrange() functions and a bit more. Remove old comments pointing
579           to loop-functions.
580         * examples/pwg/Makefile.am:
581           Add loop/getrange examples.
582
583 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
584
585         * configure.ac:
586           check for valgrind binary + some fixes
587         * check/gst.supp:
588           valgrind suppressions for the tests
589         * check/Makefile.am:
590           add a valgrind: target that valgrinds the unit tests
591         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
592         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
593         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
594         * check/gst/gstghostpad.c:
595           added some cleanup
596         * check/gst/gstdata.c:
597           removed
598         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
599         (thread_unref), (gst_mini_object_suite), (main):
600           added
601         * gst/gst.c: (gst_deinit):
602         * gst/gst.h:
603           add a method to clean up.
604         * gst/gstsystemclock.c: (gst_system_clock_dispose),
605         (gst_system_clock_obtain):
606           allow for disposing the system clock.
607         * tools/gst-launch.c: (main):
608           deinit
609
610 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
611
612         * docs/gst/tmpl/gstbasesrc.sgml:
613         * docs/gst/tmpl/gstfakesrc.sgml:
614         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
615         (gst_base_src_init), (gst_base_src_set_property),
616         (gst_base_src_get_property), (gst_base_src_get_range),
617         (gst_base_src_start):
618         * gst/base/gstbasesrc.h:
619           add num-buffers property
620         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
621         (gst_fakesrc_init), (gst_fakesrc_set_property),
622         (gst_fakesrc_get_property), (gst_fakesrc_create),
623         (gst_fakesrc_start):
624           remove num-buffers property
625
626 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
627
628         * docs/gst/gstreamer-sections.txt:
629         * docs/gst/tmpl/gstbasesink.sgml:
630         * docs/gst/tmpl/gstbasesrc.sgml:
631         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
632         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
633         (gst_base_sink_finalize), (gst_base_sink_set_clock),
634         (gst_base_sink_set_property), (gst_base_sink_get_property),
635         (gst_base_sink_handle_object), (gst_base_sink_event),
636         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
637         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
638         (gst_base_sink_loop), (gst_base_sink_deactivate),
639         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
640         (gst_base_sink_change_state):
641         * gst/base/gstbasesink.h:
642         * gst/base/gstbasesrc.h:
643         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
644         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
645         (gst_filesink_init):
646           more macro splitting
647
648 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
649
650         * gst/gstelement.c: (gst_element_get_bus):
651           add debug
652         * tools/gst-launch.c: (check_intr), (event_loop):
653           fix bus leaks
654
655 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
656
657         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
658           fix a caps leak
659
660 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
661
662         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
663         (gst_base_src_finalize):
664           add finalize method and clean up properly
665         * gst/gstpipeline.c: (gst_pipeline_dispose):
666           add debug
667
668 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
669
670         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
671         (gst_bin_suite):
672           add more things to check
673         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
674         * gst/gstelement.c:
675           more debug
676
677 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
678
679         * check/elements/gstfakesrc.c: (chain_func), (event_func),
680         (GST_START_TEST), (fakesrc_suite):
681         * check/gst-libs/gdp.c: (GST_START_TEST):
682         * check/gst/gst.c: (GST_START_TEST):
683         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
684         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
685         * check/gst/gstbus.c: (GST_START_TEST):
686         * check/gst/gstcaps.c: (GST_START_TEST):
687         * check/gst/gstdata.c: (GST_START_TEST):
688         * check/gst/gstelement.c: (GST_START_TEST):
689         * check/gst/gstghostpad.c: (GST_START_TEST):
690         * check/gst/gstiterator.c: (GST_START_TEST):
691         * check/gst/gstmessage.c: (GST_START_TEST):
692         * check/gst/gstobject.c: (GST_START_TEST):
693         * check/gst/gstpad.c: (GST_START_TEST):
694         * check/gst/gststructure.c: (GST_START_TEST):
695         * check/gst/gstsystemclock.c: (GST_START_TEST),
696         (gst_systemclock_suite):
697         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
698         * check/gst/gstvalue.c: (GST_START_TEST):
699         * check/pipelines/cleanup.c: (GST_START_TEST):
700         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
701         * check/states/sinks.c: (GST_START_TEST):
702         * check/gstcheck.c: (gst_check_init):
703         * check/gstcheck.h:
704           add debugging category
705           use GST_START_TEST now, so we add a debug line
706
707 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
708
709         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
710           add test for state change message on a bin
711         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
712           add another test
713         * gst/gstbin.c: (gst_bin_init):
714         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
715         * gst/gstelement.c: (gst_element_post_message),
716         (gst_element_set_state):
717         * gst/gstelementfactory.c: (gst_element_factory_create):
718         * gst/gstmessage.c: (gst_message_new):
719         * gst/gstscheduler.c:
720           various debugging additions and cleanups
721
722 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
723
724         * check/Makefile.am:
725         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
726         (main):
727           adding tests for elements
728         * gst/gstelement.c: (gst_element_dispose):
729
730 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
731
732         * gst/registries/gstlibxmlregistry.c: (load_feature):
733           plug more leaks.  A simple gst_init() now is leakfree, yay.
734
735 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
736
737         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
738         (gst_xml_registry_load):
739           plug another memleak
740
741 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
742
743         * configure.ac:
744           use GST_SET_ERROR_CFLAGS
745         * docs/faq/cvs.xml:
746           change to ERROR_CFLAGS
747
748 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
749
750         * configure.ac:
751           make GST_ERROR_CFLAGS overridable and re-enable Werror
752         * docs/faq/cvs.xml:
753           add a note about error CFLAGS
754         * docs/gst/tmpl/gstfakesrc.sgml:
755         * gst/elements/gstfakesrc.c:
756           comment out some unused code
757         * gst/gst.c: (split_and_iterate):
758         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
759         (load_feature):
760           plug some memleaks
761
762 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
763
764         * common/Makefile.am:
765         * common/gtk-doc.mak:
766         * docs/gst/Makefile.am:
767           factor out gtk-doc.mak
768
769 2005-07-07  Wim Taymans  <wim@fluendo.com>
770
771         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
772         (gst_thread_scheduler_dispose):
773         Unlock the STREAM_LOCK completely.
774
775 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
776
777         * check/Makefile.am:
778         * check/elements/.cvsignore:
779         * check/elements/gstfakesrc.c: (chain_func), (event_func),
780         (START_TEST), (fakesrc_suite), (main):
781         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
782         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
783         (gst_fakesrc_create), (gst_fakesrc_start):
784         * gst/elements/gstfakesrc.h:
785           adding a first element test
786
787 2005-07-07  Andy Wingo  <wingo@pobox.com>
788
789         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
790         debug message.
791
792 2005-07-07  Wim Taymans  <wim@fluendo.com>
793
794         * gst/gstquery.c:
795         * gst/gstquery.h:
796         Remove old types
797
798 2005-07-07  Wim Taymans  <wim@fluendo.com>
799
800         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
801         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
802         Allow subclasses to implement their own negotiation.
803
804 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
805
806         * docs/design/part-gstbin.txt:
807         * docs/design/part-gstpipeline.txt:
808           Update design notes to reflect the movement of
809           responsibility for bus handling from GstPipeline to
810           GstBin
811
812 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
813
814         * configure.ac:
815           Remove unnecessary queue2/3/4 examples.
816
817 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
818
819         * examples/Makefile.am:
820         * examples/helloworld/helloworld.c: (event_loop), (main):
821         * examples/queue/queue.c: (event_loop), (main):
822         * examples/queue2/queue2.c: (main):
823           Update a couple of the examples to work again.
824
825         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
826         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
827          Spelling corrections and extra debug.
828         
829         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
830         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
831         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
832         * gst/gstbin.h:
833         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
834         (gst_pipeline_change_state):
835         * gst/gstpipeline.h:
836           Move the bus handler for children to the GstBin, and create a
837           separate bus for receiving messages from children to the one the
838           bus sends 'upwards' on.
839
840 2005-07-06  Wim Taymans  <wim@fluendo.com>
841
842         * gst/base/README:
843         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
844         (gst_base_sink_handle_object), (gst_base_sink_loop),
845         (gst_base_sink_change_state):
846         * gst/base/gstbasesink.h:
847         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
848         (gst_base_src_init), (gst_base_src_setcaps),
849         (gst_base_src_getcaps), (gst_base_src_loop),
850         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
851         (gst_base_src_start), (gst_base_src_change_state):
852         * gst/base/gstbasesrc.h:
853         Make basesrc negotiate.
854         Handle the case where preroll fails in basesink.
855         Update README.
856
857 2005-07-06  Wim Taymans  <wim@fluendo.com>
858
859         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
860         Implement the fixate function.
861         Clean up acceptcaps.
862
863 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
864
865         * docs/pwg/building-filterfactory.xml:
866         * docs/pwg/pwg.xml:
867           Remove never-written filter-factory chapter; I'll add the various
868           base classes to part 4 ("other element types") later on.
869
870 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
871
872         * docs/pwg/advanced-negotiation.xml:
873         * docs/pwg/building-boiler.xml:
874         * docs/pwg/building-pads.xml:
875         * docs/pwg/pwg.xml:
876         * examples/pwg/Makefile.am:
877           Add a chapter on caps negotiation, simplify the original code
878           samples a bit w.r.t. caps negotiation, add link to the advanced
879           section. Add a bunch of examples showing different use cases of
880           different types of caps negotiation. Upstream renegotiation isn't
881           fully documented yet since nobody knows how that works.
882
883 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
884
885         * check/gst/gstpad.c:
886         * check/gstcheck.c:
887         * gst/gstpad.c: (gst_pad_get_internal_links_default):
888           if pad has no parent, return NULL as list of internal links
889
890 2005-07-05  Andy Wingo  <wingo@pobox.com>
891
892         * gst/elements/gstfilesrc.c:
893         * gst/elements/gstfakesrc.c: 
894         * gst/base/gstpushsrc.c:
895         * gst/base/gstbasesrc.h: 
896         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
897         
898 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
899
900         * Makefile.am:
901           better report generation target (lcov needs a patch)
902
903 2005-07-05  Andy Wingo  <wingo@pobox.com>
904
905         * gst/elements, testsuite: Null if we got it...
906
907 2005-07-05  Wim Taymans  <wim@fluendo.com>
908
909         * configure.ac:
910         * libs/gst/dataprotocol/Makefile.am:
911         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
912         * libs/gst/dataprotocol/dataprotocol.h:
913         * pkgconfig/Makefile.am:
914         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
915         * pkgconfig/gstreamer-dataprotocol.pc.in:
916         Ported dataprotol to 0.9. 
917         Added pkgconfig files.
918
919 2005-07-05  Andy Wingo  <wingo@pobox.com>
920
921         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
922         Default to returning TRUE for the case when tranform_caps returns
923         a fixed caps, like for identity or volume.
924
925         * check/gst/gstbus.c (pound_bus_with_messages): 
926         * check/gst/gstmessage.c (START_TEST): 
927         * check/pipelines/simple_launch_lines.c (got_handoff): Application
928         message API change.
929
930         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
931         logic weaks here: always run transform_caps, trying passthrough
932         operation only if the original caps intersects with the transform.
933
934         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
935         source and sink caps.
936
937         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
938         Intersect the peer caps with the pad template before going into
939         transform_caps.
940         (gst_base_transform_transform_caps): More debugging.
941
942         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
943         src argument.
944
945 2005-07-04  Edward Hervey  <edward@fluendo.com>
946
947         * gst/gstutils.c:
948         * gst/gstutils.h:
949         (gst_pad_add_*_probe): now returns the signal id for better wrapping
950         in bindings.
951
952 2005-07-04  Andy Wingo  <wingo@pobox.com>
953
954         * check/gst/gstpad.c: Only set explicit caps on pads.
955
956 2005-07-01  Andy Wingo  <wingo@pobox.com>
957
958         * tests/network-clock.scm: Commentary update.
959
960         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
961         Didn't really make sense, not implementable with basetransform,
962         etc.
963         (gst_identity_transform): Unref inbuf via make_writable. Feeble
964         attempt at implementing the sync property, needs an unlock method.
965
966         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
967         New func, by default returns the same caps (the identity
968         transformation).
969         (gst_base_transform_getcaps): Uses transform_caps to return
970         something sensible.
971         (gst_base_transform_setcaps): Complicated logic to get caps on
972         both pads, even if they are different, and to call set_caps once
973         for every time both pads get their caps set.
974         (gst_base_transform_handle_buffer): Give the ref to the transform
975         function. Allows in-place modification of the buffer.
976
977         * gst/base/gstbasetransform.h (transform_caps): New class method.
978         Given caps on one side, what can I do on the other.
979         (set_caps): Take two caps, one for each side of the element.
980
981         * gst/gstpad.h:
982         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
983         caps in place. This is safe because we can check the mutability of
984         the caps, and a good idea because fixate functions are just called
985         as a matter of last resort. (Not actually implemented.)
986         (gst_pad_set_caps): If the caps we're setting is actually the same
987         as the existing pad caps, just update the pointer without calling
988         setcaps. Assert that caps is either NULL or fixed, as per the
989         docs.
990
991         * gst/gstghostpad.c: Update for fixate changes.
992
993 2005-07-02  Andy Wingo  <wingo@pobox.com>
994
995         * gst/gstcaps.c:
996         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
997         two refcounts makes it immutable, which is enough. Doc more.
998
999 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1000
1001         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1002           Put the mini_object into GValue as a mini_object,
1003           not a gpointer, since that's how we declared
1004           the signal.
1005
1006 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1007
1008         * examples/pwg/Makefile.am:
1009           Fix buildbot again.
1010
1011 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1012
1013         * docs/pwg/building-testapp.xml:
1014           Add extra check.
1015         * examples/pwg/Makefile.am:
1016           Fix buildbot.
1017
1018 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1019
1020         * configure.ac:
1021         * examples/Makefile.am:
1022         * examples/pwg/Makefile.am:
1023         * examples/pwg/extract.pl:
1024           Enable building the PWG examples.
1025         * docs/pwg/advanced-interfaces.xml:
1026           Add URI interface stub.
1027         * docs/pwg/advanced-types.xml:
1028         * docs/pwg/other-autoplugger.xml:
1029         * docs/pwg/appendix-porting.xml:
1030         * docs/pwg/pwg.xml:
1031           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1032         * docs/pwg/building-boiler.xml:
1033         * docs/pwg/building-chainfn.xml:
1034         * docs/pwg/building-pads.xml:
1035         * docs/pwg/building-props.xml:
1036         * docs/pwg/building-state.xml:
1037         * docs/pwg/building-testapp.xml:
1038           Update the building-*.xml parts for 0.9 changes. All examples
1039           code blocks compile in examples/pwg/*.
1040
1041 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1042
1043         * docs/manual/advanced-autoplugging.xml:
1044         * docs/manual/appendix-checklist.xml:
1045         * docs/manual/appendix-integration.xml:
1046         * docs/manual/highlevel-components.xml:
1047           Fix playbin/decodebin examples, update docs a bit, mention bus
1048           instead of signals in various places, mention kmplayer and
1049           kaffeine since they have a working GStreamer backend in the KDE
1050           section.
1051
1052 2005-06-30  Wim Taymans  <wim@fluendo.com>
1053
1054         * CHANGES-0.9:
1055         * docs/design/draft-ghostpads.txt:
1056         * docs/design/draft-push-pull.txt:
1057         * docs/design/draft-query.txt:
1058         * docs/design/part-TODO.txt:
1059         * docs/design/part-query.txt:
1060         Added CHANGES-0.9 doc, updated status of other docs.
1061         
1062         * gst/gstquery.h:
1063         Remove "hmm" macro
1064
1065 2005-06-30  Wim Taymans  <wim@fluendo.com>
1066
1067         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1068         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1069         (gst_base_sink_change_state):
1070         * gst/base/gstbasesink.h:
1071         Some tweaks, only EOS and a buffer complete a preroll.
1072
1073 2005-06-30  Andy Wingo  <wingo@pobox.com>
1074
1075         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1076         activate_push down to the internal pad as well.
1077
1078 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1079
1080         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1081
1082         * gst/gsttaginterface.c:
1083           Some documentation fixes (#307394 and #307397).
1084
1085 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1086
1087         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1088
1089         * gst/gstvalue.c: (gst_value_intersect_list):
1090           Fix memleak (#309125).
1091
1092 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1093
1094         * docs/manual/advanced-dataaccess.xml:
1095           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1096         * docs/manual/basics-pads.xml:
1097           Add reference for filtered caps to above chapter.
1098
1099 2005-06-30  Wim Taymans  <wim@fluendo.com>
1100
1101         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1102         (gst_bin_change_state):
1103         Probes are gone.
1104         Lame attempt at making the state change function a bit
1105         more readable.
1106
1107 2005-06-30  Wim Taymans  <wim@fluendo.com>
1108
1109         * docs/design/part-clocks.txt:
1110         * docs/design/part-element-sink.txt:
1111         * docs/design/part-events.txt:
1112         * docs/design/part-preroll.txt:
1113         * docs/design/part-states.txt:
1114         Some more tweeks and additions to the docs.
1115
1116 2005-06-30  Wim Taymans  <wim@fluendo.com>
1117
1118         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1119         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1120         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1121         (gst_pad_check_pull_range), (gst_pad_get_range),
1122         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1123         * gst/gstpad.h:
1124         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1125         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1126         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1127         (gst_pad_remove_buffer_probe):
1128         Removed atomic operations, use existing LOCK.
1129         Move exception handling out of main code path.
1130
1131 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1132
1133         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1134         (silly_return_true_function), (gst_pad_class_init),
1135         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1136         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1137         (gst_pad_send_event):
1138           Fix accumulator, add default value by using _emitv() instead
1139           of _emit() for signal emission.
1140
1141 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1142
1143         * docs/manual/advanced-dataaccess.xml:
1144         * examples/manual/Makefile.am:
1145           Add probe example.
1146         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1147           Make work (??).
1148
1149 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1150
1151         * gst/elements/gstfilesink.c: (gst_filesink_render):
1152           Simplify code so that we don't have to handle short
1153           writes and return GST_FLOW_ERROR if an error occured.
1154
1155 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1156
1157         * docs/gst/gstreamer-docs.sgml:
1158           Remove probes more.
1159
1160 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1161
1162         * docs/gst/gstreamer-sections.txt:
1163         * docs/gst/tmpl/gstpad.sgml:
1164         * docs/gst/tmpl/gstprobe.sgml:
1165         * gst/Makefile.am:
1166         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1167         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1168         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1169         (gst_pad_push_event), (gst_pad_send_event):
1170         * gst/gstpad.h:
1171         * gst/gstutils.c: (gst_pad_add_data_probe),
1172         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1173         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1174         (gst_pad_remove_buffer_probe):
1175         * gst/gstutils.h:
1176           Remove old probes, add new g-signal-based probes and some utility
1177           functions.
1178
1179 2005-06-29  Edward Hervey  <edward@fluendo.com>
1180
1181         * gst/gstelementfactory.c:
1182         * gst/gstutils.h:
1183         * gst/gstutils.c:
1184         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1185         the definition to the header file.
1186
1187 2005-06-29  Andy Wingo  <wingo@pobox.com>
1188
1189         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1190         plugins from the source directory.
1191
1192 2005-06-29  Wim Taymans  <wim@fluendo.com>
1193
1194         * docs/gst/tmpl/gstbuffer.sgml:
1195         * docs/gst/tmpl/gstclock.sgml:
1196         Some fixings for blantently wrong text.
1197
1198 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1199
1200         * check/Makefile.am:
1201         * gst/gst.c: (add_path_func), (init_pre):
1202         * gst/gstregistry.c: (gst_registry_add_path):
1203           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1204           only scan the GST_PLUGIN_PATH locations, and not add
1205           system locations
1206
1207 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1208
1209         * docs/gst/gstreamer-sections.txt:
1210         * docs/gst/tmpl/gstbasesrc.sgml:
1211         * gst/gstelement.c:
1212         * gst/gstelement.h:
1213         * gst/gstevent.c:
1214         * gst/gstutils.c:
1215           doc fixes
1216
1217 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1218
1219         * docs/manual/advanced-autoplugging.xml:
1220           Fix autoplugging example.
1221
1222 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1223
1224         * docs/manual/advanced-autoplugging.xml:
1225         * docs/manual/mime-world.fig:
1226           Try to get autoplugging working, fix type detection. Fix text
1227           in hello-world image.
1228
1229 2005-06-29  Wim Taymans  <wim@fluendo.com>
1230
1231         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1232         (gst_base_sink_change_state):
1233         Small debug line.
1234
1235         * gst/gstclock.h:
1236         map SIGNAL and BROADCAST to the right function.
1237
1238         * gst/gstobject.h:
1239         Remove redundant braces.
1240
1241         * gst/gstpad.c: (gst_pad_set_caps):
1242         Don't call setcaps function when reseting caps to NULL.
1243
1244         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1245         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1246         (gst_system_clock_id_unschedule):
1247         Use BROADCAST as this is what we do.
1248
1249 2005-06-29  Wim Taymans  <wim@fluendo.com>
1250
1251         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1252         We are actually prerolling before commiting the state
1253         change. 
1254
1255 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1256
1257         * docs/manual/advanced-clocks.xml:
1258         * docs/manual/advanced-interfaces.xml:
1259         * docs/manual/advanced-metadata.xml:
1260         * docs/manual/advanced-position.xml:
1261         * docs/manual/advanced-schedulers.xml:
1262         * docs/manual/advanced-threads.xml:
1263         * docs/manual/appendix-porting.xml:
1264         * docs/manual/basics-bins.xml:
1265         * docs/manual/basics-bus.xml:
1266         * docs/manual/basics-elements.xml:
1267         * docs/manual/basics-helloworld.xml:
1268         * docs/manual/basics-pads.xml:
1269         * docs/manual/highlevel-components.xml:
1270         * docs/manual/manual.xml:
1271         * docs/manual/thread.fig:
1272           Update (until threads/scheduling) Application Development Manual;
1273           remove GstThread, add GstBus, add simple porting checklist, add
1274           documentation for tag writing, clocks, make all examples until this
1275           part compile and run.
1276         * examples/manual/Makefile.am:
1277           Update from changes to Application Development Manual; add bus
1278           example, remove thread example.
1279
1280 2005-06-28  Wim Taymans  <wim@fluendo.com>
1281
1282         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1283         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1284         (gst_bus_source_dispatch):
1285         Add debugging messages.
1286         Make internal methods static.
1287         Handle the case where the bus is flushed in the handler.
1288         
1289         * gst/gstelement.c: (gst_element_get_bus):
1290         Fix refcount in _get_bus();
1291
1292         * gst/gstpipeline.c: (gst_pipeline_change_state),
1293         (gst_pipeline_get_clock_func):
1294         Clock refcounting fixes.
1295         Handle the case where preroll timed out more gracefully.
1296         
1297         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1298         Clean up the internal thread in dispose. This is needed
1299         for subclasses that actually get disposed.
1300         
1301         * gst/schedulers/threadscheduler.c:
1302         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1303         (gst_thread_scheduler_dispose):
1304         Free thread pool in dispose.
1305
1306 2005-06-28  Andy Wingo  <wingo@pobox.com>
1307
1308         * tests/network-clock-utils.scm (debug, print-event): New utils.
1309
1310         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1311         (*packet-loss*): Unified loss probability.
1312         (network-time): Report out-of-band events.
1313
1314         * tests/plot-data: Add support for out-of-band events. Hack it
1315         into this script instead of passing it down the pipe; should fix
1316         this later.
1317
1318 2005-06-28  Wim Taymans  <wim@fluendo.com>
1319
1320         * docs/gst/gstreamer.types:
1321         * docs/gst/tmpl/gstbasesrc.sgml:
1322         * docs/gst/tmpl/gstpad.sgml:
1323         Docs fixes.
1324
1325 2005-06-28  Wim Taymans  <wim@fluendo.com>
1326
1327         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1328         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1329         (gst_proxy_pad_do_fixatecaps):
1330         Correctly proxy the check_pull_range function.
1331
1332 2005-06-28  Andy Wingo  <wingo@pobox.com>
1333
1334         * tests/network-clock.scm: Removed need for slib.
1335         
1336 2005-06-28  Wim Taymans  <wim@fluendo.com>
1337
1338         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1339         (gst_basesink_preroll_queue_flush):
1340         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1341         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1342         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1343         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1344         (gst_proxy_pad_set_property):
1345         * gst/gstpad.c:
1346         * gst/gstpad.h:
1347         * gst/gstqueue.c: (gst_queue_init):
1348         The deprecated pad loop function is removed now.
1349
1350 2005-06-28  Andy Wingo  <wingo@pobox.com>
1351
1352         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1353         New parameters, simulate network packet loss.
1354
1355         * tests/network-clock-utils.scm: Initialize the RNG.
1356
1357 2005-06-28  Wim Taymans  <wim@fluendo.com>
1358
1359         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1360         (gst_basesink_event), (gst_basesink_deactivate):
1361         Flushing the preroll queue always needs to unlock the waiters.
1362
1363 2005-06-28  Edward Hervey  <edward@fluendo.com>
1364
1365         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1366         Wheen a seek was successful on a pipeline, set the stream_time to the
1367         seek offset in order to have a synchronized stream_time.
1368
1369 2005-06-28  Wim Taymans  <wim@fluendo.com>
1370
1371         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1372         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1373         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1374         (gst_proxy_pad_do_fixatecaps):
1375         Call wrapper function instead of just calling the function
1376         pointers. This takes care of any locking and whatmore.
1377
1378 2005-06-28  Wim Taymans  <wim@fluendo.com>
1379
1380         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1381         (gst_pad_pull_range):
1382         * gst/gstpad.h:
1383         CONNECTED -> LINKED.
1384
1385 2005-06-28  Andy Wingo  <wingo@pobox.com>
1386
1387         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1388         source-munging commit!!!
1389
1390         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1391         (gst_object_sink): Take gpointer arguments, not GstObject --
1392         avoids casts. Like GLib.
1393
1394         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1395         activate.
1396
1397 2005-06-27  Andy Wingo  <wingo@pobox.com>
1398
1399         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1400         remaining buffer.
1401
1402         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1403         returns a sorted copy of the trace list.
1404         (gst_alloc_trace_print_live): New API, only prints traces with
1405         live objects. Sort the list.
1406         (gst_alloc_trace_print_all): Sort the list.
1407         (gst_alloc_trace_print): Align columns.
1408
1409         * gst/elements/gstttypefindelement.c:
1410         * gst/elements/gsttee.c:
1411         * gst/base/gstbasesrc.c:
1412         * gst/base/gstbasesink.c:
1413         * gst/base/gstbasetransform.c:
1414         * gst/gstqueue.c: Adapt for pad activation changes.
1415
1416         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1417         sched.
1418         (gst_pipeline_dispose): Drop ref on sched.
1419
1420         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1421         (gst_pad_activate_default): Push mode by default.
1422         (pre_activate_switch, post_activate_switch): New stubs, things to
1423         do before and after switching activation modes on pads.
1424         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1425         the pad's activate function to choose which mode to activate.
1426         Shortcut on deactivation and call the right function directly.
1427         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1428         mode.
1429         (gst_pad_activate_push): New API, same for push mode.
1430         (gst_pad_set_activate_function) 
1431         (gst_pad_set_activatepull_function) 
1432         (gst_pad_set_activatepush_function): Setters for new API.
1433
1434         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1435         Trace all miniobjects.
1436         (gst_mini_object_make_writable): Unref the arg if we copy, like
1437         gst_caps_make_writable.
1438
1439         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1440
1441         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1442         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1443         Adapt for new pad API.
1444
1445         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1446
1447         * gst/gstelement.h:
1448         * gst/gstelement.c (gst_element_iterate_src_pads) 
1449         (gst_element_iterate_sink_pads): New API functions.
1450         
1451         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1452         should fold into gstiterator.c in some form.
1453         (gst_element_pads_activate): Simplified via use of fold and
1454         delegation of decisions to gstpad->activate.
1455
1456         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1457         help in debugging.
1458
1459         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1460         class once in init, like gstmessage. Didn't run into this issue
1461         but it seems correct. Don't initialize a trace, gstminiobject does
1462         that.
1463
1464         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1465         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1466         to the bus.
1467         (assert_live_count): New util function, uses alloc traces to check
1468         cleanup.
1469
1470         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1471         To be modified when unlink drops the internal pad.
1472
1473 2005-06-27  Wim Taymans  <wim@fluendo.com>
1474
1475         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1476         (gst_bin_change_state):
1477         Cleanup the get_state() function a little, make sure it
1478         iterates the same set of elements.
1479         Added stub iterate_state_order().
1480
1481 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1482
1483         * docs/gst/gstreamer-docs.sgml:
1484         * docs/gst/gstreamer-sections.txt:
1485         * docs/gst/gstreamer.types:
1486         * docs/gst/tmpl/gstbasesink.sgml:
1487         * docs/gst/tmpl/gstbasesrc.sgml:
1488         * docs/gst/tmpl/gstbasetransform.sgml:
1489         * docs/gst/tmpl/gstelement.sgml:
1490         * docs/gst/tmpl/gstiterator.sgml:
1491         * gst/base/gstbasesrc.c:
1492         * gst/base/gstbasesrc.h:
1493         * gst/base/gstbasetransform.h:
1494         * gst/gstelement.c:
1495         * gst/gstiterator.h:
1496           adding basetransform and iterator docs
1497
1498 2005-06-27  Andy Wingo  <wingo@pobox.com>
1499
1500         * docs/design/part-activation.txt: Notes on how activation should
1501         work -- not quite implemented yet.
1502
1503 2005-06-25  Wim Taymans  <wim@fluendo.com>
1504
1505         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1506         At least get the chain function correct, needs more
1507         fixing.
1508
1509 2005-06-25  Wim Taymans  <wim@fluendo.com>
1510
1511         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1512         (gst_basesink_handle_object), (gst_basesink_event),
1513         (gst_basesink_do_sync), (gst_basesink_handle_event),
1514         (gst_basesink_change_state):
1515         * gst/gsttask.h:
1516         Right, two problems here: ghostpads don't take locks and
1517         glib _rec_mutex_lock_full() with depth==0 still locks.
1518         Catch illegal locking and g_warn them.
1519
1520 2005-06-25  Wim Taymans  <wim@fluendo.com>
1521
1522         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1523         Have to check for completion now...
1524
1525 2005-06-25  Wim Taymans  <wim@fluendo.com>
1526
1527         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1528         (gst_basesink_handle_object), (gst_basesink_event),
1529         (gst_basesink_do_sync), (gst_basesink_handle_event),
1530         (gst_basesink_change_state):
1531         * gst/gstpad.h:
1532         Unlock STREAM_LOCK whatever the recursion was.
1533
1534 2005-06-25  Wim Taymans  <wim@fluendo.com>
1535
1536         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1537         (gst_basesink_preroll_queue_empty),
1538         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1539         (gst_basesink_event), (gst_basesink_do_sync),
1540         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1541         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1542         (gst_basesink_change_state):
1543         Reworked the base sink, handle event and buffer serialisation
1544         correctly and removed possible deadlock.
1545         Handle EOS correctly.
1546
1547 2005-06-25  Wim Taymans  <wim@fluendo.com>
1548
1549         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1550         (gst_pipeline_change_state):
1551         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1552         Allow elements to post EOS in the state change function.
1553         Fix up -launch, make it exit the poll loop when the
1554         pipeline actually changed state.
1555         Fix up warning parsing in -launch.
1556
1557 2005-06-25  Wim Taymans  <wim@fluendo.com>
1558
1559         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1560         (gst_tee_sink_activate):
1561         Core takes STREAM_LOCK for us now.
1562
1563 2005-06-25  Wim Taymans  <wim@fluendo.com>
1564
1565         * gst/gstelement.c: (gst_element_get_state_func),
1566         (gst_element_set_state):
1567         * gst/gstelement.h:
1568         * gst/gstmessage.c: (gst_message_parse_error),
1569         (gst_message_parse_warning):
1570         Keep track of current target state while performing a state
1571         change so that subclasses can do something interesting.
1572         Fix parsing of warning/error messages when GError is NULL.
1573
1574 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1575
1576         * docs/gst/Makefile.am:
1577         * docs/gst/gstreamer-docs.sgml:
1578         * docs/gst/gstreamer-sections.txt:
1579         * docs/gst/gstreamer.types:
1580         * docs/gst/tmpl/gstbasesink.sgml:
1581         * docs/gst/tmpl/gstbasesrc.sgml:
1582         * docs/gst/tmpl/gstbin.sgml:
1583         * docs/gst/tmpl/gstcompat.sgml:
1584         * docs/gst/tmpl/gstfakesink.sgml:
1585         * docs/gst/tmpl/gstfakesrc.sgml:
1586         * docs/gst/tmpl/gstfilesink.sgml:
1587         * docs/gst/tmpl/gstfilesrc.sgml:
1588         * docs/gst/tmpl/gstindex.sgml:
1589         * docs/manual/appendix-quotes.xml:
1590         * gst/base/gstbasesrc.h:
1591         * gst/elements/gstfakesrc.h:
1592         * gst/gstmessage.h:
1593           start pulling in base classes and elements in our docs
1594
1595 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1596
1597         * docs/gst/Makefile.am:
1598         * docs/libs/Makefile.am:
1599           fixed make distcheck with gtk-doc 1.3
1600
1601 2005-06-23  Wim Taymans  <wim@fluendo.com>
1602
1603         * gst/gstelement.c: (gst_element_get_state_func),
1604         (gst_element_set_state), (gst_element_change_state):
1605         When the state did not change, also report NO_PREROLL
1606         when it matters.
1607
1608 2005-06-23  Wim Taymans  <wim@fluendo.com>
1609
1610         * gst/gstpad.c: (gst_pad_event_default):
1611         * gst/gstqueue.c: (gst_queue_loop):
1612         No unsafe task pausing please.
1613
1614 2005-06-23  Wim Taymans  <wim@fluendo.com>
1615
1616         * gst/schedulers/threadscheduler.c:
1617         (gst_thread_scheduler_task_start),
1618         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1619         Ref the task before pushing it on the threadpool. This
1620         makes sure that we have a ref when the threadfunction is
1621         actually called.
1622
1623 2005-06-23  Andy Wingo  <wingo@pobox.com>
1624
1625         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1626         offset is greater than the file's size.
1627
1628         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1629         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1630         * gst/gstobject.c (gst_object_class_init): Make the class lock
1631         recursive. Wim won't let me drop deep_notify. Decodebin works
1632         again, whoopdy doo.
1633
1634         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1635         internal pad, and hacks accordingly. Doesn't do it on the target
1636         pad because we change its caps. Probably catches all cases of
1637         interest tho.
1638         (gst_ghost_pad_set_property): Connect to notify::caps as
1639         appropritate.
1640
1641         * tests/network-clock.scm (plot-simulation): Pipe data to the
1642         elite python skript.
1643
1644         * tests/network-clock-utils.scm (define-parameter): New macro,
1645         defines a parameter that can be set via the command line.
1646         (set-parameter!, parse-parameter-arguments): Command line args
1647         parser.
1648
1649         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1650         stdin.
1651
1652 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1653
1654         * gst/elements/gsttypefindelement.c:
1655         (gst_type_find_element_handle_event):
1656           Don't restart typefinding on a discont.
1657         * gst/gstelement.c: (gst_element_set_state):
1658           Debug spelling fix.
1659         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1660           Allow changing mode of an active pad.
1661           Debug output fixes.
1662         * gst/registries/gstlibxmlregistry.c: (load_feature):
1663           Don't cast a static pad template to a normal pad template.
1664
1665 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1666
1667         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1668         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1669           remove gst_strtoll completely, since it didn't actually do
1670           anything more than what g_ascii_strtoull already does.
1671           check for range errors when deserializing
1672           do a cast for the unsigned cases; but further fixing needs
1673           a decision on what the interpretation of "(int)" and
1674           deserialization should be for values that fall outside the
1675           type's boundaries (ie, refuse, or interpret as casting)
1676
1677 2005-06-23  Wim Taymans  <wim@fluendo.com>
1678
1679         * check/Makefile.am:
1680         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1681         * docs/design/part-live-source.txt:
1682         * docs/design/part-states.txt:
1683         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1684         (gst_basesrc_set_live), (gst_basesrc_is_live),
1685         (gst_basesrc_get_range), (gst_basesrc_activate),
1686         (gst_basesrc_change_state):
1687         * gst/base/gstbasesrc.h:
1688         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1689         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1690         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1691         * gst/gstelement.c: (gst_element_get_state_func),
1692         (gst_element_set_state):
1693         * gst/gstelement.h:
1694         * gst/gsttypes.h:
1695         * tools/gst-launch.c: (event_loop), (main):
1696         Added support for live sources and other elements that
1697         cannot do preroll.
1698         Updated design docs, added live-source design doc.
1699         Implemented live source functionality in basesrc
1700         Fix error condition in _bin_get_state()
1701         Implement live source handling in -launch.
1702         Added check for live sources.
1703         Fixed case in GstBin where elements were changed state
1704         multiple times.
1705
1706
1707 2005-06-23  Andy Wingo  <wingo@pobox.com>
1708
1709         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1710         borken refcounting.
1711
1712         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1713         gst_caps_replace takes care of this for us.
1714
1715         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1716         gst_pad_set_caps on the target, not just its setcaps() function.
1717
1718         * tests/network-clock.scm: 
1719         * tests/network-clock-utils.scm: A network clock simulator.
1720         Something of an algorithmic testbed before doing something in C.
1721
1722 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1723
1724         * check/Makefile.am:
1725         * check/gst/capslist.h:
1726           copy over from 0.8, and add two with bitmasks specified with
1727           (int) 0xFF...
1728         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1729           add test to parse everything from capslist.h
1730         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
1731         (main):
1732           add test for structure deserialization
1733         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1734           add tests for deserialization of strings to int types
1735         * gst/gststructure.c: (gst_structure_nth_field_name):
1736         * gst/gststructure.h:
1737           add a way to get the name of a field referenced by index
1738         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1739           instead of checking if the resulting long long lies between
1740           min and max, we check if the long long would fit into
1741           a number of bytes for the final type.
1742           This fixes cases where a string represents 2^32 - 1, which
1743           when cast to int would be the (valid) -1, but is bigger than
1744           G_MAXINT
1745
1746 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1747
1748         * gst/parse/grammar.y:
1749           add a log line for type deserialization
1750
1751 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1752
1753         * check/gst/gstvalue.c: (START_TEST):
1754         * gst/gstvalue.c: (gst_value_deserialize):
1755           return long long, not int, so gint64 deserialization actually
1756           works.  Is there any flag that makes the compiler check this ?
1757           Fixes #308559
1758
1759 2005-06-22  Wim Taymans  <wim@fluendo.com>
1760
1761         * gst/gstbuffer.h:
1762         Added convenience macros for setting buffers in GValue.
1763
1764 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1765
1766         * check/gst/.cvsignore:
1767         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1768           add a test deserializing int64, and comment part out because
1769           it fails, yay !
1770
1771 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1772
1773         * check/Makefile.am:
1774         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
1775         * testsuite/Makefile.am:
1776         * testsuite/caps/Makefile.am:
1777         * testsuite/caps/value_serialize.c:
1778         * testsuite/test_gst_init.c:
1779           move a value_serialize test over
1780
1781 2005-06-20  Wim Taymans  <wim@fluendo.com>
1782
1783         * gst/gstpad.c:
1784         Small doc updates.
1785         
1786         * gst/gstvalue.c: (gst_value_compare_buffer),
1787         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
1788         (gst_value_compare_flags), (gst_value_serialize_flags),
1789         (gst_value_deserialize_flags), (_gst_value_initialize):
1790         Fix serialisation of buffers, they are not boxed types anymore
1791
1792 2005-06-20  Wim Taymans  <wim@fluendo.com>
1793
1794         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1795         Testcase to show error in buffer-on-caps serialisation.
1796
1797 2005-06-20  Andy Wingo  <wingo@pobox.com>
1798
1799         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
1800         will be adding to later.
1801
1802         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
1803         if its socks fill with rocks.
1804         (gst_system_clock_obtain): Set the name on object construction.
1805         Avoid double-checked locking.
1806
1807 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
1808
1809         * gst/gsturi.c: (gst_element_make_from_uri):
1810           Fix potential endless loop.
1811
1812 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1813
1814         * check/Makefile.am:
1815           add gsttag
1816         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
1817         (main):
1818           move over from testsuite dir and clean up
1819         * configure.ac:
1820         * gst/gsttag.c:
1821         * testsuite/Makefile.am:
1822         * testsuite/tags/.cvsignore:
1823         * testsuite/tags/Makefile.am:
1824         * testsuite/tags/merge.c:
1825           remove testsuite/tags
1826
1827 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1828
1829         * docs/gst/gstreamer-sections.txt:
1830         * docs/gst/tmpl/gstenumtypes.sgml:
1831         * win32/gstenumtypes.c:
1832           clean up documentation build a little
1833
1834 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1835
1836         * check/gstcheck.h:
1837           add macros for checking refcounts on objects and caps
1838         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
1839           add some more unit tests
1840         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1841         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
1842           fix leaked refcounts (I hope :)) so unittest works
1843         * gst/gstpad.h:
1844           whitespace removal
1845
1846 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1847
1848         * configure.ac: back to HEAD
1849
1850 === release 0.9.1 ===
1851
1852 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1853
1854         * NEWS:
1855         * RELEASE:
1856           updated
1857
1858 2005-06-17  Andy Wingo  <wingo@pobox.com>
1859
1860         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
1861         assert; it's always possible that the pad gets deactivated in
1862         between the checks in gstpad.c and the implementation. Rely on
1863         finish_preroll() to return a FLUSHING or similar instead of on the
1864         assert.
1865         
1866         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
1867         clock and post an EOS message if we come out of finish_preroll in
1868         the playing state.
1869
1870 2005-06-16  David Schleef  <ds@schleef.org>
1871
1872         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
1873         (gst_capsfilter_set_property): Allow NULL as possible value
1874         for filter_caps property, indicating GST_CAPS_ANY.
1875
1876 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1877
1878         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
1879           fix debug output
1880         * gst/schedulers/Makefile.am:
1881           use libgst prefix
1882         * gstreamer.spec.in:
1883           fix spec for it
1884
1885 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1886
1887         * gstreamer.spec.in:
1888           clean up
1889
1890 2005-06-08  Andy Wingo  <wingo@pobox.com>
1891
1892         * gst/gstutils.c: RPAD fixes all around.
1893         (gst_element_link_pads): Refcounting fixes.
1894
1895         * tools/gst-inspect.c:
1896         * tools/gst-xmlinspect.c:
1897         * parse/grammar.y:
1898         * gst/base/gsttypefindhelper.c:
1899         * gst/base/gstbasesink.c:
1900         * gst/gstqueue.c: RPAD fixes.
1901
1902         * gst/gstghostpad.h:
1903         * gst/gstghostpad.c: New ghost pad implementation as full proxy
1904         pads. The tricky thing is they provide both source and sink
1905         interfaces, since they proxy the internal pad for the external
1906         pad, and vice versa. Implement with lower-level ProxyPad objects,
1907         with the interior proxy pad as a child of the exterior ghost pad.
1908         Should write a doc on this.
1909         
1910         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
1911         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
1912         gst_object API.
1913         
1914         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
1915         pads are real pads. No ghost pads in this file. Not documenting
1916         the myriad s/RPAD/PAD/ and REALIZE fixes.
1917         (gst_pad_class_init): Add properties for "direction" and
1918         "template". Both are construct-only, so they can't change during
1919         the life of the pad. Fixes properly deriving from GstPad.
1920         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
1921         derived objects, just set properties when creating the objects via
1922         g_object_new.
1923         (gst_pad_get_parent): Implement as a function, return NULL if the
1924         parent is not an element.
1925         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
1926         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
1927         
1928         * gst/gstobject.c (gst_object_class_init): Make name a construct
1929         property. Don't set it in the object init.
1930
1931         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
1932         with UNKNOWN direction.
1933         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
1934         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
1935         (gst_element_remove_pad): Remove ghost-pad special cases.
1936         (gst_element_pads_activate): Remove rpad cruft.
1937
1938         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
1939         catch the pad's-parent-not-an-element case.
1940
1941         * gst/gst.h: Include gstghostpad.h.
1942
1943         * gst/gst.c (init_post): No more real, ghost pads.
1944
1945         * gst/Makefile.am: Add gstghostpad.[ch].
1946
1947         * check/Makefile.am:
1948         * check/gst/gstbin.c:
1949         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
1950         into a bin creates ghost pads, and that the refcounts are right.
1951         Partly moved from gstbin.c.
1952
1953 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1954
1955         * check/gst-libs/.cvsignore:
1956         * check/gst/.cvsignore:
1957         * check/pipelines/.cvsignore:
1958           ignore more
1959         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
1960         (START_TEST), (cleanup_suite), (main):
1961           add some tests related to cleanup after running pipelines
1962
1963 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1964
1965         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
1966           add a testsuite for GstBuffer
1967
1968 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1969
1970         * gst/gstminiobject.h:
1971           add defines for accessing the refcount
1972
1973 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
1974
1975         * Makefile.am: added support for html unit test coverage reports
1976
1977 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
1978
1979         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
1980           Free existing caps if the capsfilter changes. Add a FIXME about
1981           setting those caps on the pads.
1982
1983         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
1984           Before adding a ghost pad to a parent bin, check that there isn't
1985           already one for the element on the bin. Prevents infinite recursion
1986           when using decodebin in parse pipelines. Andy says he'll rewrite the
1987           way this works anyway, so ignore the hack.
1988
1989 2005-06-02  Andy Wingo  <wingo@pobox.com>
1990
1991         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
1992         file size, pass it on to the type find helper.
1993
1994         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
1995         segment_start and segment_end properly according to the seek
1996         method. Segment_end is still a bit flaky because offset can be
1997         negative for CUR and END cases, but it takes -1 as an "unset"
1998         value.
1999
2000 2005-06-02  Wim Taymans  <wim@fluendo.com>
2001
2002         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2003         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2004         (gst_basesink_activate):
2005         * gst/base/gstbasesink.h:
2006         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2007         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2008         (gst_pad_query), (gst_pad_start_task):
2009         * gst/gstpad.h:
2010         * gst/gstqueue.c: (gst_queue_bufferalloc),
2011         (gst_queue_handle_sink_event), (gst_queue_chain):
2012         Bufferalloc: return GstFlowReturn to more accuratly report
2013         why allocation failed.
2014
2015 2005-06-02  Wim Taymans  <wim@fluendo.com>
2016
2017         * gst/gstpipeline.c: (gst_pipeline_send_event):
2018         Take snapshot of state without blocking.
2019
2020 2005-06-02  Wim Taymans  <wim@fluendo.com>
2021
2022         * docs/design/part-TODO.txt:
2023         * docs/design/part-caps.txt:
2024         * docs/design/part-clocks.txt:
2025         * docs/design/part-negotiation.txt:
2026         * docs/design/part-preroll.txt:
2027         Small doc updates 
2028
2029 2005-05-30  Wim Taymans  <wim@fluendo.com>
2030
2031         * gst/elements/gstidentity.c: (gst_identity_event),
2032         (gst_identity_transform), (gst_identity_get_property):
2033         Protect last_message property as it is accessed from
2034         multiple threads.
2035
2036 2005-05-30  Wim Taymans  <wim@fluendo.com>
2037
2038         * gst/gstelement.c: (gst_element_init),
2039         (gst_element_pads_activate), (gst_element_change_state):
2040         Slicker pad activation code.
2041
2042 2005-05-30  Wim Taymans  <wim@fluendo.com>
2043
2044         * gst/Makefile.am:
2045         * gst/gstelement.h:
2046         * gst/gstelementfactory.h:
2047         * gst/gsttypes.h:
2048         Move elementfactory methods to separate .h file.
2049
2050 2005-05-30  Wim Taymans  <wim@fluendo.com>
2051
2052         * docs/design/part-overview.txt:
2053         * gst/gstsystemclock.h:
2054         Small typo fixes, doc updates.
2055
2056 2005-05-30  Wim Taymans  <wim@fluendo.com>
2057
2058         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2059         (init_popt_callback):
2060         Remove cpu-opt flag.
2061
2062 2005-05-30  Wim Taymans  <wim@fluendo.com>
2063
2064         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2065         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2066         * gst/gstbuffer.h:
2067         Avoid typechecking in places where not needed.
2068         Added accessor for malloc_data.
2069
2070 2005-05-30  Wim Taymans  <wim@fluendo.com>
2071
2072         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2073         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2074         (gst_pad_configure_sink), (gst_pad_configure_src),
2075         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2076         (gst_pad_start_task):
2077         Propagate errors from _set_caps() in configure_src/sink
2078         functions instead of returning TRUE.
2079         FLUSH events can travel up and downstream
2080
2081
2082 2005-05-30  Wim Taymans  <wim@fluendo.com>
2083
2084         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2085         (gst_basesink_activate):
2086         Handle EOS in preroll.
2087
2088 2005-05-30  Wim Taymans  <wim@fluendo.com>
2089
2090         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2091         (gst_queue_loop), (gst_queue_handle_src_event):
2092         Remove old pieces of code
2093         Flushing the queue in an upstream event is a very bad idea.
2094
2095 2005-05-26  Andy Wingo  <wingo@pobox.com>
2096
2097         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2098         gst_value_set_mini_object so as to add a ref on the object (which
2099         will be removed when the value is unset).
2100
2101         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2102         arg type in ::handoff.
2103
2104         * gst/gstelement.c (gst_element_change_state): Also deactivate
2105         pads in READY->NULL, just in case the element didn't make it to
2106         PAUSED. Wingo tested, Wim approved.
2107
2108 2005-05-26  Wim Taymans  <wim@fluendo.com>
2109
2110         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2111         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2112         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2113         A flushing pad cannot be used to alloc_buffer from.
2114
2115 2005-05-26  Wim Taymans  <wim@fluendo.com>
2116
2117         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2118         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2119         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2120         (gst_bus_create_watch), (gst_bus_add_watch_full):
2121         * gst/gstbus.h:
2122         Implement a real GSource and use g_main_context_wakeup() to
2123         signal new messages instead of the socketpair.
2124
2125 2005-05-25  Wim Taymans  <wim@fluendo.com>
2126
2127         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2128         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2129         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2130         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2131         (gst_pad_send_event), (gst_pad_start_task):
2132         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2133         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2134         (gst_queue_sink_activate), (gst_queue_src_activate),
2135         (gst_queue_change_state):
2136         * gst/gstqueue.h:
2137         Fix state changes for non sinks. We now change sinks, then elements
2138         with unconnected srcpads, then the rest.
2139         More efficient queue unlocking in flush and state changes.
2140         Set the pad activate mode even if it does not have an activate
2141         function.
2142
2143 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2144
2145         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2146           Don't go in pull mode for non-seekable sources.
2147         * gst/elements/gsttypefindelement.h:
2148         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2149         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2150         (free_entry), (stop_typefinding),
2151         (gst_type_find_element_handle_event), (find_peek),
2152         (gst_type_find_element_chain), (do_pull_typefind),
2153         (gst_type_find_element_change_state):
2154           Allow typefinding (w/o seeking) in push-mode, simplified version
2155           of what was in 0.8.
2156         * gst/gstutils.c: (gst_buffer_join):
2157         * gst/gstutils.h:
2158           gst_buffer_join() from 0.8.
2159
2160 2005-05-25  Wim Taymans  <wim@fluendo.com>
2161
2162         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2163         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2164         (gst_pad_send_event), (gst_pad_start_task):
2165         Disable attempt at mode switching until it is figured out.
2166
2167 2005-05-25  Wim Taymans  <wim@fluendo.com>
2168
2169         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2170         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2171         (gst_basesink_finish_preroll), (gst_basesink_chain),
2172         (gst_basesink_loop), (gst_basesink_activate),
2173         (gst_basesink_change_state):
2174         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2175         (gst_basesrc_get_range), (gst_basesrc_loop),
2176         (gst_basesrc_activate):
2177         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2178         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2179         (gst_real_pad_init), (gst_real_pad_set_property),
2180         (gst_real_pad_get_property), (gst_pad_set_active),
2181         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2182         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2183         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2184         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2185         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2186         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2187         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2188         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2189         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2190         (gst_pad_stop_task):
2191         * gst/gstpad.h:
2192         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2193         (gst_queue_loop), (gst_queue_src_activate):
2194         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2195         (gst_task_get_state):
2196         * gst/gsttask.h:
2197         * gst/schedulers/threadscheduler.c:
2198         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2199         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2200         in task function.
2201         Remove ACTIVE pad flag, use FLUSHING everywhere
2202         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2203         functions.
2204         Add locks around IS_FLUSHING when reading.
2205         Take STREAM lock in chain(), get_range() functions so plugins
2206         don't need to take it anymore.
2207         
2208
2209
2210 2005-05-25  Wim Taymans  <wim@fluendo.com>
2211
2212         * tools/gst-launch.c: (event_loop):
2213         Unref message after using its contents instead of
2214         before.
2215
2216 2005-05-24  Wim Taymans  <wim@fluendo.com>
2217
2218         * docs/design/draft-ghostpads.txt:
2219         * docs/design/draft-push-pull.txt:
2220         * docs/design/draft-query.txt:
2221         * docs/design/part-overview.txt:
2222         Docs updates, added general overview doc.
2223
2224 2005-05-21  David Schleef  <ds@schleef.org>
2225
2226         * docs/gst/tmpl/old/GstBin.sgml:
2227         * docs/gst/tmpl/old/GstBuffer.sgml:
2228         * docs/gst/tmpl/old/GstCaps.sgml:
2229         * docs/gst/tmpl/old/GstClock.sgml:
2230         * docs/gst/tmpl/old/GstCompat.sgml:
2231         * docs/gst/tmpl/old/GstData.sgml:
2232         * docs/gst/tmpl/old/GstElement.sgml:
2233         * docs/gst/tmpl/old/GstEvent.sgml:
2234         * docs/gst/tmpl/old/GstIndex.sgml:
2235         * docs/gst/tmpl/old/GstStructure.sgml:
2236         * docs/gst/tmpl/old/GstTag.sgml:
2237         * docs/gst/tmpl/old/cothreads.sgml:
2238         * docs/gst/tmpl/old/cothreads_compat.sgml:
2239         * docs/gst/tmpl/old/gettext.sgml:
2240         * docs/gst/tmpl/old/gobject2gtk.sgml:
2241         * docs/gst/tmpl/old/grammar.tab.sgml:
2242         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2243         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2244         * docs/gst/tmpl/old/gst_private.sgml:
2245         * docs/gst/tmpl/old/gstaggregator.sgml:
2246         * docs/gst/tmpl/old/gstarch.sgml:
2247         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2248         * docs/gst/tmpl/old/gstbufferstore.sgml:
2249         * docs/gst/tmpl/old/gstdata_private.sgml:
2250         * docs/gst/tmpl/old/gstdisksink.sgml:
2251         * docs/gst/tmpl/old/gstdisksrc.sgml:
2252         * docs/gst/tmpl/old/gstelementfactory.sgml:
2253         * docs/gst/tmpl/old/gstextratypes.sgml:
2254         * docs/gst/tmpl/old/gstfakesink.sgml:
2255         * docs/gst/tmpl/old/gstfakesrc.sgml:
2256         * docs/gst/tmpl/old/gstfdsink.sgml:
2257         * docs/gst/tmpl/old/gstfdsrc.sgml:
2258         * docs/gst/tmpl/old/gstfilesink.sgml:
2259         * docs/gst/tmpl/old/gstfilesrc.sgml:
2260         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2261         * docs/gst/tmpl/old/gstidentity.sgml:
2262         * docs/gst/tmpl/old/gstindexfactory.sgml:
2263         * docs/gst/tmpl/old/gstmarshal.sgml:
2264         * docs/gst/tmpl/old/gstmd5sink.sgml:
2265         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2266         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2267         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2268         * docs/gst/tmpl/old/gstpipefilter.sgml:
2269         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2270         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2271         * docs/gst/tmpl/old/gstshaper.sgml:
2272         * docs/gst/tmpl/old/gstspider.sgml:
2273         * docs/gst/tmpl/old/gstspideridentity.sgml:
2274         * docs/gst/tmpl/old/gststatistics.sgml:
2275         * docs/gst/tmpl/old/gsttee.sgml:
2276         * docs/gst/tmpl/old/gsttimecache.sgml:
2277         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2278         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2279         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2280         * docs/gst/tmpl/old/types.sgml:
2281           I didn't intend to add these or check them in.
2282
2283 2005-05-19  David Schleef  <ds@schleef.org>
2284
2285         * configure.ac: Use -no-common everywhere.  In a sane world, it
2286           would be the default in libtool, because without it, you can't
2287           build DLLs on Windows.
2288         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2289         * docs/gst/gstreamer-sections.txt:
2290         * docs/gst/tmpl/gstcpu.sgml:
2291         * docs/gst/tmpl/gstdata.sgml:
2292         * docs/gst/tmpl/gstthread.sgml:
2293
2294 2005-05-19  David Schleef  <ds@schleef.org>
2295
2296         * gst/gstminiobject.c: (gst_value_set_mini_object),
2297         (gst_value_take_mini_object), (gst_value_get_mini_object):
2298         * gst/gstminiobject.h: Add GValue set/get functions.
2299
2300 2005-05-19  Wim Taymans  <wim@fluendo.com>
2301
2302         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2303         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2304         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2305         * gst/gstbuffer.h:
2306         * gst/gstbus.c: (gst_bus_post):
2307         * gst/gstelement.c: (gst_element_get_random_pad):
2308         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2309         Make subbufer unref the parent in finalize.
2310         some more debugging info.
2311
2312
2313 2005-05-19  Wim Taymans  <wim@fluendo.com>
2314
2315         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2316         (gst_basesink_init), (gst_basesink_finalize),
2317         (gst_basesink_activate), (gst_basesink_change_state):
2318         Don't free preroll queue too early.
2319
2320 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2321
2322         * gst/Makefile.am:
2323         * gst/ROADMAP:
2324           Hi, I'm outdated. Please shoot me.
2325
2326 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2327
2328         * gst/gstpipeline.c: (gst_pipeline_send_event):
2329           Do not access variables after they have been deleted.
2330
2331 2005-05-19  Wim Taymans  <wim@fluendo.com>
2332
2333         * tools/gst-inspect.c: (print_plugin_features):
2334         A plugin feature does unfortunatly not use the
2335         object name yet...
2336
2337 2005-05-18  Wim Taymans  <wim@fluendo.com>
2338
2339         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2340         Port _span() functions to new subbuffers.
2341
2342 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2343
2344         * gst/gstbin.c: (gst_bin_add_func):
2345           Fix clock settery in bins when adding kids after the clock has
2346           been selected.
2347
2348 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2349
2350         * gst/elements/gstidentity.c: (gst_identity_class_init):
2351           Workaround until signals support GstMiniObject.
2352
2353 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2354
2355         * gst/gstbuffer.c:
2356         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2357
2358 2005-05-18  Wim Taymans  <wim@fluendo.com>
2359
2360         * gst/base/Makefile.am:
2361         * gst/base/gstadapter.c: (gst_adapter_base_init),
2362         (gst_adapter_class_init), (gst_adapter_init),
2363         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2364         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2365         (gst_adapter_flush), (gst_adapter_available),
2366         (gst_adapter_available_fast):
2367         * gst/base/gstadapter.h:
2368         Ported and added adapter to the base classes.
2369
2370 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2371
2372         * gst/gst.c:
2373         * gst/gstmessage.c:
2374           Make sure the class is reffed/unreffed once before threads can be
2375           used.  Fixes #304551.
2376
2377 2005-05-17  Wim Taymans  <wim@fluendo.com>
2378
2379         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2380         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2381         * gst/gstminiobject.c: (gst_mini_object_get_type),
2382         (gst_mini_object_free):
2383         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2384         (gst_pad_push), (gst_pad_push_event):
2385         * gst/gstqueue.c: (gst_queue_change_state):
2386         Don't queue buffers in basesink when we are flushing.
2387         Unref buffer when flushing in basesink.
2388         Flush queue when going to READY
2389         Unref buffer when _push() returns an error.
2390         Don't free MiniObject instance when refcount is incremented
2391         in _finalize() so that we can recover objects.
2392
2393 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2394
2395         * docs/manual/advanced-schedulers.xml:
2396         * docs/manual/appendix-checklist.xml:
2397         * docs/pwg/advanced-clock.xml:
2398         * docs/pwg/advanced-interfaces.xml:
2399         * docs/pwg/advanced-request.xml:
2400         * docs/pwg/advanced-types.xml:
2401         * docs/pwg/intro-preface.xml:
2402         * examples/plugins/example.c: (gst_example_get_type),
2403         (gst_example_class_init), (gst_example_chain),
2404         (gst_example_set_property), (gst_example_get_property),
2405         (gst_example_change_state), (plugin_init):
2406         * examples/plugins/example.h:
2407           small doc fixes
2408
2409 2005-05-17  Wim Taymans  <wim@fluendo.com>
2410
2411         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2412         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2413         * gst/gstqueue.c: (gst_queue_change_state):
2414         Clear queue when going to READY.
2415         Remove IN_SETCAPS flag too.
2416
2417 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2418
2419         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2420           Remove implicit cast from gboolean to GstElementStateReturn;
2421           make sure we still return failure in paused => ready case if
2422           the parent class fails to change state and our own stop 
2423           vfunc succeeds.
2424
2425 2005-05-17  Wim Taymans  <wim@fluendo.com>
2426
2427         * tools/gst-launch.c: (event_loop):
2428         Message was unreffed too soon.
2429
2430 2005-05-16  Andy Wingo  <wingo@pobox.com>
2431
2432         * gst/gstbin.c (sink_iterator_filter): Err... um...
2433
2434         * check/gst/gstbin.c (test_ghost_pads): New test for the
2435         ghosting-if-elements-not-in-same-bin behavior.
2436
2437 2005-05-16  David Schleef  <ds@schleef.org>
2438
2439         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2440         accessing refcount directly.
2441
2442 2005-05-15  David Schleef  <ds@schleef.org>
2443
2444         * check/Makefile.am: remove GstData checks
2445         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2446         * gst/Makefile.am: add miniobject, remove data
2447         * gst/gst.h: add miniobject, remove data
2448         * gst/gstdata.c: remove
2449         * gst/gstdata.h: remove
2450         * gst/gstdata_private.h: remove
2451         * gst/gsttypes.h: remove GstEvent and GstMessage
2452         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2453         * gst/gstmarshal.list: change BOXED -> OBJECT
2454
2455         Implement GstMiniObject.
2456         * gst/gstminiobject.c:
2457         * gst/gstminiobject.h:
2458
2459         Modify to be subclasses of GstMiniObject.
2460         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2461         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2462         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2463         (gst_subbuffer_get_type), (gst_subbuffer_init),
2464         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2465         (gst_buffer_span):
2466         * gst/gstbuffer.h:
2467         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2468         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2469         (_gst_event_copy), (gst_event_new):
2470         * gst/gstevent.h:
2471         * gst/gstmessage.c: (_gst_message_initialize),
2472         (gst_message_get_type), (gst_message_class_init),
2473         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2474         (gst_message_new), (gst_message_new_error),
2475         (gst_message_new_warning), (gst_message_new_tag),
2476         (gst_message_new_state_changed), (gst_message_new_application):
2477         * gst/gstmessage.h:
2478         * gst/gstprobe.c: (gst_probe_perform),
2479         (gst_probe_dispatcher_dispatch):
2480         * gst/gstprobe.h:
2481         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2482         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2483         (_gst_query_copy), (gst_query_new):
2484
2485         Update elements for GstData -> GstMiniObject changes
2486         * gst/gstquery.h:
2487         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2488         (gst_queue_chain), (gst_queue_loop):
2489         * gst/elements/gstbufferstore.c:
2490         (gst_buffer_store_add_buffer_func),
2491         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2492         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2493         (gst_fakesink_render):
2494         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2495         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2496         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2497         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2498         (gst_filesrc_create_read):
2499         * gst/elements/gstidentity.c: (gst_identity_class_init):
2500         * gst/elements/gsttypefindelement.c:
2501         (gst_type_find_element_src_event), (free_entry_buffers),
2502         (gst_type_find_element_handle_event):
2503         * libs/gst/dataprotocol/dataprotocol.c:
2504         (gst_dp_header_from_buffer):
2505         * libs/gst/dataprotocol/dataprotocol.h:
2506         * libs/gst/dataprotocol/dp-private.h:
2507
2508 2005-05-15  David Schleef  <ds@schleef.org>
2509
2510         * gst/elements/gstelements.c: Don't include headers that were
2511         just removed.
2512
2513 2005-05-15  David Schleef  <ds@schleef.org>
2514
2515         * gst/elements/Makefile.am: Remove some elements that don't
2516         need to be in the core (or even exist at all).
2517         * gst/elements/gstaggregator.c:
2518         * gst/elements/gstaggregator.h:
2519         * gst/elements/gstmd5sink.c:
2520         * gst/elements/gstmd5sink.h:
2521         * gst/elements/gstmultifilesrc.c:
2522         * gst/elements/gstmultifilesrc.h:
2523         * gst/elements/gstpipefilter.c:
2524         * gst/elements/gstpipefilter.h:
2525         * gst/elements/gstshaper.c:
2526         * gst/elements/gstshaper.h:
2527         * gst/elements/gststatistics.c:
2528         * gst/elements/gststatistics.h:
2529         * po/POTFILES.in: Remove above files.
2530
2531 2005-05-14  Andy Wingo  <wingo@pobox.com>
2532
2533         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2534         so as to get the refs right.
2535         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2536         unreffing objects that don't pass the filter.
2537
2538         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2539         gst_element_set_bus.
2540         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2541         normal cases, this will destroy the bus.
2542
2543         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2544         object.
2545
2546         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2547         has no sinks.
2548
2549 2005-05-13  Andy Wingo  <wingo@pobox.com>
2550
2551         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2552         gst_pad_link, call pad_link_maybe_ghosting,
2553         (pad_link_maybe_ghosting): Links pads, making sure that the
2554         elements being linked are in the same bin.
2555         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2556         Helpers for pad_link_maybe_ghosting.
2557
2558 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2559
2560         * configure.ac:
2561           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2562
2563 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2564
2565         * docs/design/part-element-source.txt:
2566           Mention GstPushSrc
2567
2568 2005-05-12  Wim Taymans  <wim@fluendo.com>
2569
2570         * gst/base/gstbasesink.c: (gst_basesink_init),
2571         (gst_basesink_activate):
2572         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2573         (gst_basesrc_is_seekable):
2574         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2575         (bin_element_is_sink), (gst_bin_change_state):
2576         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2577         * gst/gstelement.h:
2578         Identify sinks by their flag to avoid overly complicated
2579         checks (fow now).
2580         Do state changes even for elements not reachable from the
2581         sinks.
2582         BaseSink is a sink now :)
2583         Some more debugging info in the basesrc.
2584
2585
2586 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2587
2588         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2589           Implement _query on a bin, similar to _send_event.
2590
2591 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2592
2593         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2594           Discont event offset format should be GST_FORMAT_BYTES,
2595           not GST_FORMAT_TIME.
2596
2597 2005-05-12  Wim Taymans  <wim@fluendo.com>
2598
2599         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2600         Same fix as Ronald's but without the signal. 
2601
2602 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2603
2604         * gst/gstutils.c: (gst_element_query_position):
2605           No, an element is not a pad.
2606
2607 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2608
2609         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2610         (gst_bin_get_state):
2611           If a child is removed from a bin while we remove the child from
2612           the bin and while we're retrieving its state, signal this to the
2613           get_state function so we abort the wait (instead of waiting for
2614           a timeout) and can immediately re-iterate over all other elements.
2615
2616 2005-05-12  Wim Taymans  <wim@fluendo.com>
2617
2618         * gst/base/Makefile.am:
2619         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2620         (gst_basesrc_start):
2621         * gst/base/gstbasesrc.h:
2622         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2623         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2624         (gst_pushsrc_init), (gst_pushsrc_create):
2625         * gst/base/gstpushsrc.h:
2626         Added is_seekable to BaseSrc
2627         Added simple PushSrc.
2628
2629 2005-05-11  Wim Taymans  <wim@fluendo.com>
2630
2631         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2632         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2633         (gst_element_link_pads), (gst_element_query_position),
2634         (gst_element_query_convert), (intersect_caps_func),
2635         (gst_pad_query_position), (gst_pad_query_convert):
2636         Fix refcounting in utils function.
2637         No point in trying to activate a pad when it's added, it could
2638         be added from the state change function and then we deadlock, the
2639         element has to decide what to do.
2640
2641 2005-05-10  Andy Wingo  <wingo@pobox.com>
2642
2643         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2644         *all* the arguments.
2645
2646         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2647         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2648         lock (according to the docs -- if this is wrong change the docs).
2649
2650         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2651         flush messages in the NULL state.
2652
2653         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2654         message immediately and return.
2655         (gst_bus_set_flushing): New function. If a bus is flushing, it
2656         flushes out any queued messages and immediately unrefs new
2657         messages. This is so when an element goes to NULL, all of the
2658         unhandled messages coming from it can be freed, and their
2659         references to the element dropped. In other words: message source
2660         ref considered harmful :P
2661
2662         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2663         we're finished with it.
2664
2665         * gst/gstmessage.c (gst_message_new_state_changed): 
2666
2667 2005-05-10  Wim Taymans  <wim@fluendo.com>
2668
2669         * gst/gstvalue.c: (gst_value_compare_flags),
2670         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2671         (_gst_value_initialize):
2672         Added flags serialize/deserialize/compare code.
2673
2674 2005-05-09  Andy Wingo  <wingo@pobox.com>
2675
2676         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2677         Intersect the peer's caps with our caps.
2678
2679 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2680
2681         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2682         * gst/elements/gsttypefindelement.c: (find_peek):
2683           Handle negative offsets better. Fixes decodebin.
2684
2685 2005-05-09  Wim Taymans  <wim@fluendo.com>
2686
2687         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2688         (gst_base_transform_event):
2689         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2690         Implement accept_caps.
2691         Fix silly lock/unlock mismatch in base class.
2692
2693 2005-05-09  Wim Taymans  <wim@fluendo.com>
2694
2695         * docs/design/draft-push-pull.txt:
2696         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2697         * gst/elements/gstfilesink.c: (gst_filesink_init),
2698         (gst_filesink_query):
2699         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2700         (gst_type_find_handle_src_query), (find_element_get_length):
2701         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2702         * gst/gstelement.h:
2703         * gst/gstmessage.c:
2704         * gst/gstmessage.h:
2705         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2706         (gst_real_pad_get_caps_unlocked),
2707         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2708         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2709         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2710         (gst_real_pad_dispose), (gst_real_pad_finalize),
2711         (gst_pad_load_and_link), (gst_pad_save_thyself),
2712         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2713         (gst_pad_check_pull_range), (gst_pad_pull_range),
2714         (gst_pad_template_get_type), (gst_pad_template_class_init),
2715         (gst_pad_template_init), (gst_pad_template_dispose),
2716         (name_is_valid), (gst_static_pad_template_get),
2717         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2718         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2719         (gst_pad_get_element_private), (gst_pad_start_task),
2720         (gst_pad_pause_task), (gst_pad_stop_task),
2721         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2722         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2723         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
2724         (gst_ghost_pad_new):
2725         * gst/gstpad.h:
2726         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
2727         (gst_query_new_position), (gst_query_set_position),
2728         (gst_query_parse_position), (gst_query_new_convert),
2729         (gst_query_set_convert), (gst_query_parse_convert):
2730         * gst/gstquery.h:
2731         * gst/gstqueryutils.c:
2732         * gst/gstqueryutils.h:
2733         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2734         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2735         (gst_queue_handle_src_query):
2736         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2737         (gst_element_query_position), (gst_element_query_convert),
2738         (intersect_caps_func), (gst_pad_query_position),
2739         (gst_pad_query_convert):
2740         * gst/gstutils.h:
2741         * tools/gst-inspect.c: (print_pad_info):
2742         * tools/gst-xmlinspect.c: (print_element_info):
2743         Remove old query functions. Ported old code.
2744         Added position/convert helper functions to gstutils.
2745         Reordered gstpad.c code, grouping relevant things.
2746         Remove gst_message_new(), always need to speficy a specific
2747         message.
2748
2749
2750 2005-05-09  Andy Wingo  <wingo@pobox.com>
2751
2752         * gst/gstiterator.h: Add some includes.
2753
2754         * gst/gstqueryutils.h: Include more headers.
2755
2756         * gst/gstpad.h:
2757         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
2758         some uses of gst_pad_query.
2759
2760         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
2761         NULL out parameters.
2762         (gst_query_new_position): New proc, allocates a new position
2763         query.
2764
2765         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
2766         gstqueryutils.c to the build.
2767
2768         * gst/gststructure.c (gst_structure_set_valist): Implement with
2769         the generic G_VALUE_COLLECT.
2770         
2771 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
2772
2773         * gst/Makefile.am: (gst_headers):
2774         Added gstqueryutils.h to the list of headers to install, that was
2775         a 'nachty' move wingo :)
2776
2777 2005-05-06  Andy Wingo  <wingo@pobox.com>
2778
2779         * gst/gstquery.h
2780         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
2781         GstData, init a memchunk.
2782         (standard_definitions): Add a few query types, deprecate a few.
2783         (gst_query_get_type): New proc.
2784         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
2785         implementation.
2786         (gst_query_new_application, gst_query_get_structure): New public
2787         procs.
2788
2789         * docs/design/draft-query.txt: Removed LINKS from the query types,
2790         because all the rest can be dispatched to other pads -- seemed
2791         ugly to have a query that couldn't be dispatched. internal_links
2792         is fine as a pad method.
2793
2794         * gst/gstpad.h: Add query2 as a pad method, add the new functions
2795         in gstpad.c, but maintain binary compatibility for the moment.
2796         Will fix before 0.9 is out.
2797
2798         * gst/gstqueryutils.c: 
2799         * gst/gstqueryutils.h: New files, implement 3 methods for each
2800         query type: parse_query, parse_response, and set. Probably need an
2801         allocator as well.
2802
2803         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
2804
2805         * gst/elements/gstfilesink.c (gst_filesink_query2):
2806         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
2807         query_types, and formats methods.
2808
2809         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
2810         (gst_pad_set_query2_function): New functions.
2811         (gst_real_pad_init): Set query2_default as the default query2
2812         function. Basically just dispatches to internally linked pads.
2813
2814         Needs review!
2815         
2816         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
2817         without using the atomic operations. Only one thread can possibly
2818         be accessing the data at this point. Changed so as to avoid
2819         gst_atomic operations.
2820
2821 2005-05-06  Wim Taymans  <wim@fluendo.com>
2822
2823         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
2824         Also set caps if we use the fallback buffer alloc.
2825
2826 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
2827
2828         * docs/gst/Makefile.am:
2829         * docs/gst/gstreamer-docs.sgml:
2830         * docs/gst/gstreamer-sections.txt:
2831         * docs/gst/tmpl/gstatomic.sgml:
2832         * docs/gst/tmpl/gstmemchunk.sgml:
2833         * testsuite/elements/struct_i386.h:
2834         * win32/GStreamer.vcproj:
2835         * win32/Makefile:
2836           Purge GstAtomic stuff from docs and win32 makefiles as well
2837
2838 2005-05-06  Wim Taymans  <wim@fluendo.com>
2839
2840         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
2841         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
2842         * gst/gstpad.c: (gst_pad_peer_get_caps):
2843         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2844         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2845         (gst_queue_src_activate), (gst_queue_change_state):
2846         * gst/gstqueue.h:
2847         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2848         (intersect_caps_func):
2849         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
2850         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
2851         Some fixes for the peer_get_caps() change.
2852
2853 2005-05-06  Wim Taymans  <wim@fluendo.com>
2854
2855         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2856         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
2857         (gst_basesink_activate):
2858         Actually do something with error codes returned from the push
2859         functions.
2860
2861 2005-05-06  Wim Taymans  <wim@fluendo.com>
2862
2863         * docs/design/part-element-sink.txt:
2864         * docs/design/part-element-source.txt:
2865         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2866         (gst_basesink_event), (gst_basesink_activate):
2867         * gst/base/gstbasesink.h:
2868         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
2869         (gst_basesrc_activate):
2870         * gst/base/gstbasesrc.h:
2871         * gst/gstelement.c: (gst_element_pads_activate):
2872         Some more documentation.
2873         Fixed scheduling decision in _pads_activate().
2874
2875 2005-05-05  Andy Wingo  <wingo@pobox.com>
2876
2877         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
2878         the test suite.
2879
2880 2005-05-05  Wim Taymans  <wim@fluendo.com>
2881
2882         * gst/base/Makefile.am:
2883         * gst/base/gstbasesink.h:
2884         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2885         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
2886         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
2887         (gst_collectpads_class_init), (gst_collectpads_init),
2888         (gst_collectpads_finalize), (gst_collectpads_new),
2889         (gst_collectpads_set_function), (gst_collectpads_add_pad),
2890         (find_pad), (gst_collectpads_remove_pad),
2891         (gst_collectpads_is_active), (gst_collectpads_collect),
2892         (gst_collectpads_collect_range), (gst_collectpads_start),
2893         (gst_collectpads_stop), (gst_collectpads_peek),
2894         (gst_collectpads_pop), (gst_collectpads_available),
2895         (gst_collectpads_read), (gst_collectpads_flush),
2896         (gst_collectpads_chain):
2897         * gst/base/gstcollectpads.h:
2898         * gst/elements/Makefile.am:
2899         * gst/elements/gstelements.c:
2900         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2901         (gst_fakesink_get_times), (gst_fakesink_event),
2902         (gst_fakesink_preroll), (gst_fakesink_render):
2903         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2904         (gst_filesink_init), (gst_filesink_set_location),
2905         (gst_filesink_open_file), (gst_filesink_close_file),
2906         (gst_filesink_pad_query), (gst_filesink_event),
2907         (gst_filesink_render), (gst_filesink_change_state):
2908         * gst/elements/gstfilesink.h:
2909         Added object to help in making collect pad based elements.
2910         Ported filesink.
2911         Make event function in sink baseclass return gboolean.
2912
2913 2005-05-05  Wim Taymans  <wim@fluendo.com>
2914
2915         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
2916         (gst_bin_get_by_name):
2917         * gst/gstbuffer.h:
2918         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
2919         (gst_clock_finalize):
2920         * gst/gstdata.c: (gst_data_replace):
2921         * gst/gstdata.h:
2922         * gst/gstelement.c: (gst_element_request_pad),
2923         (gst_element_pads_activate):
2924         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
2925         (gst_object_unref):
2926         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2927         (gst_pad_set_checkgetrange_function),
2928         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
2929         (gst_pad_check_pull_range), (gst_pad_pull_range),
2930         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2931         (gst_pad_pause_task), (gst_pad_stop_task):
2932         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2933         (gst_element_request_pad), (gst_pad_proxy_getcaps):
2934         Fix name lookup in GstBin.
2935         Added _data_replace() function and _buffer_replace()
2936         Use finalize method to clean up clock.
2937         Fix refcounting on request pads.
2938         Fix pad schedule mode error.
2939         Some more object refcounting debug info,
2940
2941
2942 2005-05-04  Andy Wingo <wingo@pobox.com>
2943
2944         * check/Makefile.am:
2945         * docs/gst/tmpl/gstatomic.sgml:
2946         * docs/gst/tmpl/gstplugin.sgml:
2947         * gst/base/gstbasesink.c: (gst_basesink_activate):
2948         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
2949         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
2950         (gst_basesrc_query), (gst_basesrc_set_property),
2951         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
2952         (gst_basesrc_activate):
2953         * gst/base/gstbasesrc.h:
2954         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
2955         (gst_base_transform_src_activate):
2956         * gst/elements/gstelements.c:
2957         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2958         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2959         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2960         * gst/elements/gsttypefindelement.c: (find_element_get_length),
2961         (gst_type_find_element_checkgetrange),
2962         (gst_type_find_element_activate):
2963         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
2964         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
2965         (gst_caps_load_thyself):
2966         * gst/gstelement.c: (gst_element_pads_activate),
2967         (gst_element_save_thyself), (gst_element_restore_thyself):
2968         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
2969         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
2970         * gst/gstpad.h:
2971         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
2972         (gst_xml_parse_file), (gst_xml_parse_memory),
2973         (gst_xml_get_element), (gst_xml_make_element):
2974         * gst/indexers/gstfileindex.c: (gst_file_index_load),
2975         (_file_index_id_save_xml), (gst_file_index_commit):
2976         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
2977         (read_enum), (load_pad_template), (load_feature), (load_plugin),
2978         (load_paths):
2979         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
2980         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
2981         * tools/gst-complete.c: (main):
2982         * tools/gst-compprep.c: (main):
2983         * tools/gst-inspect.c: (print_element_properties_info):
2984         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
2985         * tools/gst-xmlinspect.c: (print_element_properties):
2986         GCC 4 fixen.
2987         
2988 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
2989
2990         * gst/gstplugin.c: (gst_plugin_check_module),
2991         (gst_plugin_check_file), (gst_plugin_load_file):
2992             apply patch from #172526 to make register work on MacOSX
2993
2994 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2995
2996         * docs/gst/tmpl/gstconfig.sgml:
2997         * gst/gstconfig.h.in:
2998           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
2999         * testsuite/debug/printf_extension.c: (main):
3000           Do not use GST_PTR_FORMAT on pointers to types with
3001           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3002         * testsuite/elements/property.h:
3003           use correct printf format
3004
3005 2005-05-02  Wim Taymans  <wim@fluendo.com>
3006
3007         * docs/design/draft-push-pull.txt:
3008         * docs/design/draft-query.txt:
3009         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3010         (gst_basesrc_start):
3011         Added draft for new query API.
3012         Added draft for better selecting scheduling methods.
3013         Make basesrc ignore length if the subclass does not support
3014         it.
3015
3016 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3017
3018         * gst/Makefile.am:
3019           possible fixes for automake-1.5 - _LIBADD is reserved
3020
3021 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3022
3023         * docs/faq/Makefile.am:
3024         * docs/manual/Makefile.am:
3025         * docs/manuals.mak:
3026         * docs/pwg/Makefile.am:
3027         * gst/Makefile.am:
3028           possible fixes for automake-1.5
3029
3030 2005-04-28  Wim Taymans  <wim@fluendo.com>
3031
3032         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3033         (gst_basesink_pad_getcaps), (gst_basesink_init),
3034         (gst_basesink_do_sync):
3035         * gst/gstclock.c: (gst_clock_entry_new):
3036         * gst/gstevent.c: (gst_event_discont_get_value):
3037         * gst/gstpipeline.c: (pipeline_bus_handler),
3038         (gst_pipeline_change_state):
3039         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3040         Better debugging of clocking info.
3041         Allow NULL values when getting discont values.
3042
3043 2005-04-27  Wim Taymans  <wim@fluendo.com>
3044
3045         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3046         * check/gst/gstpad.c: (gst_pad_suite):
3047         Increase timeout for checks.
3048
3049 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3050
3051         * check/Makefile.am:
3052           fix the broken rule for cleanup.  Apparently this rule is
3053           only needed on FC2, so maybe this warrants further autotool
3054           inspection.
3055
3056 2005-04-26  Wim Taymans  <wim@fluendo.com>
3057
3058         * gst/gsttrashstack.h:
3059         Ooohh. a nasty one! After having a failed pop() from the stack,
3060         it's possible that the stack is empty. In that case, don't
3061         follow the NULL pointer.
3062
3063 2005-04-25  Wim Taymans  <wim@fluendo.com>
3064
3065         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3066         (gst_pad_set_checkgetrange_function),
3067         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3068         (gst_pad_check_pull_range), (gst_pad_pull_range),
3069         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3070         (gst_pad_pause_task), (gst_pad_stop_task):
3071         * gst/gstplugin.c: (gst_plugin_load):
3072         * gst/gstplugin.h:
3073         Remove gst_library_load as it does more harm than good with
3074         the new g_module flags.
3075         Revert bogus caps template check in pad linking, pad caps
3076         are important when linking not the template, which is more
3077         general than the current caps.
3078
3079 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3080
3081         * gst/autoplug/.cvsignore:
3082         * gst/autoplug/Makefile.am:
3083         * gst/autoplug/gstsearchfuncs.c:
3084         * gst/autoplug/gstsearchfuncs.h:
3085         * gst/autoplug/gstspider.c:
3086         * gst/autoplug/gstspider.h:
3087         * gst/autoplug/gstspideridentity.c:
3088         * gst/autoplug/gstspideridentity.h:
3089         * gst/autoplug/spidertest.c:
3090           Die, spider, die.
3091
3092 2005-04-25  Wim Taymans  <wim@fluendo.com>
3093
3094         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3095         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3096         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3097         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3098         * gst/gstpad.h:
3099         Added stubs for unimplemented functions. 
3100
3101 2005-04-24  David Schleef  <ds@schleef.org>
3102
3103         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3104         please fix.
3105
3106 2005-04-24  David Schleef  <ds@schleef.org>
3107
3108         Convert everything from GstAtomicInt to g_atomic_int_*, and
3109         remove gstatomic.
3110         * gst/Makefile.am:
3111         * gst/gstatomic.c:
3112         * gst/gstatomic.h:
3113         * gst/gstatomic_impl.h:
3114         * gst/gstbuffer.c:
3115         * gst/gstcaps.c:
3116         * gst/gstcaps.h:
3117         * gst/gstclock.c:
3118         * gst/gstclock.h:
3119         * gst/gstdata.c:
3120         * gst/gstdata.h:
3121         * gst/gstdata_private.h:
3122         * gst/gstevent.c:
3123         * gst/gstinfo.c:
3124         * gst/gstinfo.h:
3125         * gst/gstmessage.c:
3126         * gst/gstobject.c:
3127         * gst/gstobject.h:
3128         * gst/gststructure.c:
3129         * gst/gststructure.h:
3130         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3131         * gst/gstutils.h:
3132
3133 2005-04-24  David Schleef  <ds@schleef.org>
3134
3135         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3136         make the regressions tests work.  Remove some code that is no
3137         longer true.
3138         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3139         Disable warning for pads without templates.
3140
3141 2005-04-24  David Schleef  <ds@schleef.org>
3142
3143         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3144         functions that handle filtered links.
3145         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3146         removed functions.
3147         * gst/gstutils.c: Fix/remove utility functions that handle
3148         filtered caps.
3149         * gst/gstutils.h:
3150         * gst/gstvalue.c: Add serialization/deserialization of caps
3151         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3152         requires fixing so that the filter caps notation creates
3153         a capsfilter element and sets the filter_caps property.  I
3154         think everyone probably wants to keep the shorthand notation.
3155         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3156         * docs/gst/tmpl/gstpad.sgml:
3157
3158         * gst/elements/gstelements.c: Register capsfilter element.
3159         * gst/Makefile.am: fix spacing
3160         * docs/random/ds/0.9-suggested-changes: random
3161
3162 2005-04-23  David Schleef  <ds@schleef.org>
3163
3164         * gst/elements/Makefile.am:
3165         * gst/elements/gstcapsfilter.c: New element that acts like an
3166         identity, but filters caps.  Will eventually replace filtered
3167         caps in pad linking.
3168         * gst/gstutils.c: (gst_element_create_all_pads): New function
3169         to create all the ALWAYS pads that are registered with an
3170         element class.  This functionality should eventually be
3171         merged in with GstElement initialization.
3172         * gst/gstutils.h:
3173         * testsuite/trigger/README: part of trigger test code that should
3174         have been checked in a long time ago.
3175
3176 2005-04-23  David Schleef  <ds@schleef.org>
3177
3178         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3179         needed with new versions of libtool (nobody will confirm this),
3180         and hard to carry around.
3181         * gst/autoplug/Makefile.am:
3182         * gst/base/Makefile.am:
3183         * gst/elements/Makefile.am:
3184         * gst/indexers/Makefile.am:
3185         * gst/schedulers/Makefile.am:
3186         * libs/gst/bytestream/Makefile.am:
3187         * libs/gst/control/Makefile.am:
3188         * libs/gst/dataprotocol/Makefile.am:
3189         * libs/gst/getbits/Makefile.am:
3190
3191 2005-04-21  Wim Taymans  <wim@fluendo.com>
3192
3193         * docs/design/draft-push-pull.txt:
3194         * docs/design/part-MT-refcounting.txt:
3195         * docs/design/part-TODO.txt:
3196         * docs/design/part-caps.txt:
3197         * docs/design/part-events.txt:
3198         * docs/design/part-gstbus.txt:
3199         * docs/design/part-gstpipeline.txt:
3200         * docs/design/part-messages.txt:
3201         * docs/design/part-push-pull.txt:
3202         * docs/design/part-query.txt:
3203         Some more docs.
3204
3205 2005-04-21  Wim Taymans  <wim@fluendo.com>
3206
3207         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3208         (gst_message_new), (gst_message_new_error),
3209         (gst_message_new_warning), (gst_message_new_tag),
3210         (gst_message_new_state_changed), (gst_message_new_application),
3211         (gst_message_get_structure):
3212         * gst/gstmessage.h:
3213         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3214         (gst_structure_copy_conditional):
3215         Use parent refcount in GstMessage to ensure GstStructure
3216         consistency.
3217         Cleaned up headers a bit.
3218         
3219
3220 2005-04-20  Wim Taymans  <wim@fluendo.com>
3221
3222         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3223         (gst_basesink_pad_getcaps), (gst_basesink_init),
3224         (gst_basesink_chain_unlocked):
3225         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3226         (gst_type_find_helper):
3227         * gst/elements/gsttypefindelement.c:
3228         (gst_type_find_element_have_type), (gst_type_find_element_init),
3229         (stop_typefinding), (gst_type_find_element_handle_event),
3230         (find_suggest), (gst_type_find_element_chain),
3231         (gst_type_find_element_checkgetrange),
3232         (gst_type_find_element_getrange), (do_typefind),
3233         (gst_type_find_element_activate):
3234         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3235         (gst_buffer_default_free), (gst_buffer_default_copy),
3236         (gst_buffer_set_caps):
3237         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3238         (gst_caps_replace):
3239         * gst/gstmessage.c: (gst_message_new),
3240         (gst_message_new_state_changed):
3241         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3242         (gst_pad_set_checkgetrange_function),
3243         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3244         (gst_pad_set_caps), (gst_pad_check_pull_range),
3245         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3246         * gst/gstpad.h:
3247         * gst/gsttypefind.c: (gst_type_find_register):
3248         Make gst_caps_replace() work like other _replace() functions.
3249         Use _caps_replace() where possible.
3250         Make sure _message_new() initialises its field.
3251         Add gst_static_pad_template_get_caps()
3252
3253
3254 2005-04-18  Andy Wingo  <wingo@pobox.com>
3255
3256         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3257         on the peer, not the pad. I think that was a typo. Pass an extra
3258         arg to see if random access is possible. Activate the pads as
3259         PULL_RANGE if possible.
3260
3261         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3262
3263         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3264         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3265         to PROP_....
3266
3267 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3268
3269         * docs/faq/using.xml:
3270           Add note on gstreamer-properties (#154996).
3271
3272 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3273
3274         * docs/random/bbb/optional-properties:
3275           Some analysis on optional properties.
3276
3277 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3278
3279         * docs/gst/tmpl/gstelementfactory.sgml:
3280         * gst/gstelement.h:
3281         * gst/gstelementfactory.c: (gst_element_factory_init),
3282         (gst_element_factory_cleanup), (gst_element_register),
3283         (__gst_element_factory_add_static_pad_template),
3284         (gst_element_factory_get_static_pad_templates),
3285         (gst_element_factory_can_src_caps),
3286         (gst_element_factory_can_sink_caps):
3287         * gst/registries/Makefile.am:
3288         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3289         (gst_xml_registry_class_init), (gst_xml_registry_init),
3290         (gst_xml_registry_new), (gst_xml_registry_set_property),
3291         (gst_xml_registry_get_property), (get_time), (make_dir),
3292         (gst_xml_registry_get_perms_func),
3293         (plugin_times_older_than_recurse), (plugin_times_older_than),
3294         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3295         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3296         (add_to_char_array), (read_string), (read_uint), (read_enum),
3297         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3298         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3299         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3300         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3301         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3302         (gst_xml_registry_rebuild):
3303         * gst/registries/gstlibxmlregistry.h:
3304         * tools/gst-compprep.c: (main):
3305         * tools/gst-inspect.c: (print_pad_templates_info):
3306         * tools/gst-xmlinspect.c: (print_element_info):
3307           Use libxml2 for registry parsing, use staticpadtemplates in
3308           elementfactories. Makes gst_init() +/- 10x faster.
3309
3310 2005-04-12  Wim Taymans  <wim@fluendo.com>
3311
3312         * gst/base/Makefile.am:
3313         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3314         (gst_basesink_pad_getcaps), (gst_basesink_init),
3315         (gst_basesink_event), (gst_basesink_change_state):
3316         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3317         (gst_basesrc_init), (gst_basesrc_query),
3318         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3319         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3320         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3321         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3322         (gst_basesrc_stop), (gst_basesrc_activate),
3323         (gst_basesrc_change_state):
3324         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3325         (helper_find_suggest), (gst_type_find_helper):
3326         * gst/base/gsttypefindhelper.h:
3327         * gst/elements/Makefile.am:
3328         * gst/elements/gstelements.c:
3329         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3330         (gst_fakesink_get_times), (gst_fakesink_event),
3331         (gst_fakesink_preroll), (gst_fakesink_render):
3332         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3333         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3334         (gst_fakesrc_get_property), (gst_fakesrc_create),
3335         (gst_fakesrc_start), (gst_fakesrc_stop):
3336         * gst/elements/gstfakesrc.h:
3337         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3338         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3339         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3340         (gst_filesrc_create_read), (gst_filesrc_create),
3341         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3342         (gst_filesrc_start):
3343         * gst/elements/gsttypefindelement.c:
3344         (gst_type_find_element_have_type), (gst_type_find_element_init),
3345         (start_typefinding), (stop_typefinding), (push_buffer_store),
3346         (gst_type_find_element_handle_event),
3347         (gst_type_find_element_chain),
3348         (gst_type_find_element_checkgetrange),
3349         (gst_type_find_element_getrange), (do_typefind),
3350         (gst_type_find_element_activate),
3351         (gst_type_find_element_change_state):
3352         * gst/elements/gsttypefindelement.h:
3353         * gst/gstpipeline.c: (pipeline_bus_handler):
3354         Added typefind helper.
3355         Small preroll fix in the base sink.
3356         Disable typefind code in basesrc.
3357         Crude port of typefindelement.
3358         Fakesrc cleanups.
3359
3360
3361 2005-04-11  Wim Taymans  <wim@fluendo.com>
3362
3363         * check/gst/gstbus.c: (gstbus_suite):
3364         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3365         * check/gstcheck.h:
3366           Fix up the timeout so that the test does not fail.
3367
3368 2005-04-06  Wim Taymans  <wim@fluendo.com>
3369
3370         * gst/base/README:
3371         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3372         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3373         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3374         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3375         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3376         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3377         (gst_basesrc_stop), (gst_basesrc_activate),
3378         (gst_basesrc_change_state), (basesrc_find_peek),
3379         (basesrc_find_suggest), (gst_basesrc_type_find):
3380         * gst/base/gstbasesrc.h:
3381         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3382         (gst_filesrc_class_init), (gst_filesrc_init),
3383         (gst_filesrc_finalize), (gst_filesrc_set_location),
3384         (gst_filesrc_set_property), (gst_filesrc_get_property),
3385         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3386         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3387         (gst_filesrc_create_read), (gst_filesrc_create),
3388         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3389         * gst/elements/gstfilesrc.h:
3390         * gst/gstelement.c: (gst_element_get_state_func),
3391         (gst_element_lost_state), (gst_element_pads_activate):
3392         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3393         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3394         (gst_pad_pull_range):
3395         * gst/gstpad.h:
3396         More work on the generic source base class, implement seeking,
3397         query.
3398         Make filesrc extend the base source class.
3399         Added gst_pad_set_checkgetrange_function to GstPad.
3400
3401 2005-04-06  Andy Wingo  <wingo@pobox.com>
3402
3403         * pkgconfig/gstreamer-base.pc.in:
3404         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3405
3406         * pkgconfig/Makefile.am:
3407         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3408
3409 2005-04-04  Wim Taymans  <wim@fluendo.com>
3410
3411         * gst/base/Makefile.am:
3412         * gst/base/README:
3413         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3414         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3415         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3416         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3417         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3418         (gst_basesrc_base_init), (gst_basesrc_class_init),
3419         (gst_basesrc_init), (gst_basesrc_get_formats),
3420         (gst_basesrc_get_query_types), (gst_basesrc_query),
3421         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3422         (gst_basesrc_set_property), (gst_basesrc_get_property),
3423         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3424         (gst_basesrc_loop), (gst_basesrc_activate),
3425         (gst_basesrc_change_state):
3426         * gst/base/gstbasesrc.h:
3427         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3428         (gst_fakesrc_class_init), (gst_fakesrc_init),
3429         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3430         (gst_fakesrc_get_property), (gst_fakesrc_create):
3431         * gst/elements/gstfakesrc.h:
3432         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3433         (gst_filesrc_open_file), (gst_filesrc_loop),
3434         (gst_filesrc_activate), (filesrc_find_peek),
3435         (gst_filesrc_type_find):
3436         Made base source class, make fakesrc extend it.
3437         Add comments to basesink class.
3438         Some filesrc cleanup.
3439
3440 2005-03-31  David Schleef  <ds@schleef.org>
3441
3442         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3443         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3444         expected to link against libgstreamer.
3445         * gst/base/Makefile.am: link against libgstreamer
3446         * gst/elements/Makefile.am: same
3447
3448 2005-03-31  Andy Wingo  <wingo@pobox.com>
3449
3450         * tests/instantiate/Makefile.am:
3451         * tests/instantiate/caps.c: Add test to test speed of caps copy
3452         and free.
3453
3454         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3455         GMemChunk to be fair.
3456
3457         * gst/gsttrashstack.h: Remove warning about using the fallback
3458         trash stack implementation, it's still faster than malloc.
3459
3460 2005-03-30  Andy Wingo  <wingo@pobox.com>
3461
3462         * tests/complexity.c: Add a copyright.
3463
3464 2005-03-31  Wim Taymans  <wim@fluendo.com>
3465
3466         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3467         (gst_base_transform_class_init), (gst_base_transform_init),
3468         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3469         (gst_base_transform_get_property),
3470         (gst_base_transform_sink_activate),
3471         (gst_base_transform_src_activate),
3472         (gst_base_transform_change_state):
3473         * gst/base/gstbasetransform.h:
3474         * gst/elements/gstidentity.c: (gst_identity_class_init),
3475         (gst_identity_event), (gst_identity_check_perfect),
3476         (gst_identity_transform), (gst_identity_start),
3477         (gst_identity_stop):
3478         Added start/stop methods to transform base class so subclasses 
3479         don't need to deal with state changes even.
3480
3481 2005-03-31  Wim Taymans  <wim@fluendo.com>
3482
3483         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3484         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3485         * gst/gstevent.h:
3486         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3487         (gst_pad_pull_range):
3488         Added rate to the discont event to prepare for variable speed
3489         and reverse playback.
3490
3491 2005-03-29  David Schleef  <ds@schleef.org>
3492
3493         * configure.ac:
3494         * testsuite/trigger/Makefile.am:
3495         * testsuite/trigger/trigger.c: A little example program to show
3496         how trigger-based elements can work.
3497
3498 2005-03-29  Wim Taymans  <wim@fluendo.com>
3499
3500         * gst/base/Makefile.am:
3501         * gst/base/README:
3502         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3503         (gst_basesink_base_init), (gst_basesink_class_init),
3504         (gst_basesink_pad_getcaps), (gst_basesink_init),
3505         (gst_basesink_activate), (gst_basesink_change_state):
3506         * gst/base/gstbasesink.h:
3507         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3508         (gst_base_transform_base_init), (gst_base_transform_finalize),
3509         (gst_base_transform_class_init), (gst_base_transform_init),
3510         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3511         (gst_base_transform_event), (gst_base_transform_getrange),
3512         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3513         (gst_base_transform_set_property),
3514         (gst_base_transform_get_property),
3515         (gst_base_transform_sink_activate),
3516         (gst_base_transform_src_activate),
3517         (gst_base_transform_change_state):
3518         * gst/base/gstbasetransform.h:
3519         * gst/elements/gstidentity.c: (gst_identity_finalize),
3520         (gst_identity_class_init), (gst_identity_init),
3521         (gst_identity_event), (gst_identity_check_perfect),
3522         (gst_identity_transform), (gst_identity_set_property),
3523         (gst_identity_get_property), (gst_identity_change_state):
3524         * gst/elements/gstidentity.h:
3525         * gst/gstelement.c: (gst_element_get_state_func),
3526         (gst_element_lost_state), (gst_element_pads_activate):
3527         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3528         (gst_pad_check_pull_range), (gst_pad_pull_range):
3529         * gst/gstpad.h:
3530         Simplify pad activation.
3531         Added function to check if pull_range can be performed.
3532         Error out when pulling inactive or flushing pads.
3533         Removed const from refcounted types as it does not make sense.
3534         Simplify pad templates in basesink
3535         Added base class for simple 1-to-1 transforms.
3536         Make identity subclass the base transform.
3537
3538 2005-03-29  Andy Wingo  <wingo@pobox.com>
3539
3540         * docs/libs/gstreamer-libs-overrides.txt: 
3541         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3542         really don't understand what's going on, but like whatever. I want
3543         green buildbot!
3544
3545         * docs/gst/Makefile.am:
3546         * docs/libs/Makefile.am: Dist the overrides files.
3547
3548         * check/Makefile.am (clean-local): Remove .libs directories.
3549
3550         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3551         elements to EXTRA_DIST, so po/ files are happy.
3552
3553         * po/POTFILES.in: Er, remove it here.
3554
3555         * po/POTFILES: Remove gstspider.c.
3556
3557         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3558
3559         * docs/libs/gstreamer-libs-docs.sgml: 
3560         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3561         bytestream.
3562
3563         * tests/complexity.c (main): Set the length of the preroll queue
3564         on the sinks to prevent a lockup.
3565
3566         * libs/gst/dataprotocol/Makefile.am: 
3567         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3568         the same as the one in check/gst-libs/gdp.c.
3569
3570         * po/, docs/gst/: Commit automatic changes to docs and po files.
3571
3572         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3573         the versioned libgstbase.
3574
3575         * check/Makefile.am: Depend on an unversioned gst-register, seems
3576         to make autoconf happier.
3577
3578         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3579
3580 2005-03-28  Wim Taymans  <wim@fluendo.com>
3581
3582         * configure.ac:
3583         * docs/design/part-gstelement.txt:
3584         * docs/design/part-negotiation.txt:
3585         * docs/design/part-preroll.txt:
3586         * docs/design/part-scheduling.txt:
3587         * docs/design/part-states.txt:
3588         * gst/Makefile.am:
3589         * gst/base/Makefile.am:
3590         * gst/base/README:
3591         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3592         (gst_basesink_base_init), (gst_basesink_class_init),
3593         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3594         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3595         (gst_basesink_set_pad_functions),
3596         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3597         (gst_basesink_set_property), (gst_basesink_get_property),
3598         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3599         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3600         (gst_basesink_preroll_queue_push),
3601         (gst_basesink_preroll_queue_empty),
3602         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3603         (gst_basesink_event), (gst_basesink_get_times),
3604         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3605         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3606         (gst_basesink_loop), (gst_basesink_activate),
3607         (gst_basesink_change_state):
3608         * gst/base/gstbasesink.h:
3609         * gst/elements/Makefile.am:
3610         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3611         (gst_fakesink_class_init), (gst_fakesink_init),
3612         (gst_fakesink_set_property), (gst_fakesink_get_property),
3613         (gst_fakesink_get_times), (gst_fakesink_event),
3614         (gst_fakesink_preroll), (gst_fakesink_render),
3615         (gst_fakesink_change_state):
3616         * gst/elements/gstfakesink.h:
3617         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3618         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3619         * gst/gstelement.c: (gst_element_add_pad),
3620         (gst_element_get_state_func), (gst_element_abort_state),
3621         (gst_element_commit_state), (gst_element_lost_state),
3622         (gst_element_set_state), (gst_element_pads_activate):
3623         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3624         * gst/gstpipeline.c: (gst_pipeline_send_event),
3625         (gst_pipeline_change_state):
3626         Added state change code.
3627         Added/updated docs.
3628         Added sink base class, make fakesink extend the base class.
3629         Small cleanups in GstPipeline.
3630
3631 2005-03-26  David Schleef  <ds@schleef.org>
3632
3633         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3634         is broken and should be implemented in a different library.
3635         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3636         * gst/gst.h: remove gstcpu.h
3637         * gst/gstcpu.c: remove
3638         * gst/gstcpu.h: remove
3639         * gst/Makefile.am.future: Remove this file.  It's ancient.
3640
3641 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3642
3643         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3644         (gst_bin_send_event):
3645           Add default event/set_manager handlers. The set_manager handler
3646           takes care that the manager is distributed over kids that were
3647           already in the bin before the manager was set. The event handler
3648           is a utility virtual function that sends the event over all sinks,
3649           so that gst_element_send_event (bin, event); has the expected
3650           behaviour.
3651         * gst/gstpad.c: (gst_pad_event_default):
3652           Re-install default event handling for discontinuities, so that
3653           seeking works without requiring hacks in applications or extra
3654           code in sinks.
3655         * gst/gstpipeline.c: (gst_pipeline_class_init),
3656         (gst_pipeline_send_event):
3657           Half hack, half utility: set a pipeline to PAUSED for seek events,
3658           since that is the only way we can guarantee a/v sync. Means that
3659           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3660           and it "just works".
3661
3662 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3663
3664         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3665           Lock/unlock mismatch.
3666
3667 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3668
3669         * docs/faq/gst-uninstalled:
3670           add gst-plugins-base
3671         * docs/gst/Makefile.am:
3672           don't error out until docs are fixed
3673         * docs/gst/gstreamer.types:
3674           remove thread
3675
3676 2005-03-22  Wim Taymans  <wim@fluendo.com>
3677
3678         * check/Makefile.am:
3679         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3680         * gst/gststructure.c: (gst_structure_set_valist),
3681         (gst_structure_copy_conditional):
3682         Activated more tests.
3683         Added message test.
3684         Added G_TYPE_POINTER to GstStructure.
3685         
3686
3687 2005-03-22  Wim Taymans  <wim@fluendo.com>
3688
3689         * docs/design/part-TODO.txt:
3690         * docs/design/part-events.txt:
3691         * docs/design/part-gstbin.txt:
3692         * docs/design/part-gstbus.txt:
3693         * docs/design/part-gstpipeline.txt:
3694         * docs/design/part-messages.txt:
3695         * gst/gstbus.c:
3696         * gst/gstmessage.c:
3697         Docs updates
3698
3699 2005-03-21  Wim Taymans  <wim@fluendo.com>
3700
3701         * gst/gstbus.c: (gst_bus_post):
3702         Fix copy-and-paste error.
3703
3704 2005-03-21  Wim Taymans  <wim@fluendo.com>
3705
3706         * check/Makefile.am:
3707         * gst/Makefile.am:
3708         * gst/elements/Makefile.am:
3709         * gst/elements/gstelements.c:
3710         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3711         (gst_fakesink_event), (gst_fakesink_chain):
3712         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3713         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3714         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3715         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3716         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3717         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3718         (gst_fakesrc_loop), (gst_fakesrc_activate),
3719         (gst_fakesrc_change_state):
3720         * gst/elements/gstfakesrc.h:
3721         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3722         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
3723         (gst_filesrc_open_file), (gst_filesrc_loop),
3724         (gst_filesrc_activate), (gst_filesrc_change_state),
3725         (filesrc_find_peek), (filesrc_find_suggest),
3726         (gst_filesrc_type_find):
3727         * gst/elements/gstidentity.c: (gst_identity_finalize),
3728         (gst_identity_class_init), (gst_identity_init),
3729         (gst_identity_proxy_getcaps), (identity_queue_push),
3730         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
3731         (gst_identity_getrange), (gst_identity_chain),
3732         (gst_identity_sink_loop), (gst_identity_src_loop),
3733         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
3734         (gst_identity_set_property), (gst_identity_get_property),
3735         (gst_identity_change_state):
3736         * gst/elements/gstidentity.h:
3737         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
3738         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
3739         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
3740         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
3741         (gst_tee_sink_activate):
3742         * gst/elements/gsttee.h:
3743         * gst/gst.c: (gst_register_core_elements), (init_post):
3744         * gst/gst.h:
3745         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
3746         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
3747         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
3748         (gst_bin_change_state):
3749         * gst/gstbin.h:
3750         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
3751         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
3752         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
3753         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
3754         (gst_bus_set_sync_handler), (gst_bus_create_watch),
3755         (bus_watch_callback), (bus_watch_destroy),
3756         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
3757         (poll_timeout), (gst_bus_poll):
3758         * gst/gstbus.h:
3759         * gst/gstcaps.h:
3760         * gst/gstdata.h:
3761         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3762         (gst_element_post_message), (gst_element_message_full),
3763         (gst_element_get_state_func), (gst_element_get_state),
3764         (gst_element_abort_state), (gst_element_commit_state),
3765         (gst_element_lost_state), (gst_element_set_state),
3766         (gst_element_pads_activate), (gst_element_change_state),
3767         (gst_element_dispose), (gst_element_set_manager_func),
3768         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
3769         (gst_element_set_manager), (gst_element_get_manager),
3770         (gst_element_set_bus), (gst_element_get_bus),
3771         (gst_element_set_scheduler), (gst_element_get_scheduler):
3772         * gst/gstelement.h:
3773         * gst/gstevent.c: (gst_event_new_segment_seek),
3774         (gst_event_new_flush):
3775         * gst/gstevent.h:
3776         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
3777         (_gst_message_free), (gst_message_get_type), (gst_message_new),
3778         (gst_message_new_eos), (gst_message_new_error),
3779         (gst_message_new_warning), (gst_message_new_tag),
3780         (gst_message_new_state_changed), (gst_message_new_application),
3781         (gst_message_get_structure), (gst_message_parse_tag),
3782         (gst_message_parse_state_changed), (gst_message_parse_error),
3783         (gst_message_parse_warning):
3784         * gst/gstmessage.h:
3785         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
3786         (gst_real_pad_set_property), (gst_pad_set_active),
3787         (gst_pad_is_active), (gst_pad_set_blocked_async),
3788         (gst_pad_set_blocked), (gst_pad_is_blocked),
3789         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
3790         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
3791         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
3792         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
3793         (gst_pad_link_filtered), (gst_pad_relink_filtered),
3794         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
3795         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
3796         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
3797         (gst_pad_set_caps), (gst_pad_configure_sink),
3798         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
3799         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
3800         (gst_real_pad_dispose), (gst_real_pad_finalize),
3801         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
3802         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3803         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
3804         * gst/gstpad.h:
3805         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
3806         (pipeline_bus_handler), (gst_pipeline_change_state),
3807         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
3808         * gst/gstpipeline.h:
3809         * gst/gstprobe.h:
3810         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
3811         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
3812         (gst_queue_link_src), (gst_queue_bufferalloc),
3813         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
3814         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
3815         (gst_queue_loop), (gst_queue_handle_src_event),
3816         (gst_queue_handle_src_query), (gst_queue_src_activate),
3817         (gst_queue_change_state):
3818         * gst/gstqueue.h:
3819         * gst/gstscheduler.c: (gst_scheduler_init),
3820         (gst_scheduler_dispose), (gst_scheduler_create_task),
3821         (gst_scheduler_factory_create):
3822         * gst/gstscheduler.h:
3823         * gst/gststructure.c: (gst_structure_get_type),
3824         (gst_structure_copy_conditional):
3825         * gst/gststructure.h:
3826         * gst/gsttaginterface.h:
3827         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
3828         (gst_task_init), (gst_task_dispose), (gst_task_create),
3829         (gst_task_get_state), (gst_task_start), (gst_task_stop),
3830         (gst_task_pause):
3831         * gst/gsttask.h:
3832         * gst/gstthread.c:
3833         * gst/gstthread.h:
3834         * gst/gsttypes.h:
3835         * gst/schedulers/Makefile.am:
3836         * gst/schedulers/cothreads_compat.h:
3837         * gst/schedulers/entryscheduler.c:
3838         * gst/schedulers/faircothreads.c:
3839         * gst/schedulers/faircothreads.h:
3840         * gst/schedulers/fairscheduler.c:
3841         * gst/schedulers/gstbasicscheduler.c:
3842         * gst/schedulers/gstoptimalscheduler.c:
3843         * gst/schedulers/gthread-cothreads.h:
3844         * gst/schedulers/threadscheduler.c:
3845         (gst_thread_scheduler_task_get_type),
3846         (gst_thread_scheduler_task_class_init),
3847         (gst_thread_scheduler_task_init),
3848         (gst_thread_scheduler_task_start),
3849         (gst_thread_scheduler_task_stop),
3850         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
3851         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
3852         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
3853         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
3854         (plugin_init):
3855         * libs/gst/Makefile.am:
3856         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
3857         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
3858         (gst_file_pad_parent_set):
3859         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
3860         (gst_dp_event_from_packet):
3861         * tests/complexity.c: (main):
3862         * tests/mass_elements.c: (main):
3863         * testsuite/states/locked.c: (message_received), (main):
3864         * testsuite/states/parent.c: (main):
3865         * tools/gst-inspect.c: (print_element_flag_info),
3866         (print_implementation_info), (print_pad_info):
3867         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
3868         (main):
3869         * tools/gst-md5sum.c: (event_loop), (main):
3870         * tools/gst-typefind.c: (main):
3871         * tools/gst-xmlinspect.c: (print_element_info):
3872         Next big merge.
3873         Added GstBus for mainloop integration.
3874         Added GstMessage for sending notifications on the bus.
3875         Added GstTask as an abstraction for pipeline entry points.
3876         Removed GstThread.
3877         Removed Schedulers.
3878         Simplified GstQueue for multithreaded core.
3879         Made _link threadsafe, removed old capsnego.
3880         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
3881         Added pad blocking functions.
3882         Reworked scheduling functions in GstPad to prepare for
3883         scheduling updates soon.
3884         Moved events out of data stream.
3885         Simplified GstEvent types.
3886         Added return values to push/pull.
3887         Removed clocking from GstElement.
3888         Added prototypes for state change function for next merge.
3889         Removed iterate from bins and state change management.
3890         Fixed some elements, disabled others for now.
3891         Fixed -inspect and -launch.
3892         Added check for GstBus.
3893
3894 2005-03-10  Wim Taymans  <wim@fluendo.com>
3895
3896         * docs/design/part-MT-refcounting.txt:
3897         * docs/design/part-clocks.txt:
3898         * docs/design/part-gstelement.txt:
3899         * docs/design/part-gstobject.txt:
3900         * docs/design/part-standards.txt:
3901         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3902         (gst_bin_remove_func), (gst_bin_remove):
3903         * gst/gstbin.h:
3904         * gst/gstbuffer.c:
3905         * gst/gstcaps.h:
3906         * testsuite/clock/clock1.c: (main):
3907         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
3908         (main):
3909         * testsuite/dlopen/loadgst.c: (do_test):
3910         * testsuite/refcounting/bin.c: (add_remove_test1),
3911         (add_remove_test2), (main):
3912         * testsuite/refcounting/element.c: (main):
3913         * testsuite/refcounting/element_pad.c: (main):
3914         * testsuite/refcounting/pad.c: (main):
3915         * tools/gst-launch.c: (sigint_handler_sighandler):
3916         * tools/gst-typefind.c: (main):
3917         Doc updates.
3918         Added doc about clock.
3919         removed gst_bin_iterate_recurse_up(), marked methods
3920         for removal.
3921         Fix more testsuites.
3922
3923 2005-03-09  Wim Taymans  <wim@fluendo.com>
3924
3925         * gst/gstpad.c: (gst_pad_get_direction),
3926         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
3927         (gst_pad_collect_valist):
3928         * testsuite/bins/interface.c: (main):
3929         * testsuite/caps/audioscale.c: (test_caps):
3930         * testsuite/caps/caps.c: (test1), (test2), (test3):
3931         * testsuite/caps/deserialize.c: (main):
3932         * testsuite/caps/enumcaps.c: (main):
3933         * testsuite/caps/filtercaps.c: (main):
3934         * testsuite/caps/intersect2.c: (main):
3935         * testsuite/caps/random.c: (main):
3936         * testsuite/caps/renegotiate.c: (my_fixate), (main):
3937         * testsuite/caps/sets.c: (check_caps):
3938         * testsuite/caps/simplify.c: (check_caps), (main):
3939         * testsuite/caps/subtract.c: (check_caps):
3940         Fix _pad_get_direction wrt ghostpads.
3941         Fix caps testsuite.
3942
3943 2005-03-09  Wim Taymans  <wim@fluendo.com>
3944
3945         * check/Makefile.am:
3946         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
3947         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
3948         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
3949         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
3950         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
3951         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
3952         (gst_bin_remove), (gst_bin_iterate_recurse_up),
3953         (bin_element_is_sink), (gst_bin_iterate_sinks),
3954         (gst_bin_iterate_all_by_interface):
3955         * gst/gstbin.h:
3956         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
3957         (gst_element_change_state), (gst_element_dispose),
3958         (gst_element_finalize), (gst_element_set_loop_function):
3959         * gst/gstelement.h:
3960         * gst/gstiterator.c: (find_custom_fold_func):
3961         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3962         (gst_pad_collectv), (gst_pad_collect_valist),
3963         (gst_pad_template_new):
3964         * gst/gstpipeline.c: (gst_pipeline_class_init),
3965         (gst_pipeline_dispose), (gst_pipeline_set_property),
3966         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
3967         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
3968         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
3969         * gst/gstutils.h:
3970         * gst/schedulers/entryscheduler.c:
3971         * gst/schedulers/gstbasicscheduler.c:
3972         (gst_basic_scheduler_cothreaded_chain),
3973         (gst_basic_scheduler_chain_add_element):
3974         * testsuite/bins/interface.c: (main):
3975         Added GstBin test.
3976         Added GstSystemClock test.
3977         Implemented clock distribution code in GstBin.
3978         Implemented iterate sinks method for future use.
3979         Rearranged gstelement.h
3980         Fix GstIterator comparison bug.
3981         Moved some code to GstPipeline, mostly clocking related.
3982
3983 2005-03-09  Wim Taymans  <wim@fluendo.com>
3984
3985         * configure.ac:
3986         * gst/gst_private.h:
3987         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3988         (gst_bin_remove_func), (gst_bin_remove),
3989         (gst_bin_get_by_name_recurse_up):
3990         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
3991         (gst_clock_id_compare_func), (gst_clock_id_wait),
3992         (gst_clock_id_wait_async), (gst_clock_init),
3993         (gst_clock_adjust_unlocked), (gst_clock_get_time):
3994         * gst/gstelement.h:
3995         * gst/gstinfo.c: (_gst_debug_init):
3996         * gst/gstobject.h:
3997         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
3998         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
3999         * gst/gstpad.h:
4000         Bump version number, we're now 0.9.0
4001         Add future debugging category.
4002         Fix NULL _unref() in _get_by_name_recurse_up
4003         Rearrange gstpad.h.
4004         Update some docs.
4005
4006 2005-03-08  Wim Taymans  <wim@fluendo.com>
4007
4008         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4009         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4010         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4011         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4012         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4013         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4014         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4015         * gst/elements/gstidentity.c: (gst_identity_class_init):
4016         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4017         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4018         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4019         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4020         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4021         (gst_tee_link):
4022         * gst/gstelement.c: (gst_element_class_init),
4023         (gst_element_base_class_init), (gst_element_init),
4024         (gst_element_get_random_pad), (gst_element_wait_state_change),
4025         (gst_element_change_state), (gst_element_dispose),
4026         (gst_element_finalize), (gst_element_set_loop_function):
4027         * gst/gstelement.h:
4028         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4029         * gst/gstthread.c: (gst_thread_class_init),
4030         (gst_thread_release_children_locks), (gst_thread_change_state):
4031         * gst/schedulers/gstbasicscheduler.c:
4032         (gst_basic_scheduler_loopfunc_wrapper),
4033         (gst_basic_scheduler_chain_wrapper),
4034         (gst_basic_scheduler_src_wrapper),
4035         (gst_basic_scheduler_remove_element):
4036         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4037         Remove threadsafe properties. Fix elements because GObject
4038         complains when installing a property before declaring a
4039         set/get_property handler.
4040         Rearrange gstelement.h file, use STATE macros for state locks.
4041         Free mutexes in the finalize method instead of dispose.
4042
4043 2005-03-08  Wim Taymans  <wim@fluendo.com>
4044
4045         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4046         * gst/gstthread.c: (gst_thread_release_children_locks):
4047         Added parentage check.
4048         Fix build og GstThread again.
4049
4050 2005-03-08  Wim Taymans  <wim@fluendo.com>
4051
4052         * docs/design/part-MT-refcounting.txt:
4053         * docs/design/part-conventions.txt:
4054         * docs/design/part-gstobject.txt:
4055         * docs/design/part-relations.txt:
4056         * docs/design/part-standards.txt:
4057         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4058         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4059         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4060         (gst_bin_iterate_all_by_interface):
4061         * gst/gstbuffer.h:
4062         * gst/gstclock.h:
4063         * gst/gstelement.c: (gst_element_class_init),
4064         (gst_element_change_state), (gst_element_set_loop_function):
4065         * gst/gstelement.h:
4066         * gst/gstiterator.c:
4067         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4068         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4069         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4070         (gst_object_set_parent), (gst_object_unparent),
4071         (gst_object_check_uniqueness):
4072         * gst/gstobject.h:
4073         Docs updates, clean up some headers.
4074
4075 2005-03-07  Wim Taymans  <wim@fluendo.com>
4076
4077         * check/.cvsignore:
4078         * check/Makefile.am:
4079         * check/gst-libs/.cvsignore:
4080         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4081         * check/gst/.cvsignore:
4082         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4083         (START_TEST), (gstbus_suite), (main):
4084         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4085         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4086         (gst_data_suite), (main):
4087         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4088         (add_fold_func), (gstiterator_suite), (main):
4089         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4090         (thread_name_object), (thread_name_object_default),
4091         (gst_object_name_compare), (gst_object_suite), (main):
4092         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4093         (gst_pad_suite), (main):
4094         * check/gstcheck.c: (gst_check_log_message_func),
4095         (gst_check_log_critical_func), (gst_check_init):
4096         * check/gstcheck.h:
4097         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4098         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4099         Added checks.
4100
4101 2005-03-07  Wim Taymans  <wim@fluendo.com>
4102
4103         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4104         (gst_list_iterator_next), (gst_list_iterator_resync),
4105         (gst_list_iterator_free), (gst_iterator_new_list),
4106         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4107         (gst_iterator_free), (gst_iterator_push), (filter_next),
4108         (filter_resync), (filter_uninit), (filter_free),
4109         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4110         (gst_iterator_foreach), (find_custom_fold_func),
4111         (gst_iterator_find_custom):
4112         * gst/gstiterator.h:
4113         Added missing files.
4114
4115 2005-03-07  Wim Taymans  <wim@fluendo.com>
4116
4117         * Makefile.am:
4118         * configure.ac:
4119         * docs/design/part-MT-refcounting.txt:
4120         * docs/design/part-conventions.txt:
4121         * docs/design/part-gstobject.txt:
4122         * docs/design/part-relations.txt:
4123         * examples/mixer/mixer.c: (main):
4124         * examples/thread/thread.c: (eos), (main):
4125         * gst/Makefile.am:
4126         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4127         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4128         (gst_spider_plug_from_srcpad):
4129         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4130         (gst_spider_identity_change_state),
4131         (gst_spider_identity_sink_loop_type_finding):
4132         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4133         * gst/elements/gstidentity.c: (gst_identity_init):
4134         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4135         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4136         * gst/elements/gsttypefindelement.c: (free_entry):
4137         * gst/gst.c:
4138         * gst/gst.h:
4139         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4140         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4141         (gst_bin_set_index), (gst_bin_set_element_sched),
4142         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4143         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4144         (gst_bin_iterate_elements), (iterate_child_recurse),
4145         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4146         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4147         (compare_interface), (gst_bin_get_by_interface),
4148         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4149         * gst/gstbin.h:
4150         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4151         (gst_buffer_default_free), (gst_buffer_default_copy),
4152         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4153         (gst_buffer_create_sub):
4154         * gst/gstbuffer.h:
4155         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4156         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4157         (gst_caps_unref), (gst_static_caps_get),
4158         (gst_caps_remove_and_get_structure), (gst_caps_append),
4159         (gst_caps_append_structure), (gst_caps_remove_structure),
4160         (gst_caps_copy_nth), (gst_caps_set_simple),
4161         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4162         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4163         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4164         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4165         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4166         (gst_caps_structure_figure_out_union),
4167         (gst_caps_switch_structures), (gst_caps_do_simplify),
4168         (gst_caps_replace), (gst_caps_from_string),
4169         (gst_caps_copy_conditional):
4170         * gst/gstcaps.h:
4171         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4172         (_gst_clock_id_free), (gst_clock_id_unref),
4173         (gst_clock_id_compare_func), (gst_clock_id_wait),
4174         (gst_clock_id_wait_async), (gst_clock_class_init),
4175         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4176         (gst_clock_get_time), (gst_clock_set_time_adjust),
4177         (gst_clock_set_property), (gst_clock_get_property):
4178         * gst/gstclock.h:
4179         * gst/gstcompat.h:
4180         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4181         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4182         * gst/gstdata.h:
4183         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4184         (gst_element_requires_clock), (gst_element_provides_clock),
4185         (gst_element_set_clock), (gst_element_clock_wait),
4186         (gst_element_wait), (gst_element_set_time_delay),
4187         (gst_element_is_indexable), (gst_element_add_pad),
4188         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4189         (pad_compare_name), (gst_element_get_static_pad),
4190         (gst_element_request_pad), (gst_element_get_request_pad),
4191         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4192         (gst_element_class_get_pad_template_list),
4193         (gst_element_class_get_pad_template), (gst_element_error_func),
4194         (gst_element_get_random_pad), (gst_element_get_event_masks),
4195         (gst_element_send_event), (gst_element_seek),
4196         (gst_element_get_query_types), (gst_element_query),
4197         (gst_element_get_formats), (gst_element_convert),
4198         (gst_element_is_locked_state), (gst_element_set_locked_state),
4199         (gst_element_sync_state_with_parent), (gst_element_change_state),
4200         (gst_element_finalize), (gst_element_yield),
4201         (gst_element_interrupt), (gst_element_set_scheduler),
4202         (gst_element_get_scheduler), (gst_element_set_loop_function):
4203         * gst/gstelement.h:
4204         * gst/gstevent.h:
4205         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4206         (gst_format_get_by_nick), (gst_format_get_details),
4207         (gst_format_iterate_definitions):
4208         * gst/gstformat.h:
4209         * gst/gstindex.c: (gst_index_gtype_resolver):
4210         * gst/gstinfo.c:
4211         * gst/gstinfo.h:
4212         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4213         (gst_mem_chunk_free):
4214         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4215         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4216         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4217         (gst_object_dispatch_properties_changed),
4218         (gst_object_set_name_default), (gst_object_set_name),
4219         (gst_object_get_name), (gst_object_set_name_prefix),
4220         (gst_object_get_name_prefix), (gst_object_set_parent),
4221         (gst_object_get_parent), (gst_object_unparent),
4222         (gst_object_check_uniqueness), (gst_object_save_thyself),
4223         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4224         (gst_object_set_property), (gst_object_get_property),
4225         (gst_object_get_path_string):
4226         * gst/gstobject.h:
4227         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4228         (gst_real_pad_init), (gst_real_pad_get_property),
4229         (gst_pad_custom_new), (gst_pad_get_direction),
4230         (gst_pad_set_active), (gst_pad_is_active),
4231         (gst_pad_set_event_function), (gst_pad_is_linked),
4232         (gst_pad_link_free), (gst_pad_link_intersect),
4233         (gst_pad_link_fixate), (gst_pad_set_caps),
4234         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4235         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4236         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4237         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4238         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4239         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4240         (gst_pad_realize), (gst_pad_get_allowed_caps),
4241         (gst_real_pad_dispose), (gst_real_pad_finalize),
4242         (gst_pad_collectv), (gst_pad_collect_valist),
4243         (gst_pad_template_dispose), (gst_pad_template_new),
4244         (gst_pad_get_internal_links):
4245         * gst/gstpad.h:
4246         * gst/gstpipeline.c: (gst_pipeline_dispose),
4247         (gst_pipeline_change_state):
4248         * gst/gstpipeline.h:
4249         * gst/gstplugin.c:
4250         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4251         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4252         * gst/gstpluginfeature.h:
4253         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4254         * gst/gstquery.c: (_gst_query_type_initialize),
4255         (gst_query_type_register), (gst_query_type_get_by_nick),
4256         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4257         * gst/gstquery.h:
4258         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4259         * gst/gstscheduler.c: (gst_scheduler_add_element),
4260         (gst_scheduler_factory_create):
4261         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4262         (gst_structure_free), (gst_structure_set_name),
4263         (gst_structure_id_set_value), (gst_structure_set_value),
4264         (gst_structure_set_valist), (gst_structure_remove_field),
4265         (gst_structure_remove_fields),
4266         (gst_structure_remove_fields_valist),
4267         (gst_structure_remove_all_fields), (gst_structure_foreach),
4268         (gst_structure_map_in_place),
4269         (gst_caps_structure_fixate_field_nearest_int),
4270         (gst_caps_structure_fixate_field_nearest_double):
4271         * gst/gststructure.h:
4272         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4273         (gst_system_clock_init), (gst_system_clock_dispose),
4274         (gst_system_clock_async_thread),
4275         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4276         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4277         * gst/gstsystemclock.h:
4278         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4279         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4280         * gst/gsttaginterface.c:
4281         * gst/gstthread.c: (gst_thread_dispose),
4282         (gst_thread_release_children_locks), (gst_thread_change_state),
4283         (gst_thread_main_loop):
4284         * gst/gsttrashstack.h:
4285         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4286         * gst/gsttypes.h:
4287         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4288         (gst_element_request_pad), (gst_element_get_pad_from_template),
4289         (gst_element_request_compatible_pad),
4290         (gst_element_get_compatible_pad_filtered),
4291         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4292         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4293         (gst_element_link_many), (gst_element_link),
4294         (gst_element_link_pads), (gst_element_unlink_pads),
4295         (gst_element_unlink_many), (gst_element_unlink),
4296         (gst_pad_can_link_filtered), (gst_pad_can_link),
4297         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4298         (gst_object_default_error), (gst_bin_add_many),
4299         (gst_bin_remove_many), (gst_element_populate_std_props),
4300         (gst_element_class_install_std_props), (gst_buffer_merge),
4301         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4302         (link_fold_func), (gst_pad_proxy_setcaps):
4303         * gst/gstutils.h:
4304         * gst/gstvalue.c: (gst_value_deserialize_string):
4305         * gst/parse/grammar.y:
4306         * gst/schedulers/gstbasicscheduler.c:
4307         (gst_basic_scheduler_cothreaded_chain),
4308         (gst_basic_scheduler_chain_recursive_add),
4309         (gst_basic_scheduler_pad_link):
4310         * gst/schedulers/gstoptimalscheduler.c:
4311         (get_group_schedule_function),
4312         (gst_opt_scheduler_state_transition),
4313         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4314         * libs/gst/bytestream/bytestream.c:
4315         * libs/gst/dataprotocol/dataprotocol.c:
4316         (gst_dp_header_from_buffer):
4317         * po/nb.po:
4318         * po/ru.po:
4319         * tests/threadstate/threadstate2.c: (eos):
4320         * tools/gst-compprep.c: (main):
4321         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4322         (print_pad_info), (print_children_info):
4323         * tools/gst-launch.c: (idle_func), (main):
4324         * tools/gst-md5sum.c: (idle_func), (main):
4325         * tools/gst-xmlinspect.c: (print_element_info):
4326         First THREADED backport attempt, focusing on adding locks and
4327         making sure the API is threadsafe. Needs more work. More docs
4328         follow this week.
4329
4330 2005-02-24  Andy Wingo  <wingo@pobox.com>
4331
4332         * tests/bench-complexity.scm:
4333         * tests/complexity.gnuplot: New files, good for running complexity
4334         benchmarks.
4335
4336         * tests/Makefile.am:
4337         * tests/complexity.c: New test, sets up N elements, at each level
4338         teeing into M streams per element. Eeeenteresting.
4339
4340         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4341         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4342         running bench-mass_elements.scm.
4343
4344         * tests/bench-mass_elements.scm: New script, runs mass_elements
4345         for various numbers of identities, outputting the results to a
4346         file. Requires guile 1.6. Just for testing.
4347
4348 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4349
4350         * gst/schedulers/fairscheduler.c:
4351           compile with debug disabled
4352
4353 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4354
4355         * configure.ac:
4356           hunting season on 0.9 is now OPEN
4357
4358 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4359
4360         * docs/libs/tmpl/gstcontrol.sgml:
4361         * docs/libs/tmpl/gstdparam.sgml:
4362         * docs/libs/tmpl/gstdplinint.sgml:
4363         * docs/libs/tmpl/gstdpman.sgml:
4364         * docs/libs/tmpl/gstdpsmooth.sgml:
4365         * docs/libs/tmpl/gstunitconvert.sgml:
4366           more docs for the state of dparams
4367
4368 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4369
4370         * gst/gstelementfactory.c: (gst_element_factory_create):
4371         * gst/gstobject.c: (gst_object_init),
4372         (gst_object_set_name_default), (gst_object_set_name):
4373           name objects by default, not in gst_element_factory_create. Allows
4374           using elements created with g_object_new. (fixes #167283)
4375
4376 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4377
4378         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4379           make the time that debugging functions print relative to when
4380           gst_init was called
4381
4382 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4383
4384         * gst/gsttaginterface.c:
4385           Fix inline docs: tag setter vararg functions are NULL-terminated,
4386           GST_TAG_INVALID doesn't exist any more.
4387
4388 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4389
4390         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4391         Allocate the 1 byte more memory that was forgotten!!!!!
4392         fixes memory corruption on 64bit platforms
4393
4394 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4395
4396         * docs/pwg/building-pads.xml:
4397         * docs/pwg/intro-basics.xml:
4398           fixed a few typos, relabeled introductionary list of types
4399         * docs/random/ensonic/dparams.txt:
4400           more notes abut dparam changes
4401         * libs/gst/control/dparam.c: (gst_dparam_attach):
4402         * libs/gst/control/dparammanager.c:
4403         * libs/gst/control/dparammanager.h:
4404           - many comments and notes on dparam implementation
4405           - new dparams are were not initialized to the default value
4406             from param spec
4407
4408 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4409
4410         submitted by: Peter Astakhov
4411
4412         * po/LINGUAS:
4413         * po/ru.po:
4414           adding Russian translation
4415
4416 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4417
4418         * configure.ac:
4419         * docs/gst/Makefile.am:
4420         * docs/libs/Makefile.am:
4421           make sure popt is added to gtk-doc flags.  Fixes #147782.
4422
4423 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4424
4425         * docs/faq/using.xml:
4426           Fix typo in FAQ (artssink => artsdsink)
4427
4428 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4429
4430         * tools/gst-launch.1.in:
4431           Fix typo (#166699).
4432
4433 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4434
4435         * docs/faq/using.xml:
4436           Add -v argument to fakesrc/fakesink gst-launch line,
4437           so that the promised output will actually show up.
4438
4439 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4440
4441         * gst/gstthread.c: (gst_thread_change_state):
4442           Implement state-change error handling (#166073).
4443
4444 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4445
4446         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4447           Release interrupt after handling (#166250).
4448
4449 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4450
4451         * configure.ac:
4452           back to HEAD
4453
4454 === release 0.8.9 ===
4455
4456 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4457
4458         * NEWS:
4459         * RELEASE:
4460         * configure.ac:
4461           releasing 0.8.9, "Like Eating Glass"
4462
4463 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4464
4465         submitted by: Clytie Siddall
4466
4467         * po/vi.po: Added Vietnamese translation
4468
4469 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4470
4471         patch by: Tim Philipp-Müller
4472
4473         * configure.ac:
4474         * gst/gstpad.c:
4475           unref data when probe function returns FALSE.  Fixes #166362
4476
4477 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4478
4479         * gst/gst.c: (gst_init_get_popt_table):
4480           Fix typo (#166269).
4481
4482 2005-02-04  Andy Wingo  <wingo@pobox.com>
4483
4484         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4485         the debugging on whether the caps are compatible.
4486
4487 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4488
4489         * docs/manual/basics-elements.xml:
4490           Fix two typos.
4491
4492 2005-02-02  Wim Taymans  <wim@fluendo.com>
4493
4494         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4495         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4496         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4497         Remove some FIXMEs after analysing and commenting why they
4498         are not issues.
4499
4500 2005-02-02  Wim Taymans  <wim@fluendo.com>
4501
4502         * gst/schedulers/gstoptimalscheduler.c:
4503         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4504         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4505         (get_invalid_call), (chain_invalid_call),
4506         (get_group_schedule_function), (loop_group_schedule_function),
4507         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4508         (gst_opt_scheduler_state_transition),
4509         (gst_opt_scheduler_add_element),
4510         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4511         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4512         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4513         (gst_opt_scheduler_show):
4514         Added lock to protect scheduler data structures.
4515
4516 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4517
4518         * testsuite/threads/threadi.c: (cb_data):
4519           Fix buglet in test.
4520
4521 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4522
4523         * testsuite/threads/Makefile.am:
4524         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4525           On Wim's request, split the test in three separately-compiled
4526           tests that each test a very specific bug. Two of them still fail,
4527           will create bugs for those. threadi.c indicates why they fail.
4528
4529 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4530
4531         * gst/schedulers/gstoptimalscheduler.c:
4532         (get_group_schedule_function):
4533           Try to work with the threading mess that queue_link is.
4534
4535 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4536
4537         * gst/gstbin.c: (gst_bin_remove_func):
4538           Explicitely make an element release locks in a group when being
4539           remove from a bin.
4540         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4541           If there's no scheduler, always return immediately (similar to
4542           gst_element_interrupt).
4543
4544 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4545
4546         * gst/gstbin.c: (gst_bin_child_state_change_func):
4547           Remove a piece of code that could never be reached.
4548         * docs/gst/gstreamer-sections.txt:
4549         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4550         (gst_pad_call_get_function):
4551         * gst/gstpad.h:
4552         * testsuite/pad/Makefile.am:
4553           Fix #150546, enable tests.
4554
4555 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4556
4557         * docs/pwg/advanced-types.xml:
4558           Fix description for buffer-frames=0.
4559         * docs/gst/tmpl/gstbin.sgml:
4560         * gst/gstbin.c: (gst_bin_child_state_change_func),
4561         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4562         * gst/gstbin.h:
4563         * testsuite/threads/Makefile.am:
4564         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4565         (cb_state), (cb_play), (main):
4566           Fix non-recursive state changes to *really* change the state
4567           of the object, and not just call parent_class->state_change.
4568           Fix a lot of lockups caused by this. Fixes #132775. Add test
4569           for the problem. Also enable test to show #142588 (fixed).
4570         * gst/gstthread.c: (gst_thread_change_state),
4571         (gst_thread_child_state_change):
4572           Don't exit the thread if we go to NULL and are inside thread
4573           context. Instead, return control to the main thread context
4574           and exit from there.
4575         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4576           Don't unset virtual functions, since those may still be used.
4577           That's not necessarily correct, but suffices for now.
4578         * configure.ac:
4579         * testsuite/Makefile.am:
4580         * testsuite/pad/Makefile.am:
4581         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4582         (gst_test_sink_base_init), (gst_test_sink_chain),
4583         (gst_test_sink_init), (main):
4584         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4585         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4586         (main):
4587         * testsuite/pad/link.c: (gst_test_element_class_init),
4588         (gst_test_element_base_init), (gst_test_src_get),
4589         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4590         (gst_test_filter_loop), (gst_test_filter_init),
4591         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4592         (cb_error), (main):
4593           Add tests to show #150546. Pass, but should fail (currently
4594           disabled from the testsuite).
4595         * gst/gstscheduler.c: (gst_scheduler_dispose):
4596           Dereference child schedulers on dispose (#94464).
4597         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4598           Fix typo.
4599         * testsuite/threads/thread.c: (main):
4600           Add more debug.
4601
4602 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4603
4604         * gst/gstpad.c: (gst_pad_push):
4605           Oops, revert previous commit, broke testsuite...
4606
4607 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4608
4609         * gst/gstpad.c: (gst_pad_push):
4610           Add check that the pad on which the push is performed is not a
4611           get-based pad (#150546).
4612
4613 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4614
4615         * gst/elements/gsttypefindelement.c:
4616         (gst_type_find_element_handle_event):
4617           Fix buffer pushing if stream EOSes during typefinding.
4618
4619 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4620
4621         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4622
4623         * gst/gstvalue.c: (gst_string_wrap):
4624           Allow NULL-strings as argument (#165365).
4625
4626 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4627
4628         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4629
4630         * gst/schedulers/faircothreads.c:
4631         (gst_fair_scheduler_cothread_queue_show):
4632           Fix build without debug enabled.
4633
4634 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4635
4636         * docs/gst/gstreamer-sections.txt:
4637         * docs/libs/gstreamer-libs-docs.sgml:
4638         * docs/libs/gstreamer-libs-sections.txt:
4639         * docs/libs/tmpl/gstcontrol.sgml:
4640         * docs/libs/tmpl/gstdparam.sgml:
4641         * docs/libs/tmpl/gstdplinint.sgml:
4642         * docs/libs/tmpl/gstdpman.sgml:
4643         * docs/libs/tmpl/gstdpsmooth.sgml:
4644         * docs/libs/tmpl/gstputbits.sgml:
4645         * docs/libs/tmpl/gstunitconvert.sgml:
4646         * libs/gst/control/dparam.c:
4647         * libs/gst/control/dparam.h:
4648         * libs/gst/control/dparammanager.c:
4649         (gst_dpman_add_required_dparam_callback),
4650         (gst_dpman_add_required_dparam_direct),
4651         (gst_dpman_add_required_dparam_array),
4652         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4653         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4654         (gst_dpman_get_manager)
4655           restructured DParam docs
4656
4657 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4658
4659         * gst-element-check.m4:
4660           Only check for gst-inspect if we haven't already
4661           found it in previous element check runs
4662
4663 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4664
4665         * docs/gst/Makefile.am:
4666         * docs/libs/Makefile.am:
4667           fixed install rules to treat style.css as optional
4668
4669 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4670
4671         * docs/gst/Makefile.am:
4672         * docs/libs/Makefile.am:
4673           install style.css along with docs
4674         * docs/gst/tmpl/gstbin.sgml:
4675         * docs/gst/tmpl/gstclock.sgml:
4676         * docs/gst/tmpl/gstdata.sgml:
4677         * docs/gst/tmpl/gstelement.sgml:
4678         * gst/gstbin.h:
4679         * gst/gstelement.c: (gst_element_class_init):
4680         * gst/gstelement.h:
4681           fixing incomplete docs
4682
4683 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4684
4685         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4686           Don't unref seek event twice when fflush() fails
4687           
4688 2005-01-22  David Schleef  <ds@schleef.org>
4689
4690         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4691
4692 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4693
4694         * docs/gst/Makefile.am:
4695         * docs/libs/Makefile.am:
4696           added params for deprecation guards
4697         * gst/gst.c:
4698         * gst/gst.h:
4699         * gst/gsterror.c: (_gst_resource_errors_init),
4700         (_gst_stream_errors_init):
4701         * gst/gsterror.h:
4702           documented some more enums
4703
4704 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4705         * gst/autoplug/gstspideridentity.c:
4706         Cosmetic fix - spider_find_peek should be static
4707         * gst/parse/parse.l:
4708         Applying fix for #164261
4709
4710 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4711
4712         * docs/gst/gstreamer-sections.txt:
4713         * docs/gst/tmpl/gstplugin.sgml:
4714         * docs/libs/gstreamer-libs-sections.txt:
4715         * docs/libs/tmpl/gstcontrol.sgml:
4716         * gst/gstbuffer.h:
4717         * gst/gsttag.h:
4718         * gst/gstvalue.c:
4719           added docs for the TAG defines
4720
4721 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4722
4723         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4724           Only unref entry if there is an entry.
4725
4726 2005-01-17  Wim Taymans  <wim@fluendo.com>
4727
4728         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4729         (remove_from_group), (schedule_group), (normalize_group),
4730         (gst_opt_scheduler_iterate):
4731         Also ref/unref decoupled elements before iterating the
4732         group since they are not added to the list of elements.
4733
4734 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4735
4736         * docs/manual/highlevel-components.xml:
4737           Add subtitle/streamselection as new features to playbin.
4738
4739 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4740
4741         * docs/manual/manual.xml:
4742           Re-enable dataaccess docs (oops).
4743
4744 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4745
4746         * docs/pwg/advanced-types.xml:
4747         * docs/random/mimetypes:
4748           Add documentation on libsndfile types (#163309), by Steve Baker
4749           <steve@stevebaker.org>.
4750         * gst/gstelement.c: (gst_element_release_request_pad):
4751           If an element has no explicit function, just remove the pad.
4752
4753 2005-01-17  Luca Ognibene  <luogni@tin.it>
4754
4755         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4756
4757         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
4758           Fix memleak (#163801).
4759
4760 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4761
4762         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
4763           I think this is actually more correct...
4764
4765 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4766
4767         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4768           Another workaround for memory access while destroyed in callback.
4769           Please, someone with refcount knowledge, have a look at this.
4770
4771 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4772
4773         * docs/faq/faq.xml:
4774         * docs/faq/legal.xml:
4775           move the legal Q&A here
4776
4777 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4778
4779         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
4780         (gst_tee_request_new_pad):
4781           Fix negotiation.
4782
4783 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4784
4785         * docs/random/omega/caps2:
4786         * testsuite/caps/caps_strings:
4787           replace framerate aproximations by their real value
4788           (24000/1001, 30000/1001, 60000/1001)
4789           Partially fixes bug #164049
4790
4791 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4792
4793         * docs/gst/Makefile.am:
4794           don't fail on the stupid GstPoptOption
4795
4796 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4797
4798         * gst/gstpad.h:
4799         * gst/gstprobe.c:
4800           allow probes to work on ghost pads by realizing the pad
4801           probe debugging
4802
4803 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4804
4805         * docs/gst/gstreamer-sections.txt:
4806         * docs/gst/tmpl/gstpad.sgml:
4807         * gst/gstpad.c: (gst_pad_set_active_recursive):
4808         * gst/gstpad.h:
4809           Add gst_pad_set_active_recursive().
4810
4811 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4812
4813         * docs/random/release:
4814           updates
4815         * gst/gst_private.h:
4816         * gst/gstinfo.c:
4817         * gst/gstobject.c:
4818           move deep_notify logging to a new category
4819         * gst/gstprobe.c:
4820         * gst/gstprobe.h:
4821           add stuff so bindings can wrap probes
4822
4823 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4824
4825         * gst/gstplugin.c: (gst_plugin_load):
4826           Fix plugin loading if plugin/lib was already loaded. Fixes
4827           #163383
4828
4829 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
4830
4831         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4832
4833         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
4834           Protect plugin loading by a mutex so it's threadsafe. Fixes
4835           #163234.
4836
4837 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4838
4839         * gst/gstevent.c: (_gst_event_copy):
4840           Reference source object when copying events, since it'll be
4841           dereferenced on event dereferencing as well.
4842
4843 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4844
4845         * docs/gst/gstreamer-sections.txt:
4846         * docs/gst/tmpl/gstevent.sgml:
4847         * gst/gstevent.c: (gst_event_new_filler_stamped),
4848         (gst_event_filler_get_duration):
4849         * gst/gstevent.h:
4850           Add two new functions for filler events (which are used to
4851           synchronize streams if one of them is not having any data
4852           for a while) without interrupting the actual data-stream.
4853           Basically a no-op.
4854         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4855         (gst_queue_link_sink), (gst_queue_link_src),
4856         (gst_queue_change_state):
4857           Allow for renegotiation while filled. Required for stream
4858           switching while playing.
4859
4860 2005-01-08  Benjamin Otte  <otte@gnome.org>
4861
4862         * gst/gstelement.c: (gst_element_link_many):
4863           fix up g_return_if_fail's
4864         * po/LINGUAS:
4865         * po/de.po:
4866           add German translation, that was somehow not included
4867
4868 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4869
4870         * docs/random/mimetypes:
4871           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
4872           do not add them to riff-lib as they are not common
4873
4874 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4875
4876         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4877           Check for existence of probe after performing the probe before
4878           re-accessing it to prevent segfaults caused by removal of the
4879           probe in the callback.
4880
4881 2005-01-05  David Schleef  <ds@schleef.org>
4882
4883         * testsuite/registry/Makefile.am:
4884         * testsuite/registry/gst-print-formats.c:
4885         (print_pad_templates_info), (print_element_list),
4886         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
4887         (g_list_uniqify), (get_pad_templates_info),
4888         (get_element_mime_list), (print_mime_list), (main): A little
4889         program that looks through the registry to find elements of
4890         a given type.  Not particularly interesting as a test, except
4891         that there's no other test covering the same area.
4892
4893 2005-01-05  David Schleef  <ds@schleef.org>
4894
4895         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
4896         (fault_handler_sigaction), (fault_spin),
4897         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
4898         in signal.h-type signal handlers by not calling forbidden functions,
4899         including gst_element_set_state().
4900
4901 2005-01-05  David Schleef  <ds@schleef.org>
4902
4903         * gst/gstvalue.h: Mark _gst_reserved[] as private
4904
4905 2005-01-05  David Schleef  <ds@schleef.org>
4906
4907         * gst/gstvalue.c: Fix doc build problem.
4908
4909 2005-01-05  David Schleef  <ds@schleef.org>
4910
4911         * gst/gstvalue.c: Add some documentation
4912
4913 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
4914
4915         * docs/README:
4916           another shell oneliner for empty return value docs
4917         * gst/gstcaps.c:
4918         * gst/gstvalue.c:
4919         * libs/gst/control/dparam.c:
4920           more doc fixes (parameters and return values)
4921
4922 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
4923
4924         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4925
4926         * gst/gstregistry.h:
4927         * gst/registries/gstxmlregistry.c:
4928           Fix macro's for Mingw (fixes #162276).
4929
4930 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
4931
4932         * docs/README:
4933           quick shell oneliner to find undocumented members
4934         * docs/gst/tmpl/gstplugin.sgml:
4935         * docs/gst/tmpl/gstscheduler.sgml:
4936         * docs/gst/tmpl/gstthread.sgml:
4937           more enumtypes cleanup
4938         * gst/gsterror.h:
4939           activated documentation comments, now someone needs to document
4940           the enums :(
4941
4942 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4943
4944         * docs/manual/manual.xml:
4945           Add dataaccess part (doh!).
4946
4947 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4948
4949         * docs/manual/advanced-autoplugging.xml:
4950           Fix typo (intiate -> initiate).
4951
4952 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4953
4954         * docs/random/bbb/streamselection:
4955           Add some notes on how to handle multi-subtitle/-audio streams.
4956
4957 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
4958
4959         * docs/gst/gstreamer-docs.sgml:
4960         * docs/gst/gstreamer-sections.txt:
4961         * docs/gst/tmpl/gstenumtypes.sgml:
4962         * docs/gst/tmpl/gsterror.sgml:
4963         * docs/gst/tmpl/gstevent.sgml:
4964         * docs/gst/tmpl/gstpad.sgml:
4965         * docs/gst/tmpl/gstpadtemplate.sgml:
4966         * docs/gst/tmpl/gstthread.sgml:
4967           removed gstenumtypes section from docs and put all the enums into
4968           their sections
4969
4970 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4971
4972         * gst/gstplugin.c:
4973           document gst_library_load a bit more (riff special case + return
4974           value if already loaded)
4975         * testsuite/bytestream/filepadsink.c:
4976           plugin name is 'gstbytestream', not 'bytestream'
4977
4978 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4979
4980         * docs/random/bbb/subtitles:
4981           Add some first mind rumblings on proper subtitle support.
4982
4983 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
4984
4985         * po/ca.po:
4986         * po/sv.po:
4987           updated translations
4988
4989 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4990
4991         * docs/manual/advanced-dataaccess.xml:
4992           Add section on how to use fakesrc/fakesink/identity in your
4993           application, plus section on how to embed plugins. Also mention
4994           probes.
4995         * docs/manual/appendix-checklist.xml:
4996         * docs/manual/appendix-debugging.xml:
4997         * docs/manual/appendix-gnome.xml:
4998         * docs/manual/appendix-integration.xml:
4999           Debug -> checklist, GNOME -> integration, add sections on Linux,
5000           KDE integration and add other things useful for application
5001           development.
5002         * docs/manual/manual.xml:
5003           Remove some fixmes, update some file pointers.
5004         * docs/pwg/appendix-checklist.xml:
5005           Fix typo.
5006         * docs/pwg/building-boiler.xml:
5007           Remove ugly header and add commented fixme.
5008         * docs/pwg/pwg.xml:
5009           Add fixme.
5010         * examples/manual/Makefile.am:
5011           Add example for added docs.
5012
5013 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5014
5015         * configure.ac:
5016           back to HEAD
5017
5018 === release 0.8.8 ===
5019
5020 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5021
5022         * NEWS:
5023         * RELEASE:
5024         * configure.ac:
5025           Releasing 0.8.8, "I'll Take Care Of You"
5026
5027 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5028
5029         * configure.ac:
5030           second prerelease
5031
5032 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5033
5034         patch by: Wim Taymans
5035
5036         * gst/gstbin.c:
5037           Fix for #159852 - make iterate emission threadsafe
5038
5039 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5040
5041         * docs/faq/cvs.xml:
5042           notes about new fdo account request
5043
5044 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5045
5046         * docs/gst/gstreamer-docs.sgml:
5047         * docs/gst/tmpl/gstenumtypes.sgml:
5048         * docs/gst/tmpl/gstplugin.sgml:
5049         * docs/libs/gstreamer-libs-docs.sgml:
5050           Added missing short docs. Added ids for navigation.
5051
5052 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5053
5054         * docs/manual/advanced-autoplugging.xml:
5055         * docs/manual/advanced-schedulers.xml:
5056         * docs/manual/advanced-threads.xml:
5057           Rewrites. Remove cothreads, go a bit into opt specifically,
5058           document threads and their gotchas, and do some technical stuff
5059           on autoplugging plus add some working examples. Fixes #157395.
5060         * examples/manual/Makefile.am:
5061           Add typefind/autoplugger example (one that actually works).
5062           Remove queue example since it's a duplicate of the thread one.
5063
5064 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5065
5066         * gst/gstvalue.c: (gst_value_deserialize_string):
5067           use deprecated g_value_set_string_take_ownership to keep compatible
5068           with glib 2.2
5069
5070 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5071
5072         * gst/gstvalue.c: (gst_value_deserialize_string):
5073           revert last patch, only dom a g_utf8_validate now before accepting
5074           the string - caps parsing strips " from strings so we can't rely on
5075           them
5076         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5077           disable a test that tested the above and comment it
5078
5079 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5080
5081         Patch reviewed by David Schleef  <ds@schleef.org>
5082
5083         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5084         bug #153882)
5085         * win32/gstenumtypes.h: same
5086
5087 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5088
5089         * gst/gstpad.c: (gst_pad_query):
5090           Do query on realized pad, similar to how convert/send_event handle
5091           this. Also makes sense, since this pad belongs to the function to
5092           which this query will be sent. Fixes #158163.
5093
5094 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5095
5096         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5097
5098 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5099
5100         * docs/faq/general.xml: fix pipeline to actually work
5101
5102 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5103
5104         * gst/gstvalue.c: (gst_value_deserialize_string):
5105           check that a simple string that gets deserialized does not contain
5106           invalid characters
5107         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5108           remove a test that tested a wring behaviour
5109
5110 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5111
5112         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5113
5114         * docs/manual/intro-motivation.xml:
5115           Fix typos.
5116
5117 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5118
5119         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5120
5121         * docs/gst/tmpl/gstprobe.sgml:
5122           Fix documentation of probe callback - it is supposed to return
5123           FALSE, not TRUE, to remove data from the stream (#159087).
5124
5125 2004-12-16  Daniel Gazard  <dany42@free.fr>
5126
5127         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5128
5129         * gst/gstelementfactory.c: (gst_element_factory_create):
5130           Fix compile failure if compiling without libxml2 support (#149936).
5131
5132 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5133
5134         * docs/manual/advanced-autoplugging.xml:
5135         * docs/manual/highlevel-components.xml:
5136           Move spider from autoplugging to components. Autoplugging is for
5137           internals, not for solutions. ;-).
5138
5139 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5140
5141         * docs/random/ds/0.9-suggested-changes:
5142           Make note on device/location/uri property names.
5143
5144 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5145
5146         * docs/manual/advanced-autoplugging.xml:
5147         * docs/manual/advanced-clocks.xml:
5148         * docs/manual/advanced-interfaces.xml:
5149         * docs/manual/advanced-metadata.xml:
5150         * docs/manual/advanced-position.xml:
5151         * docs/manual/advanced-schedulers.xml:
5152         * docs/manual/advanced-threads.xml:
5153         * docs/manual/appendix-gnome.xml:
5154         * docs/manual/appendix-programs.xml:
5155         * docs/manual/appendix-quotes.xml:
5156         * docs/manual/autoplugging.xml:
5157         * docs/manual/basics-bins.xml:
5158         * docs/manual/basics-data.xml:
5159         * docs/manual/basics-elements.xml:
5160         * docs/manual/basics-helloworld.xml:
5161         * docs/manual/basics-init.xml:
5162         * docs/manual/basics-pads.xml:
5163         * docs/manual/basics-plugins.xml:
5164         * docs/manual/bins-api.xml:
5165         * docs/manual/bins.xml:
5166         * docs/manual/buffers-api.xml:
5167         * docs/manual/buffers.xml:
5168         * docs/manual/clocks.xml:
5169         * docs/manual/components.xml:
5170         * docs/manual/cothreads.xml:
5171         * docs/manual/debugging.xml:
5172         * docs/manual/dparams-app.xml:
5173         * docs/manual/dynamic.xml:
5174         * docs/manual/elements-api.xml:
5175         * docs/manual/elements.xml:
5176         * docs/manual/factories.xml:
5177         * docs/manual/gnome.xml:
5178         * docs/manual/goals.xml:
5179         * docs/manual/helloworld.xml:
5180         * docs/manual/helloworld2.xml:
5181         * docs/manual/highlevel-components.xml:
5182         * docs/manual/highlevel-xml.xml:
5183         * docs/manual/init-api.xml:
5184         * docs/manual/intro-basics.xml:
5185         * docs/manual/intro-motivation.xml:
5186         * docs/manual/intro-preface.xml:
5187         * docs/manual/intro.xml:
5188         * docs/manual/links-api.xml:
5189         * docs/manual/links.xml:
5190         * docs/manual/manual.xml:
5191         * docs/manual/motivation.xml:
5192         * docs/manual/pads-api.xml:
5193         * docs/manual/pads.xml:
5194         * docs/manual/plugins-api.xml:
5195         * docs/manual/plugins.xml:
5196         * docs/manual/programs.xml:
5197         * docs/manual/queues.xml:
5198         * docs/manual/quotes.xml:
5199         * docs/manual/schedulers.xml:
5200         * docs/manual/states-api.xml:
5201         * docs/manual/states.xml:
5202         * docs/manual/threads.xml:
5203         * docs/manual/typedetection.xml:
5204         * docs/manual/win32.xml:
5205         * docs/manual/xml.xml:
5206           Try 2. This time, include a short preface as a "general
5207           introduction", also add code blocks around all code samples
5208           so they get compiled. We still need a way to tell readers
5209           the filename of the code sample. In some cases, don't show
5210           all code in the documentation, but do include it in the generated
5211           code. This allows for focussing on specific bits in the docs,
5212           while still having a full test application available.
5213         * examples/manual/Makefile.am:
5214           Fix up examples for new ADM. Add several of the new examples that
5215           were either added or were missing from the build system.
5216         * examples/manual/extract.pl:
5217           Allow nameless blocks.
5218
5219 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5220
5221         * docs/manual/elements-api.xml:
5222         * docs/manual/helloworld.xml:
5223         * examples/manual/extract.pl:
5224           fix last example.  Add example of adding code blocks that are not
5225           shown in docbook output.
5226
5227 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5228
5229         * docs/manual/dynamic.xml:
5230         * docs/manual/elements-api.xml:
5231         * docs/manual/gnome.xml:
5232         * docs/manual/helloworld2.xml:
5233         * docs/manual/init-api.xml:
5234         * docs/manual/queues.xml:
5235         * docs/manual/threads.xml:
5236         * docs/manual/xml.xml:
5237         * examples/manual/extract.pl:
5238           Make it possible to extract example code from separate blocks.
5239           Should make Ronald happy.
5240
5241 2004-12-15  Wim Taymans  <wim@fluendo.com>
5242
5243         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5244         (remove_from_group), (group_elements_set_visited),
5245         (normalize_group), (gst_opt_scheduler_iterate):
5246         Fix bug where a flag was not updated on a decoupled entry point 
5247         because we were just checking the group element list and decoupled
5248         elements are not in that list..
5249
5250 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5251
5252         * docs/manual/advanced-autoplugging.xml:
5253         * docs/manual/advanced-clocks.xml:
5254         * docs/manual/advanced-dparams.xml:
5255         * docs/manual/advanced-interfaces.xml:
5256         * docs/manual/advanced-metadata.xml:
5257         * docs/manual/advanced-position.xml:
5258         * docs/manual/advanced-schedulers.xml:
5259         * docs/manual/advanced-threads.xml:
5260         * docs/manual/appendix-debugging.xml:
5261         * docs/manual/appendix-gnome.xml:
5262         * docs/manual/appendix-programs.xml:
5263         * docs/manual/appendix-quotes.xml:
5264         * docs/manual/appendix-win32.xml:
5265         * docs/manual/autoplugging.xml:
5266         * docs/manual/basics-bins.xml:
5267         * docs/manual/basics-data.xml:
5268         * docs/manual/basics-elements.xml:
5269         * docs/manual/basics-helloworld.xml:
5270         * docs/manual/basics-init.xml:
5271         * docs/manual/basics-pads.xml:
5272         * docs/manual/basics-plugins.xml:
5273         * docs/manual/bins-api.xml:
5274         * docs/manual/bins.xml:
5275         * docs/manual/buffers-api.xml:
5276         * docs/manual/buffers.xml:
5277         * docs/manual/clocks.xml:
5278         * docs/manual/components.xml:
5279         * docs/manual/cothreads.xml:
5280         * docs/manual/debugging.xml:
5281         * docs/manual/dparams-app.xml:
5282         * docs/manual/dynamic.xml:
5283         * docs/manual/elements-api.xml:
5284         * docs/manual/elements.xml:
5285         * docs/manual/factories.xml:
5286         * docs/manual/gnome.xml:
5287         * docs/manual/goals.xml:
5288         * docs/manual/helloworld.xml:
5289         * docs/manual/helloworld2.xml:
5290         * docs/manual/highlevel-components.xml:
5291         * docs/manual/highlevel-xml.xml:
5292         * docs/manual/init-api.xml:
5293         * docs/manual/intro-motivation.xml:
5294         * docs/manual/intro-preface.xml:
5295         * docs/manual/intro.xml:
5296         * docs/manual/links-api.xml:
5297         * docs/manual/links.xml:
5298         * docs/manual/manual.xml:
5299         * docs/manual/motivation.xml:
5300         * docs/manual/pads-api.xml:
5301         * docs/manual/pads.xml:
5302         * docs/manual/plugins-api.xml:
5303         * docs/manual/plugins.xml:
5304         * docs/manual/programs.xml:
5305         * docs/manual/queues.xml:
5306         * docs/manual/quotes.xml:
5307         * docs/manual/schedulers.xml:
5308         * docs/manual/states-api.xml:
5309         * docs/manual/states.xml:
5310         * docs/manual/threads.xml:
5311         * docs/manual/typedetection.xml:
5312         * docs/manual/win32.xml:
5313         * docs/manual/xml.xml:
5314           First try at rewriting the ADM. Needs lotsamore work, but some
5315           parts might already be somewhat useful.
5316         * docs/pwg/advanced-interfaces.xml:
5317           Remove properties interface, it never actually existed (except for
5318           on my HD...).
5319
5320 2004-12-13  David Schleef  <ds@schleef.org>
5321
5322         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5323         be NULL (bug #160220).
5324
5325 2004-12-13  David Schleef  <ds@schleef.org>
5326
5327         * configure.ac: remove all mmx stuff, because it's not used.
5328         * docs/random/ds/0.9-suggested-changes: additional notes
5329         * include/Makefile.am: we don't use these anymore
5330         * include/mmx.h: remove
5331         * include/sse.h: remove
5332
5333 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5334
5335         * docs/random/mimetypes:
5336           Add FOURCC code for h264 codec (VSSH)
5337           Add alternate FOURCC codes for h263 related codecs
5338
5339 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5340
5341         * docs/manual/programs.xml:
5342           Added more gst-launch examples.
5343
5344 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5345
5346         * gst/gstqueue.c: (gst_queue_handle_src_query):
5347           Check for availability again.
5348
5349 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5350
5351         * gst/gstcaps.c: (gst_caps_compare_structures):
5352           Simple caps go first. This has the nice side-effect of fixing an
5353           obscure warning.
5354
5355 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5356
5357         * gst/gstversion.h.in:
5358           Protect header.
5359
5360 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5361
5362         * gst/schedulers/gstoptimalscheduler.c:
5363         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5364         (gst_opt_scheduler_get_wrapper):
5365           When we're recursing into a chain run, only run the directly
5366           related group, not all queued ones. This will fix a possible
5367           deadlock in chains with more than two groups.
5368
5369 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5370
5371         * autogen.sh:
5372           remove patch if autopoint fails
5373
5374 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5375
5376         * docs/gst/gstreamer-sections.txt:
5377           Document Thomas' addition, fix build, make Luis the sheriff happy.
5378
5379 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5380
5381         * gst/gstplugin.c:
5382         * gst/gstplugin.h:
5383           add accessor for version field
5384
5385 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5386
5387         submitted by: Luca Ferretti <elle.uca@infinito.it>
5388
5389         * po/LINGUAS:
5390         * po/it.po:
5391           New tranlation added: Italian
5392
5393 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5394
5395         * gst/gstpad.c: (gst_pad_is_negotiated),
5396         (gst_pad_get_negotiated_caps):
5397           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5398           it doesn't actually check the contents), so be sure to hand it
5399           a RealPad else we'll crash.
5400
5401 2004-12-03  Wim Taymans  <wim@fluendo.com>
5402
5403         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5404         (gst_queue_link), (gst_queue_handle_src_query):
5405         Reverted to 1.110 until this makes the testsuite and various
5406         apps work.
5407
5408 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5409
5410         * docs/upload.mak: fix included CVS conflict strings
5411
5412 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5413
5414         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5415
5416         * gst/gstelement.c: (gst_element_error_full):
5417           Use g_error_new_literal because error text may have
5418           percentage signs in it. Fixes #160019.
5419
5420 2004-12-01  Benjamin Otte  <otte@gnome.org>
5421
5422         * gst/elements/gstbufferstore.c:
5423         (gst_buffer_store_add_buffer_func):
5424           don't try to make subbuffers bigger than they can be. (fixes
5425           #159970)
5426
5427 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5428
5429         * docs/gst/gstreamer-sections.txt:
5430         * docs/gst/tmpl/gstvalue.sgml:
5431           Add new function to docs to fix build.
5432
5433 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5434
5435         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5436         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5437         (_gst_pad_default_fixate_foreach):
5438         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5439         * gst/gstvalue.h:
5440           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5441           in some cases (arrays), the fixedness depends on the content.
5442         * gst/gstqueue.c: (gst_queue_handle_src_query):
5443           Check for availability before doing something.
5444
5445 2004-11-29  Wim Taymans  <wim@fluendo.com>
5446
5447         * testsuite/threads/Makefile.am:
5448         * testsuite/threads/signals.c: (gst_test_get_type),
5449         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5450         (gst_test_set_property), (gst_test_get_property),
5451         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5452         (gst_test_do_prop), (run_thread), (main):
5453         Added a bunch of testcases that show threadsafety bugs in glib.
5454
5455 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5456
5457         * docs/manual/programs.xml:
5458           Added a first batch of gst-launch examples, as provided by Ronald
5459           and others from the devel-mlist
5460
5461 2004-11-28  Benjamin Otte  <otte@gnome.org>
5462
5463         * gst/gstelement.c: (gst_element_negotiate_pads):
5464           simplify
5465         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5466         (gst_value_serialize_string), (gst_value_deserialize_string):
5467           add unwrapping of previously wrapped strings. Fix bug in wrapping
5468           while at it.
5469         * testsuite/caps/value_serialize.c: (test1),
5470         (test_string_serialization), (test_string_deserialization), (main):
5471           add tests for string (de)serialization
5472
5473 2004-11-26  Wim Taymans  <wim@fluendo.com>
5474
5475         * testsuite/threads/159566.c: (object_deep_notify), (main):
5476         * testsuite/threads/Makefile.am:
5477         Added testsuite to show bug #159566
5478
5479 2004-11-25  Wim Taymans  <wim@fluendo.com>
5480
5481         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5482         (gst_thread_child_state_change), (gst_thread_main_loop):
5483         Ref the thread object in the GThread mainloop. Break out of the
5484         thread mainloop if it holds the last ref. This properly exits
5485         the threads when disposing the thread from its own context. It
5486         also avoids possible deadlocks in the dispose function.
5487
5488 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5489
5490         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5491         it is necessary to wait.
5492
5493 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5494
5495         * docs/pwg/building-boiler.xml:
5496           Make description somewhat clearer.
5497
5498 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5499
5500         * docs/upload.mak:
5501           Apparently docs changed location on FDO's server.
5502
5503 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5504
5505         * docs/pwg/appendix-checklist.xml:
5506           Add some random notes on things to check when writing an element.
5507           This list can be extended as people see fit.
5508
5509 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5510
5511         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5512         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5513         pad. The queue will now wait until it is empty and forward the new
5514         caps to the source.
5515         * gst/gstbin.c (gst_bin_set_element_sched)
5516         (gst_bin_unset_element_sched): Make sure that all elements and
5517         links are registered and unregistered with the scheduler exactly
5518         once. This elaborates on a fix by Benjamin Otte, but
5519         guarantees that decoupled elements are also registered.
5520
5521 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5522
5523         * docs/manual/quotes.xml:
5524           add a quote
5525         * configure.ac:
5526         * gst/gst.c:
5527         * gst/gstinfo.c:
5528           add LIBDIR and move init message higher up so it's at the start
5529
5530 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5531
5532         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5533         * gstreamer.spec.in: add fair
5534
5535 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5536
5537         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5538         * gst/elements/gstidentity.c: (gst_identity_class_init):
5539           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5540           <teuf@gnome.org> (#157263).
5541         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5542         (gst_type_find_handle_src_query):
5543           Subtract size of internally stored data from position queries.
5544
5545 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5546
5547         * gst/schedulers/fairscheduler.c:
5548         * gst/schedulers/faircothreads.c:
5549         * gst/schedulers/faircothreads.h:
5550         New cothread based scheduler: Fair scheduler.
5551         * gst/schedulers/gthread-cothreads.h: 
5552         Add the standard #if around the whole file.
5553         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5554         compilation of the functions defined in this file. This is
5555         necessary to be able to use this file as a normal header.
5556         * gst/schedulers/Makefile.am: Add compiling support for fair
5557         scheduler.
5558         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5559         scheduler cothreads layer from documentation generation.
5560
5561 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5562
5563         * gst/autoplug/gstspideridentity.c:
5564         (gst_spider_identity_sink_loop_type_finding):
5565           Don't crash if that function is not implemented.
5566
5567 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5568
5569         * docs/pwg/advanced-types.xml:
5570           Another typo.
5571
5572 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5573
5574         * docs/pwg/intro-preface.xml:
5575           Hm, ok, so the brackets weren't really useful...
5576         * docs/pwg/other-ntoone.xml:
5577           Fix embarassing typo.
5578
5579 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5580
5581         * docs/pwg/intro-preface.xml:
5582           Rewrite preface.
5583
5584 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5585
5586         * docs/pwg/advanced-scheduling.xml:
5587         * docs/pwg/advanced-tagging.xml:
5588         * docs/pwg/advanced-types.xml:
5589         * docs/pwg/building-boiler.xml:
5590         * docs/pwg/building-chainfn.xml:
5591         * docs/pwg/building-signals.xml:
5592         * docs/pwg/building-state.xml:
5593         * docs/pwg/building-testapp.xml:
5594         * docs/pwg/intro-basics.xml:
5595         * docs/pwg/other-manager.xml:
5596         * docs/pwg/other-source.xml:
5597           Typo fixes.
5598         * docs/pwg/other-manager.xml:
5599           Add some first content. No example code yet.
5600         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5601           Remove double newlines.
5602
5603 2004-11-04  Wim Taymans  <wim@fluendo.com>
5604
5605         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5606         (remove_from_group), (normalize_group), (group_migrate_connected),
5607         (gst_opt_scheduler_iterate):
5608         * testsuite/schedulers/.cvsignore:
5609         * testsuite/schedulers/Makefile.am:
5610         * testsuite/schedulers/queue_link.c: (main):
5611         Added testcase for scheduler segfault.
5612         Fix scheduler segfault when removing a decoupled
5613         entry point as the last element from a group.
5614
5615 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5616
5617         * gst/gstmarshal.list: add missing marshaller, fixes build
5618
5619 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5620
5621         * docs/random/signal: added notes about using BOXED for GstBuffer
5622         signal marshallers, not POINTER
5623
5624 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5625
5626         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5627         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5628         POINTER=>BOXED changes to marshal GstBuffers
5629
5630 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5631
5632         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5633         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5634
5635 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5636
5637         * docs/gst/gstreamer-sections.txt:
5638         * docs/gst/tmpl/gstcaps.sgml:
5639         * docs/gst/tmpl/gsterror.sgml:
5640         * docs/gst/tmpl/gstinfo.sgml:
5641         * docs/gst/tmpl/gstmacros.sgml:
5642         * docs/gst/tmpl/gstutils.sgml:
5643         * docs/random/ensonic/interfaces.txt:
5644         * gst/gstinfo.h:
5645           added some more docs, removed two obsolete defines
5646
5647 2004-11-02  Kjartan Maraas <as at gnome.org>
5648
5649         reviewed by: Wim Taymans, Ronald Bultje.
5650
5651         * gst/cothreads.c: (cothread_create):
5652         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5653         (gst_bin_child_state_change_func):
5654         * gst/gstbuffer.c: (gst_buffer_span):
5655         * gst/gstelement.c: (gst_element_get_index),
5656         (gst_element_get_event_masks), (gst_element_get_query_types),
5657         (gst_element_get_formats):
5658         * gst/gsterror.c: (_gst_core_errors_init),
5659         (_gst_library_errors_init), (_gst_resource_errors_init),
5660         (_gst_stream_errors_init):
5661         * gst/gstobject.c: (gst_object_default_deep_notify):
5662         * gst/gstpad.c: (gst_pad_get_event_masks),
5663         (gst_pad_get_internal_links_default):
5664         * gst/gstplugin.c: (gst_plugin_register_func),
5665         (gst_plugin_get_module):
5666         * gst/gststructure.c: (gst_structure_get_string),
5667         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5668         (gst_structure_to_abbr):
5669         * gst/gstutils.c: (gst_print_element_args):
5670         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5671         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5672         Aplied part of patch #157127: Cleanup of issues reported by 
5673         sparse.
5674         Also do not try to use cothreads when there is no cothread
5675         context yet.
5676
5677 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5678
5679         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5680         (gst_opt_scheduler_iterate):
5681         Applied patch #154061. Running a pipeline in which an element 
5682         calls GST_ELEMENT_ERROR in the chain function, the opt 
5683         scheduler doesn't unref the chain so it never gets freed.
5684
5685 2004-11-02  Wim Taymans  <wim@fluendo.com>
5686
5687         * gst/gststructure.c: (gst_structure_get_abbrs),
5688         (gst_structure_from_abbr), (gst_structure_to_abbr):
5689         Remove that ugly if-then thing in the code that converts
5690         between strings and types.
5691
5692 2004-11-02  Wim Taymans  <wim@fluendo.com>
5693
5694         * gst/gstscheduler.c: (gst_scheduler_add_element),
5695         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5696         Aplied clock distribution patch, this should fix bug
5697         #148787.
5698
5699 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5700
5701         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5702
5703         * po/LINGUAS:
5704         * po/nb.po:
5705           Added Norwegian Bokmaal translation
5706
5707 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5708
5709         * tools/gst-inspect.c: (print_signal_info):
5710           print signal arguments as pointers if they are
5711
5712 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5713
5714         * docs/pwg/building-boiler.xml:
5715           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5716
5717 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5718
5719         * gst/parse/parse.l:
5720         * testsuite/parse/parse1.c: (main):
5721         Since parse can do 'element name=a:b' make 'a:b.' work as
5722         well. 
5723         Added testcase to verify fix.
5724
5725 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5726
5727         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
5728         Use the realpad when printing the direction.
5729         Add extra \n when printing extensions of typefind factories.
5730
5731 2004-10-13  David Schleef  <ds@schleef.org>
5732
5733         * examples/manual/Makefile.am: $< isn't portable in Makefile
5734         rules.
5735
5736 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
5737
5738         * docs/gst/tmpl/gstobject.sgml:
5739         * docs/gst/tmpl/gstplugin.sgml:
5740         * docs/gst/tmpl/gstpluginfeature.sgml:
5741         * docs/gst/tmpl/gstregistry.sgml:
5742         * docs/gst/tmpl/gstversion.sgml:
5743         * gst/gstbin.c:
5744           more api documentation
5745         * gst/gstplugin.c: (gst_plugin_register_func),
5746         (gst_plugin_check_file), (gst_plugin_load_file):
5747           better error signaling and logging
5748
5749 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5750
5751         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
5752           Subtract current queue contents from position queries.
5753
5754 2004-10-11  Johan Dahlin  <johan@gnome.org>
5755
5756         * gst/gsturi.c (gst_uri_get_location): unescape string
5757         (gst_uri_construct): escape string.
5758
5759 2004-10-11  Benjamin Otte  <otte@gnome.org>
5760
5761         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
5762         (gst_pad_try_set_caps_nonfixed):
5763           allow renegotiation of unconnected pads (as inside spider). Simply
5764           return OK if unconnected - mimic try_set_caps there.
5765
5766 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5767
5768         * gst/gstbin.c: (gst_bin_sync_children_state):
5769           Add missing break.
5770
5771 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5772
5773         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
5774         Set element to EOS before sending EOS event
5775
5776 2004-10-08  Wim Taymans  <wim at fluendo dot com>
5777
5778         * gst/elements/gsttypefindelement.c:
5779         (gst_type_find_element_handle_event):
5780         Handle EOS events when doing the transition from
5781         typefind to data passing. This should fix the
5782         infinite loops in short files.
5783
5784 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5785
5786         * gst/gstthread.c: (gst_thread_change_state),
5787         (gst_thread_child_state_change):
5788         Make sure no iteration happens while performing
5789         the state change as it could mess up the internal
5790         consistency of the thread state.
5791
5792 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5793
5794         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
5795         (gst_thread_change_state), (gst_thread_child_state_change):
5796         Do not try to grab the iterate lock in the state change method
5797         when we are in the same thread as the iterate or else we
5798         could deadlock. Some other cleanups.
5799
5800 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5801
5802         * configure.ac:
5803           bump nano to cvs
5804
5805 === release 0.8.7 ===
5806
5807 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5808
5809         * configure.ac:
5810         * NEWS:
5811         * RELEASE:
5812         * configure.ac:
5813           releasing 0.8.7, "A Cruise"
5814
5815 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5816
5817         * docs/random/mimetypes:
5818         Add an entry for Sony ATRAC3 audio format with mime-type
5819         used by rmdemux et riff-read
5820
5821 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5822
5823         * gst/elements/gsttypefindelement.c: (stop_typefinding):
5824         Push the buffer store instead of clearing it in case that
5825         the stream is not seekable.
5826
5827 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5828
5829         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
5830         (gst_thread_main_loop):
5831         Lock the iteration and the state change so that automatic
5832         negotiation and fixation does not happen at the same time
5833         as the in stream negotiation.
5834
5835 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5836
5837         * configure.ac:
5838           bump nano to cvs
5839
5840 === release 0.8.6 ===
5841
5842 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5843
5844         * configure.ac:
5845         * NEWS:
5846         * RELEASE:
5847         * configure.ac:
5848           releasing 0.8.6, "Narc"
5849
5850 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5851
5852         * configure.ac:
5853           prerel bump
5854
5855 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5856
5857         patch by: Steve Lhomme
5858
5859         * gst/elements/gstfakesrc.c:
5860         * gst/elements/gstidentity.c:
5861         * gst/gstthread.c:
5862           Fix for #153881
5863
5864 2004-10-01  Wim Taymans  <wim at fluendo dot com>
5865
5866         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
5867         Fix threadsafety of the crc checking function.
5868
5869 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5870
5871         patch by: Ronald Bultje
5872
5873         * gst/elements/gsttypefindelement.c: (stop_typefinding),
5874         (gst_type_find_element_handle_event),
5875         (gst_type_find_element_chain):
5876         * gst/elements/gsttypefindelement.h:
5877          #153657.
5878          Filter out discont event from seekable sources when typefind
5879          asks them to seek.  Fixes typefind with demuxers for
5880          avi, asf and matroska.
5881
5882 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5883
5884         * docs/gst/gstreamer-sections.txt:
5885         * gst/gstcaps.c:
5886         * gst/gstcaps.h:
5887         * gst/gstpad.c:
5888           Revert preferred caps: (#147789)
5889
5890 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
5891
5892         * win32/dirent.c:
5893           fix a memory leak
5894
5895 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5896
5897         * configure.ac:
5898           bump for prerelease
5899
5900 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5901
5902         * docs/Makefile.am:
5903         * docs/manual/elements-api.xml:
5904           restructure so that common stuff is shown first
5905         * docs/manual/init-api.xml:
5906           convert to examples
5907         * docs/manual/manual.xml:
5908         * docs/manuals.mak:
5909         * docs/url.entities:
5910           link to API on the website, possibly override later in build
5911         * examples/manual/.cvsignore:
5912           ignore more
5913         * examples/manual/Makefile.am:
5914           add more examples
5915         * examples/manual/extract.pl:
5916           error out on failure
5917
5918 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5919
5920         * docs/gst/tmpl/gstthread.sgml:
5921         * docs/manual/init-api.xml:
5922         * examples/manual/Makefile.am:
5923           convert two code bits to examples
5924
5925 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5926
5927         * gst/gstelement.c: (gst_element_change_state):
5928           Well, actually, I was about to remove this insane assert when
5929           I noticed Wim already did that. A warning is nice so we can
5930           fix actual ugs (using --g-fatal-warnings and backtraces), so
5931           I added that instead.
5932
5933 2004-09-06  Wim Taymans  <wim@fluendo.com>
5934
5935         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
5936         (gst_element_threadsafe_properties_post_run),
5937         (gst_element_set_state), (gst_element_change_state):
5938         Added extra refcounting around various places. 
5939
5940 2004-09-06  Wim Taymans  <wim@fluendo.com>
5941
5942         * gst/gstpad.c: (gst_pad_link_call_link_functions):
5943         Fix debug info.
5944
5945 2004-09-06  Wim Taymans  <wim@fluendo.com>
5946
5947         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5948         (remove_from_group):
5949         Some more debug info.
5950
5951 2004-09-03  Wim Taymans  <wim@fluendo.com>
5952
5953         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5954         (gst_fakesrc_init), (gst_fakesrc_set_clock),
5955         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5956         (gst_fakesrc_get), (gst_fakesrc_change_state):
5957         * gst/elements/gstfakesrc.h:
5958         * gst/elements/gstidentity.c: (gst_identity_class_init),
5959         (gst_identity_init), (gst_identity_chain),
5960         (gst_identity_set_property), (gst_identity_get_property),
5961         (gst_identity_change_state):
5962         * gst/elements/gstidentity.h:
5963         Added datarate properties to limit the datarate.
5964
5965 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5966
5967         * gst/autoplug/gstspider.c: (plugin_init):
5968           don't set a rank. We don't want to autoplug by inserting spiders.
5969
5970 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5971
5972         * gst/autoplug/gstspider.c: (gst_spider_class_init),
5973         (gst_spider_identity_plug):
5974           add a template for spider's sink
5975         * gst/gst.c: (gst_register_core_elements):
5976           queue's rank should be NULL, we don't want spider to add it.
5977
5978 2004-08-18  David Schleef  <ds@schleef.org>
5979
5980         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
5981         * docs/libs/Makefile.am: same
5982         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
5983         * docs/random/ds/0.9-planning: random additions
5984         * docs/random/ds/0.9-suggested-changes: same
5985         * gst/gstxml.h: remove vestigal GstXMLNs definition
5986
5987         Preferred caps: (#147789)
5988         * docs/gst/gstreamer-sections.txt: Add symbols
5989         * docs/gst/tmpl/gstcaps.sgml: Add symbols
5990         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
5991         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
5992         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
5993         (gst_caps_get_preferred), (gst_caps_set_preferred),
5994         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
5995         (gst_caps_use_preferred): Handle caps preferences
5996         * gst/gstcaps.h: Add caps preferences
5997         * gst/gstpad.c: (gst_pad_link_get_preferred),
5998         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
5999         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6000         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6001         negotiation.
6002
6003 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6004
6005         * gst/autoplug/gstspideridentity.c:
6006         (gst_spider_identity_request_new_pad):
6007         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6008         (gst_aggregator_init):
6009         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6010         (gst_fakesink_init):
6011         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6012         (gst_fakesrc_init):
6013         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6014         (gst_fdsink_init):
6015         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6016         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6017         (gst_filesink_init):
6018         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6019         (gst_filesrc_init):
6020         * gst/elements/gstidentity.c: (gst_identity_base_init),
6021         (gst_identity_init):
6022         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6023         (gst_multifilesrc_init):
6024         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6025         (gst_pipefilter_init):
6026         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6027         (gst_statistics_init):
6028         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6029         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6030           s/gst_pad_new/&_from_template/
6031           register pad templates in the base_init function
6032           add static pad template definitions
6033
6034 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6035
6036         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6037         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6038         * testsuite/refcounting/pad.c: (main):
6039         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6040           s/gst_pad_new/&_from_template/
6041           prepare deprecation of gst_pad_new
6042
6043 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6044
6045         patch by: Luca Ognibene <skaboy81@virgilio.it>
6046
6047         * gst/gstcaps.c:
6048         * gst/gstelement.c:
6049         * gst/gstpad.c:
6050         * gst/gstxml.c:
6051           fix memleaks.  Fixes #150001
6052
6053 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6054
6055         * docs/random/ds/0.9-suggested-changes:
6056           add notes - mostly about pad templates
6057
6058 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6059
6060         * win32/GStreamer.vcproj:
6061           temporary locale files are .gmo not .mo
6062
6063 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6064
6065         * configure.ac: bump nano to cvs
6066
6067 === release 0.8.5 ===
6068
6069 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6070
6071         * configure.ac:
6072           releasing 0.8.5, "Stuttgart"
6073         * NEWS:
6074         * RELEASE:
6075         * configure.ac:
6076         * docs/random/release:
6077           updates for release
6078
6079 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6080
6081         patch by: Wim Taymans (wim@fluendo.com)
6082
6083         * gst/gstbuffer.c:
6084         * gst/gstindex.h:
6085         * libs/gst/dataprotocol/dataprotocol.c:
6086           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6087
6088 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6089
6090         * Makefile.am:
6091         * win32/MANIFEST:
6092           add win32 dir to the build.  Fixes #149981.
6093
6094 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6095
6096         * configure.ac:
6097           bump libtool versioning
6098         * gst/gststructure.c:
6099           mark function as static
6100         * po/af.po:
6101         * po/az.po:
6102         * po/ca.po:
6103         * po/cs.po:
6104         * po/en_GB.po:
6105         * po/fr.po:
6106         * po/nl.po:
6107         * po/sq.po:
6108         * po/sr.po:
6109         * po/sv.po:
6110         * po/tr.po:
6111         * po/uk.po:
6112           translations update
6113         * win32/README.txt:
6114           trademark protection
6115
6116 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6117
6118         * configure.ac:
6119           fix GST_ORIGIN
6120           set GST_PACKAGE to source, and distinguish between release and other
6121         * tools/gst-inspect.c:
6122           print out plugin an element factory is part of so we see this info
6123
6124 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6125
6126         * docs/gst/gstreamer-sections.txt:
6127         * docs/gst/tmpl/gstbuffer.sgml:
6128         * docs/gst/tmpl/gstschedulerfactory.sgml:
6129           reorder docs a little, make GstBuffer's more sensible.
6130         * gst/gstbuffer.h:
6131           API: added GST_BUFFER_FLAG_DELTA_UNIT
6132         * gst/gstscheduler.c:
6133           comment API addition
6134
6135 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6136
6137         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6138           work with non-regular files that can be mmapped (like /dev/zero)
6139         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6140           get rid of typefinds that require a seek when we can't seek instead
6141           of trying them over and over again
6142         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6143           return non-zero failure value when the pipeline was interrupted or
6144           an error occurred
6145
6146 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6147
6148         * win32/config.h:
6149         * win32/GStreamer.vcproj:
6150           compile and install the locales
6151
6152 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6153
6154         * gst/gstvalue.c:
6155           fix a possible memory leak under Windows
6156
6157 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6158
6159         * win32/GStreamer.vcproj:
6160           fix a memory leak that occured under Windows
6161         * win32/gstreamer.def:
6162           add gst_scheduler_register
6163
6164 2004-08-11  Benjamin Otte  <otte@gnome.org>
6165
6166         * docs/gst/gstreamer-sections.txt:
6167         * gst/gstscheduler.c: (gst_scheduler_register):
6168         * gst/gstscheduler.h:
6169           API:
6170           add gst_scheduler_register shortcut similar to gst_element_register
6171         * gst/schedulers/entryscheduler.c: (plugin_init):
6172         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6173         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6174           use it
6175
6176 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6177
6178         * gst/gstvalue.h:
6179           fix a memory leak that occured under Windows
6180
6181 2004-08-10  Colin Walters  <walters@redhat.com>
6182
6183         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6184         Don't use O_EXCL to open temporary registry.  It will prevent
6185         registry creation if a temporary one already exists, which
6186         is unnecessary.
6187
6188 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6189
6190         * docs/gst/gstreamer-sections.txt:
6191         * docs/gst/tmpl/gstvalue.sgml:
6192           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6193
6194 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6195
6196         * win32/gstbytestream.vcproj:
6197         * win32/gstelements.vcproj:
6198         * win32/gstgetbits.vcproj:
6199         * win32/gst-inspect.vcproj:
6200         * win32/gst-launch.vcproj:
6201         * win32/gstoptimalscheduler.vcproj:
6202         * win32/GStreamer.vcproj:
6203         * win32/gst-register.vcproj:
6204         * win32/gstspider.vcproj:
6205           update the include and lib dirs to fit standard libraries as
6206           described in the Win32 manual
6207
6208 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6209
6210         * win32/config.h:
6211         * win32/gstversion.h:
6212           enable NLS again, push the version number for the coming 0.8.5 release
6213
6214 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6215
6216         * gst/gstvalue.h:
6217           export gst_type_XXX for windows DLLs
6218
6219 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6220
6221         * docs/faq/gst-uninstalled:
6222           fix PKG_CONFIG_PATH and PYTHONPATH
6223         * gst/schedulers/Makefile.am:
6224           cleanup
6225         * libs/gst/bytestream/bytestream.c:
6226           remove newline
6227         * po/LINGUAS:
6228         * po/sq.po:
6229           adding Albanian translation (Laurent Dhima)
6230         * po/cs.po:
6231           updated
6232
6233 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6234
6235         * po/ca.po:
6236         * po/sv.po:
6237           updated translations
6238
6239 2004-08-04  Benjamin Otte  <otte@gnome.org>
6240
6241         * tests/mass_elements.c: (main):
6242           allow specifying src and sink element explicitly, so I can test
6243           videotestsrc instead of fakesrc
6244
6245 2004-08-04  Benjamin Otte  <otte@gnome.org>
6246
6247         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6248         (gst_structure_id_empty_new), (gst_structure_empty_new),
6249         (gst_structure_copy):
6250           add gst_structure_id_empty_new_with_size to allow preallocating
6251           value array sizes. Use this in gst_structure_copy to get rid of
6252           reallocs.
6253           don't do quark=>string=>quark when copying structures
6254
6255 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6256
6257         * docs/manual/win32.xml:
6258         * win32/README.txt:
6259           update documentation with the clean version of dependencies
6260
6261 2004-08-03  Benjamin Otte  <otte@gnome.org>
6262
6263         * gst/schedulers/entryscheduler.c:
6264         (gst_entry_scheduler_remove_element):
6265           fix for GST_DISABLE_DEBUG
6266         * tools/gst-launch.c: (print_tag):
6267           fixes for G_DISABLE_ASSERT
6268
6269 2004-08-03  Benjamin Otte  <otte@gnome.org>
6270
6271         * gst/gst.c: (gst_register_core_elements):
6272           fix for G_DISABLE_ASSERT
6273         * gst/gstinfo.c: (__gst_in_valgrind):
6274           add for GST_DISABLE_DEBUG
6275
6276 2004-08-03  Benjamin Otte  <otte@gnome.org>
6277
6278         * gst/parse/parse.l:
6279           fix for G_DISABLE_ASSERT
6280
6281 2004-08-03  Wim Taymans  <wim@fluendo.com>
6282
6283         * gst/gstbin.c: (gst_bin_get_type),
6284         (gst_bin_child_state_change_func):
6285         * gst/gstthread.c: (gst_thread_change_state):
6286         Backported some debug logging from a reverted patch
6287         Don't try to destroy the thread twice. Added some more
6288         debugging in GstThread. Unlock and signal even if we
6289         are in the thread context.
6290
6291 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6292
6293         * po/uk.po:
6294           updated translation
6295
6296 2004-07-30  David Schleef  <ds@schleef.org>
6297
6298         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6299
6300 2004-07-29  David Schleef  <ds@schleef.org>
6301
6302         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6303         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6304
6305 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6306
6307         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6308         (gst_bin_add_func), (gst_bin_remove_func),
6309         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6310         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6311         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6312         (gst_bin_sync_children_state):
6313         * gst/gstbin.h:
6314         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6315         (gst_thread_change_state):
6316         * testsuite/states/Makefile.am:
6317           revert state change patches as agreed so we can rework them
6318           gradually
6319
6320 2004-07-29  Benjamin Otte  <otte@gnome.org>
6321
6322         * libs/gst/control/Makefile.am:
6323           link to libgstreamer (fixes Debian bug 262019, see
6324           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6325
6326 2004-07-29  Wim Taymans  <wim@fluendo.com>
6327
6328         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6329         (check_from_fraction_convert), (transform_test), (main):
6330         Make the test less pedantic about float roundoff errors.
6331
6332 2004-07-29  Benjamin Otte  <otte@gnome.org>
6333
6334         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6335         (gst_filesrc_srcpad_event):
6336           make seek events to before start/after end of file not fail, but
6337           seek to start/end instead
6338         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6339           add more output
6340
6341 2004-07-29  Benjamin Otte  <otte@gnome.org>
6342
6343         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6344           check that caps are fixed
6345         * gst/gstpad.c: (gst_pad_template_new):
6346           don't try to simplify caps, costs too much time on gst_init
6347         * gst/gstplugin.c: (gst_plugin_add_feature):
6348           G_ERROR if features are added twice
6349         * gst/gsttypefind.c: (gst_type_find_register):
6350         * gst/gstelementfactory.c: (gst_element_register):
6351           don't add features twice
6352         * docs/random/ds/0.9-suggested-changes:
6353           add note about possible gst_init optimization
6354
6355 2004-07-28  David Schleef  <ds@schleef.org>
6356
6357         * testsuite/elements/Makefile.am:
6358         * testsuite/elements/struct_i386.h:
6359         * testsuite/elements/struct_size.c: (main):  A little test
6360         to keep distcheck from working if someone changes a structure
6361         size accidentally.
6362
6363 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6364
6365         * docs/libs/Makefile.am:
6366         * docs/libs/gstreamer-libs-docs.sgml:
6367         * docs/libs/gstreamer-libs-sections.txt:
6368         * docs/libs/tmpl/gstbytestream.sgml:
6369         * docs/libs/tmpl/gstcontrol.sgml:
6370         * docs/libs/tmpl/gstdataprotocol.sgml:
6371         * docs/libs/tmpl/gstgetbits.sgml:
6372         * libs/gst/bytestream/Makefile.am:
6373         * libs/gst/bytestream/bytestream.c:
6374         * libs/gst/bytestream/bytestream.h:
6375         * libs/gst/control/Makefile.am:
6376         * libs/gst/dataprotocol/Makefile.am:
6377         * libs/gst/getbits/Makefile.am:
6378         * libs/gst/getbits/getbits.h:
6379           various doc and style fixes, adding bytestream to libs docs.
6380
6381 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6382
6383         * docs/gst/gstreamer-docs.sgml:
6384         * docs/libs/Makefile.am:
6385         * docs/libs/gstreamer-libs-docs.sgml:
6386         * docs/libs/gstreamer-libs-sections.txt:
6387         * libs/gst/control/dparam.c:
6388           more doc fixes.  gst-libs docs now build the same way as gst.
6389
6390 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6391
6392         * configure.ac:
6393         * testsuite/Makefile.am:
6394         * testsuite/bins/Makefile.am:
6395         * testsuite/caps/Makefile.am:
6396         * testsuite/cleanup/Makefile.am:
6397         * testsuite/clock/Makefile.am:
6398         * testsuite/debug/Makefile.am:
6399         * testsuite/dlopen/Makefile.am:
6400         * testsuite/dynparams/Makefile.am:
6401         * testsuite/elements/.cvsignore:
6402         * testsuite/elements/Makefile.am:
6403         * testsuite/enumcaps/Makefile.am:
6404         * testsuite/enumcaps/enumcaps.c:
6405         * testsuite/ghostpads/Makefile.am:
6406         * testsuite/indexers/Makefile.am:
6407         * testsuite/negotiation/Makefile.am:
6408         * testsuite/parse/Makefile.am:
6409         * testsuite/plugin/Makefile.am:
6410         * testsuite/refcounting/Makefile.am:
6411         * testsuite/schedulers/.cvsignore:
6412         * testsuite/states/Makefile.am:
6413         * testsuite/tags/Makefile.am:
6414         * testsuite/threads/Makefile.am:
6415           fold enumcaps into caps dir
6416           clean up Makefile.am's for testsuite
6417
6418 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6419
6420         * docs/gst/Makefile.am:
6421         * docs/libs/Makefile.am:
6422           clean up docs build.  Fixes needless rebuilding of template files.
6423
6424 2004-07-28  Wim Taymans  <wim@fluendo.com>
6425
6426         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6427         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6428         Make sure that a bin state change tries to keep the children
6429         in sync. 
6430         Added debug logging to the thread.
6431
6432 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6433
6434         * win32/GStreamer.vcproj:
6435         * win32/gstreamer.def:
6436           more exports for the plugins
6437
6438 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6439
6440         * win32/gstgetbits.vcproj:
6441         * win32/gstgetbits.def:
6442         * win32/msvc71.sln:
6443           add support for the getbits plugin
6444
6445 2004-07-27  Wim Taymans  <wim@fluendo.com>
6446
6447         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6448         (gst_value_transform_fraction_double), (_gst_value_initialize):
6449         * testsuite/caps/Makefile.am:
6450         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6451         (check_from_fraction_convert), (transform_test), (main):
6452         Added transform functions between double and fraction.
6453         Added testcase to verify transforms
6454
6455 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6456
6457         * win32/GStreamer.vcproj:
6458           rename GStreamer-0.8.lib to libgstreamer.lib
6459
6460 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6461
6462         * win32/gstelements.vcproj:
6463         * win32/gstoptimalscheduler.vcproj:
6464           fixes for the Release build
6465
6466 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6467
6468         * win32/config.h:
6469           update the version number
6470
6471 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6472
6473         * win32/GStreamer.vcproj:
6474           add gstinterface to the build
6475
6476 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6477
6478         * win32/gstreamer.def:
6479           add many definitions needed by plugins,
6480           GST_CAT_DEFAULT only available in the Debug build ?
6481
6482 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6483
6484         * gst/gstelement.c: (gst_element_set_eos_recursive):
6485           various whitespace fixes.
6486           doc fix, fixes #148497
6487
6488 2004-07-25  Benjamin Otte  <otte@gnome.org>
6489
6490         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6491           don't delay links on the sink elements, it causes unnegotiated
6492           links.
6493         * gst/elements/gsttypefindelement.c:
6494         (gst_type_find_element_base_init):
6495           add our padtemplates, we indeed do have some.
6496         * gst/elements/gsttypefindelement.c:
6497         (gst_type_find_element_handle_event),
6498         (gst_type_find_element_chain):
6499           don't push data when typefinding failed.
6500         * gst/gstpad.c: (gst_pad_link_fixate):
6501           check that no fixate function returns empty caps.
6502         * gst/gstpad.c: (gst_pad_push):
6503           check that the link is negotiated before data gets pushed.
6504         * tools/gst-register.c: (main):
6505           don't assert (fixes #148283)
6506
6507 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6508
6509         * docs/gst/gstreamer-sections.txt:
6510         * docs/gst/tmpl/gstconfig.sgml:
6511           add GST_PLUGIN_EXPORT definition
6512
6513 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6514
6515         * gst/gstplugin.h:
6516         * gst/gstconfig.h.in:
6517         * win32/gstconfig.h:
6518         * win32/gstelements.def:
6519         * win32/gstelements.vcproj:
6520         * win32/gstoptimalscheduler.def:
6521         * win32/gstoptimalscheduler.vcproj:
6522         * win32/gstspider.def:
6523         * win32/gstspider.vcproj:
6524           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6525
6526 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6527
6528         * docs/gst/gstreamer-sections.txt:
6529           remove GST_CAT_DEFAULT because the type has changed
6530
6531 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6532
6533         * win32/gstbytestream.vcproj:
6534         * win32/gstelements.vcproj:
6535         * win32/gst-inspect.vcproj:
6536         * win32/gst-launch.vcproj:
6537         * win32/gstoptimalscheduler.vcproj:
6538         * win32/GStreamer.vcproj:
6539         * win32/gst-register.vcproj:
6540         * win32/gstspider.vcproj:
6541         * win32/msvc71.sln:
6542           Copy the files where needed after building, The testsuite will be
6543           built separately
6544
6545 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6546
6547         * win32/config.h:
6548         * win32/README.txt:
6549         * docs/manual/win32.xml:
6550         Fixed the plugin and GStreamer location
6551
6552 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6553
6554         * win32/gstreamer.def:
6555         More exports for the plugins
6556
6557 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6558
6559         * gst/gstinfo.h:
6560         Marc was right, we need to export literally GST_CAT_DEFAULT
6561
6562 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6563
6564         * win32/config.h:
6565         NLS crashes in gettext, disabled until this is solved
6566
6567 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6568
6569         * win32/gst-inspect.vcproj:
6570         * win32/gst-launch.vcproj:
6571         Should use NLS when available
6572
6573 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6574
6575         * gst/registries/gstxmlregistry.c:
6576         removing the file doesn't seem to be a good idea on Linux
6577
6578 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6579
6580         * gst/registries/gstxmlregistry.c:
6581         Remove the registry before renaming the tempfile (needed for Windows)
6582
6583 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6584
6585         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6586         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6587         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6588         * gst/elements/gstmultifilesrc.h:
6589         Added newmedia property so it generates newmedia events between each
6590         file when property is set, as well as fixed eos handling
6591
6592 2004-07-22  David Schleef  <ds@schleef.org>
6593
6594         * gst/gststructure.c: (gst_structure_id_empty_new),
6595         (gst_structure_empty_new):  Set type field correctly.
6596         * gst/gststructure.h: Check type field correctly.
6597         * testsuite/caps/Makefile.am:
6598         * testsuite/caps/structure.c: (test1), (main): Add a very small
6599         test for structures.
6600
6601 2004-07-22  David Schleef  <ds@schleef.org>
6602
6603         * docs/random/ds/0.9-suggested-changes: more comments
6604         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6605
6606 2004-07-22  Benjamin Otte  <otte@gnome.org>
6607
6608         * gst/gstelementfactory.c: (gst_element_register):
6609           set the factory in the class struct, so gst_element_get_factory
6610           actually works
6611         * gst/parse/grammar.y:
6612           set element to playing when it gets unlocked as we can't rely on the
6613           bin state - all elements in the bin state might still be locked in
6614           NULL)
6615
6616 2004-07-22  Benjamin Otte  <otte@gnome.org>
6617
6618         * gst/gstelement.c: (gst_element_set_state_func):
6619           make this a static function
6620
6621 2004-07-22  Wim Taymans  <wim@fluendo.com>
6622
6623         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6624         (gst_opt_scheduler_pad_link):
6625         fix 147894-2 and the group_link problem.
6626
6627 2004-07-22  Wim Taymans  <wim@fluendo.com>
6628
6629         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6630         (handoff_identity), (main):
6631         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6632         (handoff_identity), (main):
6633         * testsuite/schedulers/Makefile.am:
6634         * testsuite/schedulers/group_link.c: (main):
6635         Show bug in scheduler when linking chain and loop based element 
6636         where the chain based element was not yet in a group.
6637
6638 2004-07-21  Benjamin Otte  <otte@gnome.org>
6639
6640         * gst/.cvsignore:
6641         * gst/autoplug/.cvsignore:
6642         * gst/elements/.cvsignore:
6643         * gst/indexers/.cvsignore:
6644         * libs/gst/bytestream/.cvsignore:
6645         * libs/gst/control/.cvsignore:
6646         * libs/gst/getbits/.cvsignore:
6647         * testsuite/states/.cvsignore:
6648         * testsuite/threads/.cvsignore:
6649           keep this up to date, since I seem to be the only one who cares
6650           about not missing files on commits (editor's note: no you don't,
6651           but feel free to change them at the time you add stuff instead
6652           of later on)
6653
6654 2004-07-21  Benjamin Otte  <otte@gnome.org>
6655
6656         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6657         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6658         (gst_bin_child_state_change_func), (set_kid_state_func),
6659         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6660           make state changes work correctly and reentrant (so removing
6661           elements from bins during state changes of bins doesn't cause
6662           segfaults or even wrong states)
6663           add debugging category and debugging output to print children states
6664         * gst/gstbin.c: (gst_bin_dispose): 
6665           add some assertion checks
6666         * gst/gstbin.h:
6667         * gst/gstbin.c: (gst_bin_sync_children_state):
6668           deprecate this function - it just does gst_bin_set_state (bin,
6669           GST_STATE (bin)) 
6670         * testsuite/threads/queue.c: (main):
6671           don't use gst_bin_sync_children_state anymore
6672         * testsuite/states/Makefile.am:
6673         * testsuite/states/bin.c:
6674           test that the state changes of bins work as expected
6675         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6676           some adjustments to change states correctly, too
6677         * gst/gstthread.c: (gst_thread_change_state):
6678           don't enable/disable "threadsafe" properties, they're unused and
6679           cause random segfaults
6680         * testsuite/threads/Makefile.am:
6681           the queue check randomly passes now, ignore it
6682
6683 2004-07-21  Benjamin Otte  <otte@gnome.org>
6684
6685         * gst/gstpad.c:
6686           check if data is NULL before outputting debug info. (fixes #145100)
6687
6688 2004-07-21  Benjamin Otte  <otte@gnome.org>
6689
6690         * gst/schedulers/entryscheduler.c:
6691         (gst_entry_scheduler_loop_wrapper),
6692         (gst_entry_scheduler_chain_wrapper),
6693         (gst_entry_scheduler_get_wrapper):
6694           reset the state when the cothread starts, so we don't get assertion
6695           failures on restarting of cothreads
6696
6697 2004-07-20  Benjamin Otte  <otte@gnome.org>
6698
6699         * gst/gstelement.c: (gst_element_link_pads_filtered):
6700           use correct sinkpad, if only sinkpad is specified, but not srcpad
6701           (fixes #147889)
6702         * gst/gstelement.c: (gst_element_set_state_func),
6703         (gst_element_change_state): ref/unref the element, signal handlers
6704         could get rid of the element otherwise
6705
6706 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6707
6708         * docs/random/ds/0.9-suggested-changes:
6709           Make note about renaming fixed-list to array.
6710         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6711         (_gst_value_initialize):
6712           Add array intersections.
6713         * testsuite/caps/intersect2.c: (main):
6714           Add test for array intersections.
6715
6716 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6717
6718         * configure.ac: back to cvs
6719
6720 === release 0.8.4 ===
6721
6722 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6723
6724         * configure.ac:
6725           releasing 0.8.4, "Paella"
6726           bump libtool versioning
6727
6728 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6729
6730         * po/LINGUAS:
6731         * po/ca.po:
6732           adding Catalan translation (Jordi Mallach)
6733
6734 2004-07-20  Wim Taymans  <wim@fluendo.com>
6735
6736         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6737         (handoff_identity), (main):
6738         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6739         (handoff_identity), (main):
6740         * testsuite/schedulers/Makefile.am:
6741         Added failing testcase for variant of #147894
6742
6743 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6744
6745         patch by: David Moore
6746
6747         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6748         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
6749         (group_migrate_connected):
6750         * testsuite/schedulers/Makefile.am:
6751           fix for #142813 (Deadlock in optimal scheduler)
6752
6753 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6754
6755         patch by: Wim Taymans
6756
6757         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6758         (gst_opt_scheduler_schedule_run_queue),
6759         (gst_opt_scheduler_get_wrapper), (get_group),
6760         (group_migrate_connected):
6761         * testsuite/schedulers/Makefile.am:
6762           fix for #147819 (Add some checks in the opt scheduler)
6763
6764 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6765
6766         patch by: Benjamin Otte
6767
6768         * gst/gstelementfactory.c: (__gst_element_details_set):
6769           fix for #147929: running gst-register in non-utf8 locale can cause
6770           invalid registry
6771
6772 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6773
6774         patch by: Wim Taymans
6775
6776         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
6777         (group_has_element), (element_get_reachables_func),
6778         (group_migrate_connected):
6779           fix for #147894 (opt scheduler decoupled elements mismanagement)
6780         * testsuite/schedulers/Makefile.am:
6781           testsuite app now passes
6782
6783 2004-07-19  Wim Taymans  <wim@fluendo.com>
6784
6785         * testsuite/schedulers/147819.c: (handoff_identity1),
6786         (handoff_identity2), (main):
6787         * testsuite/schedulers/Makefile.am:
6788         Added testcase for bug 147819
6789
6790 2004-07-19  Wim Taymans  <wim@fluendo.com>
6791
6792         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6793         (handoff_identity), (main):
6794         * testsuite/schedulers/Makefile.am:
6795         Added testcase for bug 147894
6796
6797 2004-07-16  Wim Taymans  <wim@fluendo.com>
6798
6799         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
6800         * testsuite/schedulers/142183.c: (handoff_identity), (main):
6801         * testsuite/schedulers/Makefile.am:
6802         Added testsuite for bug 142183 in its two incarnations. Refcount
6803         is not increased for scheduled elements and threadsafe properties
6804         mutexes are not properly unlocked.
6805
6806 2004-07-16  Wim Taymans  <wim@fluendo.com>
6807
6808         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
6809         (create_chain), (destroy_chain), (create_group), (destroy_group),
6810         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
6811         (group_dec_link), (gst_opt_scheduler_pad_link),
6812         (group_inc_links_for_element), (group_migrate_connected):
6813         Call group_inc_link with the proper src->sink ordering -- 
6814         break this, and we break sort_chain. patch from wingo for bug
6815         147713.
6816         Partially revert patch 1.89. When adding a loop based element to 
6817         the scheduler, the links to other groups are automatically followed
6818         and incremented. This should not happen because the bin will call
6819         pad_link explicitly for those connection, resulting in them counted 
6820         twice. Results in assertion failure on pipeline cleanup.
6821
6822 2004-07-16  Wim Taymans  <wim@fluendo.com>
6823
6824         * testsuite/schedulers/143777-2.c: (main):
6825         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
6826         (main):
6827         * testsuite/schedulers/Makefile.am:
6828         Added cleanup code to testcase 143777-2.
6829         Added testcase to show bug 147713, does not really show the
6830         deadlock as I can't figure out how to trigger it, but it does
6831         demonstrate bad ordering in the scheduler.
6832
6833 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6834
6835         * gst/gstvalue.c: (gst_value_deserialize_fraction):
6836           change strndup to g_strndup.  Fixes #147707
6837
6838 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6839
6840         * po/af.po:
6841         * po/az.po:
6842         * po/cs.po:
6843         * po/en_GB.po:
6844         * po/fr.po:
6845         * po/nl.po:
6846         * po/sr.po:
6847         * po/sv.po:
6848         * po/tr.po:
6849         * po/uk.po:
6850           updated translations
6851
6852 2004-07-16  Benjamin Otte  <otte@gnome.org>
6853
6854         * gst/gstvalue.c: (gst_greatest_common_divisor):
6855           use ints and return ints, fractions only use ints, too, so this
6856           avoids accidently casting multiplications to unsigned
6857         (gst_value_lcopy_fraction): it's ints, not uint32
6858         (gst_value_set_fraction): disallow minint, multiplying and negation
6859           are broken with it
6860         (gst_value_fraction_multiply): fix to make large numbers work and get
6861         rid of the assumption that the multiplication of two ints fits an
6862         int64 - dunno if that's true for all systems
6863         * testsuite/caps/Makefile.am:
6864         * testsuite/caps/fraction-multiply-and-zero.c:
6865         (check_multiplication), (check_equal), (zero_test), (main):
6866           add tests for all the stuff above
6867         * testsuite/caps/value_compare.c: (test1):
6868           fix comment
6869         * tests/.cvsignore:
6870         * testsuite/caps/.cvsignore:
6871         * testsuite/debug/.cvsignore:
6872         * testsuite/dlopen/.cvsignore:
6873         * testsuite/states/.cvsignore:
6874           get up to date
6875
6876 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6877
6878         * docs/manual/bins-api.xml:
6879         * docs/manual/factories.xml:
6880         * docs/manual/helloworld.xml:
6881         * docs/manual/links-api.xml: 
6882           fixes for out of date info, incorrect info and grammar
6883
6884 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6885
6886         * docs/manual/pads.xml:
6887         * docs/manual/pads-api.xml: grammar fix
6888
6889 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6890
6891         * docs/manual/pads-api.xml: typo + grammar fix
6892
6893 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6894
6895         * docs/gst/gstreamer-sections.txt:
6896           add new symbols
6897         * docs/gst/tmpl/gstelement.sgml:
6898         * docs/gst/tmpl/gstpad.sgml:
6899         * docs/gst/tmpl/gsttypes.sgml:
6900         * docs/gst/tmpl/gstvalue.sgml:
6901           update docs
6902         * gst/gststructure.c: (gst_structure_set_valist),
6903         (gst_structure_from_abbr), (gst_structure_to_abbr):
6904         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
6905         (gst_greatest_common_divisor), (gst_value_init_fraction),
6906         (gst_value_copy_fraction), (gst_value_collect_fraction),
6907         (gst_value_lcopy_fraction), (gst_value_set_fraction),
6908         (gst_value_get_fraction_numerator),
6909         (gst_value_get_fraction_denominator),
6910         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
6911         (gst_value_deserialize_fraction),
6912         (gst_value_transform_fraction_string),
6913         (gst_value_transform_string_fraction),
6914         (gst_value_compare_fraction), (_gst_value_initialize):
6915         * gst/gstvalue.h:
6916           adding GstFraction GValue type, get/set, and multiply
6917         * testsuite/caps/Makefile.am:
6918         * testsuite/caps/fraction.c: (test), (main):
6919         * testsuite/caps/string-conversions.c: (main):
6920         * testsuite/caps/value_compare.c: (test1), (main):
6921           add regression tests for GstFraction
6922
6923 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6924         
6925         * docs/manual/init-api.xml: Grammar fix
6926
6927 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6928
6929         * docs/manual/states.xml: Fix inconsistent information
6930
6931 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6932
6933         * gst/gstelement.c: (gst_element_set_state):
6934         * gst/gstpad.c: (gst_pad_try_set_caps):
6935         * gst/gststructure.c:
6936         * gst/gstthread.c: (gst_thread_child_state_change):
6937         * gst/gstvalue.c: (gst_value_compare_double):
6938         * gst/gstvalue.h:
6939         * testsuite/parse/parse1.c: (main):
6940           debugging additions and style cleanups
6941
6942 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6943
6944         * docs/manual/states.xml: Grammar fix
6945
6946 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6947
6948         * docs/manual/pads.xml: Grammar fix
6949
6950 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6951
6952         * docs/manual/elements.xml: Fixed image reference
6953
6954 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6955
6956         * docs/manual/goals.xml: Grammar fix
6957
6958 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6959
6960         * docs/manual/motivation.xml:
6961         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
6962
6963 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6964
6965         * docs/manual/motivation.xml: Fix spelling
6966
6967 2004-07-15  Benjamin Otte  <otte@gnome.org>
6968
6969         * gst/gstelement.h: 
6970           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
6971           strings.
6972         * gst/gstelement.c (gst_element_class_init):
6973           GError's are boxed, not objects
6974         * gst/gstmarshal.list:
6975           update list for the fixed error signal
6976
6977 2004-07-14  Andy Wingo  <wingo@pobox.com>
6978
6979         * gst/gsttag.c: Add a tag merge func for pointers. The header was
6980         there all along, but the function wasn't. (guile-gstreamer's build
6981         system uses the address of the function -- I wasn't actually
6982         trying to use this.)
6983
6984 2004-07-14  Andy Wingo  <wingo@pobox.com>
6985
6986         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
6987         as gst_pad_proxy_pad_link) just link to every other pad when they
6988         are called. In the case where the graph has cycles, this will mean
6989         that a call to try_set_caps will recurse. Allow this recursion
6990         and return OK, while we wait for the first try_set_caps to give a
6991         proper return value.
6992         (gst_pad_link_call_link_functions): Since this function is the
6993         only one to set the NEGOTIATING flag on a pad, if the flag is set
6994         it means that the link functions have indirectly recursed. If this
6995         happens, error out to avoid infinite recursion and an eventual
6996         SEGV.
6997         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
6998         (gst_pad_proxy_getcaps): Intersect the result with the template
6999         caps to ensure that the return value is valid.
7000
7001 2004-07-14  Andy Wingo  <wingo@pobox.com>
7002
7003         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7004         one refcount, the calling function is the owner of the buffer.
7005
7006 2004-07-14  Wim Taymans  <wim@fluendo.com>
7007
7008         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7009         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7010         Fix stupid warning when an element is to be migrated but
7011         is already migrated.
7012
7013 2004-07-14  Wim Taymans  <wim@fluendo.com>
7014
7015         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7016         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7017         Make sure that a single non-loop-based element does not 
7018         end up in a group. This fixes the testsuite again.
7019
7020 2004-07-14  Wim Taymans  <wim@fluendo.com>
7021
7022         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7023         (add_to_group), (merge_groups), (schedule_group),
7024         (gst_opt_scheduler_get_wrapper), (group_elements),
7025         (group_dec_link), (gst_opt_scheduler_pad_link),
7026         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7027         (gst_opt_scheduler_iterate):
7028         move isolated groups to a new chain.
7029         Emit a warning instead of segfaulting in some error cases.
7030         Fix a bug where the link count between groups was not calculated 
7031         correctly. Fixes #144510.
7032
7033 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7034         * gst/elements/gstfilesrc.c:
7035           Binary files support under Windows now OK
7036       
7037 2004-07-13  Benjamin Otte  <otte@gnome.org>
7038
7039           compatibility fixes for Solaris 8/gcc 2.95
7040         * configure.ac:
7041           include libintl libs in LDFLAGS
7042         * gstvalue.c (gst_value_deserialize_buffer):
7043           cast isxdigit stuff to int to silence compiler warning
7044
7045 2004-07-12  Benjamin Otte  <otte@gnome.org>
7046
7047         * gst/gsttypes.h:
7048           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7049           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7050           just causes support madness
7051         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7052           make it work without this
7053         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7054         (gst_file_index_commit):
7055           glib IO channels don't want binary mode
7056         * testsuite/bytestream/filepadsink.c: (main):
7057         * testsuite/bytestream/test1.c: (read_param_file):
7058           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7059
7060 2004-07-12  Benjamin Otte  <otte@gnome.org>
7061
7062         * gst/gstelement.c: (gst_element_class_init),
7063         (gst_element_set_state), (gst_element_set_state_func):
7064           virutalize gst_element_set_state, use set_state member in class
7065           struct that was already added in 0.7 for this.
7066         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7067         (gst_bin_change_state):
7068           make gst_bin_foreach works similar to other foreach functions, plug
7069           memleaks in it. Make functions using it work with the new approach.
7070           Document gst_bin_foreach, so it can be exported if we want to
7071         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7072           use virtualized set_state to make set_state on bins set the state of
7073           all its children.
7074
7075 2004-07-12  Benjamin Otte  <otte@gnome.org>
7076
7077         * configure.ac:
7078           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7079           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7080         * gst/gstpad.c: (gst_pad_alloc_buffer):
7081           allow buffer_alloc functions to return NULL and allocate a normal
7082           buffer in that case
7083
7084 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7085         * gst/elements/gstfilesink.c:
7086         * gst/elements/gstfilesrc.c:
7087         * gst/indexers/gstfileindex.c:
7088         * gst/gsttypes.h:
7089         * testsuite/bytestream/filepadsink.c:
7090         * testsuite/bytestream/test1.c:
7091           Handle binary files under Windows
7092
7093 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7094         * docs/manual/win32.xml:
7095         * win32/config.h:
7096         * win32/gst-register.vcproj:
7097         * win32/gstreamer.def:
7098           Update to another gettext public build
7099
7100 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7101         * gst/gstplugin.c:
7102           Fix an impossible C syntax
7103         * win32/config.h:
7104           Disable i18n under Windows for the moment
7105         * win32/gst-register.vcproj:
7106           Use this configuration
7107
7108 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7109         * docs/manual/quotes.xml:
7110           Keep the quotes file alive
7111         * docs/random/ds/0.9-suggested-changes:
7112           Add the suggestion of including a 'rowstride' as part of video
7113           format caps
7114
7115 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7116
7117         * gst/gstelement.c: (gst_element_set_state),
7118         (gst_element_change_state):
7119           d'oh.  Set PENDING state correctly before forcing bin to change.
7120         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7121         (gst_structure_parse_fixed_list):
7122         * gst/schedulers/gstoptimalscheduler.c:
7123         (gst_opt_scheduler_state_transition):
7124         * testsuite/states/parent.c: (main):
7125           remove comment now that it's fixed.
7126
7127 2004-07-11  Benjamin Otte  <otte@gnome.org>
7128
7129         * gst/gstclock.h:
7130           GST_SECOND shouldn't cause a conversion to unsigned.
7131         * testsuite/clock/.cvsignore:
7132         * testsuite/clock/Makefile.am:
7133         * testsuite/clock/signedness.c: (main):
7134           make sure it never will again
7135
7136 2004-07-11  Andy Wingo  <wingo@pobox.com>
7137
7138         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7139         whose state is higher than the bin state, raise the bin state to
7140         ensure that bin state := highest child state.
7141         
7142 2004-07-11  Andy Wingo  <wingo@pobox.com>
7143
7144         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7145         procedure on the children of a bin. Assumes that the procedure can
7146         change the set of children.
7147         (set_kid_state_func): New static function.
7148         (gst_bin_change_state): Use gst_bin_foreach to call
7149         set_kid_state_func. Fixes a bug: if a child had a state-change
7150         handler that removes it from the bin, there would be a segfault.
7151         Hopefully it should also work in the case where the state-change
7152         handler on one child adds or removes other children. In any case,
7153         fixes should go to gst_bin_foreach.
7154
7155 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7156
7157         * gst/gstelement.c: (gst_element_set_state):
7158           compatibility fix for latest plugins release.  Change loop back
7159           to while {}
7160
7161 2004-07-09  Wim Taymans  <wim@fluendo.com>
7162
7163         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7164         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7165         (gst_thread_main_loop):
7166         Since remove is virtual in GstBin we must not assume the 
7167         elements GList to have anothing useful.
7168         Add some more logging to GstThread and be a bit more paranoid
7169         when resetting the scheduler.
7170         Set the state of the bin to NULL before removing the children.
7171
7172 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7173
7174         * testsuite/threads/Makefile.am:
7175         * testsuite/threads/threadg.c:
7176           added test to check if problem when removing all elements from a
7177           GstThread before setting GstThread state to NULL
7178
7179 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7180
7181         * docs/gst/tmpl/gstelement.sgml:
7182         * docs/gst/tmpl/gsttypes.sgml:
7183         * gst/gstbin.c: (gst_bin_change_state):
7184         * gst/gstelement.c: (gst_element_set_state),
7185         (gst_element_change_state):
7186           rework so that for bins we try to set the state on all children
7187           as well even if the bin is in the correct state already.
7188           change while to do so at least one iteration is done.
7189           For regular elements, we fall back to the previous behaviour for
7190           now since we first need a new plugins release.
7191         * testsuite/states/parent.c: (main):
7192           test for this case
7193           Fixes #123774
7194
7195 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7196
7197         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7198         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7199         (gst_queue_release_locks), (gst_queue_change_state),
7200         (gst_queue_set_property):
7201           add proper lock debugging.  Change dispose to finalize, since
7202           we're freeing mutexes and other stuff which should happen only once.
7203
7204 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7205
7206         * docs/gst/tmpl/gstelement.sgml:
7207         * docs/gst/tmpl/gstplugin.sgml:
7208         * docs/gst/tmpl/gsttypes.sgml:
7209         * docs/pwg/building-state.xml:
7210         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7211         * gst/gstelement.c: (gst_element_change_state):
7212         * gst/gstthread.c: (gst_thread_change_state):
7213           catch wrong state changes in element base class.
7214
7215 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7216
7217         * gst/gstinfo.h:
7218           clean up layout a little.
7219
7220 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7221
7222         * configure.ac:
7223         * testsuite/Makefile.am:
7224         * testsuite/states/Makefile.am:
7225         * testsuite/states/parent.c: (main):
7226           re-enable states testsuite dir.  Add test for state changes and
7227           parent behaviour
7228
7229 2004-07-09  Wim Taymans  <wim@fluendo.com>
7230
7231         * gst/schedulers/gstoptimalscheduler.c:
7232         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7233         (element_get_reachables_func), (element_get_reachables),
7234         (debug_element), (rechain_group), (group_migrate_connected),
7235         (gst_opt_scheduler_pad_unlink):
7236         Do not try to migrate decoupled elements to a new group since
7237         they are not added to groups.
7238
7239 2004-07-08  Benjamin Otte  <otte@gnome.org>
7240
7241         * gst/gstelement.c: (gst_element_error_func):
7242           make reentrant (= allow removing elements in error handler)
7243
7244 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7245
7246         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7247         (gst_pad_send_event), (gst_pad_call_chain_function):
7248           events sent to elements below PAUSED cannot be handled, so
7249           don't try to
7250
7251 2004-07-08  Wim Taymans  <wim@fluendo.com>
7252
7253         * gst/schedulers/gstoptimalscheduler.c:
7254         (chain_recursively_migrate_group), (create_group),
7255         (schedule_group), (gst_opt_scheduler_pad_link),
7256         (group_elements_set_visited), (element_get_reachables_func),
7257         (element_get_reachables), (group_can_reach_group), (debug_element),
7258         (rechain_group), (group_migrate_connected),
7259         (gst_opt_scheduler_pad_unlink):
7260         * testsuite/schedulers/Makefile.am:
7261         Implemented group splitting and rechaining.
7262         Fixes 143777 and 143777-2 in the testsuite.
7263
7264 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7265
7266         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7267           extra debugging
7268         * gst/gstevent.h:
7269         * gst/gstinfo.c: (gst_debug_log_default):
7270           print time nicely.  add thread pointer until someone figures out
7271           a completely portable way of getting at thread id's.
7272         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7273         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7274         (gst_pad_call_chain_function):
7275           extra debugging
7276         * gst/schedulers/gstoptimalscheduler.c:
7277         (get_group_schedule_function), (loop_group_schedule_function),
7278         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7279         (pad_clear_queued), (gst_opt_scheduler_iterate):
7280           rename BUFPEN and friends to DATAPEN since that's what they are.
7281
7282 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7283
7284         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7285         * gst/gstbuffer.h:
7286         * gst/gstpad.c:
7287           cleanups and debugging
7288
7289 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7290
7291         * configure.ac:
7292         * gst/gstvalue.c: (gst_value_compare_enum),
7293         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7294         (gst_value_can_compare), (gst_value_compare):
7295         * testsuite/Makefile.am:
7296         * testsuite/enumcaps/Makefile.am:
7297         * testsuite/enumcaps/enumcaps.c:
7298           Fix enum serialization, deserialization, comparison in caps, add
7299           a test to ensure that this continues working in the future.
7300
7301 2004-07-06  David Schleef  <ds@schleef.org>
7302
7303         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7304         Fix memleak.
7305
7306 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7307
7308         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7309         * gst/gstplugin.h:
7310         * gst/registries/gstxmlregistry.c:
7311         (plugin_times_older_than_recurse), (plugin_times_older_than),
7312         (gst_xml_registry_parse_padtemplate):
7313           only rebuild registry when actual plugins have a newer time than
7314           the registry.  Fixes #145520
7315
7316 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7317
7318         * docs/manual/manual.xml:
7319         * docs/manual/win32.xml:
7320           add chapter on win32 building.  fixes #142422
7321
7322 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7323
7324         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7325
7326         * gst/autoplug/gstspider.c: (gst_spider_init),
7327         (gst_spider_dispose):
7328           fix spider memleaks.  fixes #137863
7329
7330 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7331
7332         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7333
7334         * gst/schedulers/gstoptimalscheduler.c:
7335         (gst_opt_scheduler_pad_unlink):
7336           fix SIGBUS error, fixes #145338
7337
7338 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7339
7340         * gst/gstobject.c: (gst_object_replace):
7341         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7342         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7343           clean up clock lifecycle.  Fixes #109831
7344
7345 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7346
7347         * po/LINGUAS:
7348         * po/cs.po:
7349           added Czech translation (Miloslav Trmac)
7350
7351 2004-07-04  David Schleef  <ds@schleef.org>
7352
7353         * tools/Makefile.am:
7354         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7355
7356 2004-07-04  David Schleef  <ds@schleef.org>
7357
7358         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7359
7360 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7361
7362         * gst/gstbin.c: (gst_bin_restore_thyself):
7363           chain to parent restore so the bins get restored correctly
7364           in the editor
7365
7366 2004-07-03  David Schleef  <ds@schleef.org>
7367
7368         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7369         Actually do something in these functions, like before the big
7370         caps change.  (bug #145137)
7371
7372 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7373
7374         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7375         (gst_element_get_compatible_pad_filtered):
7376         * gst/gstthread.c: (gst_thread_main_loop):
7377           more debugging
7378
7379 2004-07-02  David Schleef  <ds@schleef.org>
7380
7381         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7382         * gst/gstobject.h:
7383         * gst/gstparse.h:
7384         * gst/gsttrace.h:
7385         * gst/gstxml.h:
7386
7387 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7388
7389         * gst/gstpad.c: (gst_pad_check_schedulers),
7390         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7391         (gst_pad_link_prepare):
7392           revert until testsuite is fixed
7393
7394 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7395
7396         * testsuite/Makefile.am:
7397         * testsuite/caps/filtercaps.c: (main):
7398         * testsuite/clock/clock1.c: (main):
7399         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7400           fix some more tests
7401
7402 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7403
7404         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7405         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7406         * testsuite/cleanup/cleanup4.c: (main):
7407           fix testsuite
7408
7409 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7410
7411         * libs/gst/control/control.c:
7412         * libs/gst/control/dparam.c:
7413         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7414         * libs/gst/control/dparammanager.c:
7415         * libs/gst/control/dparammanager.h:
7416         * testsuite/dynparams/Makefile.am:
7417         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7418         (gst_dptest_change_state), (gst_dptest_chain), (main):
7419           fix testcase for dparams
7420           add debugging category
7421
7422 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7423
7424         * testsuite/Rules:
7425           change path
7426
7427 2004-07-02  Benjamin Otte  <otte@gnome.org>
7428
7429         * tests/.cvsignore:
7430         * tests/Makefile.am:
7431         * tests/mass_elements.c: (gst_get_current_time), (main):
7432           add simple benchmark to test various speeds of fakesrc ! identity !
7433           identity ! ... ! fakesink.
7434           Usage: mass_elements [num_identities] [num_buffers]
7435           If not specified they default to 1000.
7436
7437 2004-07-02  Benjamin Otte  <otte@gnome.org>
7438
7439         * gst/gstpad.c: (gst_pad_check_schedulers),
7440         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7441         (gst_pad_link_prepare):
7442           check that pads that get linked belong to the same manager. The old
7443           code allowed linking elements before putting them into bins, so it
7444           worked to link them and then put them in different threads, which
7445           lead to weird behaviour.
7446           Since this effectively disallows linking elements before putting
7447           them in a bin, some applications might not work after this and error
7448           out. If these applications are too critical, we might need to revert
7449           that patch. Please test this before the next release...
7450
7451 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7452
7453         * gst/gstpad.c: (gst_pad_get_caps):
7454           throw an error if the getcaps function does not return a subset of
7455           the template caps.
7456         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7457           make disconts without position info an error in debugging
7458         * tests/spidey_bench.c: (handoff), (main):
7459           don't count first try when averaging
7460
7461 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7462
7463         * gst/gstplugin.c: (gst_plugin_load_file):
7464           figure out problem with dynamic test
7465
7466 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7467
7468         * docs/gst/Makefile.am:
7469           fix docs build
7470
7471 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7472
7473         * po/POTFILES.in:
7474         * po/af.po:
7475         * po/az.po:
7476         * po/en_GB.po:
7477         * po/fr.po:
7478         * po/nl.po:
7479         * po/sr.po:
7480         * po/sv.po:
7481         * po/tr.po:
7482         * po/uk.po:
7483         * tools/gst-register.c: (plugin_added_func), (main):
7484           i18n-ize -register, fix plural
7485
7486 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7487
7488         * gst/elements/gstidentity.c: (gst_identity_class_init),
7489         (gst_identity_init), (gst_identity_chain),
7490         (gst_identity_set_property), (gst_identity_get_property):
7491         * gst/elements/gstidentity.h:
7492           check for perfect stream
7493
7494 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7495
7496         * gst/elements/gstidentity.c: (gst_identity_chain):
7497           print offset_end
7498
7499 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7500
7501         * docs/gst/Makefile.am:
7502         * docs/gst/gstreamer-docs.sgml:
7503           doc fixes
7504
7505 2004-06-24  David Schleef  <ds@schleef.org>
7506
7507         * autogen.sh:  Remove call to env, since the buildbot isn't
7508         broken anymore.
7509
7510 2004-06-24  Wim Taymans  <wim@fluendo.com>
7511
7512         * gst/elements/Makefile.am:
7513         * gst/elements/gstelements.c:
7514         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7515         (gst_multifdsink_class_init), (gst_multifdsink_init),
7516         (gst_multifdsink_add), (gst_multifdsink_remove),
7517         (gst_multifdsink_clear), (gst_multifdsink_chain),
7518         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7519         * gst/elements/gstmultifdsink.h:
7520         Added an element that writes to multiple filedescriptors at once.
7521
7522 2004-06-24  Benjamin Otte  <otte@gnome.org>
7523
7524         * gst/parse/grammar.y:
7525           don't try to link elements before they have been added to bins
7526
7527 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7528
7529         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7530         (gst_file_pad_get_length):
7531         * libs/gst/bytestream/filepad.h:
7532           add 2 new functions
7533
7534 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7535
7536         * docs/gst/gstreamer-sections.txt:
7537         remove from docs, the define that Benjamin removed from gstelement.h
7538
7539 2004-06-22  Benjamin Otte  <otte@gnome.org>
7540
7541         * gst/gstelement.h:
7542           remove define that referenced a nonexisting GstElement struct member
7543
7544 2004-06-20  Benjamin Otte  <otte@gnome.org>
7545
7546         * gst/gstdata.c: (gst_data_is_writable):
7547           whoops, return values were wrong, so writable data was marked as
7548           non-writable and vice versa. (fixes #143953, spotted by Francis
7549           Labonte)
7550           Shows how rarely we need to copy data ;)
7551
7552 2004-06-20  Benjamin Otte  <otte@gnome.org>
7553
7554         * testsuite/schedulers/.cvsignore:
7555         * testsuite/schedulers/Makefile.am:
7556         * testsuite/schedulers/143777-2.c: (main):
7557           add test for opt breakage in bug #143777
7558
7559 2004-06-20  Benjamin Otte  <otte@gnome.org>
7560
7561         * gst/gstpad.c: (gst_pad_call_chain_function):
7562           check for if we were unlinked while inside the chainfunction (fixes
7563           entrygthread having issues with #143777)
7564         * testsuite/schedulers/143777.c: (main):
7565         * testsuite/schedulers/Makefile.am:
7566           add a test for that fix
7567
7568 2004-06-20  Benjamin Otte  <otte@gnome.org>
7569
7570         * gst/gstvalue.c: (gst_value_set_int_range):
7571           test that start is smaller then end
7572         * libs/gst/bytestream/Makefile.am:
7573         * libs/gst/bytestream/filepad.c: 
7574         * libs/gst/bytestream/filepad.h:
7575           add GstFilePad - a pad that behaves like a FILE*
7576         * testsuite/bytestream/.cvsignore:
7577         * testsuite/bytestream/Makefile.am:
7578         * testsuite/bytestream/filepadsink.c: 
7579           test for the GstFilePad
7580
7581 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7582
7583         * gst/elements/gstidentity.c: (gst_identity_class_init),
7584         (gst_identity_init), (gst_identity_set_clock),
7585         (gst_identity_chain), (gst_identity_set_property),
7586         (gst_identity_get_property):
7587         * gst/elements/gstidentity.h:
7588         * gst/gstclock.c: (gst_clock_id_wait):
7589           add a "sync" property to sync to the clock
7590
7591 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7592
7593         * gst/gstelementfactory.c: (gst_element_factory_create):
7594           make the freakin "elementfactory bla has no type" message more
7595           useful. So we actually can do something when someone shows up
7596           complaining about it.
7597
7598 2004-06-15  Johan Dahlin  <johan@gnome.org>
7599
7600         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7601         found. This matches the old behavior better. Thanks to Thomas for
7602         pointing out.
7603
7604 2004-06-14  David Schleef  <ds@schleef.org>
7605
7606         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7607         -fomit-frame-pointer.  Appears to generate correct code in
7608         other cases as well.
7609
7610 2004-06-14  Johan Dahlin  <johan@gnome.org>
7611
7612         * tools/gst-inspect.c (main): Add two new command line options: -a
7613         to print all elements and -n to print the name on each line. Also
7614         fix some error reporting.
7615         (main): Simplify, remove -n and always print names if -a is specified
7616
7617 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7618
7619         * win32/gstconfig.h:
7620         * win32/GSTreamer.vcproj:
7621         * win32/Makefile:
7622         * gst/gstconfig.h.in:
7623         * gst/gst.h:
7624         * gst/gstbin.h:
7625         * gst/gstelement.h:
7626         * gst/gstevent.h:
7627         * gst/gstobject.h:
7628         * gst/gstpad.h:
7629         * docs/gst/gstreamer-sections.txt:
7630         * docs/gst/tmpl/gstconfig.sgml:
7631           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7632
7633 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7634         * docs/gst/gstreamer-sections.txt:
7635         * docs/gst/tmpl/gstconfig.sgml:
7636         Add the GSTREAMER_EXPORT macro to the docs
7637
7638 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7639
7640         * tools/gst-compprep.c: (handle_xmlerror), (main):
7641         Add a check for the version that introduced SetStructuredError to fix
7642         the build on FC1
7643
7644 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7645
7646         * win32/msvc71.sln:
7647         * win32/testsuite/:
7648           prepare to compile the testsuite with MSVC
7649
7650 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7651
7652         * docs/manual/win32.xml:
7653           attempt to transform the Win32 README into an XML doc
7654
7655 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7656
7657         * gst/gst.c:
7658         * gst/gstbin.*:
7659         * gst/config.h.in:
7660         * gst/gstelement.*:
7661         * gst/gstevent.h:
7662         * gst/gstobject.*:
7663         * gst/gstpad.h:
7664         * tools/gst-register.c:
7665         * win32/gstreamer.def:
7666           extern symbols are now exported for the Windows DLL
7667
7668 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7669
7670         * gst/gstinfo.h:
7671           fix a problem to enable/disable DEBUG under MSVC
7672
7673 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7674
7675         * win32/:
7676           enable more debug code in DEBUG build
7677
7678 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7679
7680         * win32/config.h:
7681         * gst/gst-i18n-app.h:
7682           enable NLS under Windows
7683
7684 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7685         * tools/gst-compprep.c: (handle_xmlerror), (main):
7686           Make an error that baffled me a bit clearer
7687
7688 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7689
7690         * gst/gstqueue.c:
7691           don't use g_queue_get_length () because it's 2.4, use ->length
7692
7693 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7694
7695         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7696
7697         * tools/gst-inspect.c: (print_signal_info):
7698           don't free random data twice. (fixes #144185)
7699
7700 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7701
7702         * gst/gstqueue.c:
7703         * gst/gstqueue.h:
7704           fix removing from the wrong queue on event timeout
7705           fix disposing of the event queue by casting correctly
7706           add mutexes for handling the event queue
7707           someone was sleeping when fixing queue last time around :)
7708
7709 2004-06-10  Johan Dahlin  <johan@gnome.org>
7710
7711         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7712         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7713
7714 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7715
7716         * docs/random/gdp:
7717         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7718         * libs/gst/dataprotocol/dataprotocol.c:
7719         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7720         (gst_dp_buffer_from_header):
7721         * libs/gst/dataprotocol/dataprotocol.h:
7722         * libs/gst/dataprotocol/dp-private.h:
7723           rev version to 0.1, add buffer flags and copy them
7724
7725 2004-06-09  Johan Dahlin  <johan@gnome.org>
7726
7727         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
7728         the flags from the buffer we're copying.
7729
7730 2004-06-09  Wim Taymans  <wim@fluendo.com>
7731
7732         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
7733         * gst/elements/gstidentity.c: (gst_identity_init),
7734         (gst_identity_chain):
7735         Print more buffer info in fakesink.
7736         Make identity output similar to fakesink.
7737
7738 2004-06-07  Daniel Gazard  <dany42@free.fr>
7739
7740         reviewed by Benjamin Otte  <otte@gnome.org>
7741
7742         * configure.ac:
7743           fix cross compiling not working. (fixes #143741)
7744
7745 2004-06-07  Benjamin Otte  <otte@gnome.org>
7746
7747         * gst/gstelement.c: (gst_element_set_time_delay):
7748           add failure check
7749         * gst/gstinfo.h:
7750           put brackets around macro arguments of GST_TIME_ARGS, add note to
7751           move it to correct header in 0.9
7752
7753 2004-06-07  Benjamin Otte  <otte@gnome.org>
7754
7755         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
7756         (gst_file_index_load), (_file_index_id_save_entries),
7757         (gst_file_index_commit), (gst_file_index_add_association),
7758         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
7759         (gst_file_index_plugin_init):
7760           make debugging use a default category
7761
7762 2004-06-06  David Moore  <dcm@acm.org>
7763
7764         reviewed by Benjamin Otte  <otte@gnome.org>
7765
7766         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
7767         (gst_fdsrc_change_state):
7768           reset offset counter when going READY => PAUSED. (fixes #142903)
7769
7770 2004-06-06  ed@catmur.co.uk
7771
7772         reviewed by Benjamin Otte  <otte@gnome.org>
7773
7774         * gst/registries/gstxmlregistry.c:
7775         (gst_xml_registry_rebuild_recurse):
7776           don't rely on g_dir_open to figure out if a file is a directory, use
7777           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
7778           directories. (fixes #142850)
7779
7780 2004-06-06  Benjamin Otte  <otte@gnome.org>
7781
7782         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
7783           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
7784         * libs/gst/bytestream/adapter.c:
7785         * libs/gst/bytestream/adapter.h:
7786           fix copyright in header and typo in debugging category name
7787
7788 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7789
7790         * configure.ac:
7791           bump nano to cvs
7792
7793 === release 0.8.3 ===
7794
7795 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7796
7797         * configure.ac:
7798           update libtool versioning
7799           do a new release
7800         * docs/gst/tmpl/gstelement.sgml:
7801         * docs/gst/tmpl/gsttypes.sgml:
7802         * gst/gstinfo.c: (_gst_debug_init):
7803           put back GST_CAT_DATAFLOW to fix API breakage
7804
7805 2004-06-04  David Schleef  <ds@schleef.org>
7806
7807         * autogen.sh: Add a temporary 'env' to test buildbot problems.
7808
7809 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7810
7811         * configure.ac:
7812           bump nano to cvs
7813
7814 === release 0.8.2 ===
7815
7816 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7817
7818         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
7819           check GST_DEBUG environment variable which is parsed the same way
7820           as --gst-debug=
7821
7822 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7823
7824         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
7825                             gstmd5sink.c gstshaper.c gsttee.c
7826                             gsttypefindelement.c
7827         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
7828
7829           - removing trailing commas at end of enums
7830             it is correct C99 code but C90 compilers would complain
7831             (AIX, Forte, ...)
7832             ('should' fix #143290, at least partially)
7833
7834 2004-05-27  Wim Taymans  <wim@fluendo.com>
7835
7836         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
7837         (chain_group_set_enabled), (create_group), (add_to_group),
7838         (merge_groups), (setup_group_scheduler), (group_elements),
7839         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
7840         Don't try to follow the pad connections with other groups
7841         when a loop based element is added to the scheduler because
7842         the bin will inform the scheduler about the pad links a little
7843         later.
7844
7845 2004-05-27  Wim Taymans  <wim@fluendo.com>
7846
7847         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7848         (remove_from_chain), (chain_group_set_enabled),
7849         (setup_group_scheduler), (group_element_set_enabled),
7850         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
7851         (gst_opt_scheduler_show):
7852         Elements without a group can do a state change as well, just wait
7853         with the setup of the scheduling function when it is added to a
7854         chain.
7855
7856 2004-05-27  Wim Taymans  <wim@fluendo.com>
7857
7858         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
7859         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
7860         (merge_groups), (setup_group_scheduler),
7861         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
7862         (gst_opt_scheduler_show):
7863         Fixes to maintain internal consistency of the scheduler data
7864         structures. 
7865          - adding an enabled group to a chain should increment the
7866            number of enabled elements in that chain.
7867          - removing an enabled group from a chain could disable the
7868            chain.
7869          - removing a disabled group from a chain could enable the
7870            chain.
7871          - add g_assert when internal inconsistency is detected.
7872          - adding an element to a group could increase the number of
7873            links this group has with other groups.
7874          - merging two groups also merges the chains.
7875          - also show group links in the _show method.
7876            
7877
7878 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7879
7880         * gst/gstcaps.c: (gst_caps_structure_simplify):
7881           don't print error messages when there is no error
7882         * gst/gstvalue.c: (gst_value_compare_int_range):
7883           compare the second value, too
7884         * testsuite/caps/Makefile.am:
7885         * testsuite/caps/random.c: (assert_on_error), (main):
7886           add tests to make sure the two things above are checked for
7887
7888 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
7889
7890         * configure.ac:
7891         * libs/gst/dataprotocol/Makefile.am:
7892         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
7893         * libs/gst/dataprotocol/dataprotocol.h:
7894           wrap header in GST_ENABLE_NEW.  make code use it
7895
7896 2004-05-23  Johan Dahlin  <johan@gnome.org>
7897
7898         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
7899         so verbose and print GstElement signal names all the time.
7900
7901 2004-05-22  David Schleef  <ds@schleef.org>
7902
7903         * gst/registries/gstxmlregistry.c:
7904         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
7905         (bug #142957)
7906
7907 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
7908
7909         * configure.ac:
7910           scrub cflags for glib2 so gcc doesn't complain when glib is in
7911           /usr/local
7912
7913 2004-05-21  Johan Dahlin  <johan@gnome.org>
7914
7915         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
7916         __GNUC__, patch from Brian Cameron, fixes bug #142804
7917
7918 2004-05-20  David Schleef  <ds@schleef.org>
7919
7920         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
7921         comparison code.  (bug #142819)
7922
7923 2004-05-20  Wim Taymans  <wim@fluendo.com>
7924
7925         * gst/gstbuffer.c: (gst_buffer_default_copy):
7926         * gst/gstbuffer.h:
7927         Added Comment to a flag.
7928         copy relevant flags in _buffer_copy.
7929
7930 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7931
7932         reviewed by: Wim Taymans <wim at fluendo dot com>
7933
7934         * gst/gstbuffer.h:
7935           add GST_BUFFER_IN_CAPS buffer flag
7936         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7937         (gst_structure_parse_any_list), (gst_structure_parse_list),
7938         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
7939         * gst/gstvalue.c: (gst_value_serialize_any_list),
7940         (gst_value_transform_any_list_string),
7941         (gst_value_list_prepend_value), (gst_value_list_append_value),
7942         (gst_value_list_get_size), (gst_value_list_get_value),
7943         (gst_value_transform_list_string),
7944         (gst_value_transform_fixed_list_string),
7945         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
7946         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
7947         (_gst_value_initialize):
7948         * gst/gstvalue.h:
7949           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
7950           < , > as a format.
7951         * testsuite/caps/string-conversions.c: (main):
7952           add regression tests for < >
7953
7954 2004-05-20  Johan Dahlin  <johan@gnome.org>
7955
7956         * docs/gst/Makefile.am (all-local): Re-add
7957
7958 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7959
7960         * docs/gst/Makefile.am:
7961         * docs/gst/gstreamer-docs.sgml:
7962         * docs/libs/Makefile.am:
7963         * docs/libs/gstreamer-libs-docs.sgml:
7964           fix distcheck issues
7965
7966 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7967
7968         * libs/gst/dataprotocol/Makefile.am:
7969           add to autotest
7970
7971 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7972
7973         * libs/gst/dataprotocol/Makefile.am:
7974         * libs/gst/dataprotocol/dataprotocol.c:
7975         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7976         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
7977         * libs/gst/dataprotocol/dp-private.h:
7978           use GST macros to read/write fixed length ints
7979           add some more asserts
7980
7981 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7982
7983         * docs/libs/gstreamer-libs-docs.sgml:
7984         * docs/libs/gstreamer-libs-sections.txt:
7985           remove idct and putbits
7986         * configure.ac:
7987         * docs/libs/tmpl/gstdataprotocol.sgml:
7988         * libs/gst/Makefile.am:
7989         * libs/gst/dataprotocol/Makefile.am:
7990         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
7991         (buffer_test), (caps_test), (event_test), (main):
7992         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
7993         (gst_dp_dump_byte_array), (gst_dp_init),
7994         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
7995         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7996         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
7997         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
7998         (gst_dp_validate_header), (gst_dp_validate_payload),
7999         (gst_dp_validate_packet), (plugin_init):
8000         * libs/gst/dataprotocol/dataprotocol.h:
8001         * libs/gst/dataprotocol/dp-private.h:
8002           add dataprotocol
8003
8004 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8005
8006         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8007           fix int variable deserialization and add a helper so we can actually
8008           debug this.
8009
8010 2004-05-18  David Schleef  <ds@schleef.org>
8011
8012         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8013           argv[0].  Calling yourself is probably not the best way to
8014           construct a test like this, btw.
8015
8016 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8017
8018         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8019           don't claim to be more intelligent than a scheduler when the
8020           scheduler claims the pipeline is stopped
8021         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8022         (safe_cothread_destroy),
8023         (gst_entry_scheduler_remove_all_cothreads),
8024         (gst_entry_scheduler_reset), (_remove_cothread),
8025         (gst_entry_scheduler_state_transition):
8026           hold off cothread destruction if we're not in main cothread
8027         * configure.ac:
8028         * testsuite/Makefile.am:
8029           add new test dir
8030         * testsuite/schedulers/.cvsignore:
8031         * testsuite/schedulers/Makefile.am:
8032           add tests
8033         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8034           check relinking and adding/removing elements from a running pipeline
8035         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8036           check unlinking in a running pipeline
8037         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8038           check unreffing a running pipeline
8039         * testsuite/schedulers/useless_iteration.c: (main):
8040           check iterating a pipeline that contains running threads works
8041
8042 2004-05-18  David Schleef  <ds@schleef.org>
8043
8044         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8045           is false.
8046
8047 2004-05-18  Wim Taymans  <wim@fluendo.com>
8048
8049         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8050         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8051         Fixed an error introduced with patch for 1.63. When setting
8052         a get based element as the entry point in a group, make sure
8053         to mark the group as GET based.
8054
8055 2004-05-18  Wim Taymans  <wim@fluendo.com>
8056
8057         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8058         (setup_group_scheduler), (loop_group_schedule_function),
8059         (gst_opt_scheduler_pad_link):
8060         Added some more debug info and fixed a bug where the group
8061         type was set to LOOP but it was in fact unknown.
8062
8063 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8064
8065         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8066           make resetting scheduler work twice in a row
8067
8068 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8069
8070         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8071         (CREATE_USERIALIZATION), (_gst_value_initialize),
8072         (gst_value_compare_float), (gst_value_serialize_float),
8073         (gst_value_deserialize_float), (gst_value_compare_enum),
8074         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8075           add serialization and comparison functions for long, int64, enum and
8076           float values
8077         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8078           use best serialization function in type hierarchy instead of only a
8079           matching one. This is required for enums to work.
8080         * gst/parse/grammar.y:
8081           use gst_caps_deserialize
8082         * testsuite/parse/Makefile.am:
8083           parse1 now works
8084         * testsuite/parse/parse1.c: (main):
8085           remove aggregator check, aggregator is broken, this test works now
8086           but fails because of bug #138012
8087         * testsuite/parse/parse2.c: (main):
8088           s/xvideosink/xvimagesink - this test looks a lot like we should
8089           disable it
8090
8091 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8092
8093         * gst/gstelement.c: (gst_element_class_init):
8094           whoops, store the signal id correctly
8095         * gst/schedulers/gstbasicscheduler.c:
8096         (gst_basic_scheduler_chain_wrapper):
8097           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8098           chain function isn't linked
8099
8100 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8101         * configure.ac:
8102         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8103         support until we decide where the flags should be used
8104         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8105         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8106         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8107         Output refused caps in the debug info
8108
8109 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8110
8111         * gst/elements/gstidentity.c: (gst_identity_chain):
8112           add duration debug
8113         * gst/gstinfo.c: (gst_debug_log_default):
8114           add timestamp
8115
8116 2004-05-13  Benjamin Otte  <otte@gnome.org>
8117
8118         * gst/gstpipeline.c: (gst_pipeline_dispose),
8119         (gst_pipeline_change_state):
8120           call gst_scheduler_reset on dispose (fixes #141416)
8121
8122 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8123
8124         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8125           compute mapsize correctly
8126         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8127           use correct datatypes when calling a varargs function
8128         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8129           push a DISCONT event as first thing
8130         * gst/gst_private.h:
8131         * gst/gstinfo.c: (_gst_debug_init):
8132           remove GST_DATAFLOW debugging category
8133         * gst/gstbin.c: (gst_bin_iterate):
8134           use GST_SCHEDULING category
8135         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8136         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8137         (gst_pad_call_get_function):
8138           add GST_DATAFLOW to easily track flow of buffers or events.
8139         * gst/gstqueue.c: (gst_queue_get_type),
8140         (gst_queue_handle_pending_events), (gst_queue_chain),
8141         (gst_queue_get), (gst_queue_handle_src_event):
8142           use own static debugging category GST_DATAFLOW for dataflow,
8143           use DEBUG category for showing which path events go, use LOG
8144           category for buffers.
8145
8146 2004-05-10  David Schleef  <ds@schleef.org>
8147
8148         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8149
8150 2004-05-10  David Schleef  <ds@schleef.org>
8151
8152         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8153         symbols, because otherwise we don't know what they are.  Thanks,
8154         the GStreamer team.
8155         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8156
8157 2004-05-10  David Schleef  <ds@schleef.org>
8158
8159         (from Steve Lhomme)
8160         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8161         are deleted.  Fix.
8162         * win32/Makefile.inspect:
8163         * win32/Makefile.launch:
8164         * win32/Makefile.register:
8165
8166 2004-05-10  David Schleef  <ds@schleef.org>
8167
8168         * gst/gstinfo.h: Add missing inline function.
8169         * gst/gsttrace.c: add include
8170         * gst/parse/grammar.y: remove unused code
8171         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8172         more portable.
8173         * tools/gst-register.c: wrap unistd.h
8174         
8175         More additions/fixes from Steve for the MSVC build.
8176         * win32/GStreamer.vcproj:
8177         * win32/Makefile:
8178         * win32/Makefile.inspect:
8179         * win32/Makefile.launch:
8180         * win32/Makefile.register:
8181         * win32/README.txt:
8182         * win32/gst-inspect.vcproj:
8183         * win32/gst-launch.vcproj:
8184         * win32/gst-register.vcproj:
8185         * win32/gstbytestream.def:
8186         * win32/gstbytestream.vcproj:
8187         * win32/gstconfig.h:
8188         * win32/gstelements.def:
8189         * win32/gstelements.vcproj:
8190         * win32/gstenumtypes.c:
8191         * win32/gstenumtypes.h:
8192         * win32/gstoptimalscheduler.def:
8193         * win32/gstoptimalscheduler.vcproj:
8194         * win32/gstreamer.def:
8195         * win32/gstspider.def:
8196         * win32/gstspider.vcproj:
8197         * win32/gstversion.h:
8198         * win32/msvc71.sln:
8199
8200 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8201
8202         * gst/gstelement.c: (gst_element_class_init),
8203         (gst_element_no_more_pads):
8204         * gst/gstelement.h:
8205           add gst_element_no_more_pads and the "no-more-pads" signal
8206
8207 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8208
8209         * gst/gstregistry.c: (gst_registry_add_plugin):
8210           refuse to add plugins when a plugin with same name is already
8211           registered. Fixes a bunch of "How to remove plugins?" issues.
8212           May lead to other problems though, let's test
8213
8214 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8215
8216         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8217         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8218         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8219
8220 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8221
8222         * tests/Makefile.am: fix am16 issue
8223
8224 2004-05-09  Benjamin Otte  <otte@gnome.org>
8225
8226         * libs/gst/bytestream/Makefile.am:
8227           we should indeed add .c files to makefiles or they won't be built
8228           (d'oh)
8229
8230 2004-05-08  Benjamin Otte  <otte@gnome.org>
8231
8232         * gst/gstpad.c: (gst_pad_proxy_fixate):
8233           really reduce the set of caps
8234
8235 2004-05-08  Benjamin Otte  <otte@gnome.org>
8236
8237         * tests/Makefile.am:
8238         * tests/spidey_bench.c: (handoff), (main):
8239           add benchmark to test how long spider needs to create a pipeline
8240
8241 2004-05-08  Benjamin Otte  <otte@gnome.org>
8242
8243         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8244           mark links as unengaged when unnegotiating instead of deactivating.
8245           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8246
8247 2004-05-08  Benjamin Otte  <otte@gnome.org>
8248
8249         * docs/manual/helloworld.xml:
8250           s/audiosink/osssink (patch by Patrick Guimond)
8251
8252 2004-05-07  David Schleef  <ds@schleef.org>
8253
8254         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8255         since it contains important stuff.
8256
8257 2004-05-07  David Schleef  <ds@schleef.org>
8258
8259         * testsuite/caps/caps.c: (test3), (main): A check for appending
8260         ANY caps.
8261
8262 2004-05-07  David Schleef  <ds@schleef.org>
8263
8264         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8265         which may contain commas.  Fixes detection of -Wa,-mregnames
8266
8267 2004-05-06  David Schleef  <ds@schleef.org>
8268
8269         Changes to handle compilers that don't have variadic macro
8270         support.  In particular, glib headers define some inlines
8271         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8272         builds.
8273         * gst/Makefile.am:
8274         * gst/cothreads.c:
8275         * gst/elements/gstfdsink.c:
8276         * gst/elements/gstfdsrc.c:
8277         * gst/elements/gstfilesink.c:
8278         * gst/elements/gstfilesrc.c:
8279         * gst/gst_private.h:
8280         * gst/gstatomic.c:
8281         * gst/gstcaps.c: (gst_caps_append):
8282         * gst/gstcpu.c: (gst_cpuid_i386):
8283         * gst/gstelement.c:
8284         * gst/gsterror.c:
8285         * gst/gstfilter.c:
8286         * gst/gstinfo.h:
8287         * gst/gstprobe.c:
8288         * gst/gstquery.c:
8289         * gst/gstregistry.c:
8290         * gst/gststructure.c:
8291         * gst/gsttaginterface.c:
8292         * gst/gsttrace.c: (gst_trace_new):
8293         * gst/gsttrashstack.c:
8294         * gst/gsturi.c:
8295         * gst/gstvalue.c:
8296         * gst/parse/grammar.y:
8297         * gst/parse/parse.l:
8298         * tools/gst-inspect.c: (main):
8299         * tools/gst-launch.c: (main):
8300         * tools/gst-xmlinspect.c: (PUT_STRING):
8301
8302 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8303
8304         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8305         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8306         * gst/elements/gstfilesrc.h:
8307           send NEW_MEDIA events correctly
8308         * gst/elements/gsttypefindelement.c: (start_typefinding),
8309         (gst_type_find_element_handle_event):
8310           restart typefinding when we get a NEW_MEDIA event
8311         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8312         (gst_bin_dispose):
8313           don't die when someone removes elements in callbacks
8314         * gst/gstelement.c: (gst_element_change_state):
8315           improve debugging
8316         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8317           we need a NEW_MEDIA event to engage a link
8318         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8319           don't g_print debugging stuff
8320         * testsuite/caps/simplify.c: (check_caps):
8321
8322 2004-05-04  Benjamin Otte  <otte@gnome.org>
8323
8324         * gst/parse/grammar.y:
8325           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8326
8327 2004-05-04  Benjamin Otte  <otte@gnome.org>
8328
8329         * testsuite/caps/renegotiate.c: (main):
8330           improve output in error case
8331
8332 2004-05-04  Benjamin Otte  <otte@gnome.org>
8333
8334         * gst/parse/grammar.y:
8335           fix assert to not trigger when there's no error argument
8336         * gst/parse/parse.l:
8337           fix definition of caps to allow more than two structures
8338         * testsuite/caps/Makefile.am:
8339         * testsuite/caps/renegotiate.c: (main):
8340           it's sinesrc and works in that case
8341
8342 2004-05-04  Wim Taymans  <wim@fluendo.com>
8343
8344         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8345         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8346         when removing an element from a group, we always need to
8347         decrement the link count that this group had with other 
8348         groups through the element.
8349         added an extra assert to catch inconsistencies when decrementing
8350         the link count.
8351
8352 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8353
8354         * configure.ac:
8355         * docs/gst/Makefile.am:
8356         * docs/gst/gstreamer-sections.txt:
8357         * docs/gst/tmpl/gstcompat.sgml:
8358         * examples/appreader/Makefile.am:
8359         * examples/cutter/Makefile.am:
8360         * examples/events/Makefile.am:
8361         * examples/helloworld/Makefile.am:
8362         * examples/helloworld2/Makefile.am:
8363         * examples/launch/Makefile.am:
8364         * examples/manual/Makefile.am:
8365         * examples/mixer/Makefile.am:
8366         * examples/pingpong/Makefile.am:
8367         * examples/plugins/Makefile.am:
8368         * examples/queue/Makefile.am:
8369         * examples/queue2/Makefile.am:
8370         * examples/queue3/Makefile.am:
8371         * examples/queue4/Makefile.am:
8372         * examples/retag/Makefile.am:
8373         * examples/thread/Makefile.am:
8374         * examples/typefind/Makefile.am:
8375         * examples/xml/Makefile.am:
8376         * gst/Makefile.am:
8377         * gst/autoplug/Makefile.am:
8378         * gst/elements/Makefile.am:
8379         * gst/gstcompat.h:
8380         * gst/indexers/Makefile.am:
8381         * gst/parse/Makefile.am:
8382         * gst/registries/Makefile.am:
8383         * gst/schedulers/Makefile.am:
8384         * libs/gst/bytestream/Makefile.am:
8385         * libs/gst/control/Makefile.am:
8386         * libs/gst/getbits/Makefile.am:
8387         * po/af.po:
8388         * po/az.po:
8389         * po/en_GB.po:
8390         * po/fr.po:
8391         * po/nl.po:
8392         * po/sr.po:
8393         * po/sv.po:
8394         * po/tr.po:
8395         * po/uk.po:
8396         * tests/Makefile.am:
8397         * tests/bufspeed/Makefile.am:
8398         * tests/instantiate/Makefile.am:
8399         * tests/memchunk/Makefile.am:
8400         * tests/muxing/Makefile.am:
8401         * tests/negotiation/Makefile.am:
8402         * tests/probes/Makefile.am:
8403         * tests/sched/Makefile.am:
8404         * tests/seeking/Makefile.am:
8405         * tests/threadstate/Makefile.am:
8406         * testsuite/caps/Makefile.am:
8407         * testsuite/cleanup/Makefile.am:
8408         * testsuite/dlopen/Makefile.am:
8409         * testsuite/dynparams/Makefile.am:
8410         * testsuite/plugin/Makefile.am:
8411         * testsuite/states/Makefile.am:
8412         * tools/Makefile.am:
8413           reorganize compile/link flags to be consistent
8414           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8415
8416 2004-05-04  David Schleef  <ds@schleef.org>
8417
8418         The "once more, with feeling" check-in.
8419         * testsuite/caps/Makefile.am: dist caps_strings
8420         * testsuite/caps/renegotiate.c: (main): This test triggers a
8421           segfault in the core.  Marking as failing.
8422
8423 2004-05-03  David Schleef  <ds@schleef.org>
8424
8425         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8426           by the build bots.
8427         * testsuite/caps/renegotiate.c: (main): Same.
8428
8429 2004-05-03  David Schleef  <ds@schleef.org>
8430
8431         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8432
8433 2004-05-03  David Schleef  <ds@schleef.org>
8434
8435         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8436           variable to find our source file.
8437
8438 2004-05-03  David Schleef  <ds@schleef.org>
8439
8440         * configure.ac:  Link plugins with libgstreamer and dependent
8441           libraries
8442         * testsuite/caps/Makefile.am:
8443         * testsuite/caps/caps_strings:
8444         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8445           through a file of caps strings and test each one
8446
8447 2004-05-04  Benjamin Otte  <otte@gnome.org>
8448
8449         * libs/gst/bytestream/Makefile.am:
8450         * libs/gst/bytestream/adapter.c: 
8451         * libs/gst/bytestream/adapter.h:
8452           add GstAdapter, similar to bytestream, but doesn't require ugly event
8453           handling or uglier loopbased elements
8454
8455 2004-05-03  David Schleef  <ds@schleef.org>
8456
8457         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8458         * testsuite/caps/erathostenes.c:
8459         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8460
8461 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8462
8463         * docs/pwg/pwg.xml:
8464           remove hardcoded stylesheet path (duh)
8465         * docs/random/release:
8466         * docs/gst/gstreamer-sections.txt:
8467         * gst/Makefile.am:
8468         * gst/gst.h:
8469         * gst/gst_private.h:
8470         * gst/gstcaps.c:
8471         * gst/gstevent.c:
8472         * gst/gstformat.c:
8473         * gst/gstinfo.c:
8474         * gst/gstinfo.h:
8475         * gst/gstinterface.c:
8476         * gst/gstmemchunk.c:
8477         * gst/gstprobe.c:
8478         * gst/gstquery.c:
8479         * gst/gstregistry.c:
8480         * gst/gstregistrypool.c:
8481         * gst/gststructure.c:
8482         * gst/gsttaginterface.c:
8483         * gst/gstthread.c:
8484         * gst/gsttrace.c:
8485         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8486         * gst/gsturi.c:
8487         * gst/gstvalue.c:
8488           deprecate gst_info; remove gstlog.h
8489    
8490
8491 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8492
8493         * Makefile.am:
8494         * po/en_GB.po:
8495         * po/sv.po:
8496         * po/uk.po:
8497           updated translations
8498
8499 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8500
8501         * gst/gstbin.c: (gst_bin_dispose):
8502           better debugging
8503
8504 2004-05-03  Johan Dahlin  <johan@gnome.org>
8505
8506         * gst/schedulers/gstoptimalscheduler.c
8507         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8508         really is a GstElement. Avoids critical when running gst-launch -v
8509         and a oggdemux/decoding pipeline.
8510
8511 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8512
8513         * docs/gst/tmpl/gstpipeline.sgml :
8514         * docs/manual/elements-api.xml :
8515                 doc fix by Patrick Guimond (Protector) from devel ML
8516                 reviewed by ronald
8517
8518 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8519
8520         * docs/gst/Makefile.am :
8521         * docs/libs/Makefile.am :
8522                 apply a patch from Arwed v. Merkatz so that gtk-doc
8523                 generated docs install (same for .devhelp file)
8524                 (fixes part 1 of #138836)
8525
8526 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8527
8528         * docs/faq/dependencies.xml: typo
8529         * docs/faq/getting.xml :
8530             - fix download URL for new gstreamer site
8531             - hide sf.net download page as latest version aren't there
8532             - fix apt URLs
8533             - fill "get via CVS" paragraph (link to dev page on the site)
8534         * docs/faq/general.xml:
8535             hide status tables as they no more exists
8536             change case on plugins license file to reflect reality
8537         * docs/faq/troubleshooting.xml:
8538             remove the wiki question/answer as there is no more wiki
8539
8540 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8541
8542         * gst/gsterror.h:
8543           include the headers needed for declarations used in this header
8544
8545 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8546
8547         * docs/random/uraeus/gstreamer_and_midi.txt :
8548           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8549           (fixes #132288)
8550
8551 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8552
8553         reviewed by Benjamin Otte  <otte@gnome.org>
8554
8555         * gst/schedulers/gthread-cothreads.h:
8556           free allocated data for main cothread, too when destroying context
8557           (fixes #141417)
8558
8559 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8560
8561         * docs/manual/goals.xml : remove duplicated paragraph at end 
8562         of doc page (fixes #141448)
8563
8564 2004-04-29  David Schleef  <ds@schleef.org>
8565
8566         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8567         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8568
8569 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8570
8571         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8572           fix property
8573         * gst/gstcaps.c:
8574           fix doc string
8575         * po/POTFILES.in:
8576           rename typefind source file
8577
8578 2004-04-28  David Schleef  <ds@schleef.org>
8579
8580         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8581         * win32/GStreamer.vcproj:
8582         * win32/Makefile:
8583         * win32/config.h:
8584         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8585         (_trewinddir), (_ttelldir), (_tseekdir):
8586         * win32/dirent.h:
8587         * win32/gst-inspect.vcproj:
8588         * win32/gst-launch.vcproj:
8589         * win32/gst-register.vcproj:
8590         * win32/gstbytestream.vcproj:
8591         * win32/gstelements.vcproj:
8592         * win32/gstoptimalscheduler.vcproj:
8593         * win32/gstspider.vcproj:
8594         * win32/gtchar.h:
8595         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8596         * win32/mman.h:
8597         * win32/mman.inl:
8598         * win32/msvc71.sln:
8599
8600 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8601
8602         * gst/gst.c: (init_post):
8603         * gst/gstinfo.c:
8604           remove useless _gst_progname stuff
8605         * tools/gst-inspect.c: (print_field), (print_caps):
8606           improve caps output
8607
8608 2004-04-28  David Schleef  <ds@schleef.org>
8609
8610         Disable parsing of a lot of files that aren't part of the
8611         exported API.  Move corresponding template files to old/,
8612         waiting for removal when they don't contain anything
8613         interesting.
8614         * docs/gst/Makefile.am:
8615         * docs/gst/gstreamer-sections.txt:
8616         * docs/gst/tmpl/cothreads.sgml:
8617         * docs/gst/tmpl/cothreads_compat.sgml:
8618         * docs/gst/tmpl/gettext.sgml:
8619         * docs/gst/tmpl/gobject2gtk.sgml:
8620         * docs/gst/tmpl/grammar.tab.sgml:
8621         * docs/gst/tmpl/gst-i18n-app.sgml:
8622         * docs/gst/tmpl/gst-i18n-lib.sgml:
8623         * docs/gst/tmpl/gst_private.sgml:
8624         * docs/gst/tmpl/gstaggregator.sgml:
8625         * docs/gst/tmpl/gstarch.sgml:
8626         * docs/gst/tmpl/gstatomic_impl.sgml:
8627         * docs/gst/tmpl/gstbufferstore.sgml:
8628         * docs/gst/tmpl/gstdata_private.sgml:
8629         * docs/gst/tmpl/gstdisksink.sgml:
8630         * docs/gst/tmpl/gstdisksrc.sgml:
8631         * docs/gst/tmpl/gstelementfactory.sgml:
8632         * docs/gst/tmpl/gstextratypes.sgml:
8633         * docs/gst/tmpl/gstfakesink.sgml:
8634         * docs/gst/tmpl/gstfakesrc.sgml:
8635         * docs/gst/tmpl/gstfdsink.sgml:
8636         * docs/gst/tmpl/gstfdsrc.sgml:
8637         * docs/gst/tmpl/gstfilesink.sgml:
8638         * docs/gst/tmpl/gstfilesrc.sgml:
8639         * docs/gst/tmpl/gsthttpsrc.sgml:
8640         * docs/gst/tmpl/gstidentity.sgml:
8641         * docs/gst/tmpl/gstindexfactory.sgml:
8642         * docs/gst/tmpl/gstmarshal.sgml:
8643         * docs/gst/tmpl/gstmd5sink.sgml:
8644         * docs/gst/tmpl/gstmultidisksrc.sgml:
8645         * docs/gst/tmpl/gstmultifilesrc.sgml:
8646         * docs/gst/tmpl/gstpadtemplate.sgml:
8647         * docs/gst/tmpl/gstpipefilter.sgml:
8648         * docs/gst/tmpl/gstschedulerfactory.sgml:
8649         * docs/gst/tmpl/gstsearchfuncs.sgml:
8650         * docs/gst/tmpl/gstshaper.sgml:
8651         * docs/gst/tmpl/gstspider.sgml:
8652         * docs/gst/tmpl/gstspideridentity.sgml:
8653         * docs/gst/tmpl/gststatistics.sgml:
8654         * docs/gst/tmpl/gsttee.sgml:
8655         * docs/gst/tmpl/gsttimecache.sgml:
8656         * docs/gst/tmpl/gsttypefind.sgml:
8657         * docs/gst/tmpl/gsttypefindfactory.sgml:
8658         * docs/gst/tmpl/gstxmlregistry.sgml:
8659         * docs/gst/tmpl/gthread-cothreads.sgml:
8660         * docs/gst/tmpl/old/cothreads.sgml:
8661         * docs/gst/tmpl/old/cothreads_compat.sgml:
8662         * docs/gst/tmpl/old/gettext.sgml:
8663         * docs/gst/tmpl/old/gobject2gtk.sgml:
8664         * docs/gst/tmpl/old/grammar.tab.sgml:
8665         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8666         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8667         * docs/gst/tmpl/old/gst_private.sgml:
8668         * docs/gst/tmpl/old/gstaggregator.sgml:
8669         * docs/gst/tmpl/old/gstarch.sgml:
8670         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8671         * docs/gst/tmpl/old/gstbufferstore.sgml:
8672         * docs/gst/tmpl/old/gstdata_private.sgml:
8673         * docs/gst/tmpl/old/gstdisksink.sgml:
8674         * docs/gst/tmpl/old/gstdisksrc.sgml:
8675         * docs/gst/tmpl/old/gstelementfactory.sgml:
8676         * docs/gst/tmpl/old/gstextratypes.sgml:
8677         * docs/gst/tmpl/old/gstfakesink.sgml:
8678         * docs/gst/tmpl/old/gstfakesrc.sgml:
8679         * docs/gst/tmpl/old/gstfdsink.sgml:
8680         * docs/gst/tmpl/old/gstfdsrc.sgml:
8681         * docs/gst/tmpl/old/gstfilesink.sgml:
8682         * docs/gst/tmpl/old/gstfilesrc.sgml:
8683         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8684         * docs/gst/tmpl/old/gstidentity.sgml:
8685         * docs/gst/tmpl/old/gstindexfactory.sgml:
8686         * docs/gst/tmpl/old/gstmarshal.sgml:
8687         * docs/gst/tmpl/old/gstmd5sink.sgml:
8688         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8689         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8690         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8691         * docs/gst/tmpl/old/gstpipefilter.sgml:
8692         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8693         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8694         * docs/gst/tmpl/old/gstshaper.sgml:
8695         * docs/gst/tmpl/old/gstspider.sgml:
8696         * docs/gst/tmpl/old/gstspideridentity.sgml:
8697         * docs/gst/tmpl/old/gststatistics.sgml:
8698         * docs/gst/tmpl/old/gsttee.sgml:
8699         * docs/gst/tmpl/old/gsttimecache.sgml:
8700         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8701         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8702         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8703         * docs/gst/tmpl/old/types.sgml:
8704         * docs/gst/tmpl/types.sgml:
8705
8706         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8707         gtkdoc-scan doesn't like files with the same name in different
8708         directories.
8709         * gst/elements/Makefile.am:
8710         * gst/elements/gstelements.c:
8711         * gst/elements/gsttypefind.c: 
8712         * gst/elements/gsttypefind.h:
8713         * gst/elements/gsttypefindelement.c:
8714         * gst/elements/gsttypefindelement.h:
8715
8716 2004-04-28  David Schleef  <ds@schleef.org>
8717
8718         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8719         patch (bug #141317):
8720         * gst/gst-i18n-lib.h: Allow disabling gettext.
8721         * gst/gstatomic_impl.h: disable warning when it's dumb.
8722         * gst/gstclock.c: fix include
8723         * gst/gstcompat.h: fix variadic macro
8724         * gst/gstinfo.c: fix include
8725         * gst/gstmacros.h: add defines for inlines on MSVC
8726         * gst/gstplugin.c: fix includes
8727         * gst/gstregistry.c: fix includes
8728         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
8729         * gst/gstsystemclock.c: fix include
8730         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
8731         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
8732         * gst/registries/gstxmlregistry.c:
8733         (gst_xml_registry_parse_element_factory): fix use of non-portable
8734         functions
8735         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
8736         * libs/gst/control/dparammanager.h: same
8737
8738 2004-04-28  David Schleef  <ds@schleef.org>
8739
8740         Move a bunch of unused files to old/ with names that are
8741         not case-insensitive-unique.  These files still contain some
8742         useful information that needs to be merged into gstbin.sgml,
8743         etc., so they shouldn't be deleted yet.
8744         * docs/gst/tmpl/GstBin.sgml:
8745         * docs/gst/tmpl/GstBuffer.sgml:
8746         * docs/gst/tmpl/GstCaps.sgml:
8747         * docs/gst/tmpl/GstClock.sgml:
8748         * docs/gst/tmpl/GstCompat.sgml:
8749         * docs/gst/tmpl/GstData.sgml:
8750         * docs/gst/tmpl/GstElement.sgml:
8751         * docs/gst/tmpl/GstEvent.sgml:
8752         * docs/gst/tmpl/GstIndex.sgml:
8753         * docs/gst/tmpl/GstStructure.sgml:
8754         * docs/gst/tmpl/GstTag.sgml:
8755         * docs/gst/tmpl/old/GstBin.sgml:
8756         * docs/gst/tmpl/old/GstBuffer.sgml:
8757         * docs/gst/tmpl/old/GstCaps.sgml:
8758         * docs/gst/tmpl/old/GstClock.sgml:
8759         * docs/gst/tmpl/old/GstCompat.sgml:
8760         * docs/gst/tmpl/old/GstData.sgml:
8761         * docs/gst/tmpl/old/GstElement.sgml:
8762         * docs/gst/tmpl/old/GstEvent.sgml:
8763         * docs/gst/tmpl/old/GstIndex.sgml:
8764         * docs/gst/tmpl/old/GstStructure.sgml:
8765         * docs/gst/tmpl/old/GstTag.sgml:
8766
8767 2004-04-28  David Schleef  <ds@schleef.org>
8768
8769         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
8770         (gst_caps_append), (gst_caps_append_structure),
8771         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
8772         (gst_caps_set_simple), (gst_caps_set_simple_valist),
8773         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
8774         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
8775         (gst_caps_intersect), (gst_caps_normalize),
8776         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
8777         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
8778         * gst/gstcaps.h: use GST_IS_CAPS().
8779
8780 2004-04-26  David Schleef  <ds@schleef.org>
8781
8782         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
8783         assembly.  gcc doesn't handle it correctly. (bug #141083)
8784         * gst/gsttrashstack.h: same
8785
8786 2004-04-25  Benjamin Otte  <otte@gnome.org>
8787
8788         * gst/gstelement.c: (gst_element_change_state):
8789           fix assertion to do an int comparison
8790
8791 2004-04-25  Benjamin Otte  <otte@gnome.org>
8792
8793         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8794           better debugging output on error
8795
8796 2004-04-25  Benjamin Otte  <otte@gnome.org>
8797
8798         * gst/gstcaps.c: (gst_caps_subtract):
8799           fix memleak
8800
8801 2004-04-23  Benjamin Otte  <otte@gnome.org>
8802
8803         * gst/gstvalue.c: (gst_value_compare_buffer),
8804         (_gst_value_initialize):
8805           add comparison function for buffers
8806
8807 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8808
8809         * docs/pwg/pwg.xml:
8810           Just found out that this so-called "ima-wav" format is really
8811           just "dvi adpcm" (according to the MS WAV documentation). So
8812           renaming it. We didn't use it yet anyway.
8813
8814 2004-04-23  Benjamin Otte  <otte@gnome.org>
8815
8816         * gst/gstcaps.c: (gst_caps_is_always_compatible):
8817           call gst_caps_is_subset
8818
8819 2004-04-23  Benjamin Otte  <otte@gnome.org>
8820
8821         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
8822         (gst_caps_is_subset):
8823           add documentation
8824
8825 2004-04-23  Benjamin Otte  <otte@gnome.org>
8826           
8827         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
8828         (gst_caps_structure_subtract), (gst_caps_subtract),
8829         (gst_caps_structure_figure_out_union),
8830         (gst_caps_structure_simplify), (gst_caps_do_simplify):
8831           fix simplifying and subtracting not working correctly with optional
8832           properties
8833           solve assorted problems that make it now simplify ebven more
8834         * docs/gst/tmpl/gstcaps.sgml:
8835         * gst/gstcaps.h:
8836           make gst_caps_do_simplify return a bool to indicate if it simplified
8837         * testsuite/caps/simplify.c: (main):
8838           add more checks. The tests is quite a bit useless right now because
8839           the core is heavily simplifying itself.
8840         * testsuite/caps/caps.h:
8841           fix caps to contain all optional properties
8842
8843 2004-04-22  Benjamin Otte  <otte@gnome.org>
8844
8845         * docs/gst/tmpl/gstcaps.sgml:
8846         * docs/gst/tmpl/gstfilesrc.sgml:
8847         * docs/gst/tmpl/gststructure.sgml:
8848         * docs/gst/tmpl/gstvalue.sgml:
8849           update for recent API changes
8850         * gst/gstcaps.c: (gst_caps_do_simplify):
8851           fix to stop trying with a freed structure
8852         * gst/gstpad.c: (gst_pad_link_fixate):
8853           simplify caps
8854         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
8855           remove C++ comment
8856         * gst/gstpad.h:
8857           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
8858         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8859         (gst_structure_to_string):
8860           keep the correct type when using lists of ranges
8861         * gst/gstvalue.c: (gst_value_list_prepend_value),
8862         (gst_value_list_append_value):
8863           copy the value before adding to the list (d'oh)
8864         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
8865         (gst_value_subtract_int_range_int_range):
8866           handle overflows correctly
8867         * gst/gstvalue.c: (gst_value_subtract_from_list):
8868           fix memleak
8869         * testsuite/caps/caps.h:
8870           add a caps that caused segfaults
8871
8872 2004-04-22  Benjamin Otte  <otte@gnome.org>
8873
8874         * testsuite/refcounting/pad.c: (main):
8875           fix test
8876
8877 2004-04-22  Benjamin Otte  <otte@gnome.org>
8878
8879         * gst/gstcaps.c: (gst_caps_subtract):
8880           allow subtracting ANY and EMPTY from ANY caps
8881
8882 2004-04-22  Benjamin Otte  <otte@gnome.org>
8883
8884         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
8885         (gst_caps_union):
8886           only simplify in functions that create new caps. Simplifying in
8887           gst_caps_append breaks tests.
8888
8889 2004-04-22  Benjamin Otte  <otte@gnome.org>
8890
8891         * gst/gstcaps.c: (gst_caps_structure_simplify):
8892           unset GValue after use
8893         * gst/gstcaps.c: (gst_caps_append), 
8894         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
8895           use gst_caps_simplify (reduces registry size by 30%)
8896         * gst/gstpad.c: (gst_pad_template_new):
8897           don't allow NULL caps
8898
8899 2004-04-22  Benjamin Otte  <otte@gnome.org>
8900
8901         * docs/gst/gstreamer-sections.txt:
8902           add gst_caps_do_simplify
8903         * gst/gstcaps.c:
8904           add documentation for gst_caps_do_simplify
8905         * gst/gstvalue.h:
8906           fix typo in gst_value_register_subtract_func declaration for gst-doc
8907
8908 2004-04-22  Benjamin Otte  <otte@gnome.org>
8909
8910         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8911           fix bug when converting from empty string.
8912         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
8913         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
8914           use gst_caps_new_empty to allocate a new caps. Only that function
8915           allocates memory for caps now.
8916         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
8917         (gst_caps_remove_structure):
8918           add ability to remove one structure (but not to header yet)
8919         * gst/gstcaps.c: (gst_caps_compare_structures),
8920         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
8921         (gst_caps_structure_simplify), (gst_caps_do_simplify),
8922         * gst/gstcaps.h:
8923           add gst_caps_do_simplify that tries to simplify a caps in place.
8924           Deprecate old gst_caps_simplify function.
8925         * testsuite/caps/caps.h:
8926           add caps.h containing a common set of caps to test against.
8927         * testsuite/caps/sets.c: (check_caps), (main):
8928           use it.
8929         * testsuite/caps/.cvsignore:
8930         * testsuite/caps/Makefile.am:
8931         * testsuite/caps/simplify.c: (check_caps), (main):
8932           add test to check correctness and efficency of caps simplification.
8933
8934 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
8935
8936         reviewed by Benjamin Otte  <otte@gnome.org>
8937
8938         * gst/gstparse.c: (_gst_parse_escape):
8939           Free the GString used in _gst_parse_escape()
8940
8941 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8942
8943         * gst/gstpad.c: (gst_pad_link_negotiate):
8944           refuse to link if the link is not possible
8945         * configure.ac:
8946         * testsuite/Makefile.am:
8947         * testsuite/negotiation/.cvsignore:
8948         * testsuite/negotiation/Makefile.am:
8949         * testsuite/negotiation/pad_link.c: (main):
8950           add test that checks the above behaviour
8951
8952 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8953
8954         * docs/gst/gstreamer-sections.txt:
8955           add newly added API
8956
8957 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8958
8959         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8960         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
8961         (gst_filesrc_open_file), (gst_filesrc_close_file),
8962         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
8963         * gst/elements/gstfilesrc.h:
8964           add support for non-regular files (#140734)
8965
8966 2004-04-21  Benjamin Otte  <otte@gnome.org>
8967
8968         * gst/gstpad.c: (gst_pad_link_fixate):
8969           add sophisticated error checking code to see if fixation functions
8970           did their fixation right
8971
8972 2004-04-21  Benjamin Otte  <otte@gnome.org>
8973
8974         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
8975           check for ANY caps before appending/unioning
8976         * gst/gstcaps.c: (gst_caps_is_subset),
8977         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
8978         (gst_caps_structure_subtract), (gst_caps_subtract):
8979         * gst/gstcaps.h:
8980           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
8981           the API. deprecate gst_caps_is_equal_fixed
8982         * gst/gstpad.c: (gst_pad_try_set_caps):
8983         * gst/gstqueue.c: (gst_queue_link):
8984           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
8985         * gst/gststructure.c: (gst_structure_get_name_id):
8986         * gst/gststructure.h:
8987           add function gst_structure_get_name_id
8988         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
8989         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
8990         (gst_value_subtract_int_range_int_range),
8991         (gst_value_subtract_double_double_range),
8992         (gst_value_subtract_double_range_double),
8993         (gst_value_subtract_double_range_double_range),
8994         (gst_value_subtract_from_list), (gst_value_subtract_list),
8995         (gst_value_can_intersect), (gst_value_subtract),
8996         (gst_value_can_subtract), (gst_value_register_subtract_func),
8997         (_gst_value_initialize):
8998         * gst/gstvalue.h:
8999           add support for subtracting values from each other. Note that
9000           subtracting means subtracting as in set theory. Required for caps
9001           stuff above.
9002         * testsuite/caps/.cvsignore:
9003         * testsuite/caps/Makefile.am:
9004         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9005         * testsuite/caps/sets.c: (check_caps), (main):
9006         * testsuite/caps/subtract.c: (check_caps), (main):
9007           add tests for subtraction and equality code.
9008
9009 2004-04-20  David Schleef  <ds@schleef.org>
9010
9011         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9012         * gst/indexers/Makefile.am:
9013         * gst/schedulers/Makefile.am:
9014         * libs/gst/bytestream/Makefile.am:
9015         * libs/gst/control/Makefile.am:
9016         * libs/gst/getbits/Makefile.am:
9017
9018 2004-04-20  David Schleef  <ds@schleef.org>
9019
9020         * common/as-libtool.mak: Fine-tune DLL building.
9021         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9022         (like gst-plugins)
9023         * examples/plugins/Makefile.am: remove plugindir
9024         * gst/autoplug/Makefile.am: DLL building fixes
9025         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9026         Windows.
9027         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9028         * gst/indexers/Makefile.am: DLL building fixes
9029         * gst/schedulers/Makefile.am: DLL building fixes.
9030         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9031         * libs/gst/control/Makefile.am: same
9032         * libs/gst/getbits/Makefile.am: same
9033         * testsuite/Makefile.am: New dlopen directory
9034         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9035         when dlopened.
9036         * testsuite/dlopen/dlopen_gst.c: (main): same
9037         * testsuite/dlopen/loadgst.c: (do_test): same
9038
9039 2004-04-20  David Schleef  <ds@schleef.org>
9040
9041         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9042         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9043
9044 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9045
9046         * gst/gstelement.c: (gst_element_wait),
9047         (gst_element_set_time_delay), (gst_element_change_state):
9048           Use GST_TIME_*
9049
9050 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9051
9052         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9053         (gst_spider_identity_plug):
9054           improve debugging messages
9055         * gst/gstbin.c: (gst_bin_remove_func):
9056           make sure the state_change function is only called with simple state
9057           transitions
9058
9059 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9060
9061         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9062         (gst_fakesink_set_property), (gst_fakesink_chain):
9063         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9064         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9065         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9066         * gst/elements/gstidentity.c: (gst_identity_chain),
9067         (gst_identity_set_property):
9068         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9069         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9070           add warnings to _set_property for unknown arguments
9071           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9072
9073 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9074
9075         * Makefile.am:
9076         * docs/manuals.mak:
9077           add .po file download snippet
9078           fix a bug in the doc makefile
9079
9080 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9081
9082         * Makefile.am:
9083         * po/LINGUAS:
9084         * po/en_GB.po:
9085           Added en_GB translation (Gareth Owen)
9086
9087 2004-04-20  Johan Dahlin  <johan@gnome.org>
9088
9089         * gst/gstpad.c (_invent_event): Clean up
9090
9091 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9092
9093         * testsuite/caps/filtercaps.c: (main):
9094           fix test to test things correctly (caps are complicated)
9095
9096 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9097
9098         * testsuite/caps/Makefile.am:
9099         * testsuite/caps/filtercaps.c: (main):
9100           add test (that doesn't work right now, but should)
9101
9102 2004-04-19  David Schleef  <ds@schleef.org>
9103
9104         * configure.ac: Add test for allowing unaligned access.  Add define
9105         to put in gstconfig.h.
9106         * docs/gst/gstreamer-sections.txt: New symbols
9107         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9108         * docs/gst/tmpl/gstfilesrc.sgml:
9109         * docs/gst/tmpl/gstparse.sgml:
9110         * docs/gst/tmpl/gsttypes.sgml:
9111         * docs/gst/tmpl/gstutils.sgml:
9112         * docs/gst/tmpl/gstvalue.sgml:
9113         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9114         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9115         on most !i386/!powerpc architectures.  From Daniel Gazard
9116         <daniel.gazard@free.fr>.  (bug #140156)
9117         * po/af.po: Check in changes made by gettext.
9118         * po/az.po:
9119         * po/fr.po:
9120         * po/nl.po:
9121         * po/sr.po:
9122         * po/sv.po:
9123
9124 2004-04-20  Benjamin Otte  <otte@gnome.org>
9125
9126         * gst/schedulers/entryscheduler.c: 
9127         (gst_entry_scheduler_yield):
9128           refuse to yield when decoupled elements insist on doing that.
9129           At least it's better than crashing
9130
9131 2004-04-19  David Schleef  <ds@schleef.org>
9132
9133         * docs/libs/Makefile.am: Change sinclude to include
9134         * docs/gst/Makefile.am: same
9135         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9136
9137 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9138
9139         * po/LINGUAS:
9140         * po/uk.po:
9141           Added Ukrainian translation (Maxim V. Dziumanenko)
9142
9143 2004-04-19  Johan Dahlin  <johan@gnome.org>
9144
9145         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9146         checking here, do it before calling the function.
9147         Clean up, use for loops instead of while loops while iterating
9148         over lists.
9149
9150         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9151         in debug message.
9152         (gst_spider_create_and_plug): Improve debug message.
9153         General: Replace while loops which iterates over GLists with for
9154         loops. Which are much cleaner, improves readability, especially
9155         for gst_spider_identity_plug
9156
9157         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9158         fixes bug 140477
9159
9160 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9161
9162         * po/LINGUAS:
9163         * po/tr.po:
9164           Added Turkish translation (Baris Cicek)
9165
9166 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9167
9168         * docs/faq/troubleshooting.xml:
9169           Mention gst-register in the FAQ (fixes 139045).
9170
9171 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9172
9173         * docs/gst/gstreamer-sections.txt:
9174
9175 2004-04-17  Benjamin Otte  <otte@gnome.org>
9176
9177         * gst/gstelement.c: (gst_element_dispose):
9178           simplify
9179         * gst/gstpad.c: (gst_pad_call_chain_function):
9180           don't create loads of events due to bad macro usage
9181
9182 2004-04-16  David Schleef  <ds@schleef.org>
9183
9184         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9185         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9186         * gst/gstvalue.c: (gst_value_serialize_buffer),
9187         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9188         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9189         to indicate types that are fixed wrt caps or not.  Switching to
9190         this function fixes (bug #140298).
9191         * gst/gstvalue.h:
9192
9193 2004-04-16  David Schleef  <ds@schleef.org>
9194
9195         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9196         for GST_UNALIGNED_ACESS, since we essentially know which archs
9197         are ok.
9198
9199 2004-04-17  Benjamin Otte  <otte@gnome.org>
9200
9201         * docs/gst/Makefile.am:
9202           ignore gst/parse directory when building docs (fixes #140205)
9203
9204 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9205
9206         * testsuite/refcounting/mem.c: (vmsize):
9207           do error checking
9208
9209 2004-04-16  Johan Dahlin  <johan@gnome.org>
9210
9211         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9212         and gst_pad_call_get_function.
9213
9214 2004-04-15  David Schleef  <ds@schleef.org>
9215
9216         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9217         checks if we can access unaligned memory.
9218         * configure.ac: Use it.
9219
9220 2004-04-16  Benjamin Otte  <otte@gnome.org>
9221
9222         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9223         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9224         * gst/elements/gstfilesrc.h:
9225           s/seek_happened/need_discont/ and require discont before sending any
9226           data
9227
9228 2004-04-15  David Schleef  <ds@schleef.org>
9229
9230         * gst/gstvalue.c: (gst_value_serialize_buffer),
9231         (gst_value_deserialize_buffer), (_gst_value_initialize):
9232         Register these types as fundamental types. (bug #140015)
9233
9234 2004-04-16  Benjamin Otte  <otte@gnome.org>
9235
9236         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9237         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9238         (gst_pad_pull):
9239           implement enforcing discont events before buffers are passed. This
9240           allows state changes of only some elements and later correctly going
9241           on where they left off (or in short: you can now set audio sinks to
9242           NULL to release the device when the pipeline is paused)
9243         * gst/gstpad.c: (gst_pad_call_chain_function),
9244         (gst_pad_call_get_function):
9245         * gst/gstpad.h:
9246           add gst_pad_call_chain_function and gst_pad_call_get_function for
9247           scheduler interaction. They are required because of the changes
9248           above.
9249         * gst/schedulers/entryscheduler.c: (get_buffer),
9250         (gst_entry_scheduler_chain_wrapper),
9251         (gst_entry_scheduler_get_wrapper),
9252         (gst_entry_scheduler_state_transition),
9253         (gst_entry_scheduler_pad_link):
9254         * gst/schedulers/gstbasicscheduler.c:
9255         (gst_basic_scheduler_chain_wrapper),
9256         (gst_basic_scheduler_src_wrapper),
9257         (gst_basic_scheduler_chainhandler_proxy),
9258         (gst_basic_scheduler_gethandler_proxy),
9259         (gst_basic_scheduler_cothreaded_chain),
9260         (gst_basic_scheduler_chain_elements):
9261         * gst/schedulers/gstoptimalscheduler.c:
9262         (get_group_schedule_function), (pad_clear_queued),
9263         (gst_opt_scheduler_pad_link):
9264           use the new functions instead of calling get/chain-functions
9265           directly.
9266
9267 2004-04-15  David Schleef  <ds@schleef.org>
9268
9269         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9270         * docs/gst/tmpl/gstinfo.sgml: same
9271         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9272         gtk-doc put here.
9273         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9274         * examples/queue/queue.c: (main):  We iterate pipelines, not
9275         bins.  (bug #139996)
9276
9277 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9278
9279         * docs/pwg/advanced-types.xml:
9280           Add MS RLE support. Also document Qt RLE although I have no sample
9281           files for that yet. And document an extra property for ADPCM.
9282
9283 2004-04-15  David Schleef  <ds@schleef.org>
9284
9285         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9286         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9287         Windows.
9288
9289 2004-04-15  David Schleef  <ds@schleef.org>
9290
9291         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9292         symbol names to not conflict with new gstinfo.h symbols.
9293         * gst/gstinfo.h: Add inline functions for all those crazy
9294         compilers that don't know how to handle variadic macros (MSVC).
9295
9296 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9297
9298         * configure.ac: bump nano to 1
9299
9300 === release 0.8.1 ===
9301
9302 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9303
9304         * NEWS:
9305         * RELEASE:
9306         * configure.ac:
9307           releasing 0.8.1, "Snow Brigade"
9308
9309 2004-04-14  David Schleef  <ds@schleef.org>
9310
9311         * testsuite/Makefile.am: define tests_ignore
9312         * testsuite/Rules: Added new tests_ignore, which get compiled,
9313         but not run (generally because they're inconsistent or have
9314         heisenbugs).  Now we can ensure all the .c files compile in
9315         testsuite/.
9316         * testsuite/bins/Makefile.am: define tests_ignore
9317         * testsuite/bytestream/Makefile.am:
9318         * testsuite/caps/Makefile.am:
9319         * testsuite/clock/Makefile.am:
9320         * testsuite/debug/Makefile.am:
9321         * testsuite/debug/global.c: (gst_debug_log_one),
9322         (gst_debug_log_two): Fix compilation problem.
9323         * testsuite/dynparams/Makefile.am:
9324         * testsuite/elements/Makefile.am:
9325         * testsuite/ghostpads/Makefile.am:
9326         * testsuite/indexers/Makefile.am:
9327         * testsuite/parse/Makefile.am:
9328         * testsuite/plugin/Makefile.am:
9329         * testsuite/refcounting/Makefile.am:
9330         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9331         results, because it's not calculated correctly.
9332         * testsuite/refcounting/pad.c: (main): same
9333         * testsuite/states/Makefile.am:
9334         * testsuite/tags/Makefile.am:
9335         * testsuite/threads/Makefile.am:
9336
9337 2004-04-14  David Schleef  <ds@schleef.org>
9338
9339         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9340         generating bad code around the cpu detection asm code.
9341
9342 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9343
9344         * tools/gst-inspect.c: (print_element_info):
9345           print numeric version of rank as well, since we added some - 1
9346           rank values to elements
9347
9348 2004-04-13  David Schleef  <ds@schleef.org>
9349
9350         * configure.ac:  Disable various code when compiling for MinGW.
9351         * gst/elements/Makefile.am:
9352         * gst/elements/gstelements.c:
9353         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9354         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9355         * gst/registries/gstxmlregistry.c: (make_dir):
9356
9357 2004-04-13  David Schleef  <ds@schleef.org>
9358
9359         * gst/Makefile.am:
9360         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9361         assembly.
9362         * gst/gstcpuid_i386.s: remove
9363
9364 2004-04-13  David Schleef  <ds@schleef.org>
9365
9366         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9367         seems to think it needs to be done.
9368         * docs/gst/tmpl/gstfakesink.sgml:
9369         * docs/gst/tmpl/gstfakesrc.sgml:
9370         * docs/gst/tmpl/gstfdsink.sgml:
9371         * docs/gst/tmpl/gstfdsrc.sgml:
9372         * docs/gst/tmpl/gstfilesink.sgml:
9373         * docs/gst/tmpl/gstfilesrc.sgml:
9374         * docs/gst/tmpl/gstidentity.sgml:
9375         * docs/gst/tmpl/gstmd5sink.sgml:
9376         * docs/gst/tmpl/gstmultifilesrc.sgml:
9377         * docs/gst/tmpl/gstpipefilter.sgml:
9378         * docs/gst/tmpl/gstshaper.sgml:
9379         * docs/gst/tmpl/gstspider.sgml:
9380         * docs/gst/tmpl/gstspideridentity.sgml:
9381         * docs/gst/tmpl/gststatistics.sgml:
9382         * docs/gst/tmpl/gsttee.sgml:
9383         * docs/gst/tmpl/gsttypefind.sgml:
9384         * docs/gst/tmpl/gstutils.sgml:
9385
9386 2004-04-13  David Schleef  <ds@schleef.org>
9387
9388         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9389         and to build DLLs on Windows.
9390         * gst/Makefile.am:
9391         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9392         (gst_filesrc_open_file):
9393         * gst/schedulers/Makefile.am:
9394
9395 2004-04-13  David Schleef  <ds@schleef.org>
9396
9397         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9398         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9399         fixating lists.
9400
9401 2004-04-12  David Schleef  <ds@schleef.org>
9402
9403         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9404         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9405         to using it.
9406         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9407         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9408         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9409         * gst/gststructure.c: (gst_structure_set_valist),
9410         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9411         support for buffers.
9412         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9413         intended to be const.
9414         * gst/gsttag.h: same
9415         * gst/gstvalue.c: (gst_value_serialize_buffer),
9416         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9417         to (de)serialize buffers.
9418         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9419         * testsuite/caps/string-conversions.c: (main):
9420         * testsuite/caps/value_serialize.c: add new test
9421
9422 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9423
9424         * docs/pwg/advanced-types.xml:
9425           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9426
9427 2004-04-11  Benjamin Otte  <otte@gnome.org>
9428
9429         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9430           rename categories to basic_*
9431         * gst/schedulers/gstbasicscheduler.c: 
9432         (gst_basic_scheduler_chain_wrapper),
9433         (gst_basic_scheduler_chainhandler_proxy),
9434         (gst_basic_scheduler_gethandler_proxy),
9435         (gst_basic_scheduler_eventhandler_proxy):
9436           debugging category fixes - put common stuff in log category
9437         * gst/schedulers/gstbasicscheduler.c: 
9438         (gst_basic_scheduler_chain_elements):
9439           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9440           active and linking two active chains
9441
9442 2004-04-10  Benjamin Otte  <otte@gnome.org>
9443
9444         * docs/pwg/intro-preface.xml:
9445           fix dead links and remove reference to Wiki
9446
9447 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9448
9449         * gst/schedulers/gstbasicscheduler.c:
9450           make sure we can switch back to the main function if we're still in
9451           the main function (supposed to fix #139617)
9452         * gst/schedulers/gthread-cothreads.h:
9453           don't throw an error when switching to the same cothread
9454
9455 2004-04-09  Benjamin Otte  <otte@gnome.org>
9456
9457         * gst/gstbin.c: (gst_bin_get_type):
9458         * gst/gstclock.c: (gst_clock_get_type):
9459         * gst/gstindex.c: (gst_index_get_type):
9460         * gst/gstobject.c: (gst_object_get_type),
9461         (gst_signal_object_get_type):
9462         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9463         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9464         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9465         * gst/gstqueue.c: (gst_queue_get_type):
9466         * gst/gstregistry.c: (gst_registry_get_type):
9467         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9468         * gst/gstthread.c: (gst_thread_get_type):
9469           don't use memchunks for these objects, use malloc instead
9470
9471 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9472
9473         * docs/gst/.cvsignore:
9474         * docs/gst/Makefile.am:
9475         * docs/gst/gstreamer-sections.txt:
9476         * docs/gst/tmpl/gstaggregator.sgml:
9477         * docs/gst/tmpl/gstbuffer.sgml:
9478         * docs/gst/tmpl/gstclock.sgml:
9479         * docs/gst/tmpl/gstelement.sgml:
9480         * docs/gst/tmpl/gstfakesink.sgml:
9481         * docs/gst/tmpl/gstfakesrc.sgml:
9482         * docs/gst/tmpl/gstfdsink.sgml:
9483         * docs/gst/tmpl/gstfdsrc.sgml:
9484         * docs/gst/tmpl/gstfilesink.sgml:
9485         * docs/gst/tmpl/gstfilesrc.sgml:
9486         * docs/gst/tmpl/gstidentity.sgml:
9487         * docs/gst/tmpl/gstindex.sgml:
9488         * docs/gst/tmpl/gstinfo.sgml:
9489         * docs/gst/tmpl/gstmd5sink.sgml:
9490         * docs/gst/tmpl/gstmultifilesrc.sgml:
9491         * docs/gst/tmpl/gstpad.sgml:
9492         * docs/gst/tmpl/gstpipefilter.sgml:
9493         * docs/gst/tmpl/gstpipeline.sgml:
9494         * docs/gst/tmpl/gstpluginfeature.sgml:
9495         * docs/gst/tmpl/gstqueue.sgml:
9496         * docs/gst/tmpl/gstregistry.sgml:
9497         * docs/gst/tmpl/gstscheduler.sgml:
9498         * docs/gst/tmpl/gstshaper.sgml:
9499         * docs/gst/tmpl/gstspider.sgml:
9500         * docs/gst/tmpl/gstspideridentity.sgml:
9501         * docs/gst/tmpl/gststatistics.sgml:
9502         * docs/gst/tmpl/gstsystemclock.sgml:
9503         * docs/gst/tmpl/gsttee.sgml:
9504         * docs/gst/tmpl/gstthread.sgml:
9505         * docs/gst/tmpl/gsttypefind.sgml:
9506         * docs/gst/tmpl/gstutils.sgml:
9507           further doc build fixes
9508
9509 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9510
9511         * docs/gst/Makefile.am:
9512           make docs exit on scanning problems
9513           fix nonsrcdir build issues
9514         * docs/gst/gstreamer-sections.txt:
9515           adding stuff from -unused
9516         * gst/gstqueue.h:
9517           create GstQueueSize
9518         * gst/schedulers/cothreads_compat.h:
9519           fix cothread warnings
9520
9521 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9522
9523         * docs/gst/gstreamer-sections.txt:
9524           remove defines deprecated by Benjamin
9525
9526 2004-04-07  Benjamin Otte  <otte@gnome.org>
9527
9528         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9529           when the buffer is complete, don't check if other buffers are needed
9530         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9531           check that the offset is >0 so we don't try to read before the
9532           beginning of the file
9533         * gst/gstpad.c: (gst_pad_set_pad_template):
9534           sink the template, so we don't end up with 130k pad templates
9535
9536 2004-04-06  Benjamin Otte  <otte@gnome.org>
9537
9538         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9539           don't ref the element, adding already reffed it. And we didn't unref
9540           it later anyway... (huge memleak when you used many spider elements)
9541         * gst/gstelement.c: (gst_element_base_class_finalize):
9542         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9543         (gst_element_register):
9544         * gst/gsturi.c: (gst_element_make_from_uri):
9545           use gst_object_(un)ref instead of g_object(un)ref
9546
9547 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9548
9549         * gst/gstbuffer.h:
9550           remove macro that wouldn't work anymore because struct member has
9551           been removed.
9552         * gst/schedulers/entryscheduler.c: (schedule_forward):
9553           fix segfault for unconnected pads
9554         
9555 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9556
9557         reviewed by David Schleef <ds@schleef.org>
9558
9559         * gst/gstinfo.h:
9560           *_FORMAT modifiers should require putting a % in front of them for
9561           consistency reasons.
9562
9563 2004-04-05  Colin Walters  <walters@redhat.com>
9564
9565         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9566         space.
9567
9568 2004-04-05  Benjamin Otte  <otte@gnome.org>
9569
9570         * configure.ac:
9571         * gst/Makefile.am:
9572         * gst/gst_private.h:
9573         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9574           add support for detecting if GStreamer runs inside valgrind.
9575           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9576           print a big message in valgrind that GStreamer has detected it's
9577           running inside and might now use different code.
9578         * gst/gstmemchunk.c: (populate), (free_area),
9579         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9580         (gst_mem_chunk_free):
9581           flag memchunks for valgrind, so it can detect leaking of chunks.
9582           This allows detecting leaks of GstBuffer and GstEvent correctly
9583           inside valgrind.
9584
9585 2004-04-05  David Schleef  <ds@schleef.org>
9586
9587         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9588           jensgr@gmx.net (Jens Granseuer)
9589
9590 2004-04-05  David Schleef  <ds@schleef.org>
9591
9592         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9593         (gst_buffer_default_free), (gst_buffer_default_copy),
9594         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9595         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9596         structures in one place.
9597
9598 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9599
9600         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9601           (GST_TIME_FORMAT, GST_TIME_ARGS)
9602
9603 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9604
9605         * testsuite/elements/Makefile.am:
9606           disable test until it stops breaking make distcheck
9607
9608 2004-04-05  Johan Dahlin  <johan@gnome.org>
9609
9610         * po/sv.po: Updated translation
9611
9612 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9613
9614         * gst/gstplugin.c: (gst_plugin_load_file):
9615           fix segfault for when original plugin was loaded statically
9616
9617 2004-04-05  Benjamin Otte  <otte@gnome.org>
9618
9619         * testsuite/debug/category.c: (main):
9620         * testsuite/debug/commandline.c: (main):
9621         * testsuite/debug/output.c: (main):
9622           fix tests to work again with debugging enabled
9623
9624 2004-04-05  Benjamin Otte  <otte@gnome.org>
9625
9626         * gst/schedulers/gstbasicscheduler.c:
9627         (gst_basic_scheduler_pad_link):
9628           fix to work with recent scheduling changes
9629
9630 2004-04-05  Benjamin Otte  <otte@gnome.org>
9631
9632         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9633         prepareChangeLog doesn't work when cvs indents):
9634           don't throw an error when no element can be scheduled, there's too
9635           many weird reasons why it doesn't work. Return STOPPED instead.
9636           decoupled elemts' schedulability doesn't depend on bufpens.
9637
9638 2004-04-04  Benjamin Otte  <otte@gnome.org>
9639
9640         * gst/schedulers/gstbasicscheduler.c:
9641         (gst_basic_scheduler_pad_select):
9642           fix uninitialized variable warnings
9643
9644 2004-04-04  Benjamin Otte  <otte@gnome.org>
9645
9646         * gst/gstpad.c: (gst_pad_collect_valist):
9647           fix uninitialized variable warning
9648         * gst/schedulers/entryscheduler.c: (schedule_forward):
9649           fix shadowed variable
9650
9651 2004-04-04  Benjamin Otte  <otte@gnome.org>
9652
9653         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9654         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9655         (gst_pad_select):
9656         * gst/gstpad.h:
9657         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9658         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9659         * gst/gstscheduler.h:
9660           implement gst_pad_collect as replacement for gst_pad_select.
9661           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9662           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9663           new pad_select, lock and unlock calls.
9664         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9665         * gst/cothreads.h:
9666         * gst/schedulers/cothreads_compat.h:
9667         * gst/schedulers/gthread-cothreads.h:
9668           remove unused cothread_lock and cothread_unlock calls
9669         * gst/schedulers/entryscheduler.c:
9670         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9671         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9672         (gst_entry_scheduler_pad_select):
9673           update to new API
9674         * gst/schedulers/gstbasicscheduler.c:
9675         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9676         (gst_basic_scheduler_pad_select):
9677           remove useless lock and unlock calls, update pad_select to new API
9678           (untested)
9679         * gst/schedulers/gstoptimalscheduler.c:
9680         (gst_opt_scheduler_class_init):
9681           remove useless select, lock and unlock function calls
9682         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9683           use gst_pad_collect instead of gst_pad_select
9684
9685 2004-04-04  Benjamin Otte  <otte@gnome.org>
9686
9687         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9688         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9689         (schedule_next_element), (print_entry):
9690           add can_schedule_pad to handle element states.
9691           add schedule_forward to select the correct entry to schedule next
9692
9693 2004-04-03  Benjamin Otte  <otte@gnome.org>
9694
9695         * gst/schedulers/entryscheduler.c: 
9696           remove unused variable, fix error inside Rb, fix compile warning in
9697           unreachable code
9698
9699 2004-04-03  Benjamin Otte  <otte@gnome.org>
9700
9701         * gst/schedulers/entryscheduler.c:
9702           completely revamp the inner workings, so it's a lot easier to
9703           understand and extend
9704
9705 2004-04-03  Andy Wingo  <wingo@pobox.com>
9706
9707         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9708         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9709         This allows better introspection of pipeline topology.
9710         (add_to_chain): Don't do trickery to put loop elements first;
9711         rather, queue a chain sort by marking the chain as dirty.
9712         (remove_from_chain): Mark the chain dirty.
9713         (sort_chain): New function. Sorts the group list so that terminal
9714         sinks are first. This means elements on the sink side will be
9715         preferentially sscheduled before elements on the src side of the
9716         pipeline.
9717         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9718         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9719         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9720         (group_inc_link): Change argument and variable names to match the
9721         new link structure member names (src and sink).
9722         (group_dec_link): Add some description
9723
9724 2004-04-03  Benjamin Otte  <otte@gnome.org>
9725
9726         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9727         * gst/gstinfo.h:
9728         * testsuite/debug/category.c: (main):
9729         * testsuite/debug/commandline.c: (main):
9730         * testsuite/debug/output.c: (main):
9731         * testsuite/debug/printf_extension.c: (main):
9732           fix to successfully build and test with --disable-gst-debug
9733           configure switch (fixes #138705)
9734
9735 2004-04-03  Benjamin Otte  <otte@gnome.org>
9736
9737         * docs/pwg/building-boiler.xml:
9738           add cvs login line and s/anonymous/anoncvs/
9739
9740 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
9741
9742         reviewed by Benjamin Otte  <otte@gnome.org>
9743
9744         * gst/gststructure.c: (gst_structure_free):
9745           memleak fix: free fields array (partial fix for #134839)
9746
9747 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9748
9749         * docs/random/ds/0.9-suggested-changes:
9750           Add a note to change handoff use in fakesrc to be usable in
9751           a more generic way (fakesrc should be renamed to appsrc or so).
9752         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9753           Change signal type to scope, so we can fill the buffer in the
9754           handoff handler (that's the whole use of this signal...).
9755
9756 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9757
9758         * docs/pwg/other-ntoone.xml:
9759           Document muxers and n-to-1 elements.
9760
9761 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
9762
9763         * gst/registries/gstxmlregistry.c
9764         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
9765         determine if a file is a G_MODULE. The old one discards paths
9766         containing "so" somewhere in the middle. My home directory is
9767         called "soto". Go figure...
9768
9769 2004-03-31  David Schleef  <ds@schleef.org>
9770
9771         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
9772         to eventually deprecate gst_buffer_merge().  (bug: #136408)
9773         * gst/gstbuffer.h:
9774
9775 2004-03-31  David Schleef  <ds@schleef.org>
9776
9777         * gst/gstvalue.c: (gst_value_union_int_int_range),
9778         (gst_value_union_int_range_int_range), (gst_value_can_union),
9779         (gst_value_union), (_gst_value_initialize):  Add some union
9780         implementations.  We didn't have any previously.
9781         * testsuite/caps/Makefile.am:
9782         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
9783         (gst_audioscale_getcaps), (test_caps), (main): A little test
9784         that is the same as the caps manipulation in audioscale.
9785
9786 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9787
9788         * docs/faq/general.xml:
9789           add entry about "does gst support format X?"
9790
9791 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9792
9793         * gst/gstthread.c:
9794           fix docs
9795         * gst/gstutils.h:
9796           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
9797
9798 2004-03-30  Benjamin Otte  <otte@gnome.org>
9799
9800         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9801           set the offset of the buffer to the requested offset
9802         * gst/elements/gsttypefind.c: (stop_typefinding):
9803           revert patch 1.18 (which I unfortunately don't know the reason for).
9804           This is needed to allow downstream elements to seek. Otherwise
9805           typefind might overwrite a previous seek by downstream elements.
9806           This lead to errors with id3tag and typefind on some mp3s.
9807         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9808         (gst_entry_scheduler_iterate):
9809           be more verbose when debugging
9810
9811 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9812
9813         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9814           make sure we don't get NULL strings
9815
9816 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9817
9818         * gst/gstcaps.c:
9819         * gst/gstelement.c:
9820         * gst/gstelementfactory.c: (gst_element_factory_get_type):
9821         * gst/gstindex.c: (gst_index_resolver_get_type),
9822         (gst_index_get_type), (gst_index_factory_get_type):
9823         * gst/gstinfo.c:
9824         * gst/gstpad.c:
9825         * gst/gstplugin.c:
9826         * gst/gsturi.c: (gst_uri_handler_get_type):
9827         * gst/gstvalue.c:
9828           first batch of documentation fixes
9829
9830 2004-03-29  David Schleef  <ds@schleef.org>
9831
9832         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
9833         * docs/gst/gstreamer-docs.sgml:  More hacking
9834         * docs/gst/gstreamer-sections.txt:
9835         * docs/gst/tmpl/cothreads_compat.sgml:
9836         * docs/gst/tmpl/gstcaps.sgml:
9837         * docs/gst/tmpl/gstclock.sgml:
9838         * docs/gst/tmpl/gstelement.sgml:
9839         * docs/gst/tmpl/gstevent.sgml:
9840         * docs/gst/tmpl/gstpad.sgml:
9841         * docs/gst/tmpl/gstutils.sgml:
9842         * docs/gst/tmpl/gstxml.sgml:
9843         * docs/gst/tmpl/gthread-cothreads.sgml:
9844         * docs/random/ds/0.9-suggested-changes:
9845         * gst/elements/gstfakesink.h: doc fixes
9846         * gst/elements/gstfakesrc.h: doc fixes
9847         * gst/gstcaps.c: doc fixes
9848         * gst/gstcaps.h: doc fixes
9849         * gst/gstelement.c: doc fixes
9850         * gst/gstelement.h: doc fixes
9851         * gst/gstindex.c: doc fixes
9852         * gst/gstinfo.c: doc fixes
9853         * gst/gstpad.c: doc fixes
9854         * gst/gstpad.h: doc fixes
9855         * gst/gstplugin.c: doc fixes
9856         * gst/gsttypefind.h: doc fixes
9857         * gst/gsturi.c: doc fixes
9858         * gst/gstvalue.c: doc fixes
9859
9860 2004-03-29  Colin Walters  <walters@redhat.com>
9861
9862         * gst/registries/gstxmlregistry.c (get_time)
9863         (plugin_times_older_than_recurse):
9864         Use the result of stat to determine whether a path is a file,
9865         so we don't attempt to opendir() files.
9866
9867 2004-03-29  Benjamin Otte  <otte@gnome.org>
9868
9869         * gst/gstpad.c: (gst_pad_set_explicit_caps):
9870           print caps in debugging output when setting caps failed
9871         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9872         (schedule_next_element), (get_buffer), (run_chainhandler),
9873         (element_may_start), (gst_entry_scheduler_chain_handler),
9874         (gst_entry_scheduler_get_handler),
9875         (gst_entry_scheduler_state_transition),
9876         (gst_entry_scheduler_pad_link):
9877           make this scheduler a testcase for mandatory
9878           discont-before-first-buffer which is needed if we want to allow apps
9879           to release the sound device.
9880           add SCHED_ASSERT macro to print scheduler state before an assertion
9881           triggers.
9882
9883 2004-03-29  Benjamin Otte  <otte@gnome.org>
9884
9885         * COPYING:
9886           replace by LGPL (former COPYING.LIB). The core is completely
9887           licensed LGPL.
9888         * COPYING.LIB:
9889           remove
9890
9891 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9892
9893         * po/af.po:
9894         * po/sv.po:
9895           updated Afrikaans and Swedish
9896
9897 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9898
9899         * po/LINGUAS:
9900         * po/az.po:
9901           adding Azerbaijani (Mətin Əmirov)
9902
9903 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
9904
9905         * gst/gstelement.h: 
9906         * gst/gstelement.c (gst_element_set_time_delay): New function for
9907         setting element time taking into account a hardware buffering
9908         delay.
9909         (gst_element_set_time): Now just an invocation of
9910         gst_element_set_time_delay.
9911         * gst/gstclock.h: 
9912         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
9913         allowing to set event times in the future.
9914         (gst_clock_get_event_time): Now just an invocation of
9915         gst_clock_get_event_time_delay.
9916
9917 2004-03-28  Benjamin Otte  <otte@gnome.org>
9918
9919         * gst/gstbin.c: (gst_bin_set_element_sched),
9920         (gst_bin_unset_element_sched):
9921           don't add decoupled elements to schedulers - otherwise it's
9922           impossible to control if a link to a decoupled element was already
9923           removed from a scheduler or not.
9924         * gst/schedulers/cothreads_compat.h:
9925         * gst/schedulers/gthread-cothreads.h:
9926           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
9927           is no "unused" warning.
9928         * gst/schedulers/Makefile.am:
9929         * gst/schedulers/entryscheduler.c:
9930           add new scheduler, based on ideas from talking to David and Martin.
9931           It's supposed to be small and correct. Currently it's also slow (but
9932           it's not noticable)
9933         * examples/retag/retag.c: (main):
9934         * testsuite/bytestream/test1.c: (main):
9935           fix missing NULLs at end of variadic functions
9936         * testsuite/elements/.cvsignore:
9937           update
9938
9939 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
9940
9941         * gst/gstevent.h:
9942         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
9943
9944 2004-03-25  David Schleef  <ds@schleef.org>
9945
9946         * docs/gst/gstreamer-sections.txt:  More doc hacking.
9947         * docs/gst/tmpl/gstaggregator.sgml:
9948         * docs/gst/tmpl/gstautoplugfactory.sgml:
9949         * docs/gst/tmpl/gstbin.sgml:
9950         * docs/gst/tmpl/gstbuffer.sgml:
9951         * docs/gst/tmpl/gstbufferstore.sgml:
9952         * docs/gst/tmpl/gstfakesink.sgml:
9953         * docs/gst/tmpl/gstfakesrc.sgml:
9954         * docs/gst/tmpl/gstmd5sink.sgml:
9955         * docs/gst/tmpl/gstreamer-unused.sgml:
9956         * docs/gst/tmpl/gstsearchfuncs.sgml:
9957         * docs/gst/tmpl/gstshaper.sgml:
9958         * docs/gst/tmpl/gstspider.sgml:
9959         * docs/gst/tmpl/gsttee.sgml:
9960         * docs/gst/tmpl/gstutils.sgml:
9961         * docs/gst/tmpl/gstvalue.sgml:
9962         * docs/gst/tmpl/gstxml.sgml:
9963         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
9964         and we don't support it.
9965         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
9966         (gst_use_threads), (gst_has_threads): same
9967         * gst/gstthreaddummy.c: same
9968         * gst/autoplug/gstspider.c: Make gst_spider_details static.
9969         * gst/autoplug/gstspider.h: same
9970         * gst/elements/gstaggregator.h: Remove bogus function from header
9971         * gst/elements/gstfakesink.h: same
9972         * gst/elements/gstfakesrc.h: same
9973         * gst/elements/gstmd5sink.h: same
9974         * gst/elements/gstshaper.h: same
9975         * gst/elements/gsttee.h: same
9976         * gst/gstbin.c: doc fixes
9977         * gst/gstbin.h: Remove unused definition.
9978         * gst/gstbuffer.c: doc fixes
9979         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
9980         * gst/gstfilter.c: doc fixes
9981         * gst/gsttag.c: doc fixes
9982         * gst/gstvalue.c: doc fixes
9983
9984 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9985
9986         * docs/pwg/advanced-types.xml:
9987           Document typefinding.
9988         * docs/pwg/other-oneton.xml:
9989           Document one-to-n elements, demuxers and parsers.
9990
9991 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
9992
9993         reviewed by: David Schleef  <ds@schleef.org>
9994
9995         * configure.ac: Check bison version (bug #127838)
9996
9997 2004-03-25  David Schleef  <ds@schleef.org>
9998
9999         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10000         * docs/gst/gstreamer-sections.txt:
10001         * docs/gst/tmpl/gstautoplug.sgml:
10002         * docs/gst/tmpl/gststaticautoplug.sgml:
10003         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10004         * docs/gst/tmpl/gstutils.sgml:
10005         * docs/gst/tmpl/gstxml.sgml:
10006
10007 2004-03-24  David Schleef  <ds@schleef.org>
10008
10009         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10010         manual being such complete crap, that I decided to do major
10011         hacking of it.  This checkin replaces any fine tuning that
10012         may have been done previously, with the benefit of actually
10013         being complete for much of the API that was changed since
10014         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10015         * docs/gst/gstreamer-sections.txt:
10016         * docs/gst/tmpl/GstBin.sgml:
10017         * docs/gst/tmpl/GstBuffer.sgml:
10018         * docs/gst/tmpl/GstCaps.sgml:
10019         * docs/gst/tmpl/GstClock.sgml:
10020         * docs/gst/tmpl/GstCompat.sgml:
10021         * docs/gst/tmpl/GstData.sgml:
10022         * docs/gst/tmpl/GstElement.sgml:
10023         * docs/gst/tmpl/GstEvent.sgml:
10024         * docs/gst/tmpl/GstIndex.sgml:
10025         * docs/gst/tmpl/GstStructure.sgml:
10026         * docs/gst/tmpl/GstTag.sgml:
10027         * docs/gst/tmpl/cothreads.sgml:
10028         * docs/gst/tmpl/cothreads_compat.sgml:
10029         * docs/gst/tmpl/gettext.sgml:
10030         * docs/gst/tmpl/grammar.tab.sgml:
10031         * docs/gst/tmpl/gst-i18n-app.sgml:
10032         * docs/gst/tmpl/gst-i18n-lib.sgml:
10033         * docs/gst/tmpl/gst.sgml:
10034         * docs/gst/tmpl/gst_private.sgml:
10035         * docs/gst/tmpl/gstaggregator.sgml:
10036         * docs/gst/tmpl/gstarch.sgml:
10037         * docs/gst/tmpl/gstatomic.sgml:
10038         * docs/gst/tmpl/gstatomic_impl.sgml:
10039         * docs/gst/tmpl/gstbin.sgml:
10040         * docs/gst/tmpl/gstbuffer.sgml:
10041         * docs/gst/tmpl/gstbufferstore.sgml:
10042         * docs/gst/tmpl/gstcaps.sgml:
10043         * docs/gst/tmpl/gstclock.sgml:
10044         * docs/gst/tmpl/gstcompat.sgml:
10045         * docs/gst/tmpl/gstconfig.sgml:
10046         * docs/gst/tmpl/gstcpu.sgml:
10047         * docs/gst/tmpl/gstdata.sgml:
10048         * docs/gst/tmpl/gstdata_private.sgml:
10049         * docs/gst/tmpl/gstelement.sgml:
10050         * docs/gst/tmpl/gstenumtypes.sgml:
10051         * docs/gst/tmpl/gsterror.sgml:
10052         * docs/gst/tmpl/gstevent.sgml:
10053         * docs/gst/tmpl/gstfakesink.sgml:
10054         * docs/gst/tmpl/gstfakesrc.sgml:
10055         * docs/gst/tmpl/gstfilesink.sgml:
10056         * docs/gst/tmpl/gstfilter.sgml:
10057         * docs/gst/tmpl/gstindex.sgml:
10058         * docs/gst/tmpl/gstinfo.sgml:
10059         * docs/gst/tmpl/gstinterface.sgml:
10060         * docs/gst/tmpl/gstlog.sgml:
10061         * docs/gst/tmpl/gstmacros.sgml:
10062         * docs/gst/tmpl/gstmarshal.sgml:
10063         * docs/gst/tmpl/gstmd5sink.sgml:
10064         * docs/gst/tmpl/gstmultifilesrc.sgml:
10065         * docs/gst/tmpl/gstobject.sgml:
10066         * docs/gst/tmpl/gstpad.sgml:
10067         * docs/gst/tmpl/gstparse.sgml:
10068         * docs/gst/tmpl/gstpipeline.sgml:
10069         * docs/gst/tmpl/gstplugin.sgml:
10070         * docs/gst/tmpl/gstpluginfeature.sgml:
10071         * docs/gst/tmpl/gstqueue.sgml:
10072         * docs/gst/tmpl/gstreamer-unused.sgml:
10073         * docs/gst/tmpl/gstregistry.sgml:
10074         * docs/gst/tmpl/gstregistrypool.sgml:
10075         * docs/gst/tmpl/gstscheduler.sgml:
10076         * docs/gst/tmpl/gstsearchfuncs.sgml:
10077         * docs/gst/tmpl/gstshaper.sgml:
10078         * docs/gst/tmpl/gstspider.sgml:
10079         * docs/gst/tmpl/gstspideridentity.sgml:
10080         * docs/gst/tmpl/gststructure.sgml:
10081         * docs/gst/tmpl/gstsystemclock.sgml:
10082         * docs/gst/tmpl/gsttag.sgml:
10083         * docs/gst/tmpl/gsttaginterface.sgml:
10084         * docs/gst/tmpl/gsttee.sgml:
10085         * docs/gst/tmpl/gstthread.sgml:
10086         * docs/gst/tmpl/gsttrace.sgml:
10087         * docs/gst/tmpl/gsttrashstack.sgml:
10088         * docs/gst/tmpl/gsttypefind.sgml:
10089         * docs/gst/tmpl/gsttypes.sgml:
10090         * docs/gst/tmpl/gsturi.sgml:
10091         * docs/gst/tmpl/gsturitype.sgml:
10092         * docs/gst/tmpl/gstutils.sgml:
10093         * docs/gst/tmpl/gstvalue.sgml:
10094         * docs/gst/tmpl/gstversion.sgml:
10095         * docs/gst/tmpl/gstxml.sgml:
10096         * docs/gst/tmpl/gstxmlregistry.sgml:
10097         * docs/gst/tmpl/gthread-cothreads.sgml:
10098         * docs/gst/tmpl/types.sgml:
10099
10100 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10101
10102         * docs/pwg/other-sink.xml:
10103         * docs/pwg/other-source.xml:
10104           Documentation on how to write source and sink elements. Other
10105           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10106           manager, autoplugger) are all still pending.
10107
10108 2004-03-25  Benjamin Otte  <otte@gnome.org>
10109
10110         * testsuite/elements/Makefile.am:
10111         * testsuite/elements/gst-compprep-check:
10112           add check to make sure gst-compprep works
10113         * testsuite/elements/gst-inspect-check.in:
10114           improve initialization output
10115         * testsuite/Makefile.am:
10116         * testsuite/gst-inspect-check:
10117           remove old file
10118
10119 2004-03-24  David Schleef  <ds@schleef.org>
10120
10121         * testsuite/elements/Makefile.am:
10122         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10123         to the testsuite.
10124
10125 2004-03-24  Benjamin Otte  <otte@gnome.org>
10126
10127         * libs/gst/control/dparam.c: (gst_dparam_attach),
10128         (gst_dparam_detach):
10129         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10130           fix lvalue casts for real
10131
10132 2004-03-24  Benjamin Otte  <otte@gnome.org>
10133
10134         * gst/schedulers/gstbasicscheduler.c:
10135         (gst_basic_scheduler_src_wrapper):
10136         * gst/schedulers/gstoptimalscheduler.c:
10137         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10138         (pad_clear_queued), (gst_opt_scheduler_add_element),
10139         (gst_opt_scheduler_remove_element):
10140           fix GStreamer to not have issues with lvalue casts anymore (fixes
10141           #136841)
10142
10143 2004-03-24  Benjamin Otte  <otte@gnome.org>
10144
10145         * gst/gstelement.c:
10146           add documentation about a gobject quirk where the object hasn't the
10147           correct class pointer set on initialization
10148         * gst/schedulers/gstbasicscheduler.c:
10149         (gst_basic_scheduler_src_wrapper):
10150           make sure to not run into an infinite loop
10151
10152 2004-03-22  Benjamin Otte  <otte@gnome.org>
10153
10154         * gst/gstutils.c: (gst_util_dump_mem):
10155         * gst/gstutils.h:
10156           first argument of gst_util_dump_mem should be const
10157
10158 2004-03-22  Johan Dahlin  <johan@gnome.org>
10159
10160         * gst/gstvalue.h: Clean up a little bit.
10161
10162 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10163
10164         reviewed by Benjamin Otte  <otte@gnome.org>
10165
10166         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10167         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10168         (gst_aggregator_class_init), (gst_aggregator_init):
10169         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10170         (gst_filesrc_dispose), (gst_filesrc_set_location):
10171         * gst/elements/gstidentity.c: (gst_identity_finalize),
10172         (gst_identity_class_init), (gst_identity_chain):
10173         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10174         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10175         (gst_statistics_class_init):
10176         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10177         (gst_tee_get_property):
10178           clean up used memory in this elements correctly on teardown (closes
10179           #137279)
10180
10181 2004-03-20  Colin Walters  <walters@redhat.com>
10182
10183         * gst/registries/gstxmlregistry.c:
10184         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10185         registry saving atomic.
10186
10187 2004-03-20  Colin Walters  <walters@redhat.com>
10188
10189         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10190         Just use
10191         access() instead of actually creating and deleting files.
10192
10193 2004-03-18  David Schleef  <ds@schleef.org>
10194
10195         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10196         (bug #137625)
10197
10198 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10199
10200         * po/sv.po: updated translation (Christian Rose)
10201
10202 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10203
10204         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10205         (gst_filesink_get_query_types), (_do_init),
10206         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10207           return FALSE silently
10208         * po/af.po: updated translation (Petri Jooste)
10209
10210 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10211
10212         * Makefile.am:
10213         * configure.ac:
10214           dist common properly
10215         * po/af.po:
10216         * po/fr.po:
10217         * po/nl.po:
10218         * po/sr.po:
10219         * po/sv.po:
10220           refreshing translations
10221
10222 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10223
10224         * po/LINGUAS:
10225         * po/sv.po:
10226         * po/af.po:
10227           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10228
10229 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10230
10231         * Makefile.am: use common/release.mak
10232
10233 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10234
10235         * docs/faq/gst-uninstalled:
10236           adding gst-monkeysaudio to the list of possible plugin dirs
10237
10238 2004-03-16  David Schleef  <ds@schleef.org>
10239
10240         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10241         (gst_init_check_with_popt_table):  Fix some gettext strings to
10242         make them easier to translate.  Required making the strings
10243         non-const.
10244
10245 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10246
10247         * configure.ac: bump nano to 1
10248
10249 === release 0.8.0 ===
10250
10251 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10252
10253         * configure.ac: release 0.8.0, "Executive Slacks"
10254
10255 2004-03-16  Johan Dahlin  <johan@gnome.org>
10256
10257         * gst/schedulers/gstoptimalscheduler.c
10258         (gst_opt_scheduler_pad_unlink): Remove double ;,
10259         spotted by Scott Wheeler
10260
10261 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10262
10263         * configure.ac: bump libtool version
10264
10265 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10266
10267         * gst/gstcaps.h:
10268         * gst/gststructure.h:
10269           add reserved padding
10270
10271 2004-03-15  Benjamin Otte  <otte@gnome.org>
10272
10273         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10274           set the first parameter for select call correctly.
10275           (fixes #137230)
10276
10277 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10278
10279         * *.c,*.h: don't mix tabs and spaces
10280
10281 2004-03-15  Johan Dahlin  <johan@gnome.org>
10282
10283         * gst/schedulers/gstoptimalscheduler.c
10284         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10285         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10286
10287         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10288         
10289 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10290
10291         * testsuite/Rules:
10292           fix gst-register rules
10293
10294 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10295
10296         * testsuite/Rules:
10297           use versioned gst-register
10298
10299 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10300
10301         * docs/libs/gstreamer-libs-sections.txt:
10302           remove </SUBSECTION>
10303         * gst/gstplugin.c:
10304         * gst/gstregistry.c: (gst_registry_add_plugin):
10305         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10306         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10307           add debugging and fix some comment blocks
10308
10309 2004-03-15  Johan Dahlin  <johan@gnome.org>
10310
10311         * *.h: Revert indent changes.
10312         
10313 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10314
10315         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10316           g_error_free the g_error
10317         * tools/gst-feedback-m.m:
10318           check for other versions of gstreamer
10319         * tools/gst-indent:
10320           use sh, not bash
10321
10322 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10323
10324         * tools/gst-register.c: do not spill paths when registries are not
10325           writable, until we fix the "user running gst-register" case.
10326
10327 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10328
10329         * *.c, *.h: commit of gst-indent run on core
10330
10331 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10332
10333         * tools/gst-indent:
10334         * tools/Makefile.am:
10335           add our indentation style as a script
10336
10337 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10338
10339         * po/sr.po:
10340         * po/LINGUAS:
10341           added Serbian translation
10342
10343 2004-03-13  Benjamin Otte  <otte@gnome.org>
10344
10345         * gst/gstelement.c:
10346           add documentation note about gst_element_found_tags_for_pad not
10347           being usable in getfunctions. (see #137042)
10348
10349 2004-03-12  David Schleef  <ds@schleef.org>
10350
10351         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10352         change API right now!  Readd gst_caps_is_simple() macro.
10353         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10354         uninitialized variable.  I'd bet this caused crashes.
10355         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10356
10357 2004-03-12  Johan Dahlin  <johan@gnome.org>
10358
10359         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10360         * gst/gstcaps.h: Clean up
10361
10362         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10363         _gst_caps_initalize()
10364
10365         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10366         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10367
10368         * gst/gststructure.c (gst_structure_get_type): Ditto
10369
10370         * gst/gststructure.h: Ditto
10371         
10372 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10373
10374         * gst/gstqueue.c: (gst_queue_init):
10375           Reset default max. values in queues. Reason is simply to avoid
10376           braindead use. If you want wider values, use the properties. The
10377           default is supposed to always work. Wider values would make this
10378           beast a memory hog by default (250 full-PAL RGB32 video frames?
10379           That's 440 MB! No thank you).
10380
10381 2004-03-10  David Schleef  <ds@schleef.org>
10382
10383         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10384         were found.  (bug #136793)
10385
10386 2004-03-10  Johan Dahlin  <johan@gnome.org>
10387
10388         * gst/schedulers/gstoptimalscheduler.c
10389         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10390         links to elements within the same group, so we can finally remove
10391         that annoying warning. Refactor the code a little bit
10392         (group_dec_links_for_element): Split out
10393
10394 2004-03-09  David Schleef  <ds@schleef.org>
10395
10396         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10397         (bug #134863)
10398
10399 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10400
10401         * configure.ac: first bug fix due to major/minor bump
10402
10403 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10404
10405         * configure.ac: bump nano to 1
10406
10407 === release 0.7.6 ===
10408
10409 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10410
10411         * NEWS:
10412         * RELEASE:
10413         * configure.ac:
10414           releasing 0.7.6, "Almost"
10415         * po/fr.po:
10416         * po/nl.po:
10417         * tools/Makefile.am:
10418         * tools/gst-feedback-m.m:
10419           unversioned source
10420
10421 2004-03-09  Johan Dahlin  <johan@gnome.org>
10422
10423         Reviewed by: Thomas Vander Stichele
10424
10425         * gst/gstelement.c (gst_element_class_init): register second
10426         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10427         language bindings can (de)marshall correctly.
10428
10429         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10430
10431         * gst/gsterror.c (gst_g_error_get_type): New function
10432
10433         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10434         with VOID:OBJECT,OBJECT,STRING 
10435
10436 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10437
10438         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10439         Free a leaked g_timer on early returns.
10440
10441 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10442
10443         * docs/pwg/advanced-types.xml:
10444           Add cinepak description.
10445
10446 2004-03-07  David Schleef  <ds@schleef.org>
10447
10448         * docs/random/mimetypes:  Added cinepak description
10449
10450 2004-03-07  Andy Wingo  <wingo@pobox.com>
10451
10452         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10453
10454         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10455         there are no links to other groups when a group is destroyed.
10456         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10457         removed from a group, make sure the link count to elements linked
10458         to other pads is appropriately decremented. This really fixes
10459         #135672.
10460
10461         The 1.60->1.61 patch has been reapplied in light of this fix.
10462
10463         * gst/gstelement.c (gst_element_dispose): Really protect against
10464         multiple invocations this time.
10465
10466 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10467
10468         * docs/gst/gstreamer-sections.txt:
10469         * docs/gst/tmpl/gsttag.sgml:
10470           remove some deprecated functions, document some existing ones
10471         * gst/gsttag.c: (gst_tag_get_flag):
10472         * gst/gsttag.h:
10473           add accessor function
10474
10475 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10476
10477         * docs/gst/gstreamer-sections.txt:
10478         * docs/gst/tmpl/gsttag.sgml:
10479         * docs/gst/tmpl/gstxml.sgml:
10480         * gst/gsttag.c: (gst_tag_get_flag):
10481         * gst/gsttag.h:
10482
10483 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10484
10485         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10486         leak
10487
10488 2004-03-05  David Schleef  <ds@schleef.org>
10489
10490         * REQUIREMENTS: Add bison and flex.
10491         * configure.ac: Fix comment about bison.
10492         * docs/random/ds/0.9-suggested-changes: yer ma
10493         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10494
10495 2004-03-05  Benjamin Otte  <otte@gnome.org>
10496
10497         * gst/gstelement.c: (gst_element_error_full):
10498           revert recent recursive state changing commit - messing with other
10499           elements' states is evil and should be done by apps only.
10500
10501 2004-03-05  Benjamin Otte  <otte@gnome.org>
10502
10503         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10504           check for empty intersection instead of NULL caps
10505         (gst_element_get_compatible_pad_filtered):
10506           remove old workaround that is only a bug nowadays
10507
10508 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10509
10510         * gst/gstelement.c: (gst_element_error_full):
10511           make elements try to recursively change state to PAUSED on all
10512           parents after an error to suppress ensuing warnings
10513         * gst/parse/grammar.y:
10514           make it check if it was able to sync the state, and throw an error
10515           if not, so stuff like
10516           oggdemux ! vorbisdec ! osssink gets caught
10517
10518 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10519
10520         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10521           it contains lib64; use AS_AC_EXPAND to handle it properly
10522
10523 2004-03-05  David Schleef  <ds@schleef.org>
10524
10525         * gst/gstcpuid_i386.s:  Remove unused code
10526         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10527         (gst_getbits_newbuf): Remove MMX code
10528         * libs/gst/getbits/getbits.h: Remove MMX code
10529
10530 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10531
10532         * debian/.cvsignore:
10533         * debian/README.Debian:
10534         * debian/changelog:
10535         * debian/control:
10536         * debian/control.in:
10537         * debian/copyright:
10538         * debian/gstreamer-core-libs-dev.files:
10539         * debian/gstreamer-core-libs.files:
10540         * debian/gstreamer-core.files:
10541         * debian/gstreamer-core.postinst:
10542         * debian/gstreamer-core.postrm:
10543         * debian/gstreamer-doc.files:
10544         * debian/gstreamer-doc.links:
10545         * debian/gstreamer-doc.lintian:
10546         * debian/gstreamer-runtime.files:
10547         * debian/gstreamer-runtime.manpages:
10548         * debian/gstreamer-runtime.postinst:
10549         * debian/gstreamer-runtime.postrm:
10550         * debian/gstreamer-tools.files:
10551         * debian/gstreamer-tools.manpages:
10552         * debian/libgstreamer-dev.files:
10553         * debian/libgstreamer0.4.1.files:
10554         * debian/libgstreamerVERSION.files:
10555         * debian/rules:
10556         Debian package info not maintained here.
10557
10558 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10559
10560         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10561         * gst/gstbin.c: (gst_bin_class_init):
10562         * gst/gstelement.c: (gst_element_class_init):
10563         * gst/gstindex.c: (gst_index_class_init):
10564         * gst/gstobject.c: (gst_object_class_init),
10565         (gst_signal_object_class_init):
10566         * gst/gstpad.c: (gst_pad_template_class_init):
10567         * gst/gstregistry.c: (gst_registry_class_init):
10568         * gst/gsturi.c: (gst_uri_handler_base_init):
10569         * gst/gstxml.c: (gst_xml_class_init):
10570         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10571         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10572           make all signal names use dashes instead of underscore
10573
10574 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10575
10576         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10577
10578 2004-03-03  Benjamin Otte  <otte@gnome.org>
10579
10580         * gst/schedulers/gstoptimalscheduler.c:
10581           revert last commit by Andy Wingo. It causes segfaults on unreffing
10582           in Rhythmbox. (see bug #135672)
10583
10584 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10585
10586         * po/fr.po: fix typo
10587
10588 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10589
10590         * tools/gst-inspect.c: (main): 
10591         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10592
10593 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10594
10595         * configure.ac:
10596           get GLIB_ONLY and POPT flags for the nonversioned binaries
10597         * tools/Makefile.am:
10598           use them
10599
10600 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10601
10602         * gst/gst.c: (init_post):
10603           change so that GST_REGISTRY now is where the global registry gets
10604           saved, since that is where plugins now get attached to first, and
10605           spilled over to the user registry.  Note that in the case of using
10606           GST_REGISTRY env var, we don't want to affect any real registries
10607           beyond the one given by this var, and thus we don't set a user
10608           registry to spill to.  So make sure GST_REGISTRY is writable.
10609
10610 2004-03-01  David Schleef  <ds@schleef.org>
10611
10612         * AUTHORS:  Added some names.  Add yourself if you're missing.
10613
10614 2004-03-01  David Schleef  <ds@schleef.org>
10615
10616         * MAINTAINERS: Add
10617
10618 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10619
10620         * configure.ac:
10621           remove whitespace
10622         * docs/gst/tmpl/gstbuffer.sgml:
10623         * docs/gst/tmpl/gstdata.sgml:
10624         * docs/gst/tmpl/gstreamer-unused.sgml:
10625         * docs/gst/tmpl/gstxml.sgml:
10626           doc update
10627         * docs/manuals.mak:
10628           add a FIXME
10629         * docs/pwg/intro-preface.xml:
10630         * docs/pwg/pwg.xml:
10631           remove GNOME
10632         * gst/gst.c: (init_post):
10633           try GST_PLUGIN_PATH paths for the _global_registry first
10634         * gst/gstelement.h:
10635           add the error message as well, otherwise (null) debug info doesn't
10636           make much sense
10637         * tools/gst-register.c: (main):
10638           spill paths to next registry if this registry is not writable
10639         * po/fr.po:
10640         * po/nl.po:
10641           translation updates
10642
10643 2004-03-01  Johan Dahlin  <johan@gnome.org>
10644
10645         * gst/gstbuffer.c (_gst_buffer_initialize): 
10646         * gst/gstdata.c (gst_data_get_type): 
10647         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10648         instead of ref, since some applications that uses GBoxed
10649         routines depends on a function that actually returns a copy.
10650
10651 2004-02-27  Benjamin Otte  <otte@gnome.org>
10652
10653         * gst/gstbuffer.h:
10654           remove gst_buffer_free, use gst_data_unref
10655         * gst/gstdata.c: (gst_data_get_type):
10656           use refcounting in GstData GBoxed registration
10657         * gst/gstdata.h:
10658           remove gst_data_free, use gst_data_unref
10659
10660 2004-02-27  Johan Dahlin  <johan@gnome.org>
10661
10662         * gst/gstdata.c (gst_data_get_type): New function, register
10663         GstData as a GBoxed type.
10664
10665         * gst/gstdata.h (GST_TYPE_DATA): New macro
10666
10667 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10668
10669         * Makefile.am:
10670         * gstreamer.spec.in:
10671           put back RELEASE
10672         * gst/Makefile.am:
10673           clean up non-disting of built files
10674         * testsuite/debug/commandline.c:
10675           test fix for option rename
10676
10677 2004-02-26  David Schleef  <ds@schleef.org>
10678
10679         * configure.ac:  We don't really need glib-2.3.  Also remove
10680         some unneeded checks for library functions.
10681         * gst/Makefile.am:  Instead, we need to not dist files created
10682         by glib-genmarshal.
10683
10684 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10685
10686         * configure.ac:
10687           bump glib required version to 2.3.0 for g_value_takes_boxed
10688
10689  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10690
10691         * common/m4/gst-docs.m4
10692         change flavour text from enable to disable as enable is our default
10693         closes bug Bug 135304
10694
10695 === release 0.7.5 ===
10696  
10697  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10698  
10699         * NEWS:
10700           instate NEWS file
10701         * Makefile.am:
10702         * gstreamer.spec.in:
10703         * RELEASE:
10704           put back release
10705         * configure.ac:
10706         * docs/random/release:
10707           more updates
10708
10709 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10710
10711         * gst/gsttag.c: (_gst_tag_initialize):
10712         * po/fr.po:
10713         * po/nl.po:
10714           remove hyphen from codec tags
10715
10716 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10717
10718         * gst/parse/Makefile.am:
10719           fix dependency so that a make from a clean build works the first
10720           time
10721
10722 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10723
10724         * docs/random/release:
10725           update release strategy
10726         * po/fr.po:
10727           auto-update po file
10728         * po/nl.po:
10729           update dutch translation
10730
10731 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10732
10733         * docs/manual/debugging.xml:
10734         fix manual for new debugging system
10735
10736 2004-02-25  Andy Wingo  <wingo@pobox.com>
10737
10738         * gst/gstpad.c (gst_pad_link_prepare): Re-add
10739         gst_pad_link_prepare. Please email the list with specific reasons
10740         for reverting.
10741
10742 2004-02-24  Andy Wingo  <wingo@pobox.com>
10743
10744         * gst/gstelement.c (gst_element_dispose): Protect against multiple
10745         invocations.
10746
10747         * gst/schedulers/gstoptimalscheduler.c:
10748         I added a mess of prototypes at the top of the file by way of
10749         documentation. Some of the operations on chains and groups were
10750         re-organized.
10751
10752         (create_group): Added a type argument so if the group is enabled,
10753         the setup_group_scheduler knows what to do.
10754         (group_elements): Added a type argument here, too, to be passed on
10755         to create_group.
10756         (group_element_set_enabled): If an unlinked PLAYING element is
10757         added to a bin, we have to create a new group to hold the element,
10758         and this function will be called before the group is added to the
10759         chain. Thus we have a valid case for group->chain==NULL. Instead
10760         of calling chain_group_set_enabled, just set the flag on the group
10761         (the chain's status will be set when the group is added to it).
10762         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
10763         Setup the group scheduler when the group is enabled, not
10764         specifically when an element goes PAUSED->PLAYING. This means
10765         PLAYING elements can be added, linked, and scheduled into a
10766         PLAYING pipeline, as was intended.
10767         (add_to_group): Don't ref the group twice. I don't know when this
10768         double-ref got in here. Removing it has the potential to cause
10769         segfaults if other parts of the scheduler are buggy. If you find
10770         that the scheduler is segfaulting for you, put in an extra ref
10771         here and see if that hacks over the underlying issue. Of course,
10772         then find out what code is unreffing a group it doesn't own...
10773         (create_group): Make the extra refcount floating, and remove it
10774         after adding the element. This means that...
10775         (unref_group): Destroy when the refcount reaches 0, not 1, like
10776         every other refcounted object in the known universe.
10777         (remove_from_group): When a group becomes empty, set it to be not
10778         active, and remove it from its chain. Don't unref it again,
10779         there's no floating reference any more.
10780         (destroy_group): We have to remove the group from the chain in
10781         remove_from_group (rather than here) to break refcounting cycles
10782         (the chain always has a ref on the group). So assert that
10783         group->chain==NULL.
10784         (ref_group_by_count): Removed, it was commented out anyway.
10785         (merge_chains): Use the remove_from_chain and add_to_chain
10786         primitives to do the reparenting, instead of rolling our own
10787         implementation.
10788         (add_to_chain): The first non-disabled group in the chain's group
10789         list will be the entry point for the chain. Because buffers can
10790         accumulate in loop elements' peer bufpens, we preferentially
10791         schedule loop groups before get groups to avoid unnecessary
10792         execution of get-based groups when the bufpens are already full.
10793         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
10794         (get_group_schedule_function): Ditto.
10795         (loop_group_schedule_function): Ditto.
10796         (gst_opt_scheduler_loop_wrapper): Ditto.
10797         (gst_opt_scheduler_iterate): Ditto.
10798
10799         I understand the opt scheduler now, yippee!
10800
10801         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
10802         (gst_pad_get_name, gst_pad_set_chain_function) 
10803         (gst_pad_set_get_function, gst_pad_set_event_function) 
10804         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
10805         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
10806         (gst_pad_set_query_function, gst_pad_get_query_types) 
10807         (gst_pad_get_query_types_default) 
10808         (gst_pad_set_internal_link_function) 
10809         (gst_pad_set_formats_function, gst_pad_set_link_function) 
10810         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
10811         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
10812         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
10813         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
10814         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
10815         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
10816         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
10817         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
10818         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
10819         (gst_pad_event_default_dispatch, gst_pad_event_default) 
10820         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
10821         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
10822         (gst_pad_get_formats_default, gst_pad_get_formats): Better
10823         argument checks, and some doc fixes.
10824
10825         (gst_pad_custom_new_from_template): Um, does anyone
10826         use these functions? Actually make a custom pad instead of a
10827         normal one.
10828         (gst_pad_try_set_caps): Transpose some checks.
10829         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
10830         the pad is in negotiation.
10831         (gst_pad_try_relink_filtered): Use pad_link_prepare.
10832         
10833         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
10834
10835         * gst/gstelement.h: 
10836         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
10837         on the list.
10838
10839 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10840
10841         * gst/gstbin.c: (gst_bin_add):
10842           add error for not being able to add elements
10843
10844 2004-02-22  Julien MOUTTE <julien@moutte.net>
10845
10846         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
10847         audio-codec and video-codec.
10848
10849 2004-02-22  Benjamin Otte  <otte@gnome.org>
10850
10851         reported by: Padraig O'Briain <padraig.obriain@sun.com>
10852
10853         * autogen.sh:
10854           replace test -e with test -x for mkinstalldirs to be more portable.
10855           (fixes #134816)
10856
10857 2004-02-22  Benjamin Otte  <otte@gnome.org>
10858
10859         * gst/gstpad.c:
10860           revert last patch from Andy, it makes gst_pad_can_link_filtered much
10861           too noisy
10862         * gst/gsttag.c: (_gst_tag_initialize):
10863         * gst/gsttag.h:
10864           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
10865         * libs/gst/control/dparam.c: (gst_dparam_attach):
10866         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
10867           check that types for attached dparams match
10868
10869 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10870
10871         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10872         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10873         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10874           fix errors
10875
10876 2004-02-20  Andy Wingo  <wingo@pobox.com>
10877
10878         * gst/gstbin.c:
10879         * gst/gstbuffer.c:
10880         * gst/gstplugin.c:
10881         * gst/registries/gstxmlregistry.c: 
10882         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
10883
10884         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
10885         (gst_element_add_pad): DEBUG->INFO, some fixes.
10886         (gst_element_get_compatible_pad_template): Just see if the
10887         templates' caps intersect, not if one is a strict subset of the
10888         other. This conforms more to what gst_pad_link_intersect() does.
10889         (gst_element_class_add_pad_template): Don't memcpy the pad
10890         template, just ref it.
10891         (gst_element_get_compatible_pad_filtered): Clean up debug messages
10892
10893         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
10894         (gst_pad_link_filtered): Debug changes.
10895         (gst_pad_link_prepare): New function, consolidated from
10896         can_link_filtered and link_filtered.
10897
10898         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
10899         look more like that of the functions in gstelement.c
10900
10901         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
10902         object, and return the empty string if object is NULL.
10903
10904         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
10905         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
10906         LOG, not DEBUG. We still get flex info on debug.
10907
10908         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
10909         debug string more verbose.
10910         (plugin_times_older_than): DEBUG->LOG.
10911
10912 2004-02-20  Julien MOUTTE <julien@moutte.net>
10913
10914         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
10915         will emit found_tag for each stream they demux with the codec.
10916
10917 2004-02-20  Benjamin Otte  <otte@gnome.org>
10918
10919         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
10920           copy navigation event correctly. Check freeing tag lists. 
10921         * gst/gstthread.c: (gst_thread_change_state):
10922           don't abort() on state changing mess - it might happen because of
10923           bugs.
10924         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
10925           use boxed functions
10926         * gst/gstvalue.h:
10927           fix GST_VALUE_HOLDS_CAPS
10928
10929 2004-02-19  David Schleef  <ds@schleef.org>
10930
10931         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
10932         and use it for GST_FUNCTION.  (bug #134750)
10933
10934 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10935
10936         * po/fr.po:
10937         * po/nl.po:
10938           updating translations
10939
10940 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10941
10942         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
10943
10944 2004-02-18  kost@imn.htwk-leipzig.de
10945
10946         reviewed by: David Schleef  <ds@schleef.org>
10947
10948         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
10949         for libgstcontrol.
10950
10951 2004-02-18  David Schleef  <ds@schleef.org>
10952
10953         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10954         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10955         (gst_dpsmooth_new): Additional fixes to get double dparams working.
10956         * tools/gst-inspect.c: (print_element_info): Support dumping of
10957         double dparam information.
10958
10959 2004-02-17  David Schleef  <ds@schleef.org>
10960
10961         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10962         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
10963         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
10964         Use GST_TYPE_CAPS in signal prototype.
10965         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
10966         Convert GST_TYPE_CAPS to boxed.
10967         * gst/gstelement.c: (gst_element_class_init):
10968         Use GST_TYPE_TAG_LIST in signal prototype.
10969         * gst/gstindex.c: (gst_index_class_init):
10970         * gst/gstindex.h:
10971         Add GST_TYPE_INDEX_ENTRY type.
10972         * gst/gstmarshal.list:
10973         Add necessary marshal types.
10974         * gst/gstpad.c: (gst_real_pad_class_init),
10975         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
10976         (gst_pad_recover_caps_error):
10977         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
10978         * gst/gststructure.c: (_gst_structure_initialize),
10979         (gst_structure_copy), (_gst_structure_copy_conditional):
10980         * gst/gststructure.h:
10981         Convert GST_TYPE_STRUCTURE to boxed.
10982         * gst/gsttag.c: (gst_tag_list_get_type):
10983         * gst/gsttag.h:
10984         Add GST_TYPE_TAG_LIST type.
10985
10986 2004-02-17  Julien MOUTTE  <julien@moutte.net>
10987
10988         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
10989         to what we agreed with david.
10990         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
10991
10992 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10993
10994         * po/nl.po: update translation
10995
10996 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10997
10998         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10999           throw an error if spider is trying to play a mime type there is
11000           no decoder for
11001         * po/POTFILES.in:
11002           add gst/autoplug/gstspider.c for translation
11003
11004 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11005
11006         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11007         silently when the pad is negotiating.
11008
11009 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11010
11011         * docs/faq/Makefile.am:
11012           add script to run gstreamer uninstalled 
11013         * docs/faq/faq.xml:
11014         * docs/faq/developing.xml:
11015         * docs/faq/gst-uninstalled:
11016           extract script to run gstreamer uninstalled
11017         * docs/manuals.mak:
11018           add EXTRA_SOURCES variable for Makefile.am's to set to
11019           use additional SOURCE files for the doc build
11020
11021 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11022
11023         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11024
11025 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11026
11027         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11028         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11029         an error was thrown by osssink. Basically a state change failure for
11030         an element in a different scheduling group was considered as
11031         successful, which means that caps nego was going on and weird stuff
11032         happened. Like I wrote in the comment there, if someone wants to
11033         revert that please drop me a mail explaining why because I really see
11034         no point in keeping that broken behaviour there.
11035         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11036         be empty, we then return NULL which will trigger a nice error when 
11037         pulling from the pad.
11038
11039 2004-02-13  David Schleef  <ds@schleef.org>
11040
11041         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11042         (gst_dparam_get_property), (gst_dparam_set_property),
11043         (gst_dparam_do_update_default):
11044         * libs/gst/control/dparam.h:
11045         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11046         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11047         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11048         (gst_dpsmooth_do_update_double):
11049         * libs/gst/control/dparam_smooth.h:
11050         * libs/gst/control/dparammanager.c:
11051         (gst_dpman_inline_direct_update):
11052         Add support for double dparams.
11053
11054 2004-02-13  David Schleef  <ds@schleef.org>
11055
11056         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11057         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11058
11059 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11060
11061         reviewed by: David Schleef  <ds@schleef.org>
11062
11063         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11064         (gst_fdsrc_init), (gst_fdsrc_set_property),
11065         (gst_fdsrc_get_property), (gst_fdsrc_get):
11066         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11067         and sends an EOS event if file descriptor reading times out.
11068
11069 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11070
11071         * configure.ac:
11072           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11073
11074 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11075
11076         * configure.ac: pass required libxml version as argument
11077         (bug reported by Christophe Fergeau)
11078
11079 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11080   
11081         * docs/gst/gstreamer-docs.sgml:
11082         * docs/gst/tmpl/gstxml.sgml:
11083         * docs/libs/gstreamer-libs-docs.sgml:
11084           version API docs
11085
11086 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11087
11088         * gst/gstinfo.c:
11089         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11090         (gst_registry_pool_feature_filter):
11091         * gst/gstthread.c: (gst_thread_class_init):
11092         * gst/gstvalue.c:
11093           add includes exposed by building without libxml
11094         * gst/indexers/Makefile.am:
11095           do not build fileindex when LOADSAVE disabled; we should have
11096           a better libxml check later since fileindex depends on xml, not
11097           LOADSAVE or REGISTRY
11098         * libs/gst/control/Makefile.am:
11099           link with m
11100         * tools/Makefile.am:
11101           fix wrong source code for gst-xmlinspect
11102
11103 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11104
11105         * configure.ac:
11106           fix gcov help output
11107           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11108         * docs/random/release:
11109           some updated releasing notes
11110         * gstreamer.spec.in:
11111           more updates
11112
11113 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11114
11115         * docs/faq/faq.xml:
11116         * docs/manual/manual.xml:
11117         * docs/pwg/pwg.xml:
11118         * docs/pwg/titlepage.xml:
11119           put version in documentation
11120
11121 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11122
11123         * tools/Makefile.am: fix man page installation
11124
11125 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11126
11127         * configure.ac:
11128           don't check for libxml when load/save and registry disabled (#105844)
11129         * gstreamer.spec.in:
11130           sync with fedora candidate spec
11131
11132 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11133
11134         * po/fr.po:
11135         * po/nl.po:
11136           replace multidisksrc with multifilesrc
11137
11138 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11139
11140         * po/POTFILES.in:
11141           update to multidisksrc => multifilesrc file renaming (#134145)
11142
11143 2004-02-11  David Schleef  <ds@schleef.org>
11144
11145         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11146         * docs/gst/tmpl/gstpadtemplate.sgml: same
11147         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11148         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11149         fixing dance.
11150         * gst/gstutils.c: Remove disabled code that uses GstProps.
11151         * gst/registries/gstxmlregistry.h: same
11152         * docs/random/ds/0.9-suggested-changes: random notes
11153
11154 2004-02-11  kost@imn.htwk-leipzig.de
11155
11156         reviewed by: David Schleef  <ds@schleef.org>
11157
11158         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11159         initialisation of clock (bug #134128)
11160
11161 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11162
11163         * configure.ac:
11164         * gst/elements/Makefile.am:
11165         * gst/elements/gstelements.c:
11166         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11167         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11168         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11169         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11170         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11171         * gst/elements/gstmultifilesrc.h:
11172           rename multidisksrc to multifilesrc (part of #122200)
11173
11174 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11175
11176         * docs/manuals.mak:
11177           fix automake complaints
11178         * gst-element-check.m4:
11179           fix unquotedness
11180
11181 2004-02-11  David Schleef  <ds@schleef.org>
11182
11183         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11184         * gst/gstatomic_impl.h: Disable sparc implementation.
11185
11186 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11187
11188         * gst-element-check.m4:
11189           fix underquoted macros as reported by automake 1.8.x (#133800)
11190         * configure.ac:
11191           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11192           by autopoint (fixes #132996)
11193
11194 2004-02-10  Andy Wingo  <wingo@pobox.com>
11195
11196         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11197         way to do inheritance.
11198         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11199         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11200         Routine docs.
11201         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11202         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11203         doc.
11204         (gst_pad_unlink, gst_pad_is_linked): Docs.
11205         (gst_pad_renegotiate): A brief description of capsnego.
11206         (gst_pad_try_set_caps): Document.
11207         (gst_pad_try_set_caps_nonfixed): Document.
11208         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11209         (gst_pad_set_parent): Deprecated (although not out of the API).
11210         (gst_pad_get_parent): Deprecated, although many plugins use this.
11211         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11212         are private and will go away in 0.9.
11213         (gst_pad_perform_negotiate): Doc.
11214         (gst_pad_link_unnegotiate): I think this is meant to be static.
11215         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11216         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11217         (gst_pad_get_peer): Doc updates.
11218         (gst_pad_caps_change_notify): Doc.
11219         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11220         (gst_ghost_pad_new): Doc fixes.
11221
11222         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11223         (gst_object_check_uniqueness): 
11224
11225         * gst/gstelement.c (gst_element_add_pad) 
11226         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11227         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11228         (gst_element_get_static_pad, gst_element_get_pad_list) 
11229         (gst_element_class_get_pad_template_list) 
11230         (gst_element_class_get_pad_template): Work on the docs.
11231         (gst_element_get_pad_template_list): Uses the class method.
11232         (gst_element_get_compatible_pad_template): Docs, and consolidate
11233         some test conditions. 
11234         (gst_element_get_pad_from_template): New static function.
11235         (gst_element_request_compatible_pad): Docs, and work with
11236         non-request compatible templates. 
11237         (gst_element_get_compatible_pad_filtered): Docs and remove
11238         redundant checks.
11239         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11240         (gst_element_link_filtered, gst_element_link_many) 
11241         (gst_element_link, gst_element_link_pads) 
11242         (gst_element_unlink_many): Docs.
11243
11244 2004-02-05  Andy Wingo  <wingo@pobox.com>
11245
11246         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11247         s/pointer/boxed/.
11248
11249         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11250
11251         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11252         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11253         with the type=GST_TYPE_CAPS. This allows language bindings to know
11254         what kind of data they're dealing with.
11255
11256         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11257         to NULL when g_value_init is called. GstCaps, which rolls its own
11258         type implementation, now does the same instead of allocating empty
11259         caps.
11260         (_gst_caps_initialize, _gst_caps_collect_value,
11261         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11262         table methods. This allows G_VALUE_COLLECT to work.
11263
11264 2004-02-05  Andy Wingo  <wingo@pobox.com>
11265
11266         * configure.ac:
11267         * testsuite/Makefile.am (SUBDIRS): 
11268         * testsuite/ghostpads/Makefile.am: 
11269         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11270
11271         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11272         These two routines are the only ones that set
11273         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11274         pad template. They should be made static, depending on ABI needs.
11275         (gst_real_pad_dispose): Handle the case of ghost pads without a
11276         parent. Assert after dealing with ghost pads that the ghost pad
11277         list is empty.
11278         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11279         set after creation.
11280         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11281         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11282         functions. set_property will call add_ghost_pad/remove_ghost_pad
11283         as appropriate.
11284         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11285
11286         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11287         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11288         (gst_element_remove_pad): Handle ghost pads as well.
11289         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11290         depending on API-stability needs).
11291
11292 2004-02-05  Andy Wingo  <wingo@pobox.com>
11293
11294         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11295         of course they're const
11296
11297 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11298
11299         * tools/Makefile.am:
11300         * tools/gst-feedback:
11301         * tools/gst-feedback-0.7:
11302           make gst-feedback versioned too for consistency
11303
11304 2004-02-11  David Schleef  <ds@schleef.org>
11305
11306         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11307         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11308
11309 2004-02-10  Julien MOUTTE <julien@moutte.net>
11310
11311         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11312         the structure does not contain a valid tag list. Adding a safety check
11313         to remove a noisy warning in that case.
11314
11315 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11316
11317         * gst/gst.c: fix name to be in line with others
11318
11319 2004-02-09  Julien MOUTTE <julien@moutte.net>
11320
11321         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11322         not shout that loud when len is 0. Just return 0 silently.
11323
11324 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11325
11326         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11327         because data_unref has one and I prefer the debug to be symetric.
11328         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11329         were refed when added to the queue and unrefed only once when the queue
11330         was flushed. Now the flush handler unref the buffers two times : first
11331         unref for the ref added when pushing in the queue's tail and second
11332         unref to destroy the flushed buffer.
11333
11334 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11335
11336         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11337
11338 2004-02-06  David Schleef  <ds@schleef.org>
11339
11340         * docs/random/ds/0.9-suggested-changes: Random ramblings
11341         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11342         to int before printing.
11343         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11344         * gst/parse/parse.l: same.  See bug #129600
11345
11346 2004-02-06  David Schleef  <ds@schleef.org>
11347
11348         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11349         (gst_index_add_entry), (gst_index_add_associationv),
11350         (gst_index_add_association): Add gst_index_add_associationv()
11351         and clean up gst_index_add_association(). #127133
11352
11353 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11354
11355         * autogen.sh: check out common with right tag if CVS/Tag exists
11356
11357 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11358
11359         * testsuite/ghostpads/ghostpads.c: (main):
11360           fix testsuite from segfaulting
11361
11362 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11363
11364         * Makefile.am: add release target
11365         * configure.ac: bump nano to 1
11366         * docs/random/release:
11367
11368 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11369
11370         * gst/gstcaps.h:
11371         * gst/gstelement.c: (gst_element_base_class_init),
11372         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11373         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11374         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11375         (gst_real_pad_dispose):
11376         * gst/gststructure.c: (gst_structure_free),
11377         (gst_structure_from_string):
11378           put reverted patch back in
11379         * gst/gstelement.c: (gst_element_remove_pad):
11380           free explicit caps if they're set
11381         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11382           copy the structure when fixating
11383
11384 2004-02-05  David Schleef  <ds@schleef.org>
11385
11386         * gst/gstmarshal.list:
11387         * gst/gstpad.c: (gst_real_pad_class_init),
11388         (_gst_real_pad_fixate_accumulator):
11389         Revert POINTER->BOXED change in signal marshaller.
11390
11391 === release 0.7.4 ===
11392                                                                                 
11393 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11394                                                                                 
11395         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11396         * configure.ac: changed for release
11397
11398 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11399
11400         * gstreamer.spec.in:
11401           bump required version of gtk-doc
11402
11403 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11404
11405         * gst/gstcaps.h:
11406         * gst/gstelement.c: (gst_element_base_class_init),
11407         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11408         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11409         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11410         (gst_real_pad_dispose):
11411         * gst/gststructure.c: (gst_structure_free),
11412         (gst_structure_from_string):
11413           revert patch that breaks applications, reapply after release
11414           to get this fixed properly
11415
11416 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11417
11418         * gst/gsttag.c: (_gst_tag_initialize):
11419         * gst/gsttag.h:
11420           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11421
11422 2004-02-04  David Schleef  <ds@schleef.org>
11423
11424         Fix some memleaks:
11425         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11426         (gst_spider_plug_from_srcpad):
11427         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11428
11429 2004-02-04  David Schleef  <ds@schleef.org>
11430
11431         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11432         a GstRealPad before accessing its structure members.
11433
11434 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11435
11436         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11437         (gst_clock_get_speed):
11438         * gst/gstclock.h:
11439           reset padding, remove unused fields
11440
11441 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11442
11443         * gst/autoplug/gstspideridentity.c:
11444         (gst_spider_identity_sink_loop_type_finding):
11445           use get_allowed_caps, not get_caps (fixes #132519)
11446         * gst/elements/gsttypefind.c: (stop_typefinding):
11447           use correct order when sending buffers and seeking
11448
11449 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11450
11451         * configure.ac:
11452         * gst/gstelement.h:
11453         * gst/gstpad.h:
11454         * gst/gstqueue.h:
11455           upgrade libtool CURRENT, reset padding
11456
11457 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11458
11459         * configure.ac:
11460           bump to prerelease
11461           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11462
11463 2004-02-04  David Schleef  <ds@schleef.org>
11464
11465         * docs/random/ds/0.9-suggested-changes: random notes
11466         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11467         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11468         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11469         expansion.
11470         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11471         (gst_filesink_get_query_types): same
11472         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11473         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11474         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11475         to use new GST_PTR_FORMAT.
11476         * gst/gstelement.h: deprecate function factory macros
11477         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11478         These are our last variadic macros that can't be replaced with
11479         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11480         attempting to deprecate gst_element_clock_wait().
11481         * gst/gstevent.h: same
11482         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11483         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11484         * gst/gstpad.h: deprecate function factory macros similar to above.
11485
11486 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11487
11488         * configure.ac:
11489         * tools/Makefile.am:
11490         * tools/gst-run.c: (popt_callback), (hash_print_key),
11491         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11492         (get_candidates), (main):
11493           add new source file to generate non-versioned wrapper binaries
11494           for our tools.
11495
11496 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11497
11498         * gst/gstevent.c: (_gst_event_free):
11499           actually break; inside the switch statement
11500         * gst/parse/grammar.y:
11501           fix memleak where GValues weren't unset
11502
11503 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11504
11505         * gst/gststructure.c: (gst_structure_from_string):
11506           fix huge memleak
11507         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11508         (new_entry), (gst_type_find_element_chain):
11509         * gst/gstelement.c: (gst_element_base_class_init),
11510         (gst_element_class_set_details):
11511         * gst/gstpad.c: (gst_pad_can_link_filtered):
11512           fix smaller memleaks
11513         * gst/gstpad.c: (gst_real_pad_dispose):
11514           check that explicit caps are gone
11515         * gst/gststructure.c: (gst_structure_free):
11516           actually free the structure
11517         * gst/gstelement.c: (gst_element_clear_pad_caps):
11518           unset explicit caps
11519
11520 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11521
11522         * tools/Makefile.am:
11523           use AM_CFLAGS since all the CFLAGS are the same
11524           use AM_LDFAGS
11525
11526 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11527
11528         * docs/manual/gnome.xml:
11529           expand example a little
11530         * gst/gst.c: (gst_init_with_popt_table),
11531         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11532           make sure popt option displays are done with right textdomain
11533           use GstPoptOption type
11534         * gst/gst.h:
11535           create GstPoptOption type
11536
11537 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11538
11539         * gst/gsterror.c: (_gst_stream_errors_init):
11540         * gst/gsterror.h:
11541           adding error type for no codec
11542         * po/POTFILES.in:
11543           add gst-inspect
11544         * po/nl.po:
11545           update dutch translation
11546         * tools/gst-inspect.c: (print_element_list), (main):
11547           do proper internationalization
11548         * tools/gst-launch.c: (idle_func):
11549           remove commented out function call
11550
11551 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11552
11553         * docs/README:
11554           add some error fixing notes
11555         * docs/gst/gstreamer-sections.txt:
11556           remove double entries
11557         * docs/gst/tmpl/gstbin.sgml:
11558         * docs/gst/tmpl/gstclock.sgml:
11559           remove override
11560         * docs/gst/tmpl/gstelement.sgml:
11561         * docs/gst/tmpl/gstindex.sgml:
11562         * docs/gst/tmpl/gstobject.sgml:
11563         * docs/gst/tmpl/gstpadtemplate.sgml:
11564         * docs/gst/tmpl/gstreamer-unused.sgml:
11565         * docs/gst/tmpl/gsttag.sgml:
11566         * docs/gst/tmpl/gstthread.sgml:
11567         * docs/gst/tmpl/gstxml.sgml:
11568         * gst/gsttag.h:
11569           sync header prototypes with c decls
11570         * gst/gsttaginterface.c:
11571           fix doc headers
11572
11573 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11574
11575         * gst/parse/Makefile.am:
11576         * gst/gstobject.h:
11577           get rid of gstmarshal.h dependency. It's not needed.
11578         * gst/gst.h:
11579         * gst/elements/gstfakesink.c:
11580         * gst/elements/gstfakesrc.c:
11581         * gst/elements/gstidentity.c:
11582         * gst/gstbin.c:
11583         * gst/gstelement.c:
11584         * gst/gstindex.c:
11585         * gst/gstobject.c:
11586         * gst/gstpad.c:
11587         * gst/gstthread.c:
11588         * gst/gstxml.c:
11589         * libs/gst/control/dparam.c:
11590         * libs/gst/control/dparammanager.c:
11591           include gstmarshal.h.
11592         Fixes #132045
11593
11594 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11595
11596         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11597         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11598         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11599         * gst/elements/gstfilesrc.h:
11600           don't ref the filesrc when creating mmaped buffers. Don't keep a
11601           list of not-yet-destroyed buffers.
11602         * gst/gstbuffer.h:
11603           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11604
11605 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11606
11607         * gst/gst.c: (init_pre):
11608           remove textdomain
11609
11610 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11611
11612         * docs/pwg/advanced-events.xml:
11613         * docs/pwg/advanced-scheduling.xml:
11614         * docs/pwg/intro-basics.xml:
11615         * docs/pwg/other-manager.xml:
11616         * docs/pwg/other-nton.xml:
11617         * docs/pwg/other-ntoone.xml:
11618         * docs/pwg/other-oneton.xml:
11619         * docs/pwg/pwg.xml:
11620           All sort of documentation... Forgot what. Point is that I want this
11621           in before I leave. The 'other-*' will be the last section and will
11622           explain issues specific to these type of elements.
11623
11624 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11625
11626         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11627         (gst_filesrc_get_read):
11628           set all the values on buffers that we can
11629
11630 2004-02-02  David Schleef  <ds@schleef.org>
11631
11632         Change usage of isblah() to g_ascii_isblah() to be more locale
11633         independent.  (#133076)
11634         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11635         * gst/gstutils.c:
11636         * gst/parse/parse.l:
11637
11638 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11639
11640         reviewed by: David Schleef  <ds@schleef.org>
11641
11642         Fix memory leaks:
11643         * gst/gstcaps.c: (gst_caps_to_string):
11644         * gst/registries/gstxmlregistry.c:
11645         (gst_xml_registry_add_path_list_func),
11646         (gst_xml_registry_parse_padtemplate):
11647
11648 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11649
11650         * gst/gstelement.c: (gst_element_default_error):
11651           suffix error messages with period
11652
11653 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11654
11655         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11656         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11657         * gst/gsterror.c: (gst_error_get_message):
11658           Suffix with dots
11659         * po/fr.po:
11660         * po/nl.po:
11661           Update translation files
11662
11663 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11664
11665         * gst/autoplug/gstspideridentity.c:
11666         (gst_spider_identity_sink_loop_type_finding):
11667         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11668         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11669         (gst_filesink_close_file), (gst_filesink_handle_event),
11670         (gst_filesink_chain):
11671         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11672         (gst_filesrc_get_read), (gst_filesrc_open_file):
11673         * gst/elements/gstidentity.c: (gst_identity_chain):
11674         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11675         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11676         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11677         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11678         * gst/gsterror.c: (_gst_core_errors_init),
11679         (_gst_library_errors_init), (_gst_resource_errors_init),
11680         (_gst_stream_errors_init), (gst_error_get_message):
11681         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11682         (gst_pad_recover_caps_error), (gst_pad_pull):
11683         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11684         * gst/schedulers/gstbasicscheduler.c:
11685         (gst_basic_scheduler_chainhandler_proxy),
11686         (gst_basic_scheduler_gethandler_proxy),
11687         (gst_basic_scheduler_cothreaded_chain):
11688           Suffix error messages with period.
11689           Use (NULL) instead of NULL
11690
11691 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11692
11693         * docs/gst/tmpl/gstelement.sgml:
11694         * docs/gst/tmpl/gstxml.sgml:
11695         * gst/gstelement.c: (gst_element_error_full):
11696           add element path to error
11697
11698 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11699
11700         * docs/random/mimetypes:
11701           update raw int/float info
11702         * gst/gsttag.c: (_gst_tag_initialize):
11703         * gst/gsttag.h:
11704           add GST_TAG_ENCODER
11705
11706 2004-01-30  David Schleef  <ds@schleef.org>
11707
11708         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11709           missing (#132991)
11710
11711 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11712
11713         reviewed by Benjamin Otte 
11714           parts of the patch submitted in bug #113913
11715
11716         * configure.ac:
11717           use AC_C_INLINE. Use = instead of == with test
11718         * examples/plugins/example.c:
11719         * gst/autoplug/gstspideridentity.c:
11720         * gst/elements/gstfdsrc.c:
11721         * gst/elements/gstfilesrc.c:
11722         * gst/elements/gstidentity.c:
11723         * gst/elements/gstmultidisksrc.c:
11724         * gst/elements/gststatistics.c:
11725         * gst/gstelement.c:
11726         * gst/gstobject.c:
11727         * gst/gstpad.c:
11728         * gst/gstpipeline.c:
11729         * gst/gstthread.c:
11730           don't end enums with a comma
11731         * gst/gstindex.c: (gst_index_compare_func):
11732           do explicit casting to gint
11733         * gst/gsttrace.c: (gst_trace_text_flush):
11734           #define strsize as a macro
11735
11736 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11737
11738         * docs/README:
11739         * docs/gst/gstreamer-docs.sgml:
11740         * docs/gst/gstreamer-sections.txt:
11741         * docs/gst/tmpl/gstelement.sgml:
11742         * docs/gst/tmpl/gsterror.sgml:
11743         * docs/gst/tmpl/gstinterface.sgml:
11744         * docs/gst/tmpl/gstreamer-unused.sgml:
11745         * docs/gst/tmpl/gststructure.sgml:
11746         * docs/gst/tmpl/gsttag.sgml:
11747         * docs/gst/tmpl/gsttaginterface.sgml:
11748         * docs/gst/tmpl/gstvalue.sgml:
11749         make sure all API ends up in the built docs
11750         * gst/gstinterface.c:
11751         * gst/gststructure.c: (gst_structure_id_set_value),
11752         (gst_structure_set_value), (gst_structure_id_get_value):
11753         * gst/gststructure.h:
11754         * gst/gstvalue.h:
11755         sync .h with .c declarations
11756
11757 2004-01-30  Julien Moutte  <julien@moutte.net>
11758
11759         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
11760         Ronald will fix riffread.
11761
11762 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11763
11764         * docs/pwg/advanced-interfaces.xml:
11765           Added tuner interface docs.
11766
11767 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11768
11769         * docs/random/mimetypes:
11770           correct Theora information
11771         * gst/gstelement.h:
11772           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
11773
11774 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11775
11776         * gst/gstelement.c: (gst_element_error_full):
11777         * gst/gstelement.h:
11778           GST_ELEMENT_ERROR in enum -> _IN_ERROR
11779
11780 2004-01-29  Julien MOUTTE  <julien@moutte.net>
11781
11782         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11783         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
11784         again and even before DISCONT.
11785         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
11786         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
11787         bytestream so that it's not stopping to fill the bytestream if events
11788         different than EOS or DISCONT are received. Instead it process them so
11789         that they go downstream.
11790
11791 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11792
11793         * docs/gst/tmpl/gstelement.sgml:
11794         * docs/gst/tmpl/gstreamer-unused.sgml:
11795         * docs/gst/tmpl/gstxml.sgml:
11796         * gst/autoplug/gstspideridentity.c:
11797         (gst_spider_identity_sink_loop_type_finding):
11798         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11799         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11800         (gst_filesink_close_file), (gst_filesink_handle_event),
11801         (gst_filesink_chain):
11802         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11803         (gst_filesrc_get_read), (gst_filesrc_open_file):
11804         * gst/elements/gstidentity.c: (gst_identity_chain):
11805         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11806         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11807         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11808         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11809         * gst/gstelement.h:
11810         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11811         (gst_pad_recover_caps_error), (gst_pad_pull):
11812         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11813         * gst/schedulers/gstbasicscheduler.c:
11814         (gst_basic_scheduler_chainhandler_proxy),
11815         (gst_basic_scheduler_gethandler_proxy),
11816         (gst_basic_scheduler_cothreaded_chain):
11817           gst_element_error -> GST_ELEMENT_ERROR
11818
11819 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11820
11821         * docs/Makefile.am:
11822         * docs/gst/tmpl/gstelement.sgml:
11823         * docs/gst/tmpl/gstxml.sgml:
11824         * docs/manuals.mak:
11825         * docs/pwg/advanced-request.xml:
11826         * docs/pwg/advanced-scheduling.xml:
11827         * docs/pwg/advanced-tagging.xml:
11828           fix non-validating docbook using CDATA
11829           make sure make check-local gets run first to check if it validates
11830
11831 2004-01-29  Julien MOUTTE <julien@moutte.net>
11832
11833         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
11834         handling (up and downstream).
11835         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
11836         my_filter thing.
11837
11838 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11839
11840         * docs/pwg/advanced-tagging.xml:
11841           Add docs about tag writing.
11842
11843 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11844
11845         * docs/pwg/advanced-tagging.xml:
11846           Add a part about tag reading and application signalling... Tag
11847           writing still needs to be documented.
11848         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11849           We can set file locations in READY, too.
11850
11851 2004-01-29  Julien MOUTTE <julien@moutte.net>
11852
11853         * docs/random/ds/element-checklist: Adding some notes about src
11854         events.
11855
11856 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11857
11858         * docs/random/mimetypes:
11859           Update docs to point to correct elements for various mimetypes, and
11860           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
11861           <stephane.loeuillet@tiscali.fr>.
11862
11863 2004-01-28  David Schleef  <ds@schleef.org>
11864
11865         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
11866
11867 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11868
11869         * docs/random/mimetypes:
11870           update docs for audio/x-raw-float. Add "buffer-frames=0 means
11871           undefined"
11872         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
11873           make it only work in NULL.
11874         * gst/gstcaps.c:
11875           don't posion NULL caps
11876         * gst/gstelement.c: (gst_element_set_time):
11877           add debugging statement
11878         * gst/gstelement.c: (gst_element_emit_found_tag),
11879         (gst_element_found_tag_func), (gst_element_found_tags):
11880         * gst/gstelement.h:
11881           These functions take const taglists
11882         * gst/gstpad.c: (gst_pad_proxy_getcaps):
11883           fix memleak
11884         * gst/gstpad.c: (gst_pad_event_default):
11885           make more effort on handling discont and clocks, g_warn if everything
11886           fails
11887         * gst/gststructure.c: (gst_structure_remove_fields),
11888         (gst_structure_remove_fields_valist):
11889         * gst/gststructure.h:
11890           add gst_structure_remove_fields(_valist)
11891         * gst/gsttag.c:
11892           fix doc glitch
11893
11894 2004-01-28  David Schleef  <ds@schleef.org>
11895
11896         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
11897         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
11898         Fix memory leakage of gst_caps_to_string().
11899
11900         Use GST_PTR_FORMAT instead of gst_caps_to_string():
11901         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
11902         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
11903         (gst_spider_identity_sink_loop_type_finding):
11904         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11905         (find_suggest):
11906         * gst/gstpad.c: (gst_pad_try_relink_filtered),
11907         (gst_pad_set_explicit_caps):
11908         * gst/parse/grammar.y:
11909
11910 2004-01-28  David Schleef  <ds@schleef.org>
11911
11912         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
11913         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
11914         * docs/random/ds/0.9-suggested-changes: Notes from Company.
11915         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
11916         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
11917         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
11918         (gst_debug_log_default), (_gst_info_printf_extension),
11919         (_gst_info_printf_extension_arginfo):  Add printf extension.
11920         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
11921         * gst/gststructure.c: (gst_structure_to_string),
11922         (_gst_structure_parse_value): Use gst_value_deserialize() and
11923         remove old code.
11924         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
11925         (gst_value_deserialize_boolean), (gst_strtoi),
11926         (gst_value_deserialize_int), (gst_value_deserialize_double),
11927         (gst_value_deserialize_string), (gst_value_deserialize): Implement
11928         a bunch of deserialize functions and gst_value_deserialize.
11929         * gst/gstvalue.h: er, _de_serialize, not unserialize
11930         * testsuite/caps/string-conversions.c: (main): We don't currently
11931         handle (float) in caps, so convert these to (double).
11932         * testsuite/debug/Makefile.am: Add new test for the printf extension
11933         * testsuite/debug/printf_extension.c: (main): same
11934
11935 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11936
11937         * docs/random/company/time:
11938           Add some docs about clocking and time
11939
11940 2004-01-28  Julien MOUTTE <julien@moutte.net>
11941
11942         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
11943
11944 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11945
11946         * docs/pwg/advanced-clock.xml:
11947         * docs/pwg/advanced-dparams.xml:
11948         * docs/pwg/advanced-events.xml:
11949         * docs/pwg/advanced-interfaces.xml:
11950         * docs/pwg/advanced-midi.xml:
11951         * docs/pwg/advanced-request.xml:
11952         * docs/pwg/advanced-scheduling.xml:
11953         * docs/pwg/advanced-tagging.xml:
11954         * docs/pwg/advanced-types.xml:
11955         * docs/pwg/appendix-checklist.xml:
11956         * docs/pwg/building-boiler.xml:
11957         * docs/pwg/building-chainfn.xml:
11958         * docs/pwg/building-filterfactory.xml:
11959         * docs/pwg/building-pads.xml:
11960         * docs/pwg/building-props.xml:
11961         * docs/pwg/building-signals.xml:
11962         * docs/pwg/building-state.xml:
11963         * docs/pwg/building-testapp.xml:
11964         * docs/pwg/intro-basics.xml:
11965         * docs/pwg/intro-preface.xml:
11966         * docs/pwg/other-autoplugger.xml:
11967         * docs/pwg/other-sink.xml:
11968         * docs/pwg/other-source.xml:
11969         * docs/pwg/titlepage.xml:
11970           fix up id's
11971
11972 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11973
11974         * docs/95NonPath:
11975         * docs/HACKING:
11976         * docs/README:
11977         * docs/building-the-docs-on-debian:
11978           collect relevant bits of doc info
11979
11980 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11981
11982         * docs/pwg/advanced_tagging.xml:
11983           Half-assed commit so Thomas can re-arrange document IDs here to be
11984           consistent, too.
11985
11986 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11987
11988         * docs/manual/autoplugging.xml:
11989         * docs/manual/bins-api.xml:
11990         * docs/manual/bins.xml:
11991         * docs/manual/buffers-api.xml:
11992         * docs/manual/buffers.xml:
11993         * docs/manual/clocks.xml:
11994         * docs/manual/components.xml:
11995         * docs/manual/cothreads.xml:
11996         * docs/manual/debugging.xml:
11997         * docs/manual/dparams-app.xml:
11998         * docs/manual/dynamic.xml:
11999         * docs/manual/elements-api.xml:
12000         * docs/manual/elements.xml:
12001         * docs/manual/factories.xml:
12002         * docs/manual/gnome.xml:
12003         * docs/manual/goals.xml:
12004         * docs/manual/helloworld.xml:
12005         * docs/manual/helloworld2.xml:
12006         * docs/manual/init-api.xml:
12007         * docs/manual/intro.xml:
12008         * docs/manual/links-api.xml:
12009         * docs/manual/links.xml:
12010         * docs/manual/manual.xml:
12011         * docs/manual/motivation.xml:
12012         * docs/manual/pads-api.xml:
12013         * docs/manual/pads.xml:
12014         * docs/manual/plugins-api.xml:
12015         * docs/manual/plugins.xml:
12016         * docs/manual/programs.xml:
12017         * docs/manual/queues.xml:
12018         * docs/manual/quotes.xml:
12019         * docs/manual/schedulers.xml:
12020         * docs/manual/states-api.xml:
12021         * docs/manual/states.xml:
12022         * docs/manual/threads.xml:
12023         * docs/manual/typedetection.xml:
12024         * docs/manual/xml.xml:
12025           use chapter, part, section or misc as id starts for all bits
12026
12027 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12028
12029         * docs/gst/gstreamer-sections.txt:
12030           Fix up TITLE of the sections
12031
12032 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12033
12034         * docs/pwg/advanced_interfaces.xml:
12035           Add documentation on propertyprobing.
12036         * docs/pwg/advanced_events.xml:
12037         * docs/pwg/advanced_tagging.xml:
12038         * docs/pwg/building_boiler.xml:
12039         * docs/pwg/building_filterfactory.xml:
12040         * docs/pwg/pwg.xml:
12041           Move filterfactory and tagging into their own chapter, add a chapter
12042           on events. all these are empty placeholders that will be filled in
12043           some day.
12044
12045 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12046
12047         * docs/pwg/advanced_interfaces.xml:
12048           Docs for mixer interface. Also a check for website uploading.
12049
12050 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12051
12052         * docs/HACKING:
12053         * docs/Makefile.am:
12054         * docs/faq/Makefile.am:
12055         * docs/gst/Makefile.am:
12056         * docs/gst/tmpl/gstelement.sgml:
12057         * docs/gst/tmpl/gstplugin.sgml:
12058         * docs/gst/tmpl/gstreamer-unused.sgml:
12059         * docs/libs/Makefile.am:
12060         * docs/manual/Makefile.am:
12061         * docs/manuals.mak:
12062         * docs/pwg/Makefile.am:
12063         * docs/upload.mak:
12064           Separate out upload target and make it similar for
12065           both docbook and gtk-doc docs
12066
12067 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12068
12069         * docs/manuals.mak:
12070           Fix upload target to work with freedesktop
12071
12072 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12073
12074         * docs/pwg/advanced_types.xml:
12075           Add notes on creating your own types.
12076         * docs/pwg/building_boiler.xml:
12077         * docs/pwg/building_pads.xml:
12078         * docs/pwg/building_state.xml:
12079           Add some stuff about how to retrieve values from structures, how
12080           that relates to types and change layout slightly again to be almost
12081           perfect.
12082
12083 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12084
12085         * docs/pwg/advanced_dparams.xml:
12086         * docs/pwg/advanced_scheduling.xml:
12087           Change index layout slightly.
12088
12089 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12090
12091         * docs/pwg/advanced_clock.xml:
12092         * docs/pwg/advanced_interfaces.xml:
12093         * docs/pwg/advanced_midi.xml:
12094           General placeholders for now.
12095         * docs/pwg/advanced_request.xml:
12096           Explanation about sometimes and request pads.
12097         * docs/pwg/advanced_scheduling.xml:
12098           Concept of bytestream, loopfunctions and schedulers.
12099         * docs/pwg/building_boiler.xml:
12100           Add something about plugin-init.
12101
12102 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12103
12104         * docs/pwg/building_pads.xml:
12105           Fix broken docbook
12106
12107 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12108
12109         * docs/pwg/advanced_interfaces.xml:
12110         * docs/pwg/pwg.xml:
12111           Add as a placeholder for future filling-in.
12112         * docs/pwg/basics_autoplugging.xml:
12113         * docs/pwg/basics_buffers.xml:
12114         * docs/pwg/basics_elements.xml:
12115         * docs/pwg/basics_events.xml:
12116         * docs/pwg/basics_plugins.xml:
12117         * docs/pwg/basics_types.xml:
12118           Remove, because unused (this is all in intro_basics.xml).
12119         * docs/pwg/building_signals.xml:
12120           Short intro to signals + reference to GObject docs - we really
12121           shouldn't go into these sort of things to deply because we don't
12122           use them that extensively anyway.
12123         * docs/pwg/building_state.xml:
12124           Explanation of states. Benjamin, please check.
12125         * docs/pwg/building_testapp.xml:
12126           Put everything in one page - putting only a few lines of content
12127           per page doesn't really make sense.
12128
12129           Time to get into the advanced topics. ;).
12130
12131 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12132
12133         * docs/pwg/advanced_types.xml:
12134           Finish documenting the current state of mimetypes.
12135         * docs/pwg/building_boiler.xml:
12136         * docs/pwg/building_chainfn.xml:
12137         * docs/pwg/building_pads.xml:
12138         * docs/pwg/building_props.xml:
12139         * docs/pwg/building_testapp.xml:
12140           Start documenting the "how to build a simple audio filter" part
12141           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12142           states and (maybe?) a short introduction to capsnego in the chapter
12143           on pads (building_pads.xml). Capsnego should probably be explained
12144           fully in advanced_capsnego.xml or so.
12145
12146 2004-01-26  David Schleef  <ds@schleef.org>
12147
12148         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12149         * gst/gstpad.h: Add new function to allow element to (somewhat)
12150         specify non-fixed caps on a pad.
12151         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12152         that I added a few weeks ago.
12153
12154 2004-01-26  David Schleef  <ds@schleef.org>
12155
12156         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12157           making try_set_caps() work with non-fixed caps.
12158
12159 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12160
12161         * docs/pwg/advanced_types.xml:
12162         * docs/pwg/intro_basics.xml:
12163         * docs/pwg/intro_preface.xml:
12164         * docs/pwg/pwg.xml:
12165         * docs/pwg/titlepage.xml:
12166           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12167           in here (docs/random/mimetypes), and will from there on work on both
12168           updating outdated parts and adding missing parts.
12169           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12170
12171 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12172
12173         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12174           policy is set
12175
12176 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12177
12178         * gst/gstelement.h:
12179           remove gst_element_factory_get_version. It doesn't exist anymore.
12180         * gst/gstplugin.c:
12181         * gst/gstplugin.h:
12182           remove gst_plugin_set_name and change gst_plugin_get_longname to
12183           gst_plugin_get_description to match code.
12184         * gst/gsterror.h:
12185           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12186         * gst/gstpad.c: (gst_pad_try_set_caps):
12187           make it work with nonfixed caps.
12188           Note that even in the nonfixed case the link function of the pad
12189           that tries to set caps isn't called.
12190
12191 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12192
12193         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12194           fix bug where buffer was not assembled correctly
12195         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12196           silence by default
12197         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12198           only seek if there's no more buffers that could work without seeking
12199
12200 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12201
12202         * gst/gsttag.c: (_gst_tag_initialize):
12203         * gst/gsttag.h:
12204           Add application tag (for encoding/muxing app).
12205
12206 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12207
12208         * autogen.sh:
12209           make autopoint force, and libtoolize not copy
12210         * common/m4/as-docbook.m4:
12211           added docbook xml catalog setup check
12212         * common/m4/gst-doc.m4:
12213           use docbook check
12214
12215 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12216
12217         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12218         * gst/gsttag.h:
12219           add GstTagFlag
12220
12221 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12222
12223         * docs/gst/gstreamer-sections.txt:
12224         * docs/gst/tmpl/gst.sgml:
12225         * docs/gst/tmpl/gstbuffer.sgml:
12226         * docs/gst/tmpl/gstclock.sgml:
12227         * docs/gst/tmpl/gstelement.sgml:
12228         * docs/gst/tmpl/gstreamer-unused.sgml:
12229         * docs/gst/tmpl/gstxml.sgml:
12230           sync latest API changes to docs
12231
12232 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12233
12234         * gst/gstpluginfeature.c:
12235           fix doc snippet
12236         * tools/gst-inspect.c: (print_element_list):
12237           fix output of typefind
12238           add GPL header
12239         * tools/gst-launch.c:
12240           add GPL header
12241
12242 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12243
12244         * gst/elements/Makefile.am:
12245         * gst/elements/gstelements.c:
12246         * gst/elements/gsttypefindelement.c:
12247         * gst/elements/gsttypefindelement.h:
12248         * po/POTFILES.in:
12249         * po/fr.po:
12250         * po/nl.po:
12251           renamed gsttypefindelement to gsttypefind, conserving CVS history
12252
12253 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12254
12255         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12256         * gst/gsttag.h:
12257           add some tags used in ogg as well
12258           fix _ in replaygain tags
12259
12260 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12261
12262         * gst/gsterror.h:
12263           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12264
12265 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12266
12267         * gst/gstelement.c: (gst_element_error_full):
12268         * gst/gstelement.h:
12269           change _extended to _full
12270
12271 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12272
12273         reviewed by: <delete if not using a buddy>
12274
12275         * docs/gst/tmpl/gst.sgml:
12276         * docs/gst/tmpl/gstbuffer.sgml:
12277         * docs/gst/tmpl/gstclock.sgml:
12278         * docs/gst/tmpl/gstelement.sgml:
12279         * docs/gst/tmpl/gstreamer-unused.sgml:
12280         * docs/gst/tmpl/gstxml.sgml:
12281         * gst/gstelement.c: (gst_element_error_full):
12282         * gst/gstelement.h:
12283
12284 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12285
12286         * gst/gstelement.h: fix _gst_element_error_printf prototype
12287
12288 2004-01-20  David Schleef  <ds@schleef.org>
12289
12290         * gst/gststructure.c: (gst_structure_to_string):
12291         Convert function to use gst_value_serialize().
12292         * gst/gstvalue.c: (gst_value_serialize_list),
12293         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12294         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12295         (gst_value_serialize_int), (gst_value_serialize_double),
12296         (gst_string_wrap), (gst_value_serialize_string),
12297         (gst_value_serialize), (gst_value_deserialize):
12298         * gst/gstvalue.h:
12299         Add implementations for serialize.
12300
12301 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12302
12303         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12304         we want to keep that one in the future or change xvidenc.c to use 
12305         another error.
12306
12307 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12308
12309         * gst/gstelement.c: (_gst_element_error_printf):
12310         * gst/gstelement.h:
12311           privatise function
12312
12313 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12314
12315         * docs/random/error:
12316           doc explaining error system
12317         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12318           cleanup
12319
12320 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12321
12322         * gst/gst-i18n-app.h:
12323         * gst/gst-i18n-lib.h:
12324           remove inclusion of config.h
12325         * po/POTFILES.in:
12326         * po/nl.po:
12327           add gst/gstelement.c
12328
12329 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12330
12331         * po/nl.po: updated Dutch translation
12332
12333 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12334
12335         * gst/gsterror.c: (_gst_core_errors_init),
12336         (_gst_library_errors_init), (_gst_resource_errors_init),
12337         (_gst_stream_errors_init):
12338         remove ending punctuation dots
12339
12340 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12341
12342         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12343         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12344         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12345         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12346         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12347         use GST_ERROR_SYSTEM
12348
12349 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12350
12351         * gst/gstelement.c: (gst_element_error_printf),
12352         (gst_element_error_extended):
12353         * gst/gstelement.h:
12354           add a helper printf function so we can have NULL values passed.
12355
12356 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12357
12358         * gst/gstelement.h:
12359           add G_STMT macros to gst_element_error, which isn't strictly
12360           necessary but people tell me to anyway.
12361
12362 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12363
12364         * gst/Makefile.am:
12365         * gst/autoplug/gstspideridentity.c:
12366         (gst_spider_identity_sink_loop_type_finding):
12367         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12368         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12369         (gst_filesink_close_file), (gst_filesink_handle_event),
12370         (gst_filesink_chain):
12371         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12372         (gst_filesrc_map_region), (gst_filesrc_get_read),
12373         (gst_filesrc_open_file):
12374         * gst/elements/gstidentity.c: (gst_identity_chain):
12375         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12376         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12377         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12378         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12379         * gst/gst.h:
12380         * gst/gst_private.h:
12381         * gst/gstelement.c: (gst_element_class_init),
12382         (gst_element_default_error), (gst_element_error_func),
12383         (gst_element_error_extended):
12384         * gst/gstelement.h:
12385         * gst/gsterror.c: (_gst_core_errors_init),
12386         (_gst_library_errors_init), (_gst_resource_errors_init),
12387         (_gst_stream_errors_init), (gst_error_get_message):
12388         * gst/gsterror.h:
12389         * gst/gstinfo.c: (_gst_debug_init):
12390         * gst/gstmarshal.list:
12391         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12392         (gst_pad_recover_caps_error), (gst_pad_pull):
12393         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12394         * gst/schedulers/gstbasicscheduler.c:
12395         (gst_basic_scheduler_chainhandler_proxy),
12396         (gst_basic_scheduler_gethandler_proxy),
12397         (gst_basic_scheduler_cothreaded_chain):
12398         * po/POTFILES.in:
12399         * po/fr.po:
12400         * po/nl.po:
12401           change error signal
12402           add error categories
12403
12404 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12405
12406         * gst/gsttag.c: (_gst_tag_initialize):
12407         * gst/gsttag.h:
12408         Add replaygain tag
12409
12410 2004-01-18  Colin Walters  <walters@verbum.org>
12411
12412         * examples/retag/retag.c: Call gst_init before processing
12413         program args.  Add g_assert to _link_many call.
12414
12415 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12416
12417         * gst/gstpad.c: (gst_pad_alloc_buffer):
12418           Return a newly allocated buffer when the pad has no peer.
12419
12420 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12421
12422         * gst/gstclock.c: (gst_clock_get_time):
12423           make it compile with gcc 2.95 again.
12424           Patch by Scott Wheeler
12425
12426 2004-01-15  David Schleef  <ds@schleef.org>
12427
12428         * gst/gstcaps.h:
12429         Added gst_caps_is_simple() macro.
12430         * testsuite/caps/caps.c: (test1):
12431         * testsuite/caps/intersect2.c: (main):
12432         * testsuite/caps/intersection.c: (main):
12433         Fixes to make 'make check' work again after removing
12434         gst_caps_is_chained().
12435
12436 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12437
12438         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12439         and additions to the MIDI document.
12440
12441 2004-01-15  David Schleef  <ds@schleef.org>
12442
12443         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12444         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12445         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12446
12447 2004-01-15  David Schleef  <ds@schleef.org>
12448
12449         * gst/gstqueue.c:
12450         * gst/gstqueue.h:
12451         Fix the spelling of "treshold" and make min_threshold actually
12452         affect the queue.
12453
12454 2004-01-15  David Schleef  <ds@schleef.org>
12455
12456         * gst/gstcaps.c:
12457         Add lots of documentation.
12458         * gst/gstcaps.h:
12459         Deprecate a few functions.
12460         * gst/gstpad.c:
12461         Removed use of deprecated functions.
12462
12463 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12464
12465         * gst/gstpad.c: (gst_pad_is_linked):
12466         * gst/gstpad.h:
12467           implement gst_pad_is_linked
12468         * gst/gstelement.h:
12469           reserve space for initiate_state_change
12470
12471 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12472
12473         * gst/autoplug/gstspideridentity.c:
12474         (gst_spider_identity_sink_loop_type_finding):
12475           break infinite loop by just returning instead of looping
12476         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12477           set event time difference correctly. Set it to 1 second instead
12478           of 100ms to be more tolerant
12479         * gst/gstelement.c: (gst_element_set_time):
12480           add debugging output
12481
12482 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12483
12484         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12485           query if buffers are inside the pool, ignore events
12486
12487 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12488
12489         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12490         (gst_clock_set_speed), (gst_clock_set_active),
12491         (gst_clock_is_active), (gst_clock_reset),
12492         (gst_clock_handle_discont):
12493         * gst/gstclock.h:
12494           deprecate old interface and disable functions that aren't in use
12495           anymore.
12496         * gst/gstelement.h:
12497         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12498         (gst_element_set_time), (gst_element_adjust_time):
12499           add concept of "element time" and functions to get/set this time.
12500         * gst/gstelement.c: (gst_element_change_state):
12501           update element time correctly.
12502         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12503           This is a debug message, not a g_critical.
12504         * gst/gstpad.c: (gst_pad_event_default):
12505           handle discontinuous events right with element time.
12506         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12507           update to clocking fixes.
12508           set clocks on elements in READY=>PAUSED. The old behaviour caused
12509           a wrong element time on the first element that started playing.
12510         * gst/schedulers/gstbasicscheduler.c:
12511         (gst_basic_scheduler_class_init):
12512         * gst/schedulers/gstoptimalscheduler.c:
12513         (gst_opt_scheduler_class_init):
12514           remove code that just implements the default behaviour.
12515         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12516           update to use new clocking functions
12517         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12518         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12519           update to test new element time.
12520         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12521           use _get_allowed_caps instead of _get_caps. This catches filtered
12522           caps correctly.
12523         * testsuite/debug/commandline.c:
12524           update for new GST_DEBUG syntax.
12525         * testsuite/threads/Makefile.am:
12526           disable a test that only works sometimes.
12527
12528 2004-01-13  Julien MOUTTE <julien@moutte.net>
12529
12530         * po/LINGUAS: Adding fr.
12531         * po/fr.po: Adding french translation.
12532
12533 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12534
12535         * gst/parse/grammar.y:
12536         * po/POTFILES.in:
12537         * po/nl.po:
12538         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12539           translate parsing error messages
12540
12541 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12542
12543         * po/POTFILES.in: adding gst-launch
12544         * po/nl.po: updated translation, all 99 strings translated
12545         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12546         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12547           fix strings for translation
12548
12549 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12550
12551         * gst/gst.c:
12552           - capitalize beginnings of popt options
12553           - fix strings for translation
12554           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12555
12556 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12557
12558         * po/README: add some notes on how to update translations
12559
12560 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12561
12562         * ABOUT-NLS: removed, is autogenerated from autopoint
12563         * autogen.sh: add autopoint stuff
12564         * configure.ac: fix up gettext stuff
12565         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12566         * gst/elements/gsttypefindelement.c: add header include
12567         * gst/gettext.h: add header, copy from system-installed header
12568         * gst/gst-i18n-app.h: to be included by each app having translations
12569         * gst/gst-i18n-lib.h: to be included by each lib having translations
12570         * gst/gst.c: (init_pre): fix up gettext calls
12571         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12572         * po/LINGUAS: the new way to specify translations present
12573         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12574         * po/Makevars: the variables filled in for GStreamer
12575         * po/POTFILES.in: added new files with translations
12576         * po/de.po: has new strings
12577         * po/nl.po: readded, has new strings
12578
12579 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12580
12581         * gst/gsttag.c: fix some strings marked for translation
12582
12583 2004-01-13  Iain <iain@prettypeople.org>
12584
12585         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12586         group when we add an element to it, cos we unref it when we remove one
12587
12588 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12589
12590         * testsuite/debug/commandline.c: (debug_not_reached):
12591         * testsuite/debug/output.c: (check_message):
12592           fix testsuite
12593
12594 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12595
12596         * examples/cutter/.cvsignore:
12597         * examples/helloworld/.cvsignore:
12598         * examples/launch/.cvsignore:
12599         * examples/manual/.cvsignore:
12600         * examples/mixer/.cvsignore:
12601         * examples/pingpong/.cvsignore:
12602         * examples/plugins/.cvsignore:
12603         * examples/queue/.cvsignore:
12604         * examples/queue2/.cvsignore:
12605         * examples/queue3/.cvsignore:
12606         * examples/queue4/.cvsignore:
12607         * examples/retag/.cvsignore:
12608         * examples/thread/.cvsignore:
12609         * examples/typefind/.cvsignore:
12610         * examples/xml/.cvsignore:
12611         * gst/.cvsignore:
12612         * gst/autoplug/.cvsignore:
12613         * gst/elements/.cvsignore:
12614         * gst/indexers/.cvsignore:
12615         * gst/parse/.cvsignore:
12616         * gst/registries/.cvsignore:
12617         * gst/schedulers/.cvsignore:
12618         * libs/gst/bytestream/.cvsignore:
12619         * libs/gst/control/.cvsignore:
12620         * libs/gst/getbits/.cvsignore:
12621         * tests/.cvsignore:
12622         * tests/bufspeed/.cvsignore:
12623         * tests/instantiate/.cvsignore:
12624         * tests/memchunk/.cvsignore:
12625         * tests/muxing/.cvsignore:
12626         * tests/sched/.cvsignore:
12627         * tests/seeking/.cvsignore:
12628         * tests/threadstate/.cvsignore:
12629         * testsuite/.cvsignore:
12630         * testsuite/caps/.cvsignore:
12631         * testsuite/cleanup/.cvsignore:
12632         * testsuite/dynparams/.cvsignore:
12633         * testsuite/plugin/.cvsignore:
12634         * tools/.cvsignore:
12635           update - this is huge, because it includes *.bb, *.bbg and *.da files
12636           which are generated for gcov.
12637
12638 2004-01-11  David Schleef  <ds@schleef.org>
12639
12640         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12641         a function to parse integers in ways that strto[u]l() does not.
12642
12643 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12644
12645         * tools/gst-inspect.c: (print_caps):
12646           improve output of caps a bit
12647
12648 2004-01-11  David Schleef  <ds@schleef.org>
12649
12650         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12651         inherit correct flags (READONLY and DONTKEEP).
12652
12653 2004-01-11  David Schleef  <ds@schleef.org>
12654
12655         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12656         (gst_filesrc_map_region):
12657         * gst/gstbuffer.c: (_gst_buffer_initialize),
12658         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12659         (gst_buffer_new), (gst_buffer_create_sub),
12660         (gst_buffer_is_span_fast), (gst_buffer_span):
12661         * gst/gstbuffer.h:
12662         Change GstBuffer private structure element names. (all files)
12663         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12664         (gst_queue_link):
12665         * gst/gstqueue.h:
12666         Implement getcaps/pad_link functions that handle the case where
12667         there are data in the queue.
12668
12669 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12670
12671         * gst/elements/gstbufferstore.c:
12672           initialize debugging structure correctly
12673         * gst/elements/gsttee.c: (gst_tee_set_property):
12674           g_object_notify when property was changed
12675         * gst/elements/gsttypefindelement.c:
12676         (gst_type_find_element_change_state):
12677           clear caps correctly
12678
12679 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12680
12681         * gst/gstqueue.c: (gst_queue_init):
12682           Use better defaults for when a queue should block. This
12683           gets rid of jerky playback for quite a few files.
12684           It takes more memory.
12685
12686 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12687
12688         (gst_xml_registry_parse_padtemplate):
12689           make critical message slightly more useful
12690
12691 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12692
12693         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12694         (gst_debug_message_get), (gst_debug_log_default):
12695         * gst/gstinfo.h:
12696           Change gst_debug_log(_valist) to take a const format string.
12697           Change prototype of log function and functions using those to 
12698           take a GstDebugMessage instead of a string that requires using
12699           gst_debug_message_get.
12700
12701 2004-01-08  David Schleef  <ds@schleef.org>
12702
12703         * Makefile.am:
12704         * configure.ac:
12705         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12706         and -ftest-coverage, which allows gcov to show information about
12707         testsuite coverage.
12708
12709 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12710
12711         * gst/gstutils.h:
12712           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12713           GST_PARENT_CALL_WITH_DEFAULT
12714         * gst/elements/gstaggregator.c: 
12715         * gst/elements/gstbufferstore.c: 
12716         * gst/elements/gstfakesink.c: 
12717         * gst/elements/gstfakesrc.c: 
12718         * gst/elements/gstfdsink.c: 
12719         * gst/elements/gstfdsrc.c: 
12720         * gst/elements/gstfilesink.c: 
12721         * gst/elements/gstfilesrc.c: 
12722         * gst/elements/gstidentity.c: 
12723         * gst/elements/gstmd5sink.c: 
12724         * gst/elements/gstmultidisksrc.c:
12725         * gst/elements/gstpipefilter.c: 
12726         * gst/elements/gstshaper.c:
12727         * gst/elements/gststatistics.c:
12728         * gst/elements/gsttee.c:
12729         * gst/elements/gsttypefindelement.c:
12730           use them.
12731
12732 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
12733
12734         * docs/gst/gstreamer-docs.sgml: remove props
12735         * docs/gst/gstreamer-sections.txt: remove props
12736         * docs/gst/tmpl/gst.sgml:
12737         * docs/gst/tmpl/gstbin.sgml:
12738         * docs/gst/tmpl/gstbuffer.sgml:
12739         * docs/gst/tmpl/gstcaps.sgml:
12740         * docs/gst/tmpl/gstclock.sgml:
12741         * docs/gst/tmpl/gstelement.sgml:
12742         * docs/gst/tmpl/gstindex.sgml:
12743         * docs/gst/tmpl/gstobject.sgml:
12744         * docs/gst/tmpl/gstpad.sgml:
12745         * docs/gst/tmpl/gstpadtemplate.sgml:
12746         * docs/gst/tmpl/gstreamer-unused.sgml:
12747         * docs/gst/tmpl/gstthread.sgml:
12748         * docs/gst/tmpl/gstxml.sgml:
12749           sync with code reorganization
12750
12751 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
12752
12753         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12754         Make the 'Could not find compatible pad' message more informative.
12755
12756 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12757                                                                                 
12758         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
12759           Fix for if we pass NULL as property to location.
12760         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
12761         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
12762           Fix for instantiate-test (see below).
12763         * gst/gststructure.c: (_gst_structure_parse_value):
12764           Fix compile error on gcc-2.96.
12765         * configure.ac:
12766         * tests/Makefile.am:
12767         * tests/instantiate/Makefile.am:
12768         * tests/instantiate/create.c: (create_all_elements), (main):
12769           Add a test that instantiates all elements. This makes it easy to
12770           track dead code for old API/design (like setting event functions
12771           on sink pads and so on).
12772
12773 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
12774
12775         * gst/gstcaps.c: (gst_caps_append_structure):
12776           Move the poisoning to allow a NULL structure
12777         * gst/gstevent.c: (_gst_event_free):
12778           When freeing a navigation event, free the structure
12779           also
12780
12781 2004-01-04  David Schleef  <ds@schleef.org>
12782
12783         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12784         Remove usage of gst_pad_proxy_fixate.
12785         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
12786         (gst_caps_split_one), (gst_caps_replace):
12787         Add poisoning code.
12788         * gst/gstmarshal.list:
12789         Add pointer__pointer for fixate signal
12790         * gst/gstpad.c: (gst_real_pad_class_init),
12791         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12792         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
12793         (gst_pad_set_explicit_caps), (gst_pad_template_new):
12794         Add poisoning code. Add fixate signal on RealPad. Change
12795         set_explicit_caps() to take const GstCaps, like try_set_caps().
12796         * gst/gstpad.h:
12797         * testsuite/caps/Makefile.am:
12798         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
12799
12800 2004-01-03  David Schleef  <ds@schleef.org>
12801
12802         * gst/elements/gsttypefindelement.c:
12803         (gst_type_find_element_have_type), (gst_type_find_element_init):
12804         Use gst_pad_use_explicit_caps for src pad.
12805         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
12806         before using it.
12807
12808 2004-01-03  David Schleef  <ds@schleef.org>
12809
12810         * gst/gstelement.c: (gst_element_link_pads_filtered),
12811         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
12812         that linking was successful.
12813         * gst/gstpad.c: (gst_pad_link_free),
12814         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
12815         (gst_pad_link_try), (gst_pad_link_unnegotiate),
12816         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
12817         GstPadLinkReturn correctly between functions, and don't fail
12818         when DELAYED is used (DELAYED is very important).  Better
12819         cleanup on unlinking and unnegotiation.  Should fix some spider
12820         bugs.
12821
12822 2004-01-02  David Schleef  <ds@schleef.org>
12823
12824         * gst/gstelement.c: (gst_element_class_init),
12825         (gst_element_base_class_init): ->padtemplates should be cleared
12826         in base_init, since we need to have a fresh list for every
12827         class.  (Alternately, we chould copy the list and share the
12828         actual pad templates (not the list), but that would require
12829         changing every plugin to move pad template registration from
12830         base_init to class_init.)
12831
12832 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12833
12834         * gst/gstelement.c: (gst_element_class_add_pad_template):
12835           Refuse registering a pad template if another pad template
12836           with the same name already exists (#114715).
12837
12838 2004-01-02  David Schleef  <ds@schleef.org>
12839
12840         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
12841         (gst_caps_is_equal_fixed): Add new function.
12842         * gst/gstcaps.h: ditto.
12843         * gst/gstpad.c: (gst_real_pad_class_init),
12844         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
12845         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
12846         check new caps against existing caps -- if they're the same, return
12847         OK without renegotiating.  caps-nego-failed signal fixed so that
12848         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
12849         to save an extra caps copy.  Don't complete negotiation if a pad
12850         link function returns DELAYED.
12851
12852 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12853
12854         * gst/gstpad.c: (gst_pad_try_relink_filtered):
12855           Fix wrong g_return_if_fail
12856
12857 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
12858
12859         * gst/gstbin.c: (gst_bin_class_init):
12860         Change the marshalling of element_added/element_removed
12861         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
12862         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
12863
12864 2004-01-01  David Schleef  <ds@schleef.org>
12865
12866         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12867         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
12868         (gst_pad_use_explicit_caps):
12869         * gst/gstpad.h:
12870         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
12871         to use an internal getcaps and link fuction so that negotiation
12872         always results in the explicitly set caps.
12873         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
12874         are particularly useful for decoders.
12875
12876 2003-12-31  David Schleef  <ds@schleef.org>
12877
12878         * gst/elements/gstidentity.c: (gst_identity_class_init),
12879         (gst_identity_init), (gst_identity_chain),
12880         (gst_identity_set_property), (gst_identity_get_property):
12881         * gst/elements/gstidentity.h:
12882         * gst/gstqueue.c: (gst_queue_init):
12883           Negotiation fixes.
12884
12885 2003-12-31  David Schleef  <ds@schleef.org>
12886
12887         * gst/gstcaps.c: (gst_caps_intersect),
12888         (_gst_caps_normalize_foreach), (gst_caps_normalize):
12889           Implement gst_caps_normalize().
12890         * testsuite/caps/normalisation.c: (main):
12891           Add an additional test
12892
12893 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12894
12895         * gst/gstqueue.c: (gst_queue_init):
12896           use gst_pad_proxy_getcaps()
12897
12898 2003-12-31  David Schleef  <ds@schleef.org>
12899
12900         * gst/elements/gstshaper.c: (gst_shaper_link):
12901         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12902         * gst/gstqueue.c: (gst_queue_link):
12903           Negotiation fixes.
12904
12905 2003-12-31  David Schleef  <ds@schleef.org>
12906
12907         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
12908         * gst/gstpad.h: Add functions that are useful as default pad
12909         link and fixate functions for elements.
12910
12911 2003-12-30  David Schleef  <ds@schleef.org>
12912
12913         * gst/gstpad.c: (gst_pad_link_try):
12914           Fix segfault when attempting to return to old caps
12915
12916 2003-12-29  David Schleef  <ds@schleef.org>
12917
12918         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
12919         (gst_caps_structure_simplify), (gst_caps_simplify):
12920         * gst/gstcaps.h:
12921           Add simplify function
12922         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
12923         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
12924         * gst/gstpad.h:
12925           Copy over srcnotify, sinknotify when calling old pad_link
12926           functions.  Add new is_negotiated() function.
12927         * gst/gststructure.c: (gst_structure_copy):
12928           Fix an incredibly stupid bug that should have been noticed
12929           weeks ago.  _copy() returned the argument, not the new copy.
12930
12931 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12932
12933         * gst/gstcaps.c: (gst_caps_append):
12934           add sanity checks
12935         * gst/gstcaps.h: (gst_caps_debug):
12936           remove, it doesn't exist anymore.
12937         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
12938         (gst_element_threadsafe_properties_post_run):
12939           make debugging messages not clutter up THREAD debug category
12940         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
12941         (gst_element_change_state):
12942           update to new caps API
12943         * gst/gstinterface.c: (gst_implements_interface_cast):
12944           don't put vital code in g_return_if_fail
12945         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
12946         (gst_pad_link_filtered):
12947           add pst_pad_try_link and use it.
12948         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
12949           implement correctly, deprecate first one.
12950         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
12951           add and implement.
12952         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
12953           implement.
12954         (gst_pad_get_negotiated_caps):
12955           add and implement. Make GST_PAD_CAPS call this function.
12956         (gst_pad_get_caps):
12957           remove unneeded check..
12958         (gst_pad_recover_caps_error):
12959           disable, always return FALSE.
12960         (gst_real_pad_dispose):
12961           don't free caps and appfilter anymore, they're unused.
12962         * gst/gstpad.h:
12963           Reflect changes mentioned above.
12964         * gst/gstsystemclock.c: (gst_system_clock_wait):
12965           Make 'clock is way behind' a debugging message.
12966         * gst/gstthread.c: (gst_thread_change_state):
12967           Fix debugging message
12968
12969 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12970
12971         * gst/gstinfo.h:
12972           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
12973         * docs/gst/tmpl/gstreamer-unused.sgml:
12974           removed all traces of cvs conflicts
12975
12976 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12977
12978         * configure.ac:
12979         * gst/schedulers/cothreads_compat.h:
12980         * libs/Makefile.am:
12981           remove last instances of wingo cothread usage
12982
12983 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12984
12985         * gst/gstplugin.c:
12986         * gst/gstversion.h.in:
12987         * gst/parse/grammar.y:
12988           change comment block from /** to /* when not gtk-doc comments
12989
12990 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12991
12992         * gst/gst.c: whitespace and doc style fixes
12993
12994 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12995
12996         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
12997
12998 2003-12-24  Colin Walters  <walters@verbum.org>
12999
13000         * gst/elements/gsttypefindelement.c:
13001           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13002           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13003           Don't double-free caps.
13004
13005 2003-12-23  David Schleef  <ds@schleef.org>
13006
13007         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13008           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13009           Many little fixes and additions of debug statements to
13010           get rhythmbox working.
13011
13012 2003-12-23  Colin Walters  <walters@verbum.org>
13013
13014         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13015         Use GST_PAD_LINK_SUCCESSFUL.
13016
13017 2003-12-23  David Schleef  <ds@schleef.org>
13018
13019         * gst/elements/gstaggregator.c:
13020         * gst/elements/gsttee.c:
13021           Use gst_pad_proxy_getcaps().
13022         * gst/gstpad.c:
13023         * gst/gstpad.h:
13024           Add gst_pad_proxy_getcaps(), which filter elements can use
13025           as a generic getcaps implementation.
13026           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13027           was advertised.
13028
13029 2003-12-23  David Schleef  <ds@schleef.org>
13030
13031         * gst/gstpad.c:
13032           Rearrange/rewrite much of the pad negotiation code, since it
13033           resembled pasta.  This actually changes the way some
13034           negotiation works, since the previous code was inconsistent
13035           depending on how it was invoked.  Add (internal) structure
13036           GstPadLink, which is used to hold some information (more in
13037           the future) about the link between two pads.  Fixes a number
13038           of bugs, including random lossage of filter caps when the
13039           initial negotiation is delayed.  A few functions are still
13040           unimplemented.
13041         * gst/gstpad.h:
13042           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13043           these when testing GstPadLinkReturn values instead of comparing
13044           directly.
13045
13046 2003-12-23  David Schleef  <ds@schleef.org>
13047
13048         * gst/gstvalue.c: 
13049         * gst/gstvalue.h:
13050           Rearrange lots of code.  Change registration of compare function
13051           into registration of compare/serialize/deserialize functions.
13052           Doesn't include implementation of gst_value_[de]serialize(),
13053           but that should be easy.
13054
13055 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13056
13057         * docs/gst/gstreamer-sections.txt:
13058         * docs/gst/tmpl/gstprops.sgml: removed
13059         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13060           David removed props and caps code, so let's remove their docs as well.
13061           Removed all no longer existing symbols from gstreamer-sections.txt
13062           
13063 2003-12-22  Colin Walters  <walters@verbum.org>
13064
13065         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13066           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13067           of tags directly.
13068
13069 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13070
13071         * gst/elements/gstelements.c:
13072           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13073         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13074           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13075           gst_caps (peer).
13076
13077 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13078
13079         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13080         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13081         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13082         (gst_spider_identity_sink_loop_type_finding):
13083         * gst/autoplug/gstspideridentity.h:
13084           Fix autoplugging in spider element, so it works with new caps.
13085           This was mainly caused by identifying empty caps incorrectly.
13086
13087 2003-12-22  David Schleef  <ds@schleef.org>
13088
13089         * gststructure.c, gstvalue.c, gstvalue.h: Add
13090           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13091           using g_value_copy()
13092
13093 2003-12-21  David Schleef  <ds@schleef.org>
13094
13095         * many, many files: Merge CAPS branch.  This includes:
13096           - implemention of GstValue and several GstValue types
13097           - implemention of GstStructure
13098           - entire rewrite of GstCaps
13099           - removal of GstProps
13100           - many changes to GstPad to compensate for new caps paradigm
13101           - removal of GstBufferpool
13102         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13103         gstvalue.h, gst/gstcaps[2]*.[ch]:
13104           - rename gstcaps2.[ch] to gstcaps.[ch]
13105
13106 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13107
13108         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13109         (gst_queue_chain), (gst_queue_handle_src_event):
13110           implement timeout for sending events. Workaround for if the
13111           pipeline on this queue is not passing any data.
13112
13113 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13114                                                                                 
13115         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13116         * moved CVS to freedesktop.org
13117